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();
        }
Esempio n. 2
0
        /// <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);
        }
Esempio n. 3
0
        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);
        }