Click or drag to resize

MeshEditManagerAddPrimitiveBox Method

Body 노드에 Box Primitive 생성

Namespace:  VIZCore3D.NET.Manager
Assembly:  VIZCore3D.NET (in VIZCore3D.NET.dll) Version: 2.8.24.1104 (2.8.24.1104)
Syntax
C#
public int AddPrimitiveBox(
	int bodyIndex,
	List<float> length,
	Matrix3D matrix,
	Color color,
	bool rebuildData,
	float unitScale = 1f
)

Parameters

bodyIndex
Type: SystemInt32
바디(Body) 노드 인덱스
length
Type: System.Collections.GenericListSingle
Length : [0] - X Axis. Length, [1] - Y Axis. Length, [2] - Z Axis. Length
matrix
Type: VIZCore3D.NET.DataMatrix3D
Matrix
color
Type: System.DrawingColor
Color
rebuildData
Type: SystemBoolean
데이터 재구성 여부
unitScale (Optional)
Type: SystemSingle
Unit Scale : 1.0f

Return Value

Type: Int32
노드(BODY) 아이디
Examples
C#
// VIZCore3D.NET Control
private VIZCore3D.NET.VIZCore3DControl vizcore3d;

private void Example()
{
    // New Empty Model
    int index = vizcore3d.Model.NewEmptyModel("MODEL");

    string assemblyName = "ASSEMBLY";
    VIZCore3D.NET.Data.Node assemblyNode =
        vizcore3d.Structure.CreateNode(
            index                                   /* Parent Node Index */
            , VIZCore3D.NET.Data.NodeKind.ASSEMBLY  /* Node Kind */
            , assemblyName                          /* Node Name */
            );

    string partName = "PART";
    VIZCore3D.NET.Data.Node partNode =
        vizcore3d.Structure.CreateNode(
            assemblyNode.Index                      /* Parent Node Index */
            , VIZCore3D.NET.Data.NodeKind.PART      /* Node Kind */
            , partName                              /* Node Name */
            );

    string bodyName = "BODY";
    int bodyId =
        vizcore3d.Structure.CreateBody(
            partNode.Index                          /* Parent Node Index */
            , bodyName                              /* Node Name */
            );

    int bodyIndex = vizcore3d.Object3D.GetBodyIndex(bodyId);

    {
        List<float> length = new List<float>() { 1000.0f, 2000.0f, 3000.0f };

        VIZCore3D.NET.Data.Matrix3D matrix = new VIZCore3D.NET.Data.Matrix3D();
        matrix.Identity();

        vizcore3d.MeshEdit.AddPrimitiveBox(
            bodyIndex           /* Body Node Index */
            , length            /* Length */
            , matrix            /* Matrix */
            , Color.Orange      /* Color */
            , false             /* Rebuild Data */
            , 1.0f              /* Scale */
            );
    }

    {
        /* Radius : Top[0], Bottom[1] */
        List<float> radius = new List<float>() { 1000.0f, 1000.0f };

        VIZCore3D.NET.Data.Matrix3D matrix = new VIZCore3D.NET.Data.Matrix3D();
        matrix.Identity();
        matrix.SetTranslate(1000, 2000, 3000);

        vizcore3d.MeshEdit.AddPrimitiveCone(
            bodyIndex           /* Body Node Index */
            , radius            /* Radius */
            , 2000.0f           /* Height */
            , matrix            /* Matrix */
            , Color.Blue        /* Color */
            , 12                /* Side Count */
            , 1.0f              /* Scale */
            , false             /* Rebuild Data */
            , 1                 /* System Type */
            );
    }

    vizcore3d.Structure.RebuildData();
}
See Also