Example #1
0
        /// <summary>
        /// Loads a pyramid for drawing.
        /// </summary>
        private void LoadPyramid()
        {
            const int low = 100;
            const int medium = 200;
            const int heigh = 300;

            var v1 = new Vertex(low, 0, low);
            var v2 = new Vertex(heigh, 0, low);
            var v3 = new Vertex(low, 0, heigh);
            var v4 = new Vertex(heigh, 0, heigh);
            var v5 = new Vertex(medium, medium, medium);

            var t1 = new Triangle(v1, v2, v5);
            var t2 = new Triangle(v1, v3, v5);
            var t3 = new Triangle(v2, v4, v5);
            var t4 = new Triangle(v3, v4, v5);

            _pyramidTriangles.Add(t1);
            _pyramidTriangles.Add(t2);
            _pyramidTriangles.Add(t3);
            _pyramidTriangles.Add(t4);
        }
Example #2
0
        /// <summary>
        /// Converts a vertex into a 4-hight, 1-width matrix.
        /// </summary>
        /// <param name="vertex">The vertex to convert</param>
        /// <returns>A Matrix[4, 1] version of the vertex.</returns>
        public static Matrix VertexToMatrix(Vertex vertex)
        {
            var matrix = new Matrix(4, 1);

            matrix[0, 0] = vertex.X;
            matrix[1, 0] = vertex.Y;
            matrix[2, 0] = vertex.Z;
            matrix[3, 0] = vertex.W;

            return matrix;
        }