Skip to content

Commit 4df1c09

Browse files
authored
Merge pull request #130 from mtezzele/fix_params
fix names and tests
2 parents 8452edc + 93f27df commit 4df1c09

File tree

2 files changed

+19
-20
lines changed

2 files changed

+19
-20
lines changed

pygem/params.py

Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -353,9 +353,7 @@ def _set_box_dimensions(self, min_xyz, max_xyz):
353353
the bounding box in XYZ respectively
354354
"""
355355
dims = [max_xyz[i] - min_xyz[i] for i in range(3)]
356-
self.lenght_box_x = dims[0]
357-
self.lenght_box_y = dims[1]
358-
self.lenght_box_z = dims[2]
356+
self.lenght_box = np.asarray(dims)
359357

360358
def _set_position_of_vertices(self):
361359
"""
@@ -364,21 +362,18 @@ def _set_position_of_vertices(self):
364362
parallelepiped -- the second half of the box is created as a mirror
365363
reflection of the first four vertices.
366364
"""
367-
origin_array = np.array(self.origin_box)
368-
dim = [self.lenght_box_x, self.lenght_box_y, self.lenght_box_z]
369-
self.position_vertex_0 = origin_array
370-
self.position_vertex_1 = origin_array + np.array([dim[0], .0, .0])
371-
self.position_vertex_2 = origin_array + np.array([.0, dim[1], .0])
372-
self.position_vertex_3 = origin_array + np.array([.0, .0, dim[2]])
365+
self.position_vertex_0 = self.origin_box
366+
self.position_vertex_1 = self.origin_box + np.array([self.lenght_box[0], .0, .0])
367+
self.position_vertex_2 = self.origin_box + np.array([.0, self.lenght_box[1], .0])
368+
self.position_vertex_3 = self.origin_box + np.array([.0, .0, self.lenght_box[2]])
373369

374370
def _set_mapping(self):
375371
"""
376372
This method sets mapping from physcial domain to the reference domain
377373
(``psi_mapping``) as well as inverse mapping (``inv_psi_mapping``).
378374
"""
379-
dim = [self.lenght_box_x, self.lenght_box_y, self.lenght_box_z]
380-
self.psi_mapping = np.diag([1. / dim[i] for i in range(3)])
381-
self.inv_psi_mapping = np.diag(dim)
375+
self.psi_mapping = np.diag([1. / self.lenght_box[i] for i in range(3)])
376+
self.inv_psi_mapping = np.diag(self.lenght_box)
382377

383378
def _set_transformation_params_to_zero(self):
384379
"""

tests/test_ffdparams.py

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -294,20 +294,26 @@ def test_write_parameters(self):
294294
self.assertTrue(filecmp.cmp(outfilename, outfilename_expected))
295295
os.remove(outfilename)
296296

297-
def test_print_info(self):
297+
def test_print(self):
298298
params = ffdp.FFDParameters(n_control_points=[3, 2, 2])
299299
print(params)
300300

301-
def test_build_bounding_box(self):
301+
def test_build_bounding_box_1(self):
302+
origin = np.array([0., 0., 0.])
303+
tops = np.array([1., 1., 1.])
304+
cube = BRepPrimAPI_MakeBox(*tops).Shape()
305+
params = ffdp.FFDParameters()
306+
params.build_bounding_box(cube)
307+
308+
np.testing.assert_array_almost_equal(params.lenght_box, tops, decimal=5)
309+
310+
def test_build_bounding_box_2(self):
302311
origin = np.array([0., 0., 0.])
303312
tops = np.array([1., 1., 1.])
304313
cube = BRepPrimAPI_MakeBox(*tops).Shape()
305314
params = ffdp.FFDParameters()
306315
params.build_bounding_box(cube)
307316

308-
self.assertAlmostEqual(params.lenght_box_x, tops[0], places=5)
309-
self.assertAlmostEqual(params.lenght_box_y, tops[1], places=5)
310-
self.assertAlmostEqual(params.lenght_box_z, tops[2], places=5)
311317
np.testing.assert_almost_equal(params.position_vertex_0, origin, decimal=5)
312318
np.testing.assert_almost_equal(params.position_vertex_1, [1., 0., 0.], decimal=5)
313319
np.testing.assert_almost_equal(params.position_vertex_2, [0., 1., 0.], decimal=5)
@@ -319,9 +325,7 @@ def test_set_box_dimension(self):
319325
params = ffdp.FFDParameters()
320326
params.origin_box = origin
321327
params._set_box_dimensions(origin, tops)
322-
self.assertEqual(params.lenght_box_x, tops[0])
323-
self.assertEqual(params.lenght_box_y, tops[1])
324-
self.assertEqual(params.lenght_box_z, tops[2])
328+
np.testing.assert_array_almost_equal(params.lenght_box, tops)
325329

326330
def test_set_position_of_vertices(self):
327331
vertex_0 = [0., 0., 0.]

0 commit comments

Comments
 (0)