1 |
# $Id: run_visualization_interface.py 798 2006-08-04 01:05:36Z gross $ |
2 |
|
3 |
__copyright__=""" Copyright (c) 2006 by ACcESS MNRF |
4 |
http://www.access.edu.au |
5 |
Primary Business: Queensland, Australia""" |
6 |
__license__="""Licensed under the Open Software License version 3.0 |
7 |
http://www.opensource.org/licenses/osl-3.0.php""" |
8 |
import sys |
9 |
import unittest |
10 |
import math |
11 |
import numarray |
12 |
from esys.pycad import * |
13 |
|
14 |
try: |
15 |
PYCAD_TEST_DATA=os.environ['PYCAD_TEST_DATA'] |
16 |
except KeyError: |
17 |
PYCAD_TEST_DATA='.' |
18 |
|
19 |
try: |
20 |
PYCAD_WORKDIR=os.environ['PYCAD_WORKDIR'] |
21 |
except KeyError: |
22 |
PYCAD_WORKDIR='.' |
23 |
|
24 |
PYCAD_TEST_MESH_PATH=PYCAD_TEST_DATA+"/data_meshes/" |
25 |
PYCAD_WORKDIR_PATH=PYCAD_WORKDIR+"/" |
26 |
|
27 |
def _cross(x, y): |
28 |
return numarray.array([x[1] * y[2] - x[2] * y[1], x[2] * y[0] - x[0] * y[2], x[0] * y[1] - x[1] * y[0]]) |
29 |
|
30 |
|
31 |
class Test_PyCAD(unittest.TestCase): |
32 |
ABS_TOL=1.e-8 |
33 |
def __distance(self,x,y): |
34 |
return math.sqrt(numarray.dot(x-y,x-y)) |
35 |
def test_Translation_x(self): |
36 |
t=Translation([1,0,0]) |
37 |
s0=t([1,0,0]) |
38 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
39 |
self.failUnless(self.__distance(s0,numarray.array([2,0,0]))<self.ABS_TOL,"s0 is wrong.") |
40 |
s1=t([0,1,0]) |
41 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
42 |
self.failUnless(self.__distance(s1,numarray.array([1,1,0]))<self.ABS_TOL,"s1 is wrong.") |
43 |
s2=t([0,0,1]) |
44 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
45 |
self.failUnless(self.__distance(s2,numarray.array([1,0,1]))<self.ABS_TOL,"s2 is wrong.") |
46 |
def test_Translation_y(self): |
47 |
t=Translation([0,1,0]) |
48 |
s0=t([1,0,0]) |
49 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
50 |
self.failUnless(self.__distance(s0,numarray.array([1,1,0]))<self.ABS_TOL,"s0 is wrong.") |
51 |
s1=t([0,1,0]) |
52 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
53 |
self.failUnless(self.__distance(s1,numarray.array([0,2,0]))<self.ABS_TOL,"s1 is wrong.") |
54 |
s2=t([0,0,1]) |
55 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
56 |
self.failUnless(self.__distance(s2,numarray.array([0,1,1]))<self.ABS_TOL,"s2 is wrong.") |
57 |
def test_Translation_z(self): |
58 |
t=Translation([0,0,1]) |
59 |
s0=t([1,0,0]) |
60 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
61 |
self.failUnless(self.__distance(s0,numarray.array([1,0,1]))<self.ABS_TOL,"s0 is wrong.") |
62 |
s1=t([0,1,0]) |
63 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
64 |
self.failUnless(self.__distance(s1,numarray.array([0,1,1]))<self.ABS_TOL,"s1 is wrong.") |
65 |
s2=t([0,0,1]) |
66 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
67 |
self.failUnless(self.__distance(s2,numarray.array([0,0,2]))<self.ABS_TOL,"s2 is wrong.") |
68 |
def test_Dilation_0_two(self): |
69 |
t=Dilation(2.) |
70 |
s0=t([1,0,0]) |
71 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
72 |
self.failUnless(self.__distance(s0,numarray.array([2,0,0]))<self.ABS_TOL,"s0 is wrong.") |
73 |
s1=t([0,1,0]) |
74 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
75 |
self.failUnless(self.__distance(s1,numarray.array([0,2,0]))<self.ABS_TOL,"s1 is wrong.") |
76 |
s2=t([0,0,1]) |
77 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
78 |
self.failUnless(self.__distance(s2,numarray.array([0,0,2]))<self.ABS_TOL,"s2 is wrong.") |
79 |
def test_Dilation_0_half(self): |
80 |
t=Dilation(0.5) |
81 |
s0=t([1,0,0]) |
82 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
83 |
self.failUnless(self.__distance(s0,numarray.array([0.5,0,0]))<self.ABS_TOL,"s0 is wrong.") |
84 |
s1=t([0,1,0]) |
85 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
86 |
self.failUnless(self.__distance(s1,numarray.array([0,0.5,0]))<self.ABS_TOL,"s1 is wrong.") |
87 |
s2=t([0,0,1]) |
88 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
89 |
self.failUnless(self.__distance(s2,numarray.array([0,0,0.5]))<self.ABS_TOL,"s2 is wrong.") |
90 |
def test_Dilation_x_two(self): |
91 |
t=Dilation(2.,[1.,0.,0.]) |
92 |
s0=t([1,0,0]) |
93 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
94 |
self.failUnless(self.__distance(s0,numarray.array([1,0,0]))<self.ABS_TOL,"s0 is wrong.") |
95 |
s0_1=t([0,0,0]) |
96 |
self.failUnless(isinstance(s0_1,numarray.NumArray),"s0_1 is not a numarray object.") |
97 |
self.failUnless(self.__distance(s0_1,numarray.array([-1.,0,0]))<self.ABS_TOL,"s0_1 is wrong.") |
98 |
s1=t([0,1,0]) |
99 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
100 |
self.failUnless(self.__distance(s1,numarray.array([-1,2,0]))<self.ABS_TOL,"s1 is wrong.") |
101 |
s2=t([0,0,1]) |
102 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
103 |
self.failUnless(self.__distance(s2,numarray.array([-1.,0,2]))<self.ABS_TOL,"s2 is wrong.") |
104 |
def test_Dilation_x_half(self): |
105 |
t=Dilation(0.5,[1.,0.,0.]) |
106 |
s0=t([1,0,0]) |
107 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
108 |
self.failUnless(self.__distance(s0,numarray.array([1.,0,0]))<self.ABS_TOL,"s0 is wrong.") |
109 |
s0_1=t([0,0,0]) |
110 |
self.failUnless(isinstance(s0_1,numarray.NumArray),"s0_1 is not a numarray object.") |
111 |
self.failUnless(self.__distance(s0_1,numarray.array([.5,0,0]))<self.ABS_TOL,"s0_1 is wrong.") |
112 |
s1=t([0,1,0]) |
113 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
114 |
self.failUnless(self.__distance(s1,numarray.array([0.5,0.5,0]))<self.ABS_TOL,"s1 is wrong.") |
115 |
s2=t([0,0,1]) |
116 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
117 |
self.failUnless(self.__distance(s2,numarray.array([0.5,0,0.5]))<self.ABS_TOL,"s2 is wrong.") |
118 |
def test_Dilation_y_two(self): |
119 |
t=Dilation(2.,[0.,1.,0.]) |
120 |
s0=t([1,0,0]) |
121 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
122 |
self.failUnless(self.__distance(s0,numarray.array([2.,-1.,0]))<self.ABS_TOL,"s0 is wrong.") |
123 |
s1_1=t([0,0,0]) |
124 |
self.failUnless(isinstance(s1_1,numarray.NumArray),"s1_1 is not a numarray object.") |
125 |
self.failUnless(self.__distance(s1_1,numarray.array([0.,-1.,0]))<self.ABS_TOL,"s1_1 is wrong.") |
126 |
s1=t([0,1,0]) |
127 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
128 |
self.failUnless(self.__distance(s1,numarray.array([0.,1.,0]))<self.ABS_TOL,"s1 is wrong.") |
129 |
s2=t([0,0,1]) |
130 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
131 |
self.failUnless(self.__distance(s2,numarray.array([0.,-1.,2]))<self.ABS_TOL,"s2 is wrong.") |
132 |
def test_Dilation_y_half(self): |
133 |
t=Dilation(0.5,[0.,1.,0.]) |
134 |
s0=t([1,0,0]) |
135 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
136 |
self.failUnless(self.__distance(s0,numarray.array([0.5,0.5,0]))<self.ABS_TOL,"s0 is wrong.") |
137 |
s1_1=t([0,0,0]) |
138 |
self.failUnless(isinstance(s1_1,numarray.NumArray),"s1_1 is not a numarray object.") |
139 |
self.failUnless(self.__distance(s1_1,numarray.array([0,0.5,0]))<self.ABS_TOL,"s1_1 is wrong.") |
140 |
s1=t([0,1,0]) |
141 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
142 |
self.failUnless(self.__distance(s1,numarray.array([0.,1.,0]))<self.ABS_TOL,"s1 is wrong.") |
143 |
s2=t([0,0,1]) |
144 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
145 |
self.failUnless(self.__distance(s2,numarray.array([0.,0.5,0.5]))<self.ABS_TOL,"s2 is wrong.") |
146 |
def test_Dilation_z_two(self): |
147 |
t=Dilation(2.,[0.,0.,1.]) |
148 |
s0=t([1,0,0]) |
149 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
150 |
self.failUnless(self.__distance(s0,numarray.array([2.,0.,-1.]))<self.ABS_TOL,"s0 is wrong.") |
151 |
s2_1=t([0,0,0]) |
152 |
self.failUnless(isinstance(s2_1,numarray.NumArray),"s2_1 is not a numarray object.") |
153 |
self.failUnless(self.__distance(s2_1,numarray.array([0.,0.,-1.]))<self.ABS_TOL,"s2_1 is wrong.") |
154 |
s1=t([0,1,0]) |
155 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
156 |
self.failUnless(self.__distance(s1,numarray.array([0.,2.,-1.]))<self.ABS_TOL,"s1 is wrong.") |
157 |
s2=t([0,0,1]) |
158 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
159 |
self.failUnless(self.__distance(s2,numarray.array([0.,0.,1.]))<self.ABS_TOL,"s2 is wrong.") |
160 |
def test_Dilation_z_half(self): |
161 |
t=Dilation(0.5,[0.,0.,1.]) |
162 |
s0=t([1,0,0]) |
163 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
164 |
self.failUnless(self.__distance(s0,numarray.array([0.5,0.,0.5]))<self.ABS_TOL,"s0 is wrong.") |
165 |
s2_1=t([0,0,0]) |
166 |
self.failUnless(isinstance(s2_1,numarray.NumArray),"s2_1 is not a numarray object.") |
167 |
self.failUnless(self.__distance(s2_1,numarray.array([0,0,0.5]))<self.ABS_TOL,"s2_1 is wrong.") |
168 |
s1=t([0,1,0]) |
169 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
170 |
self.failUnless(self.__distance(s1,numarray.array([0.,0.5,0.5]))<self.ABS_TOL,"s1 is wrong.") |
171 |
s2=t([0,0,1]) |
172 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
173 |
self.failUnless(self.__distance(s2,numarray.array([0.,0.,1.]))<self.ABS_TOL,"s2 is wrong.") |
174 |
def test_Reflection_x_offset0(self): |
175 |
t=Reflection([1.,0.,0.]) |
176 |
s0=t([1,0,0]) |
177 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
178 |
self.failUnless(self.__distance(s0,numarray.array([-1.,0,0.]))<self.ABS_TOL,"s0 is wrong.") |
179 |
s1=t([0,1,0]) |
180 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
181 |
self.failUnless(self.__distance(s1,numarray.array([0,1,0]))<self.ABS_TOL,"s1 is wrong.") |
182 |
s2=t([0,0,1]) |
183 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
184 |
self.failUnless(self.__distance(s2,numarray.array([0,0,1]))<self.ABS_TOL,"s2 is wrong.") |
185 |
s=t([1,2,3]) |
186 |
self.failUnless(isinstance(s,numarray.NumArray),"s is not a numarray object.") |
187 |
self.failUnless(self.__distance(s,numarray.array([-1.,2,3]))<self.ABS_TOL,"s is wrong.") |
188 |
def test_Reflection_x_offset2(self): |
189 |
t=Reflection([-2.,0.,0.],offset=-4) |
190 |
s0=t([1,0,0]) |
191 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
192 |
self.failUnless(self.__distance(s0,numarray.array([3.,0,0.]))<self.ABS_TOL,"s0 is wrong.") |
193 |
s1=t([0,1,0]) |
194 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
195 |
self.failUnless(self.__distance(s1,numarray.array([4,1,0]))<self.ABS_TOL,"s1 is wrong.") |
196 |
s2=t([0,0,1]) |
197 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
198 |
self.failUnless(self.__distance(s2,numarray.array([4,0,1]))<self.ABS_TOL,"s2 is wrong.") |
199 |
s=t([1,2,3]) |
200 |
self.failUnless(isinstance(s,numarray.NumArray),"s is not a numarray object.") |
201 |
self.failUnless(self.__distance(s,numarray.array([3.,2,3]))<self.ABS_TOL,"s is wrong.") |
202 |
def test_Reflection_x_offset2_vector(self): |
203 |
t=Reflection([1.,0.,0.],offset=[2,0,0]) |
204 |
s0=t([1,0,0]) |
205 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
206 |
self.failUnless(self.__distance(s0,numarray.array([3.,0,0.]))<self.ABS_TOL,"s0 is wrong.") |
207 |
s1=t([0,1,0]) |
208 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
209 |
self.failUnless(self.__distance(s1,numarray.array([4,1,0]))<self.ABS_TOL,"s1 is wrong.") |
210 |
s2=t([0,0,1]) |
211 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
212 |
self.failUnless(self.__distance(s2,numarray.array([4,0,1]))<self.ABS_TOL,"s2 is wrong.") |
213 |
s=t([1,2,3]) |
214 |
self.failUnless(isinstance(s,numarray.NumArray),"s is not a numarray object.") |
215 |
self.failUnless(self.__distance(s,numarray.array([3.,2,3]))<self.ABS_TOL,"s is wrong.") |
216 |
def test_Reflection_y_offset0(self): |
217 |
t=Reflection([0.,1.,0.]) |
218 |
s0=t([1,0,0]) |
219 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
220 |
self.failUnless(self.__distance(s0,numarray.array([1.,0,0.]))<self.ABS_TOL,"s0 is wrong.") |
221 |
s1=t([0,1,0]) |
222 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
223 |
self.failUnless(self.__distance(s1,numarray.array([0,-1,0]))<self.ABS_TOL,"s1 is wrong.") |
224 |
s2=t([0,0,1]) |
225 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
226 |
self.failUnless(self.__distance(s2,numarray.array([0,0,1]))<self.ABS_TOL,"s2 is wrong.") |
227 |
s=t([1,2,3]) |
228 |
self.failUnless(isinstance(s,numarray.NumArray),"s is not a numarray object.") |
229 |
self.failUnless(self.__distance(s,numarray.array([1.,-2,3]))<self.ABS_TOL,"s is wrong.") |
230 |
def test_Reflection_y_offset2(self): |
231 |
t=Reflection([0.,-2.,0.],offset=-4) |
232 |
s0=t([1,0,0]) |
233 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
234 |
self.failUnless(self.__distance(s0,numarray.array([1.,4,0.]))<self.ABS_TOL,"s0 is wrong.") |
235 |
s1=t([0,1,0]) |
236 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
237 |
self.failUnless(self.__distance(s1,numarray.array([0,3,0]))<self.ABS_TOL,"s1 is wrong.") |
238 |
s2=t([0,0,1]) |
239 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
240 |
self.failUnless(self.__distance(s2,numarray.array([0,4,1]))<self.ABS_TOL,"s2 is wrong.") |
241 |
s=t([1,2,3]) |
242 |
self.failUnless(isinstance(s,numarray.NumArray),"s is not a numarray object.") |
243 |
self.failUnless(self.__distance(s,numarray.array([1.,2,3]))<self.ABS_TOL,"s is wrong.") |
244 |
def test_Reflection_y_offset2_vector(self): |
245 |
t=Reflection([0.,1.,0.],offset=[0,2,0]) |
246 |
s0=t([1,0,0]) |
247 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
248 |
self.failUnless(self.__distance(s0,numarray.array([1.,4,0.]))<self.ABS_TOL,"s0 is wrong.") |
249 |
s1=t([0,1,0]) |
250 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
251 |
self.failUnless(self.__distance(s1,numarray.array([0,3,0]))<self.ABS_TOL,"s1 is wrong.") |
252 |
s2=t([0,0,1]) |
253 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
254 |
self.failUnless(self.__distance(s2,numarray.array([0,4,1]))<self.ABS_TOL,"s2 is wrong.") |
255 |
s=t([1,2,3]) |
256 |
self.failUnless(isinstance(s,numarray.NumArray),"s is not a numarray object.") |
257 |
self.failUnless(self.__distance(s,numarray.array([1.,2,3]))<self.ABS_TOL,"s is wrong.") |
258 |
def test_Reflection_z_offset0(self): |
259 |
t=Reflection([0.,0.,1.]) |
260 |
s0=t([1,0,0]) |
261 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
262 |
self.failUnless(self.__distance(s0,numarray.array([1.,0,0.]))<self.ABS_TOL,"s0 is wrong.") |
263 |
s1=t([0,1,0]) |
264 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
265 |
self.failUnless(self.__distance(s1,numarray.array([0,1,0]))<self.ABS_TOL,"s1 is wrong.") |
266 |
s2=t([0,0,1]) |
267 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
268 |
self.failUnless(self.__distance(s2,numarray.array([0,0,-1]))<self.ABS_TOL,"s2 is wrong.") |
269 |
s=t([1,2,3]) |
270 |
self.failUnless(isinstance(s,numarray.NumArray),"s is not a numarray object.") |
271 |
self.failUnless(self.__distance(s,numarray.array([1.,2,-3]))<self.ABS_TOL,"s is wrong.") |
272 |
def test_Reflection_z_offset2(self): |
273 |
t=Reflection([0.,0.,-2.],offset=-4) |
274 |
s0=t([1,0,0]) |
275 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
276 |
self.failUnless(self.__distance(s0,numarray.array([1.,0,4.]))<self.ABS_TOL,"s0 is wrong.") |
277 |
s1=t([0,1,0]) |
278 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
279 |
self.failUnless(self.__distance(s1,numarray.array([0,1,4]))<self.ABS_TOL,"s1 is wrong.") |
280 |
s2=t([0,0,1]) |
281 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
282 |
self.failUnless(self.__distance(s2,numarray.array([0,0,3]))<self.ABS_TOL,"s2 is wrong.") |
283 |
s=t([1,2,3]) |
284 |
self.failUnless(isinstance(s,numarray.NumArray),"s is not a numarray object.") |
285 |
self.failUnless(self.__distance(s,numarray.array([1.,2,1]))<self.ABS_TOL,"s is wrong.") |
286 |
def test_Reflection_z_offset2_vector(self): |
287 |
t=Reflection([0.,0.,1.],offset=[0,0,2]) |
288 |
s0=t([1,0,0]) |
289 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
290 |
self.failUnless(self.__distance(s0,numarray.array([1.,0,4.]))<self.ABS_TOL,"s0 is wrong.") |
291 |
s1=t([0,1,0]) |
292 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
293 |
self.failUnless(self.__distance(s1,numarray.array([0,1,4]))<self.ABS_TOL,"s1 is wrong.") |
294 |
s2=t([0,0,1]) |
295 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
296 |
self.failUnless(self.__distance(s2,numarray.array([0,0,3]))<self.ABS_TOL,"s2 is wrong.") |
297 |
s=t([1,2,3]) |
298 |
self.failUnless(isinstance(s,numarray.NumArray),"s is not a numarray object.") |
299 |
self.failUnless(self.__distance(s,numarray.array([1.,2,1]))<self.ABS_TOL,"s is wrong.") |
300 |
def test_Rotatation_x_90_0(self): |
301 |
t=Rotatation(point1=[1.,0.,0.],angle=90*DEG) |
302 |
s0=t([1,0,0]) |
303 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
304 |
self.failUnless(self.__distance(s0,numarray.array([1.,0,0.]))<self.ABS_TOL,"s0 is wrong.") |
305 |
s1=t([0,1,0]) |
306 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
307 |
self.failUnless(abs(numarray.dot(s1,s1)-1.)<self.ABS_TOL,"s1 length is wrong.") |
308 |
self.failUnless(abs(s1[1]-math.cos(90*DEG))<self.ABS_TOL,"s1 angle is wrong.") |
309 |
self.failUnless(numarray.dot(_cross(s1,[0,1,0]),numarray.array([1.,0.,0.]))>0.,"s1 has wrong orientation.") |
310 |
s2=t([0,0,1]) |
311 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
312 |
self.failUnless(abs(numarray.dot(s2,s2)-1.)<self.ABS_TOL,"s2 length is wrong.") |
313 |
self.failUnless(abs(s2[2]-math.cos(90*DEG))<self.ABS_TOL,"s2 angle is wrong.") |
314 |
self.failUnless(numarray.dot(_cross(s2,[0,0,1]),numarray.array([1.,0.,0.]))>0.,"s2 has wrong orientation.") |
315 |
def test_Rotatation_x_30_0(self): |
316 |
t=Rotatation(point1=[1.,0.,0.],angle=30*DEG) |
317 |
s0=t([1,0,0]) |
318 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
319 |
self.failUnless(self.__distance(s0,numarray.array([1.,0,0.]))<self.ABS_TOL,"s0 is wrong.") |
320 |
s1=t([0,1,0]) |
321 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
322 |
self.failUnless(abs(numarray.dot(s1,s1)-1.)<self.ABS_TOL,"s1 length is wrong.") |
323 |
self.failUnless(abs(s1[1]-math.cos(30*DEG))<self.ABS_TOL,"s1 angle is wrong.") |
324 |
self.failUnless(numarray.dot(_cross(s1,[0,1,0]),numarray.array([1.,0.,0.]))>0.,"s1 has wrong orientation.") |
325 |
s2=t([0,0,1]) |
326 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
327 |
self.failUnless(abs(numarray.dot(s2,s2)-1.)<self.ABS_TOL,"s2 length is wrong.") |
328 |
self.failUnless(abs(s2[2]-math.cos(30*DEG))<self.ABS_TOL,"s2 angle is wrong.") |
329 |
self.failUnless(numarray.dot(_cross(s2,[0,0,1]),numarray.array([1.,0.,0.]))>0.,"s2 has wrong orientation.") |
330 |
def test_Rotatation_x_330_0(self): |
331 |
t=Rotatation(point1=[1.,0.,0.],angle=330*DEG) |
332 |
s0=t([1,0,0]) |
333 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
334 |
self.failUnless(self.__distance(s0,numarray.array([1.,0,0.]))<self.ABS_TOL,"s0 is wrong.") |
335 |
s1=t([0,1,0]) |
336 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
337 |
self.failUnless(abs(numarray.dot(s1,s1)-1.)<self.ABS_TOL,"s1 length is wrong.") |
338 |
self.failUnless(abs(s1[1]-math.cos(330*DEG))<self.ABS_TOL,"s1 angle is wrong.") |
339 |
self.failUnless(numarray.dot(_cross(s1,[0,1,0]),numarray.array([1.,0.,0.]))<0.,"s1 has wrong orientation.") |
340 |
s2=t([0,0,1]) |
341 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
342 |
self.failUnless(abs(numarray.dot(s2,s2)-1.)<self.ABS_TOL,"s2 length is wrong.") |
343 |
self.failUnless(abs(s2[2]-math.cos(330*DEG))<self.ABS_TOL,"s2 angle is wrong.") |
344 |
self.failUnless(numarray.dot(_cross(s2,[0,0,1]),numarray.array([1.,0.,0.]))<0.,"s2 has wrong orientation.") |
345 |
def test_Rotatation_x_90(self): |
346 |
t=Rotatation(point1=[1.,0.,0.],point0=[2.,0.,0.],angle=90*DEG) |
347 |
s0=t([1,0,0]) |
348 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
349 |
self.failUnless(self.__distance(s0,numarray.array([1.,0,0.]))<self.ABS_TOL,"s0 is wrong.") |
350 |
s1=t([0,1,0]) |
351 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
352 |
self.failUnless(abs(numarray.dot(s1,s1)-1.)<self.ABS_TOL,"s1 length is wrong.") |
353 |
self.failUnless(abs(s1[1]-math.cos(90*DEG))<self.ABS_TOL,"s1 angle is wrong.") |
354 |
self.failUnless(numarray.dot(_cross(s1,[0,1,0]),numarray.array([-1.,0.,0.]))>0.,"s1 has wrong orientation.") |
355 |
s2=t([0,0,1]) |
356 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
357 |
self.failUnless(abs(numarray.dot(s2,s2)-1.)<self.ABS_TOL,"s2 length is wrong.") |
358 |
self.failUnless(abs(s2[2]-math.cos(90*DEG))<self.ABS_TOL,"s2 angle is wrong.") |
359 |
self.failUnless(numarray.dot(_cross(s2,[0,0,1]),numarray.array([-1.,0.,0.]))>0.,"s2 has wrong orientation.") |
360 |
def test_Rotatation_x_30(self): |
361 |
t=Rotatation(point1=[1.,0.,0.],point0=[2.,0.,0.],angle=30*DEG) |
362 |
s0=t([1,0,0]) |
363 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
364 |
self.failUnless(self.__distance(s0,numarray.array([1.,0,0.]))<self.ABS_TOL,"s0 is wrong.") |
365 |
s1=t([0,1,0]) |
366 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
367 |
self.failUnless(abs(numarray.dot(s1,s1)-1.)<self.ABS_TOL,"s1 length is wrong.") |
368 |
self.failUnless(abs(s1[1]-math.cos(30*DEG))<self.ABS_TOL,"s1 angle is wrong.") |
369 |
self.failUnless(numarray.dot(_cross(s1,[0,1,0]),numarray.array([-1.,0.,0.]))>0.,"s1 has wrong orientation.") |
370 |
s2=t([0,0,1]) |
371 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
372 |
self.failUnless(abs(numarray.dot(s2,s2)-1.)<self.ABS_TOL,"s2 length is wrong.") |
373 |
self.failUnless(abs(s2[2]-math.cos(30*DEG))<self.ABS_TOL,"s2 angle is wrong.") |
374 |
self.failUnless(numarray.dot(_cross(s2,[0,0,1]),numarray.array([-1.,0.,0.]))>0.,"s2 has wrong orientation.") |
375 |
def test_Rotatation_x_330(self): |
376 |
t=Rotatation(point1=[1.,0.,0.],point0=[2.,0.,0.],angle=330*DEG) |
377 |
s0=t([1,0,0]) |
378 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
379 |
self.failUnless(self.__distance(s0,numarray.array([1.,0,0.]))<self.ABS_TOL,"s0 is wrong.") |
380 |
s1=t([0,1,0]) |
381 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
382 |
self.failUnless(abs(numarray.dot(s1,s1)-1.)<self.ABS_TOL,"s1 length is wrong.") |
383 |
self.failUnless(abs(s1[1]-math.cos(330*DEG))<self.ABS_TOL,"s1 angle is wrong.") |
384 |
self.failUnless(numarray.dot(_cross(s1,[0,1,0]),numarray.array([-1.,0.,0.]))<0.,"s1 has wrong orientation.") |
385 |
s2=t([0,0,1]) |
386 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
387 |
self.failUnless(abs(numarray.dot(s2,s2)-1.)<self.ABS_TOL,"s2 length is wrong.") |
388 |
self.failUnless(abs(s2[2]-math.cos(330*DEG))<self.ABS_TOL,"s2 angle is wrong.") |
389 |
self.failUnless(numarray.dot(_cross(s2,[0,0,1]),numarray.array([-1.,0.,0.]))<0.,"s2 has wrong orientation.") |
390 |
def test_Rotatation_y_90_0(self): |
391 |
t=Rotatation(point1=[0.,1.,0.],angle=90*DEG) |
392 |
s0=t([1,0,0]) |
393 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
394 |
self.failUnless(abs(numarray.dot(s0,s0)-1.)<self.ABS_TOL,"s0 length is wrong.") |
395 |
self.failUnless(abs(s0[0]-math.cos(90*DEG))<self.ABS_TOL,"s0 angle is wrong.") |
396 |
self.failUnless(numarray.dot(_cross(s0,[1,0,0]),numarray.array([0.,1.,0.]))>0.,"s0 has wrong orientation.") |
397 |
s1=t([0,5,0]) |
398 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
399 |
self.failUnless(self.__distance(s1,numarray.array([0.,5,0.]))<self.ABS_TOL,"s1 is wrong.") |
400 |
s2=t([0,0,1]) |
401 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
402 |
self.failUnless(abs(numarray.dot(s2,s2)-1.)<self.ABS_TOL,"s2 length is wrong.") |
403 |
self.failUnless(abs(s2[2]-math.cos(90*DEG))<self.ABS_TOL,"s2 angle is wrong.") |
404 |
self.failUnless(numarray.dot(_cross(s2,[0,0,1]),numarray.array([0.,1.,0.]))>0.,"s2 has wrong orientation.") |
405 |
def test_Rotatation_y_30_0(self): |
406 |
t=Rotatation(point1=[0.,1.,0.],angle=30*DEG) |
407 |
s0=t([1,0,0]) |
408 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
409 |
self.failUnless(abs(numarray.dot(s0,s0)-1.)<self.ABS_TOL,"s0 length is wrong.") |
410 |
self.failUnless(abs(s0[0]-math.cos(30*DEG))<self.ABS_TOL,"s0 angle is wrong.") |
411 |
self.failUnless(numarray.dot(_cross(s0,[1,0,0]),numarray.array([0.,1.,0.]))>0.,"s0 has wrong orientation.") |
412 |
s1=t([0,5,0]) |
413 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
414 |
self.failUnless(self.__distance(s1,numarray.array([0.,5,0.]))<self.ABS_TOL,"s1 is wrong.") |
415 |
s2=t([0,0,1]) |
416 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
417 |
self.failUnless(abs(numarray.dot(s2,s2)-1.)<self.ABS_TOL,"s2 length is wrong.") |
418 |
self.failUnless(abs(s2[2]-math.cos(30*DEG))<self.ABS_TOL,"s2 angle is wrong.") |
419 |
self.failUnless(numarray.dot(_cross(s2,[0,0,1]),numarray.array([0.,1.,0.]))>0.,"s2 has wrong orientation.") |
420 |
def test_Rotatation_y_330_0(self): |
421 |
t=Rotatation(point1=[0.,1.,0.],angle=330*DEG) |
422 |
s0=t([1,0,0]) |
423 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
424 |
self.failUnless(abs(numarray.dot(s0,s0)-1.)<self.ABS_TOL,"s0 length is wrong.") |
425 |
self.failUnless(abs(s0[0]-math.cos(330*DEG))<self.ABS_TOL,"s0 angle is wrong.") |
426 |
self.failUnless(numarray.dot(_cross(s0,[1,0,0]),numarray.array([0.,1.,0.]))<0.,"s0 has wrong orientation.") |
427 |
s1=t([0,1,0]) |
428 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
429 |
self.failUnless(self.__distance(s1,numarray.array([0.,1,0.]))<self.ABS_TOL,"s1 is wrong.") |
430 |
s2=t([0,0,1]) |
431 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
432 |
self.failUnless(abs(numarray.dot(s2,s2)-1.)<self.ABS_TOL,"s2 length is wrong.") |
433 |
self.failUnless(abs(s2[2]-math.cos(330*DEG))<self.ABS_TOL,"s2 angle is wrong.") |
434 |
self.failUnless(numarray.dot(_cross(s2,[0,0,1]),numarray.array([0.,1.,0.]))<0.,"s2 has wrong orientation.") |
435 |
def test_Rotatation_y_90(self): |
436 |
t=Rotatation(point1=[0.,1.,0.],point0=[0.,2.,0.],angle=90*DEG) |
437 |
s0=t([1,0,0]) |
438 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
439 |
self.failUnless(abs(numarray.dot(s0,s0)-1.)<self.ABS_TOL,"s0 length is wrong.") |
440 |
self.failUnless(abs(s0[0]-math.cos(90*DEG))<self.ABS_TOL,"s0 angle is wrong.") |
441 |
self.failUnless(numarray.dot(_cross(s0,[1,0,0]),numarray.array([0.,-1.,0.]))>0.,"s0 has wrong orientation.") |
442 |
s1=t([0,1,0]) |
443 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
444 |
self.failUnless(self.__distance(s1,numarray.array([0.,1,0.]))<self.ABS_TOL,"s1 is wrong.") |
445 |
s2=t([0,0,1]) |
446 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
447 |
self.failUnless(abs(numarray.dot(s2,s2)-1.)<self.ABS_TOL,"s2 length is wrong.") |
448 |
self.failUnless(abs(s2[2]-math.cos(90*DEG))<self.ABS_TOL,"s2 angle is wrong.") |
449 |
self.failUnless(numarray.dot(_cross(s2,[0,0,1]),numarray.array([0.,-1.,0.]))>0.,"s2 has wrong orientation.") |
450 |
def test_Rotatation_y_30(self): |
451 |
t=Rotatation(point1=[0.,1.,0.],point0=[0.,2.,0.],angle=30*DEG) |
452 |
s0=t([1,0,0]) |
453 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
454 |
self.failUnless(abs(numarray.dot(s0,s0)-1.)<self.ABS_TOL,"s0 length is wrong.") |
455 |
self.failUnless(abs(s0[0]-math.cos(30*DEG))<self.ABS_TOL,"s0 angle is wrong.") |
456 |
self.failUnless(numarray.dot(_cross(s0,[1,0,0]),numarray.array([0.,-1.,0.]))>0.,"s0 has wrong orientation.") |
457 |
s1=t([0,1,0]) |
458 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
459 |
self.failUnless(self.__distance(s1,numarray.array([0.,1,0.]))<self.ABS_TOL,"s1 is wrong.") |
460 |
s2=t([0,0,1]) |
461 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
462 |
self.failUnless(abs(numarray.dot(s2,s2)-1.)<self.ABS_TOL,"s2 length is wrong.") |
463 |
self.failUnless(abs(s2[2]-math.cos(30*DEG))<self.ABS_TOL,"s2 angle is wrong.") |
464 |
self.failUnless(numarray.dot(_cross(s2,[0,0,1]),numarray.array([0.,-1.,0.]))>0.,"s2 has wrong orientation.") |
465 |
def test_Rotatation_y_330(self): |
466 |
t=Rotatation(point1=[0.,1.,0.],point0=[0.,2.,0.],angle=330*DEG) |
467 |
s0=t([1,0,0]) |
468 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
469 |
self.failUnless(abs(numarray.dot(s0,s0)-1.)<self.ABS_TOL,"s0 length is wrong.") |
470 |
self.failUnless(abs(s0[0]-math.cos(330*DEG))<self.ABS_TOL,"s0 angle is wrong.") |
471 |
self.failUnless(numarray.dot(_cross(s0,[1,0,0]),numarray.array([0.,-1.,0.]))<0.,"s0 has wrong orientation.") |
472 |
s1=t([0,1,0]) |
473 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
474 |
self.failUnless(self.__distance(s1,numarray.array([0.,1,0.]))<self.ABS_TOL,"s1 is wrong.") |
475 |
s2=t([0,0,1]) |
476 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
477 |
self.failUnless(abs(numarray.dot(s2,s2)-1.)<self.ABS_TOL,"s2 length is wrong.") |
478 |
self.failUnless(abs(s2[2]-math.cos(330*DEG))<self.ABS_TOL,"s2 angle is wrong.") |
479 |
self.failUnless(numarray.dot(_cross(s2,[0,0,1]),numarray.array([0.,-1.,0.]))<0.,"s2 has wrong orientation.") |
480 |
def test_Rotatation_z_90_0(self): |
481 |
t=Rotatation(point1=[0.,0.,1.],angle=90*DEG) |
482 |
s0=t([1,0,0]) |
483 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
484 |
self.failUnless(abs(numarray.dot(s0,s0)-1.)<self.ABS_TOL,"s0 length is wrong.") |
485 |
self.failUnless(abs(s0[0]-math.cos(90*DEG))<self.ABS_TOL,"s0 angle is wrong.") |
486 |
self.failUnless(numarray.dot(_cross(s0,[1,0,0]),numarray.array([0.,0.,1.]))>0.,"s0 has wrong orientation.") |
487 |
s1=t([0,5,0]) |
488 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
489 |
self.failUnless(abs(numarray.dot(s1,s1)-5.**2)<self.ABS_TOL,"s1 length is wrong.") |
490 |
self.failUnless(abs(s1[1]/5.-math.cos(90*DEG))<self.ABS_TOL,"s1 angle is wrong.") |
491 |
self.failUnless(numarray.dot(_cross(s1,[0,1,0]),numarray.array([0.,0.,1.]))>0.,"s1 has wrong orientation.") |
492 |
s2=t([0,0,1]) |
493 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
494 |
self.failUnless(self.__distance(s2,numarray.array([0.,0,1.]))<self.ABS_TOL,"s2 is wrong.") |
495 |
def test_Rotatation_z_30_0(self): |
496 |
t=Rotatation(point1=[0.,0.,1.],angle=30*DEG) |
497 |
s0=t([1,0,0]) |
498 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
499 |
self.failUnless(abs(numarray.dot(s0,s0)-1.)<self.ABS_TOL,"s0 length is wrong.") |
500 |
self.failUnless(abs(s0[0]-math.cos(30*DEG))<self.ABS_TOL,"s0 angle is wrong.") |
501 |
self.failUnless(numarray.dot(_cross(s0,[1,0,0]),numarray.array([0.,0.,1.]))>0.,"s0 has wrong orientation.") |
502 |
s1=t([0,5,0]) |
503 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
504 |
self.failUnless(abs(numarray.dot(s1,s1)-5.**2)<self.ABS_TOL,"s1 length is wrong.") |
505 |
self.failUnless(abs(s1[1]/5.-math.cos(30*DEG))<self.ABS_TOL,"s1 angle is wrong.") |
506 |
self.failUnless(numarray.dot(_cross(s1,[0,5,0]),numarray.array([0.,0.,1.]))>0.,"s1 has wrong orientation.") |
507 |
s2=t([0,0,1]) |
508 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
509 |
self.failUnless(self.__distance(s2,numarray.array([0.,0,1.]))<self.ABS_TOL,"s2 is wrong.") |
510 |
def test_Rotatation_z_330_0(self): |
511 |
t=Rotatation(point1=[0.,0.,1.],angle=330*DEG) |
512 |
s0=t([1,0,0]) |
513 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
514 |
self.failUnless(abs(numarray.dot(s0,s0)-1.)<self.ABS_TOL,"s0 length is wrong.") |
515 |
self.failUnless(abs(s0[0]-math.cos(330*DEG))<self.ABS_TOL,"s0 angle is wrong.") |
516 |
self.failUnless(numarray.dot(_cross(s0,[1,0,0]),numarray.array([0.,0.,1.]))<0.,"s0 has wrong orientation.") |
517 |
s1=t([0,5,0]) |
518 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
519 |
self.failUnless(abs(numarray.dot(s1,s1)-5.**2)<self.ABS_TOL,"s1 length is wrong.") |
520 |
self.failUnless(abs(s1[1]/5.-math.cos(330*DEG))<self.ABS_TOL,"s1 angle is wrong.") |
521 |
self.failUnless(numarray.dot(_cross(s1,[0,1,0]),numarray.array([0.,0.,1.]))<0.,"s1 has wrong orientation.") |
522 |
def test_Rotatation_z_90(self): |
523 |
t=Rotatation(point1=[0.,0.,1.],point0=[0.,0.,2.],angle=90*DEG) |
524 |
s0=t([1,0,0]) |
525 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
526 |
self.failUnless(abs(numarray.dot(s0,s0)-1.)<self.ABS_TOL,"s0 length is wrong.") |
527 |
self.failUnless(abs(s0[0]-math.cos(90*DEG))<self.ABS_TOL,"s0 angle is wrong.") |
528 |
self.failUnless(numarray.dot(_cross(s0,[1,0,0]),numarray.array([0.,0.,-1.]))>0.,"s0 has wrong orientation.") |
529 |
s1=t([0,1,0]) |
530 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
531 |
self.failUnless(abs(numarray.dot(s1,s1)-1.)<self.ABS_TOL,"s1 length is wrong.") |
532 |
self.failUnless(abs(s1[1]-math.cos(90*DEG))<self.ABS_TOL,"s1 angle is wrong.") |
533 |
self.failUnless(numarray.dot(_cross(s1,[0,1,0]),numarray.array([0.,0.,-1.]))>0.,"s1 has wrong orientation.") |
534 |
s2=t([0,0,1]) |
535 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
536 |
self.failUnless(self.__distance(s2,numarray.array([0.,0,1.]))<self.ABS_TOL,"s2 is wrong.") |
537 |
def test_Rotatation_z_30(self): |
538 |
t=Rotatation(point1=[0.,0.,1.],point0=[0.,0.,2.],angle=30*DEG) |
539 |
s0=t([1,0,0]) |
540 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
541 |
self.failUnless(abs(numarray.dot(s0,s0)-1.)<self.ABS_TOL,"s0 length is wrong.") |
542 |
self.failUnless(abs(s0[0]-math.cos(30*DEG))<self.ABS_TOL,"s0 angle is wrong.") |
543 |
self.failUnless(numarray.dot(_cross(s0,[1,0,0]),numarray.array([0.,0.,-1.]))>0.,"s0 has wrong orientation.") |
544 |
s1=t([0,1,0]) |
545 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
546 |
self.failUnless(abs(numarray.dot(s1,s1)-1.)<self.ABS_TOL,"s1 length is wrong.") |
547 |
self.failUnless(abs(s1[1]-math.cos(30*DEG))<self.ABS_TOL,"s1 angle is wrong.") |
548 |
self.failUnless(numarray.dot(_cross(s1,[0,1,0]),numarray.array([0.,0.,-1.]))>0.,"s1 has wrong orientation.") |
549 |
s2=t([0,0,1]) |
550 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
551 |
self.failUnless(self.__distance(s2,numarray.array([0.,0,1.]))<self.ABS_TOL,"s2 is wrong.") |
552 |
def test_Rotatation_z_330(self): |
553 |
t=Rotatation(point1=[0.,0.,1.],point0=[0.,0.,2.],angle=330*DEG) |
554 |
s0=t([1,0,0]) |
555 |
self.failUnless(isinstance(s0,numarray.NumArray),"s0 is not a numarray object.") |
556 |
self.failUnless(abs(numarray.dot(s0,s0)-1.)<self.ABS_TOL,"s0 length is wrong.") |
557 |
self.failUnless(abs(s0[0]-math.cos(330*DEG))<self.ABS_TOL,"s0 angle is wrong.") |
558 |
self.failUnless(numarray.dot(_cross(s0,[1,0,0]),numarray.array([0.,0.,-1.]))<0.,"s0 has wrong orientation.") |
559 |
s1=t([0,1,0]) |
560 |
self.failUnless(isinstance(s1,numarray.NumArray),"s1 is not a numarray object.") |
561 |
self.failUnless(abs(numarray.dot(s1,s1)-1.)<self.ABS_TOL,"s1 length is wrong.") |
562 |
self.failUnless(abs(s1[1]-math.cos(30*DEG))<self.ABS_TOL,"s1 angle is wrong.") |
563 |
self.failUnless(numarray.dot(_cross(s1,[0,1,0]),numarray.array([0.,0.,-1.]))<0.,"s1 has wrong orientation.") |
564 |
s2=t([0,0,1]) |
565 |
self.failUnless(isinstance(s2,numarray.NumArray),"s2 is not a numarray object.") |
566 |
self.failUnless(self.__distance(s2,numarray.array([0.,0,1.]))<self.ABS_TOL,"s2 is wrong.") |
567 |
if __name__ == '__main__': |
568 |
suite = unittest.TestSuite() |
569 |
suite.addTest(unittest.makeSuite(Test_PyCAD)) |
570 |
s=unittest.TextTestRunner(verbosity=2).run(suite) |
571 |
if s.wasSuccessful(): |
572 |
sys.exit(0) |
573 |
else: |
574 |
sys.exit(1) |