概要 - ベクトルに沿ってオブジェクトを移動する(VBA/ActiveX)

すべての図形オブジェクトおよび属性参照オブジェクトを、指定したベクトルに沿って移動することができます。

オブジェクトを移動するには、そのオブジェクトの Move メソッドを使用します。このメソッドには、2 つの座標を入力します。これらの座標で、オブジェクトをどれだけ移動するかを示す変位ベクトルを定義します。



ベクトルに沿って円を移動する

この例は、円を作成し、その円を X 軸に沿って 2 単位移動します。

Sub Ch4_MoveCircle()
  ' Create the circle
  Dim circleObj As AcadCircle
  Dim center(0 To 2) As Double
  Dim radius As Double
  center(0) = 2#: center(1) = 2#: center(2) = 0#
  radius = 0.5
  Set circleObj = ThisDrawing.ModelSpace.AddCircle(center, radius)
  ZoomAll

  ' Define the points that make up the move vector.
  ' The move vector will move the circle 2 units
  ' along the x axis.
  Dim point1(0 To 2) As Double
  Dim point2(0 To 2) As Double
  point1(0) = 0: point1(1) = 0: point1(2) = 0
  point2(0) = 2: point2(1) = 0: point2(2) = 0

  ' Move the circle
  circleObj.Move point1, point2
  circleObj.Update
End Sub