C#ATIA

↑タイトル詐欺 主にFusion360API 偶にCATIA V5 VBA(絶賛ネタ切れ中)

Fusion360API

ユーザーパラメータが何に使用されているかを知る

久々にこちらを答えてみました。 Solved: Re: How can I delete a parameter? - Autodesk Community ・・・後から気が付きましたが、”興味が無い”と答えられました。で、同じ方が議論していたので、こちらも答えてみました。 Re: Is there a way to find out…

点で面に接する平面

ネタ切れですが、ムリムリ書きます。先日お答えしたこちら Solved: Can not create a plane by setByTangentAtPoint in design history - Autodesk Community"点で面に接する平面"をAPIで行った際に、履歴付きと履歴無しで 結果だ違う と言うものです。(履…

選択セットを作る

ここ数ヶ月、あまりFusion360のAPIを触っていなかったので、 意識的に触るようにしてます。・・・忘れそうなので。ちょっと前に答えたものですが、こちらのお話です。 Solved: SelectionSet.add - unable to get this working - Autodesk Community 選択セッ…

アクティブなコンフィギュレーション名

昨年の後半だったかな? Fusion360にコンフィギュレーションと言う機能が追加されました。 デモの状態の時から知っていて "おぉすごい" と思っていたのですが、 使い方を知らず・・・と言いますか、試してもいませんでした。ざっくりですが、どんな機能か?…

BrowserCommandInputへ初期値の受け渡し

久々にFusion360です。 こちらを答えてみました。 How to create a `BrowserCommandInput` and populate it with initial data from Fusion? - Autodesk Community"ダイアログを表示する時にBrowserCommandInputに初期値を渡したい” と言う質問だと受け止め…

スクリプトから別のスクリプトを呼び出したい3

こちらの続きです。 スクリプトから別のスクリプトを呼び出したい2 - C#ATIA前回の最後に "スクリプトランチャ的なアドインを試しに作成したのですが、" と記述したのですが、探したところ奇跡的に以前のものが 残っていました。色々と修正が必要だったもの…

スクリプトから別のスクリプトを呼び出したい2

やらなければならない事が有るのは承知しておりますが、 しばらく何もやっていなかったため、リハビリです。 恐らくこちらの続きです。 スクリプトから別のスクリプトを呼び出したい - C#ATIA以前行った方法は、スクリプトをモジュールとして読み込み実行し…

穴テンプレートのオペレーション部を考える2

時間が経ちましたが、こちらの続きです。 穴テンプレートのオペレーション部を考える1 - C#ATIA穴テンプレートのオペレーション部のこちら <holeData operationType="drill" toolDiameterRatio="1.000000" version="1.0"> <holeMapping> <segment index="2"/> </holeMapping> </holeData> operationType部分の文字を取得する関数を作成しました。 def get_hole_data_operation_type( ope: cam.Operati…

ボディの体積をダンプする3

こちらの続きです。 ボディの体積をダンプする2 - C#ATIA前回は単純にルートコンポーネントのボディを取得した順番に 体積をダンプしました。 目的によりますが取得した順番で処理を行うより、ソートされた 状態で処理を行った方が効率が良い場面が、結構あ…

ボディの体積をダンプする2

こちらの続きです。 ボディの体積をダンプする1 - C#ATIA比較の為に、Fusion360でボディの体積をダンプします。 # Fusion360API Python script import traceback import adsk.core as core import adsk.fusion as fusion def run(context): ui: core.UserInt…

穴テンプレートのオペレーション部を考える1

本題の前に、誤った情報の修正です。 API以外で"穴テンプレート"と"テンプレート"の違いを見つけられない ような記述を以前しましたが、テンプレートライブラリで見分けられる ことが分かりました。 同じ工程を"穴テンプレート"と"テンプレート"を作りました…

穴テンプレートのトーラスを考える4

こちらの続きです。 穴テンプレートのトーラスを考える3 - C#ATIAテストする形状を少し複雑にしました。 ザグリ部分に面取り(赤)を付け、面取りの両側にR面(緑)を付けました。 面取り両側のR面は凸ですが、元々付けていた黄色のR面は凹です。 恐らく、こ…

穴テンプレートのトーラスを考える3

こちらの続きです。 穴テンプレートのトーラスを考える2 - C#ATIA誤った結果となる原因の一つの "円弧の始点終点では無く、穴の軸方向を元に三次元座標の上下で判断" を組み込みつつ、出力結果を下6桁に修正しました。 # Fusion360API Python script import …

穴テンプレートのトーラスを考える2

こちらの続きです。 穴テンプレートのトーラスを考える1 - C#ATIA取りあえず、現状の理解の下に確認スクリプトを作成しました。 トーラス(R面取り等)を選択すると、それっぽい情報を出力します。 # Fusion360API Python script import traceback import ad…

穴テンプレートのトーラスを考える1

ん~フォーマットがわからない。単純なものから考えます。これは穴の断面です。 赤印部分はこんな感じです。 <segment bottomAngle="-0.000000" isConvex="1" isExpanding="Contracting" sweepAngle="-1.570796" topAngle="1.570796" type="Torus"/> 緑部分はこんな感じです。 </segment>

穴テンプレートの形状部分を真似る

見に来て頂いている方々には申し訳ないぐらいに、何も進めていませんでした・・・。 まぁ期待されていないでしょう。穴テンプレートの形状部分は、例としてこんな感じになってます。 <holeSignature version="5"> <segment isExpanding="Contracting" type="Cone"/> <segment isExpanding="Contracting" type="Flat"/> <segment type="Cylinder"/> </segment></segment></segment></holesignature>

クラウドのテンプレートライブラリ内の穴テンプレートの取得

時間が無い・・・。テンプレートライブラリをGUIで開くと、幾つかの保存先毎に 保存済みのCAMのテンプレートが表示されますが、 表題の”クラウド”はこちらです。 ローカルとかも取得できますが、今回はクラウドです。関数のみですがこちら。 def get_cloud_h…

穴テンプレート2

こちらの続きです。 穴テンプレート1 - C#ATIAもうちょっと詳しく調べました。 この様なザグリ穴付きの工程があります。 この2工程を穴テンプレートとしてエクスポートします。あぁ公開していないですし、するかどうかもわからないのですが、 イチイチ登録し…

開発者向けアドイン14

こちらの続きです。 開発者向けアドイン13 - C#ATIA1つコマンドを追加しました。 GitHub - kantoku-code/Fusion360_Developers_Small_ToolKit: 通常のユーザーには、ほぼ無意味なFusion360 API 開発者向けの小さな工具箱 ver0.1.6になります。 "ReBoot Docum…

穴テンプレート1

Fusion360の製造の"穴テンプレート"の存在は薄々知っていたのですが、 意味を理解していませんでした。 "テンプレート"と"穴テンプレート"の違いが判らなかったので、試したことすら 有りませんでした。 実際に"穴テンプレート"して登録し、"テンプレートか…

穴形状のタイプを認識する

フォーラムに記載した ”レッツ穴あけ” の時には、既に実装されていた オブジェクトなのですが、見落としていたRecognizedHoleオブジェクト と言うものがあります。 Fusion 360 Help 穴として認識した形状を保持してくれた上、様々な情報を得ることが 出来そ…

開発者向けアドイン13

こちらの続きです。・・・多分。 開発者向けアドイン12 - C#ATIAFusion360でアドインを作る際、コマンドのアイコンを何処に入れるか? が結構面倒なんです。 赤:タブ(ToolbarTab) 緑:パネル(ToolbarPanel) 紫:コントロール(ToolbarControl) 結局は、パネ…

ソリッドの体積を複数単位で表示する

以前スクリプトを作ったものが、使いにくいとの事で アドインにして呼び出しやすくしました。 Solved: Add in conversion option to properties dialog - Autodesk Community単位が複雑な地域に住むと大変ですね。 機能自体はそれ程でも無いのですが、あのア…

領域の内側?外側?を判断する

Fusion360のCAMAPIのこちらの質問に挑戦しました。 Is a curve Reverted or not?! - Autodesk Community元々はこちらの回答への新たな疑問です。 Solved: Re: Pocket 2d operation causes Fusion 360 to crash - Autodesk Communityそうです。原因を作ったの…

シリンダーの凹面を探す

こちらにちょっと記載したのですが、 Re: レッツ穴あけ - Autodesk Communityis_hole関数の説明時に ・・・ひょっとしたらisParamReversedプロパティだけでも判断出来るのかなぁ。と記載しました。isParamReversedプロパティはこちらです。 help.autodesk.co…

穴あけの自動化を解説してみる

本来はこちらで記載すべき内容だと思いつつも、Fusion360の 日本語フォーラムでの連載と言う強行策に踏み切りました。 forums.autodesk.com最後まで書けるかな?

アニメーション画面に文字を追記する

Fusion360にはちょっとしたアニメーションを作る機能があります。 ・・・ほぼ使ったことがないです。こちらに文字を追加して表示するテストを行いました。 ”hoge”の文字が右から左にニコ動風に流れていきます。 # Fusion360API Python script import traceba…

複数の3D点から平面を作成したい3

時間が無いから、とりあえず出来上がったコードです。 # Fusion360API Python script import traceback import adsk.core as core import adsk.fusion as fusion import os import sys import inspect import random script_path = os.path.abspath(inspect.…

複数の3D点から平面を作成したい2

こちらの続きです。 複数の3D点から平面を作成したい1 - C#ATIA神に近い存在に平面フィッティングを行うコードを教わる事に したのですが、案の定NumPyとSciPyを使用したものでした。 そこで食い下がったのですが、 再度”そこを何とか”としましたが、答えが…

複数の3D点から平面を作成したい1

こちらに挑戦しようと思っています。 Creating best matching plane using several(more than 3) points script - Autodesk Community 明らかに最小二乗法を利用した、平面フィッティングな問題です。これをpythonで行おうと検索すると、numpyとscipy(両方と…