-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathFigure.cs
125 lines (118 loc) · 3.51 KB
/
Figure.cs
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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
public struct FigurePoint
{
public double x;
public double y;
public bool enabled = true;
public FigurePoint(double x, double y)
{
this.x = x;
this.y = y;
}
}
public class Figure
{
static FigurePoint[] defaultPose = new FigurePoint[18]{
new FigurePoint( 0.000000, -0.393345),
new FigurePoint( 0.000000, -0.296005),
new FigurePoint(-0.083981, -0.292099),
new FigurePoint(-0.114137, -0.147260),
new FigurePoint(-0.154135, -0.027264),
new FigurePoint( 0.083981, -0.292099),
new FigurePoint( 0.114137, -0.147260),
new FigurePoint( 0.154135, -0.027264),
new FigurePoint(-0.054139, -0.032889),
new FigurePoint(-0.076013, 0.188353),
new FigurePoint(-0.086013, 0.411469),
new FigurePoint( 0.054139, -0.032889),
new FigurePoint( 0.076013, 0.188353),
new FigurePoint( 0.086013, 0.411469),
new FigurePoint(-0.017108, -0.411469),
new FigurePoint( 0.017108, -0.411469),
new FigurePoint(-0.041482, -0.399751),
new FigurePoint( 0.041482, -0.399751)
};
static public string[] pointNames = {
"Nose",
"Neck",
"Right Shoulder",
"Right Elbow",
"Right Wrist",
"Left Shoulder",
"Left Elbow",
"Left Wrist",
"Right Hip",
"Right Knee",
"Right Ankle",
"Left Hip",
"Left Knee",
"Left Ankle",
"Right Eye",
"Left Eye",
"Right Ear",
"Left Ear"
};
/*public static Color[] pointColors = new Color[18]{
Color.FromArgb(255, 0, 85),
Color.FromArgb(255, 0, 0),
Color.FromArgb(255, 85, 0),
Color.FromArgb(255, 170, 0),
Color.FromArgb(255, 255, 0),
Color.FromArgb(170, 255, 0),
Color.FromArgb( 85, 255, 0),
Color.FromArgb( 0, 255, 0),
Color.FromArgb( 0, 255, 85),
Color.FromArgb( 0, 255, 170),
Color.FromArgb( 0, 255, 255),
Color.FromArgb( 0, 170, 255),
Color.FromArgb( 0, 85, 255),
Color.FromArgb( 0, 0, 255),
Color.FromArgb(255, 0, 170),
Color.FromArgb(170, 0, 255),
Color.FromArgb(255, 0, 255),
Color.FromArgb(85, 0, 255)
};*/
public static Color[] pointColors = new Color[18]{
Color.FromArgb(255, 0, 0),
Color.FromArgb(255, 85, 0),
Color.FromArgb(255, 170, 0),
Color.FromArgb(255, 255, 0),
Color.FromArgb(170, 255, 0),
Color.FromArgb( 85, 255, 0),
Color.FromArgb( 0, 255, 0),
Color.FromArgb( 0, 255, 85),
Color.FromArgb( 0, 255, 170),
Color.FromArgb( 0, 255, 255),
Color.FromArgb( 0, 170, 255),
Color.FromArgb( 0, 85, 255),
Color.FromArgb( 0, 0, 255),
Color.FromArgb(85, 0, 255),
Color.FromArgb(170, 0, 255),
Color.FromArgb(255, 0, 255),
Color.FromArgb(255, 0, 170),
Color.FromArgb(255, 0, 85),
};
public static (int, int)[] pairs = new (int, int)[]{
(1,2),
(1,5),
(2,3),
(3,4),
(5,6),
(6,7),
(1,8),
(8,9),
(9,10),
(1,11),
(11,12),
(12,13),
(1,0),
(0,14),
(14,16),
(0,15),
(15,17),
};
public FigurePoint[] points = new FigurePoint[18];
public void ResetPose()
{
Array.Copy(defaultPose, points, defaultPose.Length);
}
}