Click or drag to resize

MeshEditManagerAddPrimitivePyramid Method

Body 노드에 Pyramid 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 AddPrimitivePyramid(
	int bodyIndex,
	SizeF bottom,
	SizeF top,
	SizeF offset,
	float height,
	Matrix3D matrix,
	Color color,
	bool rebuildData,
	int systemType = 1
)

Parameters

bodyIndex
Type: SystemInt32
바디(Body) 노드 인덱스
bottom
Type: System.DrawingSizeF
Size Of Bottom
top
Type: System.DrawingSizeF
Size Of Top
offset
Type: System.DrawingSizeF
Size Of Offset
height
Type: SystemSingle
Height
matrix
Type: VIZCore3D.NET.DataMatrix3D
Matrix
color
Type: System.DrawingColor
Color
rebuildData
Type: SystemBoolean
데이터 재구성 여부
systemType (Optional)
Type: SystemInt32
System Type : 0(TRIBON), 1(AVEVA MARINE : Default)

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);

    {
        SizeF bottom = new SizeF(30, 40);
        SizeF top = new SizeF(10, 20);
        SizeF offset = new SizeF(2.5f, 4.5f);

        float height = 50;

        VIZCore3D.NET.Data.Matrix3D matrix = new VIZCore3D.NET.Data.Matrix3D();
        m.Identity();
        //m.SetRotateX(vizcore3d.View.DegreesToRadians(45.0f));
        //m.SetTranslate(1000, 0, 0, false);

        vizcore3d.MeshEdit.AddPrimitivePyramid(
            bodyIndex           /* Body Node Index */
            , bottom            /* Bottom Of Size */
            , top               /* Top Of Size */
            , offset            /* Offset Of Size */
            , height            /* Height */
            , matrix            /* Matrix */
            , Color.Green       /* Color */
            , false             /* Rebuild Data */
            , 1                 /* System Type */
            );
    }

    vizcore3d.Structure.RebuildData();
}
See Also