iLogicによる設計の自動化などで作業効率化を図ります。
iLogic - 選択した寸法をセンター合わせ
iLogicの目次
選択した寸法をセンター合わせ
図面変更なのでずれた寸法をセンターに合わせます。
- 1.複数の設計ファイルで同じ自動化ルールを実行できるように外部ルールで作成します。
iLogicブラウザの外部ルールで追加したフォルダを右クリックして[新しい外部ルールを作成]をクリック。

- 2.任意の名前を入力して[保存]をクリック。

- 3.下記コードを入力して[保存]をクリック。
Imports Autodesk.Inventor Imports Autodesk.Inventor Imports Autodesk.Inventor Imports Autodesk.Inventor ' 改良版:選択した直線寸法をセンターにする(高さを維持 - X/Y両対応) Sub Main() Try ' アクティブドキュメントを取得 Dim oDoc As DrawingDocument = ThisApplication.ActiveDocument ' 選択セットを取得 Dim oSelSet As SelectSet = oDoc.SelectSet ' 処理した寸法の数をカウント Dim iCount As Integer = 0 ' 選択されているオブジェクトを処理 For i = 1 To oSelSet.Count If TypeOf oSelSet.Item(i) Is LinearGeneralDimension Then CenterDimensionText(oSelSet.Item(i)) iCount += 1 End If Next ' 選択されているものがない場合 If iCount = 0 Then MessageBox.Show("直線寸法を選択してからコードを実行してください。", "情報") End If Catch ex As Exception MessageBox.Show("エラーが発生しました: " & ex.Message, "エラー") End Try End Sub ' 寸法テキストを中央に配置する関数(高さを維持 - X/Y両対応) Sub CenterDimensionText(ByVal oDim As LinearGeneralDimension) Try ' 現在のテキスト位置を保存 Dim currentOrigin As Point2d = Nothing Dim hasCustomOrigin As Boolean = False ' 現在のテキスト位置を取得 Try currentOrigin = oDim.Text.Origin If Not currentOrigin Is Nothing Then hasCustomOrigin = True End If Catch hasCustomOrigin = False End Try ' 寸法線の中点を取得 Dim oMidPoint As Point2d = oDim.DimensionLine.MidPoint ' 寸法の方向を判定(水平か垂直か) Dim oDirection As UnitVector2d = oDim.DimensionLine.Direction Dim isHorizontal As Boolean = Math.Abs(oDirection.X) > Math.Abs(oDirection.Y) ' 新しい位置を設定 Dim newOrigin As Point2d If hasCustomOrigin Then If isHorizontal Then ' 水平寸法: X座標は中点、Y座標(高さ)は維持 newOrigin = ThisApplication.TransientGeometry.CreatePoint2d(oMidPoint.X, currentOrigin.Y) Else ' 垂直寸法: Y座標は中点、X座標(高さ)は維持 newOrigin = ThisApplication.TransientGeometry.CreatePoint2d(currentOrigin.X, oMidPoint.Y) End If Else ' カスタム位置がない場合は、寸法線の中点を使用 newOrigin = oMidPoint End If ' 新しい位置を設定 oDim.Text.Origin = newOrigin Catch ex As Exception Throw New Exception("寸法 " & oDim.Tag & " の処理に失敗: " & ex.Message) End Try End Sub
作成した外部ルールをリボンやショートカットに登録しておくと便利です。 - 4.
寸法を選択し、作成したルールを右クリックして[ルールを実行]すると寸法がセンターに配置されます。

