Tree — base classes =================== These types form the **structural vocabulary** of the OpenVCAD graph. Every design is a :class:`Node` tree: the engine evaluates signed distance and attributes by walking from the root to the leaves and aggregating results upward. :class:`Leaf` marks **terminals** that hold geometry or field data directly (see :doc:`leaves`). Most other nodes are **composition** operators; they wrap one or more child subtrees and are modeled as :class:`Unary`, :class:`Binary`, or :class:`NAry` according to how many children they take (see :doc:`composition`). .. currentmodule:: pyvcad .. autoclass:: Node :members: :undoc-members: :special-members: __init__ .. autoclass:: Leaf :members: :undoc-members: :special-members: __init__ .. autoclass:: Unary :members: :undoc-members: :special-members: __init__ .. autoclass:: Binary :members: :undoc-members: :special-members: __init__ .. autoclass:: NAry :members: :undoc-members: :special-members: __init__