|
| 1 | +from compas_viewer.viewer import Viewer |
| 2 | + |
| 3 | +from compas.geometry import Brep |
| 4 | +from compas.geometry import Circle |
| 5 | +from compas.geometry import Frame |
| 6 | +from compas.geometry import Polygon |
| 7 | +from compas_occ.brep import OCCBrepFace |
| 8 | +from compas_occ.brep import OCCBrepLoop |
| 9 | + |
| 10 | +circle1 = Circle(1.0, frame=Frame([2, 2, 0])) |
| 11 | +circle2 = Circle(2.0, frame=Frame([-2, -2, 0])) |
| 12 | +circle3 = Circle(0.5, frame=Frame([2, -2, 0])) |
| 13 | + |
| 14 | +loop1 = OCCBrepLoop.from_polygon(circle1.to_polygon(32)) |
| 15 | +loop2 = OCCBrepLoop.from_polygon(circle2.to_polygon(8)) |
| 16 | +loop3 = OCCBrepLoop.from_polygon(circle3.to_polygon(4)) |
| 17 | + |
| 18 | +polygon = Polygon.from_sides_and_radius_xy(5, 10.0) |
| 19 | +face = OCCBrepFace.from_polygon(polygon) |
| 20 | +face.add_loops([loop1, loop2, loop3], reverse=False) |
| 21 | + |
| 22 | +brep = Brep.from_brepfaces([face]) |
| 23 | + |
| 24 | +# ============================================================================= |
| 25 | +# Visualization |
| 26 | +# ============================================================================= |
| 27 | + |
| 28 | +viewer = Viewer() |
| 29 | +viewer.scene.add(brep, linewidth=2, show_point=False) |
| 30 | +viewer.show() |
0 commit comments