bluemira.geometry.face ====================== .. py:module:: bluemira.geometry.face .. autoapi-nested-parse:: Wrapper for FreeCAD Part.Face objects Classes ------- .. autoapisummary:: bluemira.geometry.face.BluemiraFace Module Contents --------------- .. py:class:: BluemiraFace(boundary: bluemira.geometry.wire.BluemiraWire | list[bluemira.geometry.wire.BluemiraWire], label: str = '') Bases: :py:obj:`bluemira.geometry.base.BluemiraGeo` .. autoapi-inheritance-diagram:: bluemira.geometry.face.BluemiraFace :parts: 1 :private-bases: Bluemira Face class. :param boundary: List of BluemiraWires to use to make the face :param label: Label to assign to the BluemiraFace .. py:method:: _converter(func) :staticmethod: Function used in __getattr__ to modify the added functions. :returns: Function used in __getattr__ to modify the added functions. .. py:method:: _plotting_wires() .. py:method:: copy() Make a copy of the BluemiraFace :returns: A copy of the BluemiraFace. .. py:method:: deepcopy(label: str | None = None) -> BluemiraFace Make a copy of the BluemiraFace :returns: A deepcopy of the BluemiraFace. .. py:method:: _check_boundary(objs) Check if objects in objs are of the correct type for this class :returns: Inputted object if correct type for class or None when input is None. :raises TypeError: Only wires are allowed as boundaries :raises NotClosedWireError: not all boundary wires are closed .. py:method:: _create_face(*, check_reverse: bool = True) Create the primitive face :returns: The primitive face. :raises DisjointedFaceError: More than 1 face created .. py:method:: _create_shape() -> bluemira.codes._freecadapi.apiFace :returns: Shape of the object as a primitive face :rtype: Part.Face .. py:method:: _create(obj: bluemira.codes._freecadapi.apiFace, label='') -> BluemiraFace :classmethod: .. py:method:: discretise(ndiscr: int = 100, *, byedges: bool = False, dl: float | None = None) -> numpy.ndarray Make an array of the geometry. :param ndiscr: Number of points in the array :param dl: Optional length discretisation (overrides ndiscr) :param byedges: Whether or not to discretise by edges :returns: * *(M, (3, N)) array of point coordinates where M is the number of boundaries* * *and N the number of discretisation points.* .. py:method:: normal_at(alpha_1: float = 0.0, alpha_2: float = 0.0) -> numpy.ndarray Get the normal vector of the face at a parameterised point in space. For planar faces, the normal is the same everywhere. :returns: The normal vector of the face at a parameterised point in space. .. py:property:: vertexes :type: bluemira.geometry.coordinates.Coordinates The vertexes of the face. .. py:property:: edges :type: tuple[bluemira.geometry.wire.BluemiraWire] The edges of the face. .. py:property:: wires :type: tuple[bluemira.geometry.wire.BluemiraWire] The wires of the face. .. py:property:: faces :type: tuple[BluemiraFace] The faces of the face. By definition a tuple of itself. .. py:property:: shells :type: tuple The shells of the face. By definition an empty tuple. .. py:property:: solids :type: tuple The solids of the face. By definition an empty tuple.