C#ATIA

↑タイトル詐欺 主にCATIA V5 の VBA(最近はPMillマクロとFusion360APIが多い)

Fusion360API

俺コマンドを作る3

こちらの続きです。 俺コマンドを作る2 - C#ATIA先日の俺コマンドを清楚に実装出来るように考えたのですが、 結果としてこちらの類似したものを作ることになりそうなため 止めました・・・。 github.com 一番困っていたのは、「Fusion360CommandBase.py」で…

俺コマンドを作る2

こちらの続きです。 俺コマンドを作る1 - C#ATIA 忘れていましたが、実行するとこんな感じです。 何か1個を選択するだけです。フィルターを指定しないと基本的に何でも 選択出来る事に、昨年気が付きました。 さて、コード的な部分です。こちらのグローバル…

APIでリンク付きインポート

こちらに記載した事をちょっとだけテストしてみました。 解決済み: 思い付いた事をウダウダと - Autodesk Community結果だけ書くと ・「adsk.doEvents()」使うと、黒くなるのは回避出来る。 ・オフラインにした時点でDataHubにアクセス出来ない ついでに、50個…

Camera.viewExtents

こちらにちょっとレスしました。 Manipulating the camera view - Autodesk Community 手動で「ウィンドウ内を検索」した際と、APIの Viewport.fit() 又は Camera.isFitView = True した際で、ズームされた状態が違う ってお話です。 CATIAのリフレームオン…

Fusion360 ver2.0.7402 API デバッグ調子悪い

こちらに記載したのですが、調子悪いんです。 socket.timeout: timed out - Autodesk Community昨日もアドインを作成していても、とにかく調子悪い。 こちらのコードも自信無いだけに、原因がわからず。ver2.0.7402になってからは、多くのアドインが機能しな…

Electronics Package Generator

先日、Fusion360のUpdateがありました。恐らくその際にこれが 追加されたのだろうと思います。PCB機能絡みのものでは無かろうか? 将来的にはPCBもスプリクト/アドインが作れるのかな?

Selection Filtersの不具合に挑む

先日、PreSelectイベントの存在に気が付きました。 PreSelectイベントサンプル - C#ATIA 個人的には "選択する直前に発生するイベント" と言うより "選択可能な要素の上にマウスカーソルが乗った際に発生するイベント" と思っています。 古い記載ですが、こ…

コマンドのログ取得

Fusion360のイベント処理が少しづつ理解出来るようになってきた・・・つもり。前からCADを操作したログが、何処かにあるのではないかな?と思ってはいる のですが、未だに見つからず。 逆にイベントを利用すると取得出来ることに気が付き、今後の事もあって…

PreSelectイベントサンプル

こちらに記載した内容とちょっと関連してます。恐らく。 解決済み: Re: ValidateInputsEventHandlerのイベントによる呼び出しについて - Autodesk Community本家のAPIフォーラムで質問した際のものは、 SelectionCommandInput(要素を選択するやつ)が2個有…

カスタムグラフィックのサンプル

カスタムグラフィックのサンプルを作ってみました。スクリプト実行後ボディをクリックすると、ボディが破壊されます・・・。 実際のボディは非表示にしているだけなので、問題無いです。 #Fusion360API Python script #Author-kantoku #Description-カスタム…

カスタムグラフィックスを削除する

Fusion360のAPIでは、画面上に面等の要素を表示させる方法が 知っている限りでは3つあります。・BRep 通常の手動(GUI)で作業した際に出来上がるものです。・TemporaryBRep 結果的にBRepと同じになりますが、履歴が使えません。 又、複雑な形状を作る方法が…

pythonのflort型のrange関数

fusion360APIをやっているといつも欲しくなる。 その都度検索して探し出してくるので覚書。こちらを拝借し、ちょっとだけ好みに変えました。 Pythonのrange関数をfloat型に拡張してみた - S0-ma's Blog def dRange(start, end, step): from decimal import D…

もっと短く書けるんじゃないかな?

海外の公開されているcatiaのマクロ(国内は、ほぼ無いけど)もそうなんですが、 Fusion360のスクリプトも結構、読みにくいものが多い気がするんです。とあるサイトで公開されていたものの一部なんですが ・・・ line1 = adsk.core.Line3D.create(adsk.core.…

同一半径限定で球体同士の交差を作る

同一半径限定で、表示された球体同士の交差を作ります。 ・・・同一半径のみ欲しいので、同一半径のみなんです。 #Fusion360API Python script #Author-kantoku #Description-表示された球体を見つけ、交差作成(同一半径のみ) import adsk.core, adsk.fusion…

平面と球体の交差を作る2

こちらの続きです。 平面と球体の交差を作る1 - C#ATIAこちらを合体させてみました。 立方体を判断する - C#ATIA 球体を判断する - C#ATIA #Fusion360API Python script #Author-kantoku #Description-表示された立方体と球体を見つけ、交差作成 import adsk…

球体を判断する

Fusion360で球体を作成する場合、プリミティブで作成してもスケッチを使い回転で 作成しても、サーフェスは1枚になるようです。(CATIAは2枚)念の為、2枚に分割されても正しく球体と判断出来るようにしたつもりです。 又、立方体時とは異なり、拡張メソッド…

立方体を判断する

ボディが立方体か?を判断したいんです。で、こんな感じで作りました。 #Fusion360API Python script #Author-kantoku #Description-立方体の判断 import adsk.core, adsk.fusion, traceback def run(context): ui = None try: app :adsk.core.Application =…

ターミナルで実行の 'adsk' モジュール見つからん問題解消

前からうっとうしいと感じていたのですが、こちらのターミナルで実行の やつですが 最初はわからなかったのですが、文法的な間違い等をチェックするのに 高速で便利です。実行すると 緑のところで、「'adsk'なんてモジュール無いよ!」と訴えかけてきます。 …

平面と球体の交差を作る1

気が付いたら、すっかりブログを更新していませんでした。かなり以前にフォーラムで質問したのですが、Fusion360の場合 平面と球体が接触している場合、交差を作っても何も出来ないんですよね。 CATIAの場合、接触であれば点が作成されます。ちょっと先の事…

Fusion360 APIのフォーラムでの質問

あぁ、ちょっと毒吐くかもしれない。APIのこちらの質問、 SketchCurve.trim returns incorrect object collection - Autodesk Community 色々と情報を書いてくれているのですが、ほぼ無意味なんですよ。 (ハードウェアUUIDとか、要らん)確かに作成中のコー…

3D曲線と遊ぶ1

時間が無い。とりあえず程度のコード。 #Fusion360API Python script #Author-kantoku #Description-3DCurve test import adsk.core, adsk.fusion, traceback def run(context): ui = None try: app :adsk.core.Application = adsk.core.Application.get() u…

APIからレンダリングを開始する

自分で答えておいて何ですが、出来るんですね。 Re: How do I programmatically control the render settings? - Autodesk Communityん~あまり使い場面が無いかな?

スクリプト新作時の雛形

Fusion360のスクリプトを新作した際、雛形のコードがありますが、 恐らくあれは、インストールフォルダ内の何処かにあるものをコピペ されるのだろうと思い、以前探したことがあります。(Win10) C:\Users\<UserName>\AppData\Local\Autodesk\webdeploy\production\<バー</username>…

使用可能な 外観/マテリアル リストをエクスポート

Fusion360の 外観/マテリアル をAPIで扱ったことが無かったのですが、 作ってみました。 #Fusion360API_Python script #Author-kantoku #Description-外観/マテリアルのリストをエクスポート import adsk.core, adsk.fusion, traceback def run(context): ui…

TSMファイル7

こちらの続きです。 TSMファイル6 - C#ATIA色々と迷う部分があり、先にインポートを作成しました。 何時もは ”出しゃばってはいけない” と思いスプリクトを作っていますが、 今回はアドインにしてます。・・・エクスポート側も出来上がったら 公開予定。アド…

CommandInputsの表示不具合っぽい時の対処

タイトルが異なりますが、こちらの続きです。 TSMファイル6 - C#ATIA何とか、この不具合のような状況を回避策を見付けてから 宿題に取り掛かりたいです。 コマンドを自作しダイアログを表示させる場ですが、 Helpのサンプルコードを見ても結構長いです。そこ…

Fusion360からVSCodeが起動しなくなった時の対処方法

こちらの続編ですが、同様の事例が出た場合の方のために 一通りまとめます。(ほぼ居ないとは思います) VSCode デバッグ時のサイドバーの変数 - C#ATIAざっくりですが環境です。 ・Win10 Pro ・Fusion360 Ver2.0.6670 ・VSCode Ver1.40.1※下記「削除」と記載…

TSMファイル6

こちらの続きです。 TSMファイル5 - C#ATIA前から感じるのですが、Fusion360APIのダイアログ スプリクトで失敗し、次に実行するとこんな感じになっちゃいます。 本来、1個だけテーブルを作りたいのに同じものが2個出来ます。失敗した際のCommandInput類の破…

globalな変数宣言位置

こちらに記載したのですが、Pythonのグローバル変数の宣言位置に ついて教えて頂きました。 Solved: Re: Does not work [Command Inputs API Sample] - Autodesk Community 宣言位置が悪いために、スプリクトの実行もデバッグも出来ない状態でした。 Helpに…

アントリム2

こちらの続きです。 アントリム1 - C#ATIAコントロールポイント付近にUVとなる曲線の作成は出来るように なりましたが、「内部レール」の挿入をAPIでは提供されていないのかも しれない と言う悲劇に直面して止まってます。 メソッドやプロパティが見つから…