MeshEditManagerAddPrimitiveCone Method (Int32, ListSingle, ListSingle, Single, Matrix3D, Color, Boolean, Int32, Single, Int32) |
Namespace: VIZCore3D.NET.Manager
public int AddPrimitiveCone( int bodyIndex, List<float> radius, List<float> offset, float height, Matrix3D matrix, Color color, bool rebuildData, int sideCount = 12, float unitScale = 1f, int systemType = 1 )
// 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(); //matrix.SetRotateX(vizcore3d.View.DegreesToRadians(45.0f)); //matrix.SetTranslate(1000, 0, 0, false); 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 }; /* Offset : X[0], Y[1] */ List<float> offset = new List<float>() { 100.0f, 100.0f }; VIZCore3D.NET.Data.Matrix3D matrix = new VIZCore3D.NET.Data.Matrix3D(); matrix.Identity(); //matrix.SetRotateX(vizcore3d.View.DegreesToRadians(45.0f)); matrix.SetTranslate(1000, 2000, 3000); vizcore3d.MeshEdit.AddPrimitiveCone( bodyIndex /* Body Node Index */ , radius /* Radius */ , offset /* Offset */ , 2000.0f /* Height */ , matrix /* Matrix */ , Color.Blue /* Color */ , false /* Rebuild Data */ , 12 /* Side Count */ , 1.0f /* Scale */ , 1 /* System Type */ ); } vizcore3d.Structure.RebuildData(); }