Add3DFace メソッド(ActiveX)

4 つの頂点を指定して、3DFace オブジェクトを作成します。

サポートされているプラットフォーム: Windows のみ

構文と要素

VBA:

RetVal = object.Add3DFace(Point1, Point2, Point3 [, Point4])
object

タイプ: BlockModelSpacePaperSpace

このメソッドが適用されるオブジェクト。

Point1

アクセス: 入力のみ

タイプ: バリアント型(3 要素の倍精度浮動小数点数型配列)

3DFace オブジェクト上の点を指定する 3D WCS 座標。

Point2

アクセス: 入力のみ

タイプ: バリアント型(3 要素の倍精度浮動小数点数型配列)

3DFace オブジェクト上の点を指定する 3D WCS 座標。

Point3

アクセス: 入力のみ

タイプ: バリアント型(3 要素の倍精度浮動小数点数型配列)

3DFace オブジェクト上の点を指定する 3D WCS 座標。

Point4

アクセス: 入力のみ; オプション

タイプ: バリアント型(3 要素の倍精度浮動小数点数型配列)

3DFace オブジェクト上の点を指定する 3D WCS 座標。省略すると、この点は Point3 の座標と同じ値になり、3 つの辺を持つ面を作成します。

戻り値(RetVal)

タイプ: 3DFace

新しく作成される 3DFace オブジェクト。

注意

3 つの辺を持つ面を作成する場合、最後の点は必要ありません。SetInvisibleEdge メソッドを使用して、エッジの表示を設定します。

各点を時計回り、または反時計回りで順番に入力して 3DFace オブジェクトを作成します。直前に作成した面の最後の 2 点を、新たに追加する面の最初の 2 点として指定すれば、隣接する面をいくつも作成することができます。



VBA:

Sub Example_Add3DFace()
    ' This example creates a 3D face in model space.

    Dim faceObj As Acad3DFace
    Dim point1(0 To 2) As Double
    Dim point2(0 To 2) As Double
    Dim point3(0 To 2) As Double
    Dim point4(0 To 2) As Double
    
    ' Define the four coordinates of the face
    point1(0) = 0#: point1(1) = 0#: point1(2) = 0#
    point2(0) = 5#: point2(1) = 0#: point2(2) = 1#
    point3(0) = 5#: point3(1) = 5#: point3(2) = 1#
    point4(0) = 1#: point4(1) = 10#: point4(2) = 0#
    
    ' Create the 3DFace object in model space
    Set faceObj = ThisDrawing.ModelSpace.Add3DFace(point1, point2, point3, point4)
    ZoomAll
    
End Sub

Visual LISP:

(vl-load-com)
(defun c:Example_Add3DFace()
    ;; This example creates a 3D face in model space.
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))

    ;; Define the four coordinates of the face
    (setq point1 (vlax-3d-point 0 0 0)
          point2 (vlax-3d-point 5 0 1)
          point3 (vlax-3d-point 5 10 1)
          point4 (vlax-3d-point 0 10 0))
    
    ;; Create the 3DFace object in model space
    (setq modelSpace (vla-get-ModelSpace doc))
    (setq faceObj (vla-Add3DFace modelSpace point1 point2 point3 point4))
    (vla-ZoomAll acadObj)
)