Example #1
0
        private void DrawLines2f_GL_1_1(Vertex2f[] vertices)
        {
            if ((vertices.Length % 2) != 0)
            {
                throw new ArgumentException("length not a multiple of 2", "vertices");
            }

            using (MemoryLock memoryLock = new MemoryLock(vertices)) {
                // Setup arrays
                Gl.VertexPointer(2, VertexPointerType.Float, 0, memoryLock.Address);
                Gl.EnableClientState(EnableCap.VertexArray);
                // Draw arrays
                Gl.DrawArrays(PrimitiveType.Lines, 0, vertices.Length);
            }
        }
            /// <summary>
            /// Draw the elements.
            /// </summary>
            /// <param name="ctx">
            /// The <see cref="GraphicsContext"/> used for drawing.
            /// </param>
            public override void Draw(GraphicsContext ctx)
            {
                uint count = ElementCount != 0 ? ElementCount : _VertexArrayObject.ArrayLength;

                Gl.DrawArrays(ElementsMode, (int)ElementOffset, (int)count);
            }