csirmaz.openscad-py/openscad_py/difference.py
Elod Csirmaz dc0a58c342 Add links
2024-12-01 15:51:43 +00:00

22 lines
632 B
Python

from typing import Union as TUnion
from typing import List
import math
from openscad_py.object_ import Object
from openscad_py.collection import Collection
class Difference(Object):
"""Represents a difference.
See https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/CSG_Modelling#difference
"""
def __init__(self, subject: Object, tool: TUnion[list, Object]):
self.subject = subject
self.tool = Collection.c(tool) # what to remove
def render(self) -> str:
"""Render the object into OpenSCAD code"""
return f"difference(){{ {self.subject.render()}\n{self.tool.render()} }}"