Single vertex of a SubD
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.
Location of the "control net" point that this SubDVertex represents
Remarks: The setter of this property will refresh the neighborhood cache around the vertex everytime it is called. This is not efficient if you have multiple vertices to modify. In that case, call vertex.SetControlNetPoint(position, false) for all the vertices you want to modify, then call subd.ClearEvaluationCache()
Previous vertex in linked list of vertices on this level
Methods
Discards the cached subdivision and surface points for this vertex, 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 vertex is affected. |
Gets the component index of this vertex.
Returns: The component index.
Retrieve a SubDEdge from this vertex
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. |
Retrieve a SubDFace from this vertex
Parameters:
| index (int) |
ReverseComponentDirection
Flips SubDComponent.ComponentDirection and returns this component, so it can be used inline where an oppositely oriented reference is wanted.
Returns: This component.
Change the location of the "control net" point that this SubDVertex represents
Remarks: This method is provided to be able to set multiple control vertices, without clearing the neighborhood cache everytime as the ControlNetPoint property setter does. When you are done modifying your SubD, call subd.UpdateEvaluationCache() to refresh all caches.
Parameters:
| position (Point3d) | New position for the vertex' control net point. |
| bClearNeighborhoodCache (bool) | If true, clear the evaluation cache in the faces around the modified vertex. |
Returns: true if the vertex' control net point was modified.
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