MeshEditManagerCreateBodyPrimitiveCylinder Method (Int32, String, Single, Single, Single, Single, Matrix3D, Color, Boolean, Int32) |
Namespace: VIZCore3D.NET.Manager
public int CreateBodyPrimitiveCylinder( int nodeIndex, string name, float radius, float height, float bottomShear, float topShear, Matrix3D matrix, Color color, bool rebuildData, int sideCount = 12 )
// VIZCore3D.NET Control private VIZCore3D.NET.VIZCore3DControl vizcore3d; private void Example() { string assemblyName = string.Format("Assembly #{0}", vizcore3d.Object3D.GetNodeCount()); VIZCore3D.NET.Data.Node assembly = vizcore3d.MeshEdit.CreateNode(0, VIZCore3D.NET.Data.NodeKind.ASSEMBLY, assemblyName); if (assembly == null) return; string partName = string.Format("Part #{0}", vizcore3d.Object3D.GetNodeCount()); VIZCore3D.NET.Data.Node part = vizcore3d.MeshEdit.CreateNode(assembly.Index, VIZCore3D.NET.Data.NodeKind.PART, partName); if (part == null) return; string bodyName = string.Format("Body #{0}", vizcore3d.Object3D.GetNodeCount()); float radius = 1000.0f; // Radius float height = 1000.0f; // Height 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.BeginUpdate(); int id = vizcore3d.MeshEdit.CreateBodyPrimitiveCylinder( part.Index /* Parent (Part) Node Index */ , bodyName /* Name */ , radius /* Radius */ , height /* Height */ , 15 /* BottomShear */ , 15 /* TopShear */ , matrix /* Matrix */ , Color.Orange /* Color */ , false /* Rebuild Data */ ); vizcore3d.Structure.RebuildData(); vizcore3d.EndUpdate(); if (id == -1) { MessageBox.Show( "NG" , "VIZCore3D.NET" , MessageBoxButtons.OK , MessageBoxIcon.Error ); } else { MessageBox.Show( string.Format("Body ID : {0}", id) , "VIZCore3D.NET" , MessageBoxButtons.OK , MessageBoxIcon.Information ); } }