Properties
ComponentDirection
True when this component is referenced with the reverse of its natural orientation. This is always false for vertices, and for edges and faces obtained directly from the parent SubD; it is only set on components reached through an oriented reference, such as the face on a given side of an oriented edge.
The face's control net center frame is a plane with normal equal to ControlNetCenterNormal and origin equal to ControlNetCenterPoint. The x and y axes of the frame have no predictable relationship to the face or SubD control net topology.
Returns: A plane with unit normal equal to ControlNetCenterNormal and origin equal to ControlNetCenterPoint.
When the face's control net polygon is planar, the face's control net normal is a unit vector perpendicular to the plane that points outwards. If the control net polygon is not planar, the control net normal is control net normal is a unit vector that is the average of the control polygon's corner normals.
Returns: A unit vector that is normal to planar control net polygons and a good compromise for nonplanar control net polygons.
The face's control net center point is the average of the face's vertex control net points. This is the same point as the face's subdivision point.
Returns: The average of the face's vertex control net points
Number of edges for this face. Note that EdgeCount is always the same as VertexCount. Two properties are provided simply for clarity.
Get the limit surface point location at the center of the face
If per-face color is "Empty", then this face does not have a custom color
Get the limit surface tangent plane at the center of the face. The plane's origin is the point on the limit surface at the center of the face. The plane's z axis is the limit surface normal vector at the center of the face.
Returns: Limit surface tanget plane at the face's center.
Get the limit surface normal vector at the center of the face.
Returns: Limit surface normal vector at the face's center.
Methods
Discards the cached subdivision and surface points for this face, so they are recomputed on next use.
Parameters:
| clearNeighborhood (bool) | If true, the cached points of the neighboring components are discarded too. Moving a control net point changes the surface around it, not just at it, so pass true after an edit unless you know only this face is affected. |
Gets the component index of this face.
Returns: The component index.
Get an edge at a given index
Parameters:
| index (int) |
Check if a given edge in this face has the same direction as the face orientation
Parameters:
| index (int) |
Equals
Determines whether an object is a SubDComponent referring to the same component, with the same orientation, in the same SubD.
Parameters:
| obj (object) | The object to compare with. |
Overrides: Object.Equals
Equals
Determines whether this component and another refer to the same component, with the same orientation, in the same SubD.
Parameters:
| other (SubDComponent) | The component to compare with. |
ReverseComponentDirection
Flips SubDComponent.ComponentDirection and returns this component, so it can be used inline where an oppositely oriented reference is wanted.
Returns: This component.
ToString
Returns a string of the form "SubDEdge(+12)", naming the component type, the orientation it is referenced with, and its id.
Overrides: Object.ToString
Get a vertex that this face uses by index
Parameters:
| index (int) |