csirmaz.openscad-py/openscad_py/union.py

25 lines
651 B
Python
Raw Normal View History

2024-11-30 22:11:59 +00:00
from typing import Union as TUnion
from typing import List
import math
from openscad_py.point import Point
from openscad_py.object_ import Object
from openscad_py.collection import Collection
class Union(Object):
"""Represents a union applied to an object (usually a collection of objects)"""
def __init__(self, child: TUnion[Object, list]):
self.child = Collection.c(child)
def render(self) -> str:
2024-11-30 22:45:02 +00:00
"""Render the object into OpenSCAD code"""
2024-11-30 22:11:59 +00:00
return f"union(){{ {self.child.render()} }}"
def union(self, objects: TUnion[list, Object]) -> Object:
return self.__class__(self.child._add(objects))