見出し画像

Inventor / iLogic : パーツモデルをマルチソリッドで色分け

Inventorのパーツモデルをソリッドで色分けするプログラムを作ってみました。以前にも作って紹介していますが、今回は、その改良版です。

使い道

構想設計をマルチソリッドを活用してパーツモデルで作成する事を推奨しています。パーツ間の連携、位置関係などが作りやすいからです。

ただ、マルチソリッド同士の区別がつきにくくなるので、ソリッド毎に色を付けて区別する様にしています。これが、結構面倒くさい作業です。

ソリッドを選択して、プロパティを表示させて、外観を選択(ここでどれにしようかと悩んだりします)

このプログラムを使うと、パーツ内になるすべてのマルチソリッドを色分けします。つまり、外観が既定のままのマルチソリッドパーツを

外観が既定のままのマルチソリッドパーツ
プログラム実行後

適当な色で色分けします。自分の好みの色で配色されるようにしているので、いい感じで色分けされています。もし、気に入らない場合は、プログラムを再度実行すると、別の配色になります。

プログラムを再度実行後

準備

  1. アドインをインストールする

  2. 以下のルールを参考にして、iLogicルールを作成

AddReference "YO_InvTool_for_iLogic.dll" 
'クラスライブラリの参照
Sub Main
	Dim oClass As New YO_InvTool_for_iLogic.PartColorMap
	oClass.InvApp = ThisApplication
	oClass.oDoc= ThisApplication.ActiveDocument
	oClass.ColorMapByMultiSolid
End Sub

使用方法

  1. ソリッドで色分けしたいパーツを開く

  2. ルールを実行する

  3. 結果を確認する

説明

  • 外観は、AutoCADの色番号を基に作成しています。

  • アドインは、以下の場所から最新版をダウンロードできます。

ソリッドを追加した時

色分けをした後、さらに設計を進めていくと、新しいマルチソリッドが作成されます。図は、カバーを2点追加した状態です。追加のソリッドが、既定の外観になっています。

ソリッドが追加された

これは、プログラムを再度実行すれば、追加ソリッドも色分けされます。

プログラムを再度実行後

ソリッドを半透明にする

カバーなので、当然、内部のソリッドが隠れてしまいます。こういう場合は、半透明の外観にしないと内部が見えません。これも手数がかかってしまうので、指定したソリッドを半透明にするプログラムも作ってみました。

AddReference "YO_InvTool_for_iLogic.dll" 
Sub main
	
	Dim oClass As New YO_InvTool_for_iLogic.PartColorMap
	oClass.InvApp=ThisApplication
	Dim oBody As Inventor.SurfaceBody = ThisApplication.CommandManager.Pick(kPartBodyFilter, "Select Body: ")
    
	oClass.TranslucentThisBody(oBody)
	
End Sub

選択したボディ(ソリッド)の外観を調べて、その外観を基に半透明にした外観で置き換えるというものです。これを実行すると、内部が見える様になります。

一連の操作は、以下の動画を参照ください。


役に立った!という記事にはぜひサポートお願いします。サポート頂けると大変に励みになります。