C#ATIA

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

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

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

投影面積が取得できない1

今月に入ってますます余裕が無く、気が付いたら1日しか書いてませんでした。 (しかもCADネタじゃない・・・)APIフォーラムを見ていても答えられそうなものも無い様な、 そう思うように自分に暗示をかけているような・・・。ちょっと取り組めそうなのがこち…

ダウンタイマー ボカロver

こちらの続きです。 ダウンタイマー - C#ATIA昨年は1曲もupしなかったけど、今年は2曲目ですね。 【公式】 ダウンタイマー/かいりきベア feat.初音ミク - YouTube 新曲じゃないけど、やる気出してくれたのかな?

点で面に接する平面

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

図面の自動化

Fusion360です。 ちょっと前に導入された機能なのですが、"図面の自動化”これ凄いですね。 Help手元のデータで試してみました。 寸法値が線など他の要素と重なって見にくい部分はあるものの 十分ですよ。寸法をチマチマ入れるより位置を調整する程度の 方が…

選択セットを作る

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

再発明の失敗

あまり細かな事は書きませんが、こちらに僕がupしたgithubの リンクがあります。 Fusion 360 Internals: Trying to re-invent Fusion’s GUI (and failing)昨年、記載された御本人から "あなたも興味があるだろう" と 直接メールを頂いて教わりました。 知識…

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

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

イナーシャの取得

イナーシャが欲しいのですが、ササっと検索してもProductばかり見つかったのですが だったのですが、サーフェスで欲しいです。結局、全部入りのサイトがありました。 Measuring Mass and Inertia | CATIA V5 Automation消えてしまうと困るので、お借りする。…

BrowserCommandInputへ初期値の受け渡し

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

VBE.CommandBars

VBA

こんなの知らなかった・・・。 'vba Option Explicit Sub commandBar_test() Dim vbe As Object Set vbe = Application.vbe 'CommandBar Dim cBar As Object Set cBar = get_commandBar("Custom1") 'CommandControl Dim myControl For Each myControl In cBa…

VBAのリスト問題5

VBA

こちらの続きです。 VBAのリスト問題4 - C#ATIAいよいよ先人の方々が作られたものを試す事にします。 githubで見ても、結構な数が公開されていますね。いかに他の方々も 悩まれているというか、不満に思っているかが分かります。多すぎて、とても全ては試せ…

VBAのリスト問題4

VBA

こちらの続きです。 VBAのリスト問題3 - C#ATIA 進みが悪い・・・。続いて動的配列です。Long型だけで比べるとこんな感じです。 **可変長配列** Long 代入:0.0234375s 呼出:0.0234375s **可変長配列 Preserve** Long 代入:0.9375s 呼出:0.0234375s呼び出しは…

VBAのリスト問題3

VBA

こちらの続きです。 VBAのリスト問題2 - C#ATIAあぁ配列試す前に、書くべきでした・・・・。 ところで、お気付きでしょうか?(何が?) コレクションの結果(やる度に結果は変わります)のLong型を 扱ったものですが、 **コレクション-キー無し** Long 代入:0…

VBAのリスト問題2

VBA

こちらの続きです。 VBAのリスト問題1 - C#ATIA続いては固定長配列です。もう、やらなくてもこれが一番速いのが 分かっているのですが、指標的な意味合いです。 Private Sub test3( _ ByVal Count As Long) Dim ary(50000) As Long Dim i As Long For i = 0 …

VBAのリスト問題1

VBA

"VBAのリスト"としましたが、使うなら配列か?コレクションか? と言う事です。 多くの先人の方々が、実測し答えも出ているような気もしますが、 githubで公開されているものや自作も含め、そろそろ自分の中での 答えを出したい気持ちがあります。 (配列と…

リファクタリング

VBA

昨年末の予想通りすっかり余裕が無く、更新していませんでした。あまり書ける事が無いものの、Bingチャット(Copilot)は チョロチョロ試しています。 ある処理でもうちょっと良い方法が無いものかと思い、 試した所、ソコソコの長さのものが一つの関数で出力…

コレクション内のオブジェクトのプロパティを利用したソート2

VBA

こちらの続きです。 C#ATIABingチャットも良いのですが、こちらのコメント欄に記載した phindと言うサービスの存在を知りました。 Bingチャットでコードレビュー - C#ATIAコーディングに関してはGPT-4を上回ると言う事らしいですが、 それ以上にBingチャット…

コレクション内のオブジェクトのプロパティを利用したソート1

VBA

あけましておめでとうございます。 本年もマイペースでやっていきます。年明け早々、あの様な震災があったり、それに伴った人災(航空機の接触)と 心痛む出来事の連続で唖然としつつ、普通に正月を迎えられることが 非常に幸せな事なのだと感じております・・…

2023年を振り返る

ちょっと早い様な気もしますが、今年はもう店じまいです。年頭に、こちらで"答え合わせするつもりもない"と記載しました。 2023年の目標 - C#ATIA ・・・何一つ達成していません。Autodesk App Storeに アップ出来なかった事は非常に悔やまれます。 〇CATIA …

Bingチャットでコードレビュー

VBA

正式な名称は”Bingチャット”では無く、"ウェブ版Copilot"かも知れない・・・ ※Copilotが付くサービスが多すぎてわからないChatGPTでは無くBingチャットを利用したのは、無料のChatGPTは GPT-3.5なのに対し、BingチャットはGPT-4だと言う単調な理由です。 GPT…

ソリッドをサーフェス化

ソリッドをサーフェス化したい場面はそれ程多くないとは 思いますが、忘れつつあるのでテストしました。 'vba Option Explicit Sub main() Dim pDoc As partDocument Set pDoc = CATIA.ActiveDocument Dim pt As Part Set pt = pDoc.Part Dim bdy As Body Se…

mayo v0.8.0

こちらの続きです。 mayo起動しなくなる・・・(復旧方法あり) - C#ATIA2バイト文字のファイルを扱うと起動しなくなる不具合が有りましたが、 v0.8.0で解決されています。 GitHub - fougue/mayo: 3D CAD viewer and converter based on Qt + OpenCascadeも…

VBAで.gitignoreを読み込み、判断する

VBA

VBAで".gitignore"ファイルを読み込み、判断したいんです。 ".gitignore"ファイルはgitで監視対象から無視するためのファイルです。 (わかりにくい表現ですね。調べて下さい・・・)".gitignore"ファイルでは、フォルダーの指定も出来るのですが、 VBAのプ…

形状セットの深さを表示

この様な形状セットがあります。 このPart3の深さを示すための文字列を作りたいです。 こんな感じの文字列です。 Product3\Product2\Part3あぁ¥マークが変わっちゃう・・・。こんな感じにしました。 'vba Option Explicit Sub CATMain() Dim pDoc As partDo…

AIとCAD

こちらの記事を拝見しました。 https://www.worldcadaccess.com/blog/2023/12/new-companies-that-produce-ai-based-cad.htmlお、結構進んでいる! と思ったのですが、そうでも無いみたいです。 しかし、こんなサービスよく見つけられるなぁ。個人的にはCAD…

VBAエディタの取得

VBA

タイトル異なりますが、こちらの続きです。 CATVBAの標準モジュールをマクロで削除したい (希望)2 - C#ATIA もう、7年も前の話だ・・・。 ちょっと先々の事を考えて、VBAのエディターを操作したくなる 気がしたので、復習がてらExcelでも利用出来るようにと考えてお…

pycatiaを味わう6

こちらの続きです。 pycatiaを味わう5 - C#ATIA時間が無く書けなかったので、思い出しつつ書くので 間違っている可能性が有ります。can_execute関数では、アクティブなドキュメントのタイプで 実行出来ない場合をはじき出す為の関数なのですが、生憎 pycatia…

自作2Dの点とベクトル

VBA

前にも作ったのですが、やっぱり必要性を感じるので少し育てました。catiaのクラス名とバッティングする為、アンダーバーを入れることにしました。点クラスです。トレランス付きの一致を追加しています。 'vba Point_2D Option Explicit Private x_ As Doubl…

Period

また書きかけているのに放置してますね・・・。ちょっと疑問に思った事がありまして、試しました。まず、このような円や円弧をDrawで描きます。 続いてこんなマクロ(VBA)を作成しました。 'vba Option Explicit Sub CATMain() Dim sel As Variant 'Selection…