Click or drag to resize

MeshEditManagerAddPrimitiveSphericalCap Method

Body 노드에 Spherical Cap Primitive 생성

Namespace: VIZCore3D.NET.Manager
Assembly: VIZCore3D.NET (in VIZCore3D.NET.dll) Version: 2.8.24.910 (2.8.24.910)
Syntax
C#
public int AddPrimitiveSphericalCap(
	int bodyIndex,
	float radius,
	float height,
	int numberSide,
	int numberSection,
	Matrix3D matrix,
	Color color,
	bool rebuildData
)

Parameters

bodyIndex  Int32
바디(Body) 노드 인덱스
radius  Single
Radius
height  Single
Height
numberSide  Int32
Number Side : Default (12). 6 ~ 36
numberSection  Int32
Number Section
matrix  Matrix3D
Matrix
color  Color
Color
rebuildData  Boolean
데이터 재구성 여부

Return Value

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

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

    {
        float radius = 29.0f;
        float height = 6.0f;

        int numberSide = 12;
        int numberSection = 12;

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

        vizcore3d.MeshEdit.AddPrimitiveSphericalCap(
            bodyIndex           /* Body Node Index */
            , radius            /* Radius */
            , height            /* Height */
            , numberSide        /* Number of Side */
            , numberSection     /* Number Of Section */
            , matrix            /* Matrix */
            , Color.Green       /* Color */
            , false             /* Rebuild Data */
            );
    }

    vizcore3d.Structure.RebuildData();
}
See Also