概要 - 寸法スタイルを作成、修正、コピーする(VBA/ActiveX)

DimStyles コレクションを使用して、図面内の寸法スタイルを作成および修正することができます。

新しい寸法スタイルを作成するには、Add メソッドを使用します。このメソッドでは、新しい寸法スタイルの名前を指定する必要があります。

AutoCAD ActiveX オートメーションでは、新しい寸法スタイルを追加したり、現在の寸法スタイルを変更することができます。StyleName プロパティにより、指定した寸法に関連付けられた寸法スタイルを変更することもできます。

既存のスタイルまたは優先のセットをコピーすることもできます。コピー元のオブジェクトから新しい寸法スタイルにコピーするには、CopyFrom メソッドを使用します。コピー元のオブジェクトは、別の DimStyle オブジェクト、寸法、ToleranceLeader オブジェクトのほか、Document オブジェクトとすることもできます。スタイル設定を別の寸法スタイルからコピーした場合、スタイルは正確に複製されます。寸法、Tolerance、または Leader オブジェクトからスタイル設定をコピーした場合、オブジェクトの優先を含む現在の設定が新しいスタイルにコピーされます。Document オブジェクトのスタイルをコピーした場合、アクティブな寸法スタイルに加え、すべての図面の優先設定が新しいスタイルにコピーされます。

寸法スタイルと優先をコピーする

次の例では、3 つの寸法スタイルを新規作成し、ドキュメントの現在の設定、指定されている寸法スタイルおよび寸法を、新しい寸法スタイルにコピーします。適切な設定を行ってからこの例を実行すると、異なる寸法スタイルが作成されていることが分かります。

  1. 新規図面を作成し、アクティブにします。
  2. 新規図面に長さ寸法を記入します。この寸法は図面内で唯一のオブジェクトです。
  3. 寸法線の色を黄色に変更します。
  4. システム変数 DIMCLRD[寸法線の色]を 5 (青)に変更します。
  5. 次に示すコードを実行します。
    Sub Ch5_CopyDimStyles()
        Dim newStyle1 As AcadDimStyle
        Dim newStyle2 As AcadDimStyle
        Dim newStyle3 As AcadDimStyle
    
        Set newStyle1 = ThisDrawing.DimStyles.Add _
     ("Style 1 copied from a dim")
        Call newStyle1.CopyFrom(ThisDrawing.ModelSpace(0))
    
        Set newStyle2 = ThisDrawing.DimStyles.Add _
     ("Style 2 copied from Style 1")
        Call newStyle2.CopyFrom(ThisDrawing.DimStyles.Item _
     ("Style 1 copied from a dim"))
    
        Set newStyle2 = ThisDrawing.DimStyles.Add _
     ("Style 3 copied from the running drawing values")
        Call newStyle2.CopyFrom(ThisDrawing)
    End Sub

    [寸法スタイル管理] ダイアログ ボックスを開きます。現在 3 つの寸法スタイルが表示されています。Style 1 は、黄色の寸法線です。Style 2 は Style 1 と同じです。Style 3 は青色の寸法線です。