C#ATIA

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

続・水 問題

相変わらず勘弁して欲しい程忙しい。9L(3^2)と16L(4^2)の容器で、13L(4^2以下の最大素数)を作る の答えを書いていなかったので、こちらの続きです。 水 問題 - C#ATIA (週末アクセス数が閑古鳥なのですが、先週は意外な程アクセスが・・・。)・9L(…

水 問題

業務が忙しくなり、スプリクトの続きがしばらく書けそうにないです。子供の宿題で「先生にクイズを出す」と言うものが終わっていない との事。 風呂で一緒に考えていました。以前出した 「4Lの容器と9Lの容器の2つを使って、7Lの水を作り出す」 と言う話にな…

バウンダリのまとめて変更する

以前、工具のコンテキストメニューから交換可能なツールパスを リストアップし、複数の任意のツールパスの工具を変更出来るように するマクロを作りました。 工具コンテキストメニューから工具変更2 - C#ATIA 想像以上に効率が良く、頻繁に使用しています。最近になり…

Fusion360スプリクト作成の取っ掛かり3

こちらの続きです。 Fusion360スプリクト作成の取っ掛かり2 - C#ATIA前回までは、何かの処理を行うためのオブジェクトの探し方を行いました。 (多々不足していますが・・・)実際にスプリクトを作成する際、毎回事前選択するのは現実的ではありません。 今…

Fusion360スプリクト作成の取っ掛かり2

こちらの続きです。 Fusion360スプリクト作成の取っ掛かり1 - C#ATIA昨夜は押し出しで説明するつもりだったのに、画像はスケッチでしたね。 (半分寝ながら書いていました)前回のようにタイムラインを選択してスプリクトを実行すると 押し出しとしてダイア…

API and Scriptsの覚書

APIのフォーラムで、ひょっとしたら今後利用するかも知れない 処理等、気になったトピの覚書です。(埋もれちゃうそうなので)・validateInputs Event以外でOKボタンを制御する方法? Solved: Is there a way to "request" a validation event? - Autodesk C…

Fusion360スプリクト作成の取っ掛かり1

Fusion360のスプリクトを作成する際の取っ掛かりになれば、と思い少し 役立つのではないかな?と思うスプリクトを作成しました。(後ほど) スプリクト(やアドイン)のサンプルは結構多く見付かります。代表的なものは 公式Helpのものです。 Help全てを見た訳…

VSCode

こちらの続きです。 Brackets - C#ATIAVSCodeインストールすることにしました。インストール時間短いんですね。 Marketplaceで探したら、Fusion360のポストコンフィグ用の拡張あるじゃないですか! PowerMillのやつも作って欲しい。

Brackets

Fusion360のCAMで、ポスト処理後にNCファイルが表示されるのですが、デフォルトで 起動するエディタが「Brackets」です。ポストコンフィグの修正等にも使用していたのですが、・・・シンプルすぎて辛いんです。 せめて色分けだけでもして欲しいところなので…

あなたのアカウント上の全ファイルリストを取得

連日、探りながら色々と試してはいるのですが、成果が上がらない状況です。少し前にこちらのトピの回答をしました。 Re: Is there a script to get a full list of my files - Autodesk Community手元にあったものをそのままベタッと貼り付けたのですが、 よ…

Fusion360 PythonスプリクトがSWIG

以前、フォーラムのこちらで Fusion360のPythonスプリクト(アドイン)は"SWIG" と言うものを利用している と書きました。 Re: Auto LISP はいつごろ サポートされますか? - Autodesk Communityこれ、公にはされていないと思います。 何故それを知ったのか…

複数選択での無効化

PowerMillで単体の要素の無効化(未計算状態)、ツールパス等のフォルダ全体を 無効化出来るのですが、任意の複数の要素だけを無効化することが出来ません。その為のマクロを作成しました。 //pm2019 macro //Invalidate.mac Ver0.0.1 //無効 //------------…

CommandDefinitionsオブジェクト3

こちらの続きです。 CommandDefinitionsオブジェクト2 - C#ATIA実はスプリクトでのコマンドの呼び出しの他に、長い間悩んでいた事が ありました。エンコードです。こちらのコードは、最初に示したコードとほぼ同じなのですが、 コマンド名(日本語)をファイ…

CommandDefinitionsオブジェクト2

こちらの続きです。 CommandDefinitionsオブジェクト1 - C#ATIA極めて手抜きですが、コマンドIDと日本語でのコマンド名のリストです。 (一部、AddInによるコマンドも入っている可能性がある為、完全にネイティブではない可能性があります) コマンドID コ…

CommandDefinitionsオブジェクト1

マクロやスプリクトでは、常に手動操作と同じ機能を利用する事は出来ません。 それはソフト自体がAPIとして、オブジェクト・メソッド・プロパティ等を公開して くれているか否かに依存しているのが、正直なところです。それらが公開されていない場合でも極わ…

ビュー名のテキストを追加する

こちらで記載した事の確認です。 複数のビュー名とリンクした状態のテキストを新作 - C#ATIA属性リンクを持ったテキストの作成は非常に面倒なのですが、 (しかも確認する手段が無い)単純にビュー名とリンクした状態の テキストの作成であれば単純です。 日…

右クリックのショートカットキー

要はキーボード操作でコンテキストメニューを表示させたいんです。 検索したら出てきました。 【簡単‼】マウスを使わずに右クリックをキーボードで表示させる方法 | カラバリあるじゃない! もっと早く調べれば良かった。 「アプリケーションキー」か「Shift…

Assy状態の位置を保ちながら、コンポーネント毎にSTLでエクスポート

モデリングはFusion360で、レンダリングは他のソフトで と言う 需要があるようです。こちらを見ると。 Solved: Exporting A design to multiple STL's with their location ant rotation data. - Autodesk Community内容的には、Assy状態丸ごとでSTLでエクス…

複数のビュー名とリンクした状態のテキストを新作

恐らく、こちらの2つの目的を一体化したものがお望みだろうと 思われる質問を頂きました。 カレントビューの角度や生成スタイルの取得2 - C#ATIA 検索したテキストの文字を、指定したテキストに追記する - C#ATIA言葉にすると・・・ 「複数のビュー名とリン…

検索したテキストの文字を、指定したテキストに追記する

御質問頂いた内容を正しく理解できているかわからないのですが、 「Drawで検索してHitしたテキストの文字を、他のテキストに追記したい」 と理解しました。テストするものは、このような感じにしました。 コードはこちら。 'vba Sub CATMain() 'ドキュメント Dim …

カレントビューの角度や生成スタイルの取得2

こちらの続きです。 カレントビューの角度や生成スタイルの取得 - C#ATIA前回「IDやSuffixが関係してくると、もうちょっとややこしいです。」と書いた ビュー名辺りのお話です。こんな状態のデータです。 ここでこちらのコードを実行します。 'vba Sub CATMa…

エクステンション

今まで気が付かなかったのですが、Fusion360の機能に「エクステンション」と言うのが 増えていたんですね。 Help 主に「製造」(CAM)の機能の様です。 ・・・よく読んだら「選ばれたお客様が 使用できます」って書かれてます。もちろん僕は利用できないです…

ツールパスバッチ処理 時間測定2

こちらの続きです。 ツールパスバッチ処理 時間測定 - C#ATIA”処理が高速になったよ” と言う事で、PowerMill2020と2019のツールパスの 計算時間の違いを測定する為に、以前の物を変更しました。 //pm2019 macro //Toolpath_Batch_Time.mac ver0.0.2 //using downme…

サーフェスの重心をDrawのテーブルに書き込む2

こちらの続きです。 サーフェスの重心をDrawのテーブルに書き込む - C#ATIAちょっとお望みの状態では無かった様で、修正しました。 'Drawからマクロをスタートし、Partのサーフェスを指定 'Drawにテーブルを新作し、重心位置を書き込む2 Option Explicit Sub CATMa…

サーフェスの重心をDrawのテーブルに書き込む

御相談頂いた、サーフェスの重心をDrawのテーブルに書き込むサンプルです。Drawからスタートし、途中でPartに切り替えて何かを指定しなければならない マクロの場合、SelectElement4を使用する必要が有ります。(他の手法は知りません) 'vba 'Drawからマク…

コンポーネント残し代をコピーする

アクセス数がグッと減る、PowerMillネタです。少し前から一部のマクロが機能しなくなりました。原因がわからない上、 再現性が良くわからずサポートさんに相談したくても出来ない状況が続いていました。先日、手動操作で再現出来たので相談した所、バグだと…

カレントビューの角度や生成スタイルの取得

「ビューの角度や生成スタイルの変更」について、御質問頂きました。変更についてのサンプルコードは書きにくいため、カレントビュー情報を 幾つか表示するサンプルコードを作ってみました。 Sub CATMain() Dim msg As String Dim pi As Double: pi = 4 * At…

カレントビュー内のテキスト・寸法全てを削除する

「Drawのカレントビュー内のテキストと寸法を削除したいが、 最初の1個しか削除されない」 とのご相談を頂きました。とりあえず、検索の現行選択でテキストと寸法を選択するマクロの記録をし、 不要そうな部分を削除しつつ、変数名を修正したものがこちらで…

点を通って平行な平面作成

CATIAだと普通に「点を通って平行」な平面は作成出来るのですが、 Fusion360は出来ないんですよね。 そんなに難しいものでも無さそうに感じるのですが・・・。こちらに質問があったので、サンプルスプリクトを作ってみました。 Create Sketch with Point and Ve…

指定した要素を新たなPartにコピペして保存

久々のCATIAのマクロです。アクティブなPartファイル上で指定した要素を、新たなPartに ”結果として” で コピペし保存します。 'vba NewPart_CopyAndPasteResult using-'KCL0.0.13' by Kantoku '指定した要素を新たなPartファイルに"結果として"でコピペする…