ShapeElement
- class ShapeElement(carrier: D_co, attributes: ElementAttributes)
A
ShapeElement
is a transformable (seeTransformableMixin
) geometric construct that composes a design (seeShape
).- Parameters:
carrier – The
Carrier
underlying this element.
Attributes
The
Carrier
underlying this element.The
ElementAttributes
of this element.Methods
Returns the boolean difference between this element and another.
Returns
True
if this element is coincident with another.Returns
True
ifpoint
is coincident to this element.Returns
True
if this element is equivalent to another.Returns
True
if this element is embedded in another.Transform this
TransformableMixin
by a givenTransformation
.- __le__(other)
Calls
is_embedded_in()
.
- __rmatmul__(transformation: Transformation) T_co
Computes
transformable.transform(t)
when performingt @ transformable
for aTransformation
t
andTransformableMixin
transformable
.
- __sub__(other)
Calls
boolean_subtract()
.
- abstract boolean_subtract(other: E_co) List[E_co]
Returns the boolean difference between this element and another.
- abstract coincident_with(other: E_co) bool
Returns
True
if this element is coincident with another. This occurs when the result of maximizing the two elements returns an element that both are embedded in (seeis_embedded_in()
).Specifically, the two elements must be coequal and at least one part of the boundary of one element must be contained within the boundary of the other.
Fuzzy with tolerance.
- abstract contains_point(point: ArrayLike) bool
Returns
True
ifpoint
is coincident to this element. Fuzzy with tolerance.
- abstract equivalent_to(other: E_co) bool
Returns
True
if this element is equivalent to another. They must be coequal and have equivalent boundaries. Fuzzy with tolerance.
- abstract is_embedded_in(other: E_co) bool
Returns
True
if this element is embedded in another. This occurs when the result of maximizing the two elements returns an element equivalent to the other.Specifically, the two elements must be coequal and the boundary of this element must be entirely contained within the boundary of the other.
Fuzzy with tolerance.
- abstract transform(transformation: Transformation) T_co
Transform this
TransformableMixin
by a givenTransformation
.
- attributes
The
ElementAttributes
of this element. These must be equatable and hashable and are made to be immutable upon carrier initialization.