Subversion Repositories gelsvn

Rev

Rev 61 | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 61 Rev 393
1
#include "Neighbours.h"
1
#include "Neighbours.h"
2
 
2
 
3
namespace Geometry
3
namespace Geometry
4
{
4
{
5
	using namespace CGLA;
5
	using namespace CGLA;
6
 
6
 
7
	const Vec3f N6f[6] =
7
	const Vec3f N6f[6] =
8
	{
8
	{
9
		Vec3f(-1,0,0),
9
		Vec3f(-1,0,0),
10
		Vec3f( 1,0,0),
10
		Vec3f( 1,0,0),
11
		Vec3f( 0,-1,0),
11
		Vec3f( 0,-1,0),
12
		Vec3f( 0, 1,0),
12
		Vec3f( 0, 1,0),
13
		Vec3f( 0,0,-1),
13
		Vec3f( 0,0,-1),
14
		Vec3f( 0,0,1)
14
		Vec3f( 0,0,1)
15
	};
15
	};
16
	
16
	
17
	const Vec3i N6i[6] =
17
	const Vec3i N6i[6] =
18
	{
18
	{
19
		Vec3i(-1,0,0),
19
		Vec3i(-1,0,0),
20
		Vec3i( 1,0,0),
20
		Vec3i( 1,0,0),
21
		Vec3i( 0,-1,0),
21
		Vec3i( 0,-1,0),
22
		Vec3i( 0, 1,0),
22
		Vec3i( 0, 1,0),
23
		Vec3i( 0,0,-1),
23
		Vec3i( 0,0,-1),
24
		Vec3i( 0,0,1)		
24
		Vec3i( 0,0,1)		
25
	};
25
	};
26
 
26
 
27
	const Vec3d N6d[6] =
27
	const Vec3d N6d[6] =
28
	{
28
	{
29
		Vec3d(-1,0,0),
29
		Vec3d(-1,0,0),
30
		Vec3d( 1,0,0),
30
		Vec3d( 1,0,0),
31
		Vec3d( 0,-1,0),
31
		Vec3d( 0,-1,0),
32
		Vec3d( 0, 1,0),
32
		Vec3d( 0, 1,0),
33
		Vec3d( 0,0,-1),
33
		Vec3d( 0,0,-1),
34
		Vec3d( 0,0,1)		
34
		Vec3d( 0,0,1)		
35
	};
35
	};
36
	
36
	
37
	const Vec3f N26f[26] =
37
	const Vec3f N26f[26] =
38
	{
38
	{
39
		Vec3f(-1,-1,-1),
39
		Vec3f(-1,-1,-1),
40
		Vec3f( 0,-1,-1),
40
		Vec3f( 0,-1,-1),
41
		Vec3f( 1,-1,-1),
41
		Vec3f( 1,-1,-1),
42
		Vec3f(-1, 0,-1),
42
		Vec3f(-1, 0,-1),
43
		Vec3f( 0, 0,-1),
43
		Vec3f( 0, 0,-1),
44
		Vec3f( 1, 0,-1),
44
		Vec3f( 1, 0,-1),
45
		Vec3f(-1, 1,-1),
45
		Vec3f(-1, 1,-1),
46
		Vec3f( 0, 1,-1),
46
		Vec3f( 0, 1,-1),
47
		Vec3f( 1, 1,-1),
47
		Vec3f( 1, 1,-1),
48
 
48
 
49
		Vec3f(-1,-1, 0),
49
		Vec3f(-1,-1, 0),
50
		Vec3f( 0,-1, 0),
50
		Vec3f( 0,-1, 0),
51
		Vec3f( 1,-1, 0),
51
		Vec3f( 1,-1, 0),
52
		Vec3f(-1, 0, 0),
52
		Vec3f(-1, 0, 0),
53
		Vec3f( 1, 0, 0),
53
		Vec3f( 1, 0, 0),
54
		Vec3f(-1, 1, 0),
54
		Vec3f(-1, 1, 0),
55
		Vec3f( 0, 1, 0),
55
		Vec3f( 0, 1, 0),
56
		Vec3f( 1, 1, 0),
56
		Vec3f( 1, 1, 0),
57
 
57
 
58
		Vec3f(-1,-1, 1),
58
		Vec3f(-1,-1, 1),
59
		Vec3f( 0,-1, 1),
59
		Vec3f( 0,-1, 1),
60
		Vec3f( 1,-1, 1),
60
		Vec3f( 1,-1, 1),
61
		Vec3f(-1, 0, 1),
61
		Vec3f(-1, 0, 1),
62
		Vec3f( 0, 0, 1),
62
		Vec3f( 0, 0, 1),
63
		Vec3f( 1, 0, 1),
63
		Vec3f( 1, 0, 1),
64
		Vec3f(-1, 1, 1),
64
		Vec3f(-1, 1, 1),
65
		Vec3f( 0, 1, 1),
65
		Vec3f( 0, 1, 1),
66
		Vec3f( 1, 1, 1)
66
		Vec3f( 1, 1, 1)
67
		};
67
		};
68
 
68
 
69
	const Vec3i N26i[26] = 
69
	const Vec3i N26i[26] = 
70
	{
70
	{
71
		Vec3i(-1,-1,-1),
71
		Vec3i(-1,-1,-1),
72
		Vec3i( 0,-1,-1),
72
		Vec3i( 0,-1,-1),
73
		Vec3i( 1,-1,-1),
73
		Vec3i( 1,-1,-1),
74
		Vec3i(-1, 0,-1),
74
		Vec3i(-1, 0,-1),
75
		Vec3i( 0, 0,-1),
75
		Vec3i( 0, 0,-1),
76
		Vec3i( 1, 0,-1),
76
		Vec3i( 1, 0,-1),
77
		Vec3i(-1, 1,-1),
77
		Vec3i(-1, 1,-1),
78
		Vec3i( 0, 1,-1),
78
		Vec3i( 0, 1,-1),
79
		Vec3i( 1, 1,-1),
79
		Vec3i( 1, 1,-1),
80
 
80
 
81
		Vec3i(-1,-1, 0),
81
		Vec3i(-1,-1, 0),
82
		Vec3i( 0,-1, 0),
82
		Vec3i( 0,-1, 0),
83
		Vec3i( 1,-1, 0),
83
		Vec3i( 1,-1, 0),
84
		Vec3i(-1, 0, 0),
84
		Vec3i(-1, 0, 0),
85
		Vec3i( 1, 0, 0),
85
		Vec3i( 1, 0, 0),
86
		Vec3i(-1, 1, 0),
86
		Vec3i(-1, 1, 0),
87
		Vec3i( 0, 1, 0),
87
		Vec3i( 0, 1, 0),
88
		Vec3i( 1, 1, 0),
88
		Vec3i( 1, 1, 0),
89
 
89
 
90
		Vec3i(-1,-1, 1),
90
		Vec3i(-1,-1, 1),
91
		Vec3i( 0,-1, 1),
91
		Vec3i( 0,-1, 1),
92
		Vec3i( 1,-1, 1),
92
		Vec3i( 1,-1, 1),
93
		Vec3i(-1, 0, 1),
93
		Vec3i(-1, 0, 1),
94
		Vec3i( 0, 0, 1),
94
		Vec3i( 0, 0, 1),
95
		Vec3i( 1, 0, 1),
95
		Vec3i( 1, 0, 1),
96
		Vec3i(-1, 1, 1),
96
		Vec3i(-1, 1, 1),
97
		Vec3i( 0, 1, 1),
97
		Vec3i( 0, 1, 1),
98
		Vec3i( 1, 1, 1)
98
		Vec3i( 1, 1, 1)
99
	};
99
	};
100
 
100
 
101
	const Vec3d N26d[26] = 
101
	const Vec3d N26d[26] = 
102
	{
102
	{
103
		Vec3d(-1,-1,-1),
103
		Vec3d(-1,-1,-1),
104
		Vec3d( 0,-1,-1),
104
		Vec3d( 0,-1,-1),
105
		Vec3d( 1,-1,-1),
105
		Vec3d( 1,-1,-1),
106
		Vec3d(-1, 0,-1),
106
		Vec3d(-1, 0,-1),
107
		Vec3d( 0, 0,-1),
107
		Vec3d( 0, 0,-1),
108
		Vec3d( 1, 0,-1),
108
		Vec3d( 1, 0,-1),
109
		Vec3d(-1, 1,-1),
109
		Vec3d(-1, 1,-1),
110
		Vec3d( 0, 1,-1),
110
		Vec3d( 0, 1,-1),
111
		Vec3d( 1, 1,-1),
111
		Vec3d( 1, 1,-1),
112
 
112
 
113
		Vec3d(-1,-1, 0),
113
		Vec3d(-1,-1, 0),
114
		Vec3d( 0,-1, 0),
114
		Vec3d( 0,-1, 0),
115
		Vec3d( 1,-1, 0),
115
		Vec3d( 1,-1, 0),
116
		Vec3d(-1, 0, 0),
116
		Vec3d(-1, 0, 0),
117
		Vec3d( 1, 0, 0),
117
		Vec3d( 1, 0, 0),
118
		Vec3d(-1, 1, 0),
118
		Vec3d(-1, 1, 0),
119
		Vec3d( 0, 1, 0),
119
		Vec3d( 0, 1, 0),
120
		Vec3d( 1, 1, 0),
120
		Vec3d( 1, 1, 0),
121
 
121
 
122
		Vec3d(-1,-1, 1),
122
		Vec3d(-1,-1, 1),
123
		Vec3d( 0,-1, 1),
123
		Vec3d( 0,-1, 1),
124
		Vec3d( 1,-1, 1),
124
		Vec3d( 1,-1, 1),
125
		Vec3d(-1, 0, 1),
125
		Vec3d(-1, 0, 1),
126
		Vec3d( 0, 0, 1),
126
		Vec3d( 0, 0, 1),
127
		Vec3d( 1, 0, 1),
127
		Vec3d( 1, 0, 1),
128
		Vec3d(-1, 1, 1),
128
		Vec3d(-1, 1, 1),
129
		Vec3d( 0, 1, 1),
129
		Vec3d( 0, 1, 1),
130
		Vec3d( 1, 1, 1)
130
		Vec3d( 1, 1, 1)
131
	};
131
	};
132
 
132
 
133
 
133
 
134
	const Vec3i CubeCorners8i[8] = 
134
	const Vec3i CubeCorners8i[8] = 
135
		{
135
		{
136
			Vec3i(0,0,0),
136
			Vec3i(0,0,0),
137
			Vec3i(1,0,0),
137
			Vec3i(1,0,0),
138
			Vec3i(0,1,0),
138
			Vec3i(0,1,0),
139
			Vec3i(1,1,0),
139
			Vec3i(1,1,0),
140
			Vec3i(0,0,1),
140
			Vec3i(0,0,1),
141
			Vec3i(1,0,1),
141
			Vec3i(1,0,1),
142
			Vec3i(0,1,1),
142
			Vec3i(0,1,1),
143
			Vec3i(1,1,1),
143
			Vec3i(1,1,1),
144
		};
144
		};
145
 
145
 
146
	const Vec3f CubeCorners8f[8] = 
146
	const Vec3f CubeCorners8f[8] = 
147
	{
147
	{
148
		Vec3f(0,0,0),
148
		Vec3f(0,0,0),
149
		Vec3f(1,0,0),
149
		Vec3f(1,0,0),
150
		Vec3f(0,1,0),
150
		Vec3f(0,1,0),
151
		Vec3f(1,1,0),
151
		Vec3f(1,1,0),
152
		Vec3f(0,0,1),
152
		Vec3f(0,0,1),
153
		Vec3f(1,0,1),
153
		Vec3f(1,0,1),
154
		Vec3f(0,1,1),
154
		Vec3f(0,1,1),
155
		Vec3f(1,1,1),
155
		Vec3f(1,1,1),
156
	};
156
	};
157
}
157
}
158
 
158