private void testToolStripMenuItem_Click(object sender, EventArgs e) { Vector3d colorVector = new Vector3d(1, 0, 0); Model3D Model1 = Example3DModels.Sphere("Sphere", 2, 8, colorVector, (System.Drawing.Bitmap)null); AddModel(Model1); this.glControl1.Refresh(); }
/// <summary> /// Generates a 3D Model for a cuboid /// </summary> /// <param name="Name">Model name</param> /// <param name="u">Length of the lower part</param> /// <param name="v">Length of the high part</param> /// <param name="numberOfPoints">Number of points to use in circumference</param> /// <param name="Color">Color vector</param> /// <param name="Texture">Texture bitmap. Null uses no texture</param> /// <returns></returns> public static PointCloud Cuboid(float u, float v, int numberOfPoints, System.Drawing.Color color) { PointCloud pcl = new PointCloud(); pcl.Vectors = Example3DModels.Cuboid(numberOfPoints, u, v); pcl.SetColor(new Vector3(color.R, color.G, color.B)); return(pcl); }
public static PointCloud CreateCube_RandomPointsOnPlanes(float cubeSize, int numberOfRandomPoints) { List <Vector3> points = Example3DModels.Cube_Corners(cubeSize, cubeSize, cubeSize); var r = new Random(); for (var i = 0; i < numberOfRandomPoints; i++) { var vi = new Vector3(cubeSize / 2, cubeSize * Convert.ToSingle(r.NextDouble()) - cubeSize / 2, cubeSize * Convert.ToSingle(r.NextDouble()) - cubeSize / 2); points.Add(vi); } for (var i = 0; i < numberOfRandomPoints; i++) { var vi = new Vector3(-cubeSize / 2, cubeSize * Convert.ToSingle(r.NextDouble()) - cubeSize / 2, cubeSize * Convert.ToSingle(r.NextDouble()) - cubeSize / 2); points.Add(vi); } for (var i = 0; i < numberOfRandomPoints; i++) { var vi = new Vector3(cubeSize * Convert.ToSingle(r.NextDouble()) - cubeSize / 2, cubeSize / 2, cubeSize * Convert.ToSingle(r.NextDouble()) - cubeSize / 2); points.Add(vi); } for (var i = 0; i < numberOfRandomPoints; i++) { var vi = new Vector3( cubeSize * Convert.ToSingle(r.NextDouble()) - cubeSize / 2, -cubeSize / 2, cubeSize * Convert.ToSingle(r.NextDouble()) - cubeSize / 2); points.Add(vi); } for (var i = 0; i < numberOfRandomPoints; i++) { var vi = new Vector3(cubeSize * Convert.ToSingle(r.NextDouble()) - cubeSize / 2, cubeSize * Convert.ToSingle(r.NextDouble()) - cubeSize / 2, -cubeSize / 2); points.Add(vi); } for (var i = 0; i < numberOfRandomPoints; i++) { var vi = new Vector3(cubeSize * Convert.ToSingle(r.NextDouble()) - cubeSize / 2, cubeSize * Convert.ToSingle(r.NextDouble()) - cubeSize / 2, cubeSize / 2); points.Add(vi); } PointCloud pointCloud = new PointCloud(); pointCloud.Vectors = points.ToArray(); return(pointCloud); }