C#ATIA

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

Fusion360API

凸包に挑んでみる5

こちらの続きです。 凸包に挑んでみる4 - C#ATIAいくらか形になったのですが、不要な面まで作成しまっている。 しかも、たった10個の点なのに、びっくりする程遅い。こちらをターゲットに取り組んではいるのですが。 Solved: How to create a convex hull by…

不要なスケッチ点をマージし削除する

こちらの問題、ひょっとしたらスプリクト一発で解決出来るかな? と思いました。 DXFの線分を繋げるには - Autodesk Communityこんな感じです。 #FusionAPI_python SketchPointsMerge #Author-kantoku #Description-スケッチのマージ可能な端点をマージする …

凸包に挑んでみる4

こちらの続きです。 凸包に挑んでみる3 - C#ATIA面倒なため非公開ですが、前回のコードを視覚的に確認出来るように修正し 実際に四面体を見ると そこそこ良さそうなのですが、何度試してみても点群に対して薄い形状に なりやすいんです。気のせいかも知れな…

凸包に挑んでみる3

こちらの続きです。 凸包に挑んでみる2 - C#ATIA2D凸包のスタートは1本の直線からなのですが、3Dは4面体からが正攻法のようです。 その為、出来る限りユニークで直線に並ばない4点が欲しいのですが、 具体的なアルゴリズムがわかりません。色々と試した結果…

凸包に挑んでみる2

こちらの続きです。 凸包に挑んでみる1 - C#ATIA昨日のイマイチな処理、使用すべきベクトルが間違っていたと言うお粗末な結末。 ある程度修正したので、利用価値があるものかどうか不明ながら公開。 #FusionAPI_python ConvexHull2D #Author-kantoku #Descri…

凸包に挑んでみる1

こちらの続きです。 スケッチにランダムな点を作成する - C#ATIAランダムに描かれた点を元に、凸包となる線を描きます。 一瞬、上手く行ったように見えたのですが、左下付近の境界がNGです。

スケッチ曲線を円弧近似化する

以前こちらで作成したCATIAのマクロをFusion360用にしてみました。 曲線と戦ってみる9 - C#ATIA #FusionAPI_python #Author-kantoku #Description-ArcApproximation #スケッチ曲線の円弧近似化 import adsk.core, adsk.fusion, adsk.cam, traceback def run(cont…

スケッチにランダムな点を作成する

これ自体は無意味なコードですが、後で使うような気がしたので 作ってみました。 #FusionAPI_python #Author-kantoku #Description-新たなスケッチを作成しランダムに点を作成 import adsk.core, adsk.fusion, traceback import random def run(context): ui = N…

選択時のみ原点平面を表示する

久々にFusion360のAPI。こちらに頭に思い付いた手順をスプリクトにしたのですが Re: スケッチの線分コマンドのようなスケッチ選択を作成するにはどうすればいいですか - Autodesk Community考えたら、アクティブなコンポーネントの原点の表示状態は選択時のみの…

ObjectCollectionオブジェクト

先週作っていたスプリクト、行き詰まり感からちょっと放置。 こちらに面白そうなテーマがあったので、取り組んでみました。 How to remove inner sketch lines from an intersection sketch? - Autodesk Community空のスケッチを選択したらエラーとか、移動しているコンポ…

マウスカーソルの座標値を取得する6

こちらの続きです。 マウスカーソルの座標値を取得する5 - C#ATIA取り組んでいる時間が無さそうなので、現状のものを公開しておきます。 そこそこ機能するはずです。 #FusionAPI_python #Author-kantoku #Description-MouseMoveTest ver0.0.3 import adsk.co…

マウスカーソルの座標値を取得する5

こちらの続きです。 マウスカーソルの座標値を取得する4 - C#ATIA前回上手くいかなかった原因が、単にチェックすべきベクトルを間違えていた と言う、お粗末な内容でした・・・。(Fusion360は正しいです)現状、ルートコンポーネントのZ軸に対しての角度は…

マウスカーソルの座標値を取得する4

こちらの続きです。 マウスカーソルの座標値を取得する3 - C#ATIA 3D空間でマウスの位置が取得できるようになったので、マウスの位置で 曲率と勾配角度を動的に取得したいです。そう、CATIAのオンザフライの機能を 実現したいと細々とやってます。 テストモデルは…

マウスカーソルの座標値を取得する3

こちらの続きです。 マウスカーソルの座標値を取得する2 - C#ATIA前回はマウスカーソルの3D位置は正しい値が取得できていませんでしたが、 今回は正しい値が取得出来ているはずです。 #FusionAPI_python #Author-kantoku #Description-MouseMoveTest ver0.0.3 impor…

全ての面を取得する

細々とFusion360のAPIも挑戦しているのですが、 イマイチFusion360APIも理解できていない上に、Pythonも理解できていないです。考えている処理で、全ての面を取得したいのですが出来るだけ 素早く取得したいです。 ドキュメントから辿って行く事になるのですが 結構深…

無限直線と面の交差した座標の取得2

こちらの続きです。 無限直線と面の交差した座標の取得 - C#ATIAまず、こんなボディを作ります。底面の中心が原点です。 前回のコードを修正しました。 #FusionAPI_python #Author-kantoku #Description-無限直線と選択面の交差テスト import adsk.core, adsk.f…

無限直線と面の交差した座標の取得

タイトルが異なりますが、こちらの続きです。 マウスカーソルの座標値を取得する2 - C#ATIA 不人気ですが、こちら諦めていないです。自宅で細々と(半分寝ながら)作っていた時は上手くいかなかったの ですが、何故か会社では上手くいきました。 #FusionAPI_…

マウスカーソルの座標値を取得する2

こちらの続きです。 マウスカーソルの座標値を取得する - C#ATIA前回よくわからず、スコープを大きくした変数ですが、こんな感じにすると、 commandInputs が EventHandler の args から取得出来る事が判りました。 (commandInputs はVBAのフォームのような…

マウスカーソルの座標値を取得する

先日、ちょこっとFusion360APIやった際に色々と調べていたら 発見したので記載。よく探してみたら、同様のことをこちらでやってました…。 MouseMoveEvent サンプル - C#ATIA前回やった際は、ディスプレイ上のマウスカーソル位置座標(左上が0,0)の取得しか 出…

ボディをかき集める

Fusion360と他のCADを併用されている方いらっしゃいますか?Fusion360は色々なフォーマットのデータを読み込んでくれるので 助かっているのですが、Fusion360上ではこんな感じで表示しているのに 中間フォーマットでエクスポートしたものを、他のCADで読み込…

3Dな曲線をエクスポートしてみる1

修正すべき部分は多々ありますが、インポートに関しては 一区切り付け、エクスポートに取り掛かろうかと思ってます。最初はインポート機能は、・Fusion360でsirenの処理呼び出し ↓ ・siren側でFusion360用のPythonコードをファイルに書き出し ↓ ・Fusion360で書き…

スケッチをサーフェスにラップする別の方法を考える1

タイトル違いますが、こちらの続きです。 曲面上を2点クリックし直線を作りたい2 - C#ATIA前回の最後の方に、"ゴリゴリ計算しないで簡単に出来そう" のような事を書きましたが、思うように行かないです・・・。最大の原因がスケッチに書かれた曲線が、2Dではなく3Dな…

曲面上を2点クリックし直線を作りたい2

ここ一ヶ月ぐらいで、少し知識を得たのでこちらの続きです。 曲面上を2点クリックし直線を作りたい - C#ATIA 以前のコードでは、曲面上に出来上がる直線(正しくはスプライン)の 通過点が表示された状態で、非常に邪魔でした。 が、インポートスプリクトを取り組んだおかげで、…

Upし忘れた動画

こちらで上手くUp出来なかった動画 3DCAD中間ファイルの3Dな点・曲線をインポートするスプリクト - Autodesk Communityこれです。

点・曲線をインポートするスプリクト 修正2

こちらの続きです。 点・曲線をインポートするスプリクト 修正1 - C#ATIA 円弧に続いて円も! と思っているのですが、上手くいかないです。 スケッチ内の円は sketch ┗sketchCurves ┗sketchCircles Helpに属しているのですが、sketchCircles オブジェクトの sketchCircle…

点・曲線をインポートするスプリクト 修正1

先日、何とか3DCAD中間ファイルの3Dな点・曲線をインポートするスプリクトを Upしました。 3DCAD中間ファイルの3Dな点・曲線をインポートするスプリクト - Autodesk Community 多数ある問題点の一つなのですが、円・円弧をNurbs曲線として インポートしている部分の修正を考えています。 …

Igesファイルの3D曲線のインポートに挑む6

こちらの続きです。 Igesファイルの3D曲線のインポートに挑む5 - C#ATIA機能的に足りない部分もあるのですが、公開出来そうなレベルに なってきました。今更なのですが、Stepファイルが失敗してました…。 何とか今週中には公開したい(希望)

Igesファイルの3D曲線のインポートに挑む5

こちらの続きです。 Igesファイルの3D曲線のインポートに挑む4 - C#ATIA フォーラムでUpされたデータではどうしてもFusion360が落ちてしまい ましたが、やっと、開いた円弧が上手くいかない原因がわかりました。円弧の開始・終了の角度(単位 ラジアン)の精度が高…

Igesファイルの3D曲線のインポートに挑む4

こちらの続きです。 Igesファイルの3D曲線のインポートに挑む3 - C#ATIAこちらの動画から進展していません。未だに開いた円弧のインポートに苦戦中。 悪い事にエラーで止まるのではなく、Fusion360自体が落ちてしまい 原因の特定に時間がかかりました。 開いた円弧(…

パラメトリック時のsketch.includeがおかしい

続きのような・・・ Igesファイルの3D曲線のインポートに挑む3 - C#ATIA上手くいかないので、開いた円弧の作成テストです。円弧を作成し、同じ円弧をスケッチ内に3回取り込むだけのコードです。 #FusionAPI_python #Author-kantoku #Description-ArcTest2 import adsk.cor…