lixiaojun
2025-03-20 5066a3d90ab19f8380dbb4159d57b0b8e3f17649
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
using OpenTK.Graphics.OpenGL;
using OpenTK.Mathematics;
 
namespace Yw.WinFrmUI.Hydro
{
    /// <summary>
    /// 绘制2d辅助类
    /// </summary>
    internal class Draw2dHelper
    {
 
        /// <summary>
        /// 绘制点
        /// </summary>
        /// <param name="size">点大小</param>
        /// <param name="color">点颜色</param>
        /// <param name="pt">点位置</param>
        public static void DrawPoint(float size, Color color, PointL3d pt)
        {
            GL.PointSize(size);
            GL.Begin(PrimitiveType.Points);
            GL.Color3(color);
            GL.Vertex3(pt.X, pt.Y, pt.Z);
            GL.End();
        }
 
        /// <summary>
        /// 绘制点
        /// </summary>
        /// <param name="size">点大小</param> 
        /// <param name="color">点颜色</param>
        /// <param name="pt">点位置</param>
        public static void DrawPoint(float size, Color color, Vector3 pt)
        {
            GL.PointSize(size);
            GL.Begin(PrimitiveType.Points);
            GL.Color3(color);
            GL.Vertex3(pt.X, pt.Y, pt.Z);
            GL.End();
        }
 
        /// <summary>
        /// 绘制线
        /// </summary>
        /// <param name="width">线宽</param>
        /// <param name="color">线色</param>
        /// <param name="spt">开始点</param>
        /// <param name="ept">结束点</param>
        public static void DrawLine(float width, Color color, PointL3d spt, PointL3d ept)
        {
            GL.LineWidth(width);
            GL.Begin(PrimitiveType.Lines);
            GL.Color3(color);
            GL.Vertex3(spt.X, spt.Y, spt.Z);
            GL.Vertex3(ept.X, ept.Y, ept.Z);
            GL.End();
        }
 
        /// <summary>
        /// 绘制
        /// </summary>
        /// <param name="width">线宽</param>
        /// <param name="color">线色</param>
        /// <param name="spt">开始点</param>
        /// <param name="ept">结束点</param>
        public static void DrawLine(float width, Color color, Vector3 spt, Vector3 ept)
        {
            GL.LineWidth(width);
            GL.Begin(PrimitiveType.Lines);
            GL.Color3(color);
            GL.Vertex3(spt.X, spt.Y, spt.Z);
            GL.Vertex3(ept.X, ept.Y, ept.Z);
            GL.End();
        }
 
    }
 
}