Code formatting
This commit is contained in:
@ -378,6 +378,7 @@ class RadiusNthSelector(_NthSelector):
|
|||||||
else:
|
else:
|
||||||
raise ValueError("Can not get a radius from this object")
|
raise ValueError("Can not get a radius from this object")
|
||||||
|
|
||||||
|
|
||||||
class CenterNthSelector(_NthSelector):
|
class CenterNthSelector(_NthSelector):
|
||||||
"""
|
"""
|
||||||
Sorts objects into a list with order determined by the distance of their center projected onto the specified direction.
|
Sorts objects into a list with order determined by the distance of their center projected onto the specified direction.
|
||||||
@ -425,7 +426,9 @@ class DirectionMinMaxSelector(CenterNthSelector):
|
|||||||
def __init__(
|
def __init__(
|
||||||
self, vector: Vector, directionMax: bool = True, tolerance: float = 0.0001
|
self, vector: Vector, directionMax: bool = True, tolerance: float = 0.0001
|
||||||
):
|
):
|
||||||
super().__init__(n=-1, vector=vector, directionMax=directionMax, tolerance=tolerance)
|
super().__init__(
|
||||||
|
n=-1, vector=vector, directionMax=directionMax, tolerance=tolerance
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
# inherit from CenterNthSelector to get the CenterNthSelector.key method
|
# inherit from CenterNthSelector to get the CenterNthSelector.key method
|
||||||
|
@ -26,9 +26,11 @@ import cadquery
|
|||||||
# documentation root, use os.path.abspath to make it absolute, like shown here.
|
# documentation root, use os.path.abspath to make it absolute, like shown here.
|
||||||
# sys.path.insert(0, os.path.abspath('.'))
|
# sys.path.insert(0, os.path.abspath('.'))
|
||||||
|
|
||||||
|
|
||||||
def setup(app):
|
def setup(app):
|
||||||
app.add_css_file("tables.css")
|
app.add_css_file("tables.css")
|
||||||
|
|
||||||
|
|
||||||
# -- General configuration -----------------------------------------------------
|
# -- General configuration -----------------------------------------------------
|
||||||
|
|
||||||
# If your documentation needs a minimal Sphinx version, state it here.
|
# If your documentation needs a minimal Sphinx version, state it here.
|
||||||
|
@ -203,7 +203,9 @@ class TestCQSelectors(BaseTest):
|
|||||||
|
|
||||||
left_face = c.faces(sel(0, Vector(1, 0, 0)))
|
left_face = c.faces(sel(0, Vector(1, 0, 0)))
|
||||||
self.assertEqual(left_face.size(), 1)
|
self.assertEqual(left_face.size(), 1)
|
||||||
self.assertTupleAlmostEquals((-0.5, 0, 0.5), left_face.val().Center().toTuple(), 3)
|
self.assertTupleAlmostEquals(
|
||||||
|
(-0.5, 0, 0.5), left_face.val().Center().toTuple(), 3
|
||||||
|
)
|
||||||
|
|
||||||
middle_faces = c.faces(sel(1, Vector(1, 0, 0)))
|
middle_faces = c.faces(sel(1, Vector(1, 0, 0)))
|
||||||
self.assertEqual(middle_faces.size(), 4)
|
self.assertEqual(middle_faces.size(), 4)
|
||||||
@ -212,7 +214,9 @@ class TestCQSelectors(BaseTest):
|
|||||||
|
|
||||||
right_face = c.faces(sel(2, Vector(1, 0, 0)))
|
right_face = c.faces(sel(2, Vector(1, 0, 0)))
|
||||||
self.assertEqual(right_face.size(), 1)
|
self.assertEqual(right_face.size(), 1)
|
||||||
self.assertTupleAlmostEquals((0.5, 0, 0.5), right_face.val().Center().toTuple(), 3)
|
self.assertTupleAlmostEquals(
|
||||||
|
(0.5, 0, 0.5), right_face.val().Center().toTuple(), 3
|
||||||
|
)
|
||||||
|
|
||||||
with self.assertRaises(IndexError):
|
with self.assertRaises(IndexError):
|
||||||
c.faces(sel(3, Vector(1, 0, 0)))
|
c.faces(sel(3, Vector(1, 0, 0)))
|
||||||
@ -257,16 +261,22 @@ class TestCQSelectors(BaseTest):
|
|||||||
|
|
||||||
# select solids
|
# select solids
|
||||||
box0 = Workplane().box(1, 1, 1, centered=(True, True, True))
|
box0 = Workplane().box(1, 1, 1, centered=(True, True, True))
|
||||||
box1 = Workplane("XY", origin=(10, 10, 10)).box(1, 1, 1, centered=(True, True, True))
|
box1 = Workplane("XY", origin=(10, 10, 10)).box(
|
||||||
|
1, 1, 1, centered=(True, True, True)
|
||||||
|
)
|
||||||
part = box0.add(box1)
|
part = box0.add(box1)
|
||||||
self.assertEqual(part.solids().size(), 2)
|
self.assertEqual(part.solids().size(), 2)
|
||||||
for direction in [(0, 0, 1), (0, 1, 0), (1, 0, 0)]:
|
for direction in [(0, 0, 1), (0, 1, 0), (1, 0, 0)]:
|
||||||
box0_selected = part.solids(sel(0, Vector(direction)))
|
box0_selected = part.solids(sel(0, Vector(direction)))
|
||||||
self.assertEqual(1, box0_selected.size())
|
self.assertEqual(1, box0_selected.size())
|
||||||
self.assertTupleAlmostEquals((0, 0, 0), box0_selected.val().Center().toTuple(), 3)
|
self.assertTupleAlmostEquals(
|
||||||
|
(0, 0, 0), box0_selected.val().Center().toTuple(), 3
|
||||||
|
)
|
||||||
box1_selected = part.solids(sel(1, Vector(direction)))
|
box1_selected = part.solids(sel(1, Vector(direction)))
|
||||||
self.assertEqual(1, box0_selected.size())
|
self.assertEqual(1, box0_selected.size())
|
||||||
self.assertTupleAlmostEquals((10, 10, 10), box1_selected.val().Center().toTuple(), 3)
|
self.assertTupleAlmostEquals(
|
||||||
|
(10, 10, 10), box1_selected.val().Center().toTuple(), 3
|
||||||
|
)
|
||||||
|
|
||||||
def testMaxDistance(self):
|
def testMaxDistance(self):
|
||||||
c = CQ(makeUnitCube())
|
c = CQ(makeUnitCube())
|
||||||
|
Reference in New Issue
Block a user