Click or drag to resize

SubDComponentParameter Structure

Identifies a point on the surface of a SubD.

SubDs have no global (u,v) parameterization. Instead a point on the surface is identified relative to a component of the SubD: a vertex, a point on an edge, or a point inside a face. A point inside a face is given by the index of the face corner it belongs to plus two parameters inside that corner, because a face with five or more sides has no single well behaved (u,v) domain.

Use ClosestPoint(Point3d, Point3d, SubDComponentParameter) to find a parameter and Evaluate(SubDComponentParameter, Point3d) and its overloads to evaluate one.

Namespace:  Rhino.Geometry
Assembly:  RhinoCommon (in RhinoCommon.dll)
Syntax
public struct SubDComponentParameter : IEquatable<SubDComponentParameter>

The SubDComponentParameter type exposes the following members.

Properties
  NameDescription
Public propertyActiveFaceId
Gets the id of the face this parameter uses to resolve which sector of a vertex or which side of an edge it means, or 0 if there is none. It is always 0 when IsFaceParameter is true; use ComponentId in that case.
Public propertyComponentId
Gets the id of the SubD component this parameter is relative to, or 0 if this parameter is not set.
Public propertyComponentIndex
Gets the component index of the SubD component this parameter is relative to. It is Unset if this parameter is not set.
Public propertyEdgeParameter
Gets a value between 0 and 1 identifying a point on the edge, or NaN if IsEdgeParameter is false.
Public propertyFaceCornerIndex
Gets the index of the face corner the face parameters are measured in, or -1 if IsFaceParameter is false.
Public propertyFaceCornerParameters
Gets the two parameters inside the face corner identified by FaceCornerIndex. Both run from 0 to 1/2: (0,0) is the corner vertex and (1/2,1/2) is the center of the face. X runs towards the midpoint of the edge leaving the corner and Y towards the midpoint of the edge entering it. The point is Unset if IsFaceParameter is false.
Public propertyFaceEdgeCount
Gets the number of edges of the face, or 0 if IsFaceParameter is false.
Public propertyIsEdgeParameter
Gets true if this parameter identifies a surface point on a SubD edge.
Public propertyIsFaceParameter
Gets true if this parameter identifies a surface point inside a SubD face.
Public propertyIsSet
Gets true if this parameter identifies a point on a SubD.
Public propertyIsVertexParameter
Gets true if this parameter identifies the surface point at a SubD vertex.
Public propertyStatic memberUnset
The unset parameter. It does not identify a point on any SubD.
Top
Methods
  NameDescription
Public methodStatic memberCreateEdgeParameter
Creates a parameter that identifies a surface point on a SubD edge.
Public methodStatic memberCreateFaceParameter
Creates a parameter that identifies a surface point inside a SubD face.
Public methodStatic memberCreateVertexParameter
Creates a parameter that identifies the surface point at a SubD vertex.
Public methodEquals(Object)
Indicates whether this instance and a specified object are equal.
(Overrides ValueTypeEquals(Object).)
Public methodEquals(SubDComponentParameter)
Indicates whether the current object is equal to another object of the same type.
Public methodGetHashCode
Returns the hash code for this instance.
(Overrides ValueTypeGetHashCode.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodToString
Returns the fully qualified type name of this instance.
(Overrides ValueTypeToString.)
Top
Operators
  NameDescription
Public operatorStatic memberEquality
Determines whether two parameters are equal.
Public operatorStatic memberInequality
Determines whether two parameters are different.
Top
See Also