private void Draw() { GL.ClearColor(0.0f, 0.2f, 0.2f, 1.0f); GL.Clear(ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit); if (Height != 0) { SetViewAndProjection(); } renderer.DrawLine(new vec3(0), new vec3(10, 0, 0), new vec3(1, 0, 0)); renderer.DrawLine(new vec3(0), new vec3(0, 10, 0), new vec3(0, 1, 0)); renderer.DrawLine(new vec3(0), new vec3(0, 0, 10), new vec3(0, 0, 1)); float[,] heightfield = new float[, ] { { 1, 2, 3, 4, 4, 1, 1, 3, 4, }, { 1, 3, 6, 4, 4, 4, 4, 5, 1, }, { 2, 3, 4, 4, 3, 4, 4, 1, 1, }, { 2, 3, 4, 4, 3, 4, 4, 1, 1, }, { 2, 3, 4, 4, 3, 4, 4, 1, 1, }, { 2, 3, 4, 4, 3, 4, 4, 1, 1, }, { 2, 3, 4, 4, 3, 4, 4, 1, 1, }, { 2, 3, 3, 3, 3, 3, 3, 1, 1, }, { 2, 1, 1, 1, 1, 1, 1, 1, 1, }, { 1, 1, 1, 1, 1, 1, 1, 1, 1, }, { 1, 1, 1, 1, 1, 1, 1, 1, 1, }, { 1, 1, 1, 1, 1, 1, 1, 1, 1, }, { 1, 1, 1, 1, 1, 1, 1, 1, 1, }, { 1, 1, 1, 1, 1, 1, 1, 1, 1, }, }; renderer.DrawHeightfield(heightfield2, scaleXY); glControl.SwapBuffers(); }
private void Draw() { GL.ClearColor(0.0f, 0.2f, 0.2f, 1.0f); GL.Clear(ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit); var intersectionPoint = ComputeLinePlaneIntersectionPoint(); if (Height != 0) { SetViewAndProjection(); } renderer.DrawLine(new vec3(0), new vec3(10, 0, 0), new vec3(1, 0, 0)); renderer.DrawLine(new vec3(0), new vec3(0, 10, 0), new vec3(0, 1, 0)); renderer.DrawLine(new vec3(0), new vec3(0, 0, 10), new vec3(0, 0, 1)); renderer.DrawRectangle(new vec3(0), planeSize, planeDirection, new vec3(0)); renderer.DrawLine(rayPoint, rayPoint + rayDirection * 2000, new vec3(0.3f, 0.4f, 0.5f)); renderer.DrawPoint(rayPoint, new vec3(1, 0, 0)); if (intersectionPoint.HasValue) { intersectionPointLabel.Text = String.Format("{0:0.00}, {1:0.00}, {2:0.00}", intersectionPoint.Value.x, intersectionPoint.Value.y, intersectionPoint.Value.z); renderer.DrawPoint(intersectionPoint.Value, new vec3(0.5f, 0.4f, 0.3f)); } else { intersectionPointLabel.Text = "No intersection"; } glControl.SwapBuffers(); }
private void GlControl_OnPaintEvent(object sender, PaintEventArgs e) { GL.ClearColor(0.0f, 0.2f, 0.2f, 1.0f); GL.Clear(ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit); triangle.Draw(); lineCQ.Draw(); pointQ.Draw(); pointR.Draw(); glControl.SwapBuffers(); }
private void GlControl_OnPaintEvent(object sender, PaintEventArgs e) { shader.Use(); GL.Enable(EnableCap.LineSmooth); GL.ClearColor(0.0f, 0.2f, color, 1.0f); GL.Clear(ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit); GL.BindVertexArray(vao); GL.DrawArrays(PrimitiveType.Triangles, 0, verticesPosition.Length / 3); GL.Disable(EnableCap.LineSmooth); glControl.SwapBuffers(); }
private void Draw() { GL.ClearColor(0.0f, 0.2f, 0.2f, 1.0f); GL.Clear(ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit); if (Height != 0) { SetViewAndProjection(); } renderer.DrawLine(new vec3(0), new vec3(10, 0, 0), new vec3(1, 0, 0)); renderer.DrawLine(new vec3(0), new vec3(0, 10, 0), new vec3(0, 1, 0)); renderer.DrawLine(new vec3(0), new vec3(0, 0, 10), new vec3(0, 0, 1)); //renderer.DrawGlass(data, sectorsCount); //renderer.DrawGlass(new float[] { 10, 10, 5, 5, 10, 0 }, sectorsCount); renderer.DrawSphere(50, new vec3(0.4f, 0.6f, 0.7f), sectorsCount); glControl.SwapBuffers(); }
private void Draw() { GL.ClearColor(0.0f, 0.2f, 0.2f, 1.0f); GL.Clear(ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit); var intersectionPoint = ComputeLinePlaneIntersectionPoint(); var intersection = ComputeIntersection(); if (Height != 0) { SetViewAndProjection(); } renderer.DrawLine(new vec3(0), new vec3(10, 0, 0), new vec3(1, 0, 0)); renderer.DrawLine(new vec3(0), new vec3(0, 10, 0), new vec3(0, 1, 0)); renderer.DrawLine(new vec3(0), new vec3(0, 0, 10), new vec3(0, 0, 1)); renderer.DrawCylinder(5, 8, sectorsCount); glControl.SwapBuffers(); }
private void Draw() { GL.ClearColor(0.0f, 0.2f, 0.2f, 1.0f); GL.Clear(ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit); var intersectionPoint = ComputeLinePlaneIntersectionPoint(); var intersection = ComputeIntersection(); if (Height != 0) { SetViewAndProjection(); } renderer.DrawLine(new vec3(0), new vec3(10, 0, 0), new vec3(1, 0, 0)); renderer.DrawLine(new vec3(0), new vec3(0, 10, 0), new vec3(0, 1, 0)); renderer.DrawLine(new vec3(0), new vec3(0, 0, 10), new vec3(0, 0, 1)); renderer.DrawSphere(sphereRadius, new vec3(0), 16); renderer.DrawPoint(rayPoint, new vec3(0.5f, 0.5f, 0.0f)); renderer.DrawLine(rayPoint, rayPoint + rayDirection * 1000, new vec3(0.7f, 0.1f, 0.3f)); if (intersection == null) { intersectionLabel.Text = "No intersection"; } else { renderer.DrawPoint(intersection.Item1, new vec3(0.5f, 0.5f, 0.8f)); if (intersection.Item2.HasValue) { intersectionLabel.Text = String.Format("point 1 = ({0}); point 2 = ({1})", Str(intersection.Item1), Str(intersection.Item2.Value)); renderer.DrawPoint(intersection.Item2.Value, new vec3(0.5f, 0.5f, 0.8f)); } else { intersectionLabel.Text = String.Format("point 1 = ({0});", Str(intersection.Item1)); } } glControl.SwapBuffers(); }