MCPcopy
hub / github.com/CadQuery/cadquery / testRevolveCylinder

Method testRevolveCylinder

tests/test_cadquery.py:546–635  ·  view source on GitHub ↗

Test creating a solid using the revolve operation. :return:

(self)

Source from the content-addressed store, hash-verified

544 # self.assertEqual(8,s.faces().size() )
545
546 def testRevolveCylinder(self):
547 """
548 Test creating a solid using the revolve operation.
549 :return:
550 """
551 # The dimensions of the model. These can be modified rather than changing the
552 # shape's code directly.
553 rectangle_width = 10.0
554 rectangle_length = 10.0
555 angle_degrees = 360.0
556
557 # Test revolve without any options for making a cylinder
558 result = (
559 Workplane("XY").rect(rectangle_width, rectangle_length, False).revolve()
560 )
561 self.assertEqual(3, result.faces().size())
562 self.assertEqual(2, result.vertices().size())
563 self.assertEqual(3, result.edges().size())
564
565 # Test revolve when only setting the angle to revolve through
566 result = (
567 Workplane("XY")
568 .rect(rectangle_width, rectangle_length, False)
569 .revolve(angle_degrees)
570 )
571 self.assertEqual(3, result.faces().size())
572 self.assertEqual(2, result.vertices().size())
573 self.assertEqual(3, result.edges().size())
574 result = (
575 Workplane("XY")
576 .rect(rectangle_width, rectangle_length, False)
577 .revolve(270.0)
578 )
579 self.assertEqual(5, result.faces().size())
580 self.assertEqual(6, result.vertices().size())
581 self.assertEqual(9, result.edges().size())
582
583 # Test when passing revolve the angle and the axis of revolution's start point
584 result = (
585 Workplane("XY")
586 .rect(rectangle_width, rectangle_length)
587 .revolve(angle_degrees, (-5, -5))
588 )
589 self.assertEqual(3, result.faces().size())
590 self.assertEqual(2, result.vertices().size())
591 self.assertEqual(3, result.edges().size())
592 result = (
593 Workplane("XY")
594 .rect(rectangle_width, rectangle_length)
595 .revolve(270.0, (-5, -5))
596 )
597 self.assertEqual(5, result.faces().size())
598 self.assertEqual(6, result.vertices().size())
599 self.assertEqual(9, result.edges().size())
600
601 # Test when passing revolve the angle and both the start and ends of the axis of revolution
602 result = (
603 Workplane("XY")

Callers

nothing calls this directly

Calls 7

WorkplaneClass · 0.85
revolveMethod · 0.45
rectMethod · 0.45
sizeMethod · 0.45
facesMethod · 0.45
verticesMethod · 0.45
edgesMethod · 0.45

Tested by

no test coverage detected