alias_api.AlFaceNode

class alias_api.AlFaceNode

Bases: AlCurveNode

Interface to the dag node that gives access to faces.

AlFaceNode is the class used to access faces in the dag. Faces can be created from scratch or read in from a wire file and accessed via the first_face() method. Faces are a collection of curves that all lie in the same plane. An AlFaceNode points to an AlFace, which points to the next face in the collection etc…

Add faces to the collection with the add_face() method and remove them with the removeFace() method. In order to access the list of faces, you walk through the face list with AlFace methods next_face() and prev_face().

There are two ways to delete an AlFaceNode. If the AlFaceNode.delete_object() method is called, then this node’s AlFace objects are all deleted. If this node only has one face and its delete_object() method is called, then this node is deleted as well.

add_face(self: alias_api.AlFaceNode, face: alias_api.AlFace) int

Add a face to the end of the list of faces. The face must not already belong to another face node.

convert_to_trimmed_surface(self: alias_api.AlFaceNode, world_space: SupportsInt = False) alias_api.AlSurface

Return an AlSurface that represents the AlFace geometry converted to a trimmed surface. Return None if the AlFace geometry is invalid for any reason. A trimmed surface will not be created if the AlFace curves are non-planar or intersecting.

copy_wrapper(self: alias_api.AlFaceNode) alias_api.AlObject

Return an exact duplicate of this AlFaceNode wrapper.

create(self: alias_api.AlFaceNode, face: alias_api.AlFace) int

This method allocates the dag node for the AlFaceNode. It adds the given face as the first face of the face node.

first_face(*args, **kwargs)

Overloaded function.

  1. first_face(self: alias_api.AlFaceNode) -> alias_api.AlFace

Return the first face in the list of faces.

  1. first_face(self: alias_api.AlFaceNode, tm: alias_api.AlTM) -> alias_api.AlFace

Return the first face in the list of faces and update the ‘tm’ with the face node’s transformation matrix.

normal(self: alias_api.AlFaceNode) tuple[int, float, float, float]

Attempts to calculate the overall normal of all the face curves in this face.

remove_face(self: alias_api.AlFaceNode, face: alias_api.AlFace) int

Remove a face from the list of faces. This must not be the last face under the face node. When the face is removed from under the face node, it is no longer part of the universe taht would be stored.

type(self: alias_api.AlFaceNode) alias_api.AlObjectType

Return the AlFaceNode type identifier.