Test creating a solid using the revolve operation. :return:
(self)
| 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") |