|
| ON_SubDEdge ()=default |
|
| ON_SubDEdge (const ON_SubDEdge &)=default |
|
| ~ON_SubDEdge ()=default |
|
bool | AddFaceToArray (ON_SubDFacePtr face_ptr) |
|
const ON_SubDEdge * | AdjacentEdge (unsigned int edge_vertex_index, unsigned int i) const |
|
const ON_SubDEdgePtr | AdjacentEdgePtr (unsigned int edge_vertex_index, unsigned int i) const |
|
const ON_BoundingBox | BoundingBox (ON_SubDComponentLocation subd_appearance, const ON_SubD &subd) const |
|
const ON_Plane | CenterFrame (ON_SubDComponentLocation subd_appearance) const |
|
const ON_3dVector | CenterNormal (ON_SubDComponentLocation subd_appearance, unsigned int edge_face_index) const |
|
const ON_3dPoint | CenterPoint (ON_SubDComponentLocation subd_appearance) const |
|
void | ClearSavedSubdivisionPoints () const |
|
void | ClearSavedSubdivisionPoints (bool bClearNeighborhood) const |
|
bool | ClearSharpnessForExperts () |
| This tool is for expert users and internal use. Use ON_SubD::ClearEdgeSharpness() to remove all sharp edges from a SubD. Sets the edge sharpness to ON_EdgeSharpness::Zero. More...
|
|
const ON_COMPONENT_INDEX | ComponentIndex () const |
|
const ON_SubDComponentPtr | ComponentPtr () const |
|
const ON_BoundingBox | ControlNetBoundingBox () const |
|
const ON_3dVector | ControlNetCenterNormal (unsigned int edge_face_index) const |
|
const ON_3dPoint | ControlNetCenterPoint () const |
|
const ON_3dVector | ControlNetDirection () const |
|
const ON_3dVector | ControlNetDirectionFrom (const ON_SubDVertex *v) const |
|
const ON_Line | ControlNetLine () const |
|
const ON_3dPoint | ControlNetPoint (unsigned int i) const |
|
unsigned int | DartCount () const |
|
const ON_3dPoint | DoubleSubdivisionPoint () const |
| Get the location of the subdivision point of the edge's subdivision vertex. More...
|
|
const ON_3dPoint | DoubleSubdivisionPoint (unsigned subdivided_end_index) const |
| Get the location of the subdivision point of the specified subdivison edge. Note that when an edge is subdivided one time a new subdivision vertex and two subdivision edges are created. If one of the subdivion edges are subdivided again, then that creates a subdivision vertex. This version of ON_SubDEdge::DoubleSubdivisionPoint(...) returns the location of that vertex. The subdivided_end_index parameter specifies which of the two initial subdivision edges are used. More...
|
|
unsigned int | EdgeAttributes () const |
|
unsigned int | EdgeId () const |
|
void | EdgeModifiedNofification () const |
|
ON_NurbsCurve * | EdgeSurfaceCurve (bool bClampEndKnots) const |
|
ON_NurbsCurve * | EdgeSurfaceCurve (bool bClampEndKnots, ON_Curve **destination_curve_ptr) const |
|
ON_NurbsCurve * | EdgeSurfaceCurve (bool bClampEndKnots, ON_NurbsCurve *destination_curve) const |
|
bool | EdgeSurfaceCurveIsSet () const |
|
ON_SubDEdgeType | EdgeType () const |
| EdgeType() is typically used to generate text descriptions and in selection filtering. Do not confuse EdgeType() and EdgeTag(). More...
|
|
double | EndSharpness (const class ON_SubDVertex *v) const |
| Get the edge's sharpness at the end with the specified vertex. See ON_SubDEdge::IsSharp() for more information about sharp edges. More...
|
|
double | EndSharpness (unsigned evi) const |
| Get the edge's sharpness at the end with the specified vertex. If the edge is a crease, ON_SubDEdgeSharpness::Smooth is returned. See ON_SubDEdge::IsSharp() for more information about sharp edges. More...
|
|
double | EndSharpness (unsigned evi, bool bUseCreaseSharpness) const |
| Get the edge's sharpness at the end with the specified vertex. See ON_SubDEdge::IsSharp() for more information about sharp edges. More...
|
|
bool | EvaluateCatmullClarkSubdivisionPoint (double subdivision_point[3]) const |
|
const class ON_SubDFace * | Face (unsigned int i) const |
|
unsigned int | FaceArrayIndex (const class ON_SubDFace *f) const |
|
unsigned int | FaceCount () const |
|
ON__UINT_PTR | FaceDirection (unsigned int i) const |
|
const ON_SubDFacePtr | FacePtr (unsigned int i) const |
|
const ON_SubDFacePtr | FacePtrFromFace (const class ON_SubDFace *f) const |
|
bool | GetCenterPointAndNormal (ON_SubDComponentLocation subd_appearance, unsigned int edge_face_index, double *P, double *N) const |
|
unsigned int | GetEdgeSurfaceCurveControlPoints (ON_3dPoint *cvs, size_t cv_capacity) const |
|
unsigned int | GetSectorBoundaryEdges (unsigned int edge_vertex_index, ON_SubDEdgePtr *edge_ptr0, ON_SubDEdgePtr *edge_ptr1) const |
|
double | GetSharpSubdivisionPoint (ON_3dPoint &sharp_subdivision_point) const |
| Gets the edge's sharp subdivision point and returns the average of the edge's sharpnesses. The final subdivision point is (sharpness >= 1.0) ? sharp_subdivision_point : (1.0-sharpness)(smooth subdivsion point)+sharpness*sharp_subdivision_point. See ON_SubDEdge::IsSharp() for more information about sharp edges. More...
|
|
bool | GetSubdivisionPoint (double subdivision_point[3]) const |
|
bool | GetSurfaceCenterPointAndNormal (unsigned int edge_face_index, double *P, double *N) const |
|
unsigned int | GetSurfaceMeshFragmentPoints (ON_3dPoint *P, size_t P_capacity) const |
|
bool | HasBoundaryEdgeTopology () const |
|
bool | HasInteriorEdgeTopology (bool bRequireOppositeFaceDirections) const |
|
bool | IsCrease () const |
|
bool | IsCreaseOrSharp () const |
| Crease edges have tag = ON_SubDEdgeTag::Crease. Sharp edges have tag = ON_SubDEdgeTag::Smooth or ON_SubDEdgeTag::SmoothX and have nonzero sharpness. More...
|
|
bool | IsDartCrease () const |
|
bool | IsHardCrease () const |
|
bool | IsSharp () const |
| Sharp edges are a blend between smooth edges and crease edges. The limit surface has a continuous normal along a sharp edge. A sharp edge has a smooth tag, has sharpness > 0 at at least one end, and has sharpness < ON_SubDEdgeSharpness::MaximumValue at at least one end. Sharpness has no meaning for edges with crease tags. Both sharpness values are zero for an ordinary smooth edge. Edge sharpness steadily decreases during subdivision and becomes zero after at most ON_SubDEdgeSharpness::MaximumValue subdivisions. More...
|
|
bool | IsSmooth () const |
|
bool | IsSmoothNotSharp () const |
| Determine if an edge is smooth and is not sharp. More...
|
|
bool | IsSmoothNotX () const |
|
bool | IsSmoothNotXNotSharp () const |
| An expert user function to determine if an edge tag in ON_SubDEdgeTag::Smooth and is not sharp. More...
|
|
bool | IsSmoothX () const |
|
unsigned int | MarkedFaceCount () const |
|
unsigned int | MarkedVertexCount () const |
|
const ON_SubDFace * | NeighborFace (const ON_SubDFace *face, bool bStopAtCrease) const |
|
const ON_SubDFacePtr | NeighborFacePtr (const ON_SubDFace *face, bool bStopAtCrease) const |
|
const ON_ComponentStatus | NeighborhoodStatusLogicalOr (bool bIncludeVertices, bool bIncludeFaces) const |
|
ON_SubDEdge & | operator= (const ON_SubDEdge &)=default |
|
const class ON_SubDVertex * | OtherEndVertex (const class ON_SubDVertex *vertex) const |
|
const ON_3dPoint | PointAt (double normalized_edge_parameter, ON_SubDComponentLocation subd_appearance) const |
|
bool | RemoveFaceFromArray (const ON_SubDFace *f) |
|
bool | RemoveFaceFromArray (unsigned int i, ON_SubDFacePtr &removed_face) |
|
unsigned int | ReplaceFaceInArray (const ON_SubDFace *old_face, const ON_SubDFace *new_face) |
|
void | SetSharpnessForExperts (ON_SubDEdgeSharpness sharpness) |
| This tool is for expert users and internal use. A collection of ON_SubD::SetEdgeSharpness() functions provide the easiest way to set and change edge sharpness. Set the edge sharpness values to (sharpness[0],sharpness[1]). The interval values must be >= 0 and <= ON_SubDEdgeSharpness::MaximumValue. See ON_SubDEdge::IsSharp() for more information about sharp edges. More...
|
|
const ON_SubDEdgeSharpness | Sharpness (bool bUseCreaseSharpness) const |
| Get the edge's sharpness. See ON_SubDEdge::IsSharp() for more information about sharp edges. More...
|
|
const ON_SubDEdgeSharpness | SubdivideSharpness (const class ON_SubDVertex *end_vertex, bool bReverseSharpness) const |
| Get the edge sharpenss values for the subdivided edge at the specified end of this edge. More...
|
|
const ON_SubDEdgeSharpness | SubdivideSharpness (unsigned evi, bool bReverseSharpness) const |
| Get the edge sharpenss values for the subdivided edge at the specified end of this edge. More...
|
|
const ON_3dPoint | SubdivisionPoint () const |
| Get the SubD edge Catmull-Clark subdivision point. More...
|
|
const ON_BoundingBox | SurfaceBoundingBox (const ON_SubD &subd) const |
|
const ON_3dVector | SurfaceCenterNormal (unsigned int edge_face_index) const |
|
const ON_3dPoint | SurfaceCenterPoint () const |
|
unsigned int | TaggedEndIndex () const |
|
ON__UINT32 | TopologyCRC32 (bool bIncludeSubdivisionProperties) const |
| Get a 32 bit CRC that is useful in detecting when an edge's connections to attached vertices or faces have been changed. More...
|
|
const ON_SHA1_Hash | TopologyHash (bool bIncludeSubdivisionProperties) const |
| Get a SHA-1 hash that is useful in detecting when an edge's connections to attached vertices or faces have been changed. See also ON_SubDEdge::TopologyCRC32() which, in practice, is just as reliable as the hash. More...
|
|
bool | Transform (bool bTransformationSavedSubdivisionPoint, const class ON_Xform &xform) |
|
void | UnsetSectorCoefficientsForExperts () const |
|
bool | UpdateEdgeSectorCoefficientsForExperts (bool bUnsetEdgeSectorCoefficientsOnly) const |
|
const class ON_SubDVertex * | Vertex (unsigned evi) const |
|
unsigned int | VertexArrayIndex (const class ON_SubDVertex *v) const |
|
unsigned int | VertexCount () const |
|
unsigned int | VertexId (unsigned evi) const |
|
bool | Write (class ON_BinaryArchive &archive) const |
|
| ON_SubDComponentBase ()=default |
|
| ON_SubDComponentBase (const ON_SubDComponentBase &)=default |
|
| ~ON_SubDComponentBase ()=default |
|
unsigned int | ArchiveId () const |
|
bool | ClearMark () const |
|
ON__UINT8 | ClearMarkBits () const |
|
void | ClearSavedSubdivisionPoint () const |
|
void | ClearSubdivisionDisplacement () const |
|
bool | GetSavedSubdivisionPoint (double subdivision_point[3]) const |
|
bool | GetSubdivisionDisplacement (double *) const |
|
bool | InSymmetrySet () const |
|
bool | IsActive () const |
|
bool | IsSymmetrySetPrimaryMotif () const |
|
bool | Mark () const |
|
ON__UINT8 | MarkBits () const |
|
ON_SubDComponentBase & | operator= (const ON_SubDComponentBase &)=default |
|
const ON_3dPoint | SavedSubdivisionPoint () const |
|
bool | SavedSubdivisionPointIsSet () const |
|
void | SetArchiveId (unsigned int archive_id) const |
|
bool | SetMark () const |
|
bool | SetMark (bool bMark) const |
|
ON__UINT8 | SetMarkBits (ON__UINT8 mark_bits) const |
|
bool | SetSavedSubdivisionPoint (const double subdivision_point[3]) const |
|
bool | SetSubdivisionDisplacement (const double *) |
|
void | SetSubdivisionLevel (unsigned level) |
|
const ON_ComponentStatus | Status () const |
|
const ON_3dVector | SubdivisionDisplacement () const |
|
bool | SubdivisionDisplacementIsNonzero () const |
|
const unsigned | SubdivisionLevel () const |
|