概要 - 点オブジェクトを作成する(VBA/ActiveX)

点オブジェクトは、たとえばオブジェクトにスナップしたり、オブジェクトからオフセットできるノードや参照点に便利なオブジェクトです。

点のスタイルと、スクリーンに対する相対サイズまたは絶対値を設定できます。

点オブジェクトの外観は、AutoCAD のシステム変数 PDMODE および PDSIZE がコントロールします。PDMODE に値 0、2、3、および 4 を設定すると、点を表すオブジェクトを指定できます。値 1 を指定すると、何も表示されません。



上述の値に 32、64、または 96 を指定すると、点を通過する図形の他に、その点の回りに描かれる形状も選択されます。



システム変数 PDSIZE は、PDMODE 値の 0 と 1 を除く点オブジェクトのサイズをコントロールします。0 を設定すると、グラフィックス領域の高さの 5% の位置に点が生成されます。正の PDSIZE 値は、点の形状の絶対サイズを指定します。 負数の値は、ビューポート サイズのパーセンテージと解釈されます。すべての点のサイズは、図面が再作図されると計算し直されます。

システム変数 PDMODE および PDSIZE の変更後、次に図面を再作図すると、既存の点の外観が変わります。

システム変数 PDMODE および PDSIZE を設定するには、SetVariable メソッドを使用します。

点オブジェクトを作成してから外観を変更する

次のサンプル コードは、モデル空間の座標(5, 5, 0)に点オブジェクトを作成します。その後でシステム変数 PDMODE と PDSIZE を更新します。

Sub Ch4_CreatePoint()
  Dim pointObj As AcadPoint
  Dim location(0 To 2) As Double

  ' Define the location of the point
  location(0) = 5#: location(1) = 5#: location(2) = 0#

  ' Create the point
  Set pointObj = ThisDrawing.ModelSpace.AddPoint(location)
  ThisDrawing.SetVariable "PDMODE", 34
  ThisDrawing.SetVariable "PDSIZE", 1
  ZoomAll
End Sub