Point Cloud Library (PCL)  1.14.1-dev
List of all members | Public Member Functions
ON_PolyCurve Class Reference

#include <pcl/surface/3rdparty/opennurbs/opennurbs_polycurve.h>

+ Inheritance diagram for ON_PolyCurve:
+ Collaboration diagram for ON_PolyCurve:

Public Member Functions

void DestroyRuntimeCache (bool bDelete=true)
 
 ON_PolyCurve ()
 
 ON_PolyCurve (int)
 
 ON_PolyCurve (const ON_PolyCurve &)
 
void Destroy ()
 
virtual ~ON_PolyCurve ()
 
void EmergencyDestroy ()
 
ON_PolyCurveoperator= (const ON_PolyCurve &)
 
unsigned int SizeOf () const
 
ON__UINT32 DataCRC (ON__UINT32 current_remainder) const
 
ON_BOOL32 IsValid (ON_TextLog *text_log=NULL) const
 
bool IsValid (bool bAllowGaps, ON_TextLog *text_log) const
 
void Dump (ON_TextLog &) const
 
ON_BOOL32 Write (ON_BinaryArchive &) const
 
ON_BOOL32 Read (ON_BinaryArchive &)
 
int Dimension () const
 
ON_BOOL32 GetBBox (double *, double *, ON_BOOL32=false) const
 
bool GetTightBoundingBox (ON_BoundingBox &tight_bbox, int bGrowBox=false, const ON_Xform *xform=0) const
 
ON_BOOL32 Transform (const ON_Xform &)
 
bool IsDeformable () const
 
bool MakeDeformable ()
 
ON_BOOL32 SwapCoordinates (int, int)
 
bool EvaluatePoint (const class ON_ObjRef &objref, ON_3dPoint &P) const
 
ON_CurveDuplicateCurve () const
 
ON_Interval Domain () const
 
ON_BOOL32 SetDomain (double t0, double t1)
 
bool ChangeDimension (int desired_dimension)
 
ON_BOOL32 ChangeClosedCurveSeam (double t)
 
int SpanCount () const
 
ON_BOOL32 GetSpanVector (double *) const
 
int Degree () const
 
ON_BOOL32 IsLinear (double=ON_ZERO_TOLERANCE) const
 
int IsPolyline (ON_SimpleArray< ON_3dPoint > *pline_points=NULL, ON_SimpleArray< double > *pline_t=NULL) const
 
ON_BOOL32 IsArc (const ON_Plane *=NULL, ON_Arc *=NULL, double=ON_ZERO_TOLERANCE) const
 
ON_BOOL32 IsPlanar (ON_Plane *=NULL, double=ON_ZERO_TOLERANCE) const
 
ON_BOOL32 IsInPlane (const ON_Plane &, double=ON_ZERO_TOLERANCE) const
 
ON_BOOL32 IsClosed (void) const
 
ON_BOOL32 IsPeriodic (void) const
 
bool GetNextDiscontinuity (ON::continuity c, double t0, double t1, double *t, int *hint=NULL, int *dtype=NULL, double cos_angle_tolerance=ON_DEFAULT_ANGLE_TOLERANCE_COSINE, double curvature_tolerance=ON_SQRT_EPSILON) const
 
bool IsContinuous (ON::continuity c, double t, int *hint=NULL, double point_tolerance=ON_ZERO_TOLERANCE, double d1_tolerance=ON_ZERO_TOLERANCE, double d2_tolerance=ON_ZERO_TOLERANCE, double cos_angle_tolerance=ON_DEFAULT_ANGLE_TOLERANCE_COSINE, double curvature_tolerance=ON_SQRT_EPSILON) const
 
ON_BOOL32 Reverse ()
 
ON_BOOL32 SetStartPoint (ON_3dPoint start_point)
 
ON_BOOL32 SetEndPoint (ON_3dPoint end_point)
 
ON_BOOL32 Evaluate (double, int, int, double *, int=0, int *=0) const
 
ON_BOOL32 Trim (const ON_Interval &domain)
 
bool Extend (const ON_Interval &domain)
 
ON_BOOL32 Split (double t, ON_Curve *&left_side, ON_Curve *&right_side) const
 
int GetNurbForm (ON_NurbsCurve &, double=0.0, const ON_Interval *=NULL) const
 
int HasNurbForm () const
 
ON_BOOL32 GetCurveParameterFromNurbFormParameter (double, double *) const
 
ON_BOOL32 GetNurbFormParameterFromCurveParameter (double, double *) const
 
int Count () const
 
ON_Curveoperator[] (int) const
 
ON_CurveSegmentCurve (int segment_index) const
 
double SegmentCurveParameter (double polycurve_parameter) const
 
double PolyCurveParameter (int segment_index, double segmentcurve_parameter) const
 
ON_Interval SegmentDomain (int segment_index) const
 
int SegmentIndex (double polycurve_parameter) const
 
int SegmentIndex (ON_Interval sub_domain, int *segment_index0, int *segment_index1) const
 
ON_CurveFirstSegmentCurve () const
 
ON_CurveLastSegmentCurve () const
 
int FindNextGap (int segment_index0) const
 
bool HasGapAt (int segment_index) const
 
ON_DEPRECATED int HasGap () const
 
bool CloseGap (int gap_index, int segments_to_modify)
 
int CloseGaps ()
 
void Reserve (int)
 
ON_BOOL32 Prepend (ON_Curve *)
 
ON_BOOL32 Append (ON_Curve *)
 
ON_BOOL32 Insert (int, ON_Curve *)
 
ON_BOOL32 PrependAndMatch (ON_Curve *)
 
ON_BOOL32 AppendAndMatch (ON_Curve *)
 
ON_BOOL32 Remove ()
 
ON_BOOL32 Remove (int)
 
ON_CurveHarvestSegment (int)
 
bool IsNested () const
 
void RemoveNesting ()
 
bool RemoveNestingEx ()
 
bool HasSynchronizedSegmentDomains () const
 
bool SynchronizeSegmentDomains ()
 
void SetSegment (int index, ON_Curve *crv)
 
bool SetParameterization (const double *t)
 
bool ParameterSearch (double t, int &index, bool bEnableSnap) const
 
const ON_CurveArraySegmentCurves () const
 
const ON_SimpleArray< double > & SegmentParameters () const
 
- Public Member Functions inherited from ON_Curve
 ON_Curve ()
 
 ON_Curve (const ON_Curve &)
 
ON_Curveoperator= (const ON_Curve &)
 
virtual ~ON_Curve ()
 
ON::object_type ObjectType () const
 
ON_BOOL32 GetDomain (double *t0, double *t1) const
 
bool SetDomain (ON_Interval domain)
 
virtual ON_BOOL32 GetSpanVectorIndex (double t, int side, int *span_vector_index, ON_Interval *span_domain) const
 
virtual ON_BOOL32 GetParameterTolerance (double t, double *tminus, double *tplus) const
 
bool IsArcAt (double t, const ON_Plane *plane=0, ON_Arc *arc=0, double tolerance=ON_ZERO_TOLERANCE, double *t0=0, double *t1=0) const
 
virtual bool IsEllipse (const ON_Plane *plane=NULL, ON_Ellipse *ellipse=NULL, double tolerance=ON_ZERO_TOLERANCE) const
 
bool IsClosable (double tolerance, double min_abs_size=0.0, double min_rel_size=10.0) const
 
ON_3dPoint PointAt (double t) const
 
ON_3dPoint PointAtStart () const
 
ON_3dPoint PointAtEnd () const
 
ON_3dVector DerivativeAt (double t) const
 
ON_3dVector TangentAt (double t) const
 
ON_3dVector CurvatureAt (double t) const
 
ON_BOOL32 FrameAt (double t, ON_Plane &plane) const
 
ON_BOOL32 EvPoint (double t, ON_3dPoint &point, int side=0, int *hint=0) const
 
ON_BOOL32 Ev1Der (double t, ON_3dPoint &point, ON_3dVector &first_derivative, int side=0, int *hint=0) const
 
ON_BOOL32 Ev2Der (double t, ON_3dPoint &point, ON_3dVector &first_derivative, ON_3dVector &second_derivative, int side=0, int *hint=0) const
 
ON_BOOL32 EvTangent (double t, ON_3dPoint &point, ON_3dVector &tangent, int side=0, int *hint=0) const
 
ON_BOOL32 EvCurvature (double t, ON_3dPoint &point, ON_3dVector &tangent, ON_3dVector &kappa, int side=0, int *hint=0) const
 
bool FirstSpanIsLinear (double min_length, double tolerance) const
 
bool LastSpanIsLinear (double min_length, double tolerance) const
 
bool FirstSpanIsLinear (double min_length, double tolerance, ON_Line *span_line) const
 
bool LastSpanIsLinear (double min_length, double tolerance, ON_Line *span_line) const
 
ON_NurbsCurveNurbsCurve (ON_NurbsCurve *pNurbsCurve=NULL, double tolerance=0.0, const ON_Interval *subdomain=NULL) const
 
void DestroyCurveTree ()
 
- Public Member Functions inherited from ON_Geometry
 ON_Geometry ()
 
 ON_Geometry (const ON_Geometry &)
 
ON_Geometryoperator= (const ON_Geometry &)
 
virtual ~ON_Geometry ()
 
ON_BoundingBox BoundingBox () const
 
ON_BOOL32 GetBoundingBox (ON_BoundingBox &bbox, int bGrowBox=false) const
 
ON_BOOL32 GetBoundingBox (ON_3dPoint &bbox_min, ON_3dPoint &bbox_max, int bGrowBox=false) const
 
ON_BOOL32 Rotate (double sin_angle, double cos_angle, const ON_3dVector &rotation_axis, const ON_3dPoint &rotation_center)
 
ON_BOOL32 Rotate (double rotation_angle, const ON_3dVector &rotation_axis, const ON_3dPoint &rotation_center)
 
ON_BOOL32 Translate (const ON_3dVector &translation_vector)
 
ON_BOOL32 Scale (double scale_factor)
 
virtual void ClearBoundingBox ()
 
virtual ON_BOOL32 HasBrepForm () const
 
virtual ON_BrepBrepForm (ON_Brep *brep=NULL) const
 
virtual ON_COMPONENT_INDEX ComponentIndex () const
 
- Public Member Functions inherited from ON_Object
bool CopyFrom (const ON_Object *src)
 
 ON_Object ()
 
 ON_Object (const ON_Object &)
 
ON_Objectoperator= (const ON_Object &)
 
virtual ~ON_Object ()
 
void EmergencyDestroy ()
 
virtual void MemoryRelocate ()
 
ON_BOOL32 IsKindOf (const ON_ClassId *pClassId) const
 
virtual ON_UUID ModelObjectId () const
 
bool SetUserString (const wchar_t *key, const wchar_t *string_value)
 
int SetUserStrings (int count, const ON_UserString *user_strings, bool bReplace)
 
bool GetUserString (const wchar_t *key, ON_wString &string_value) const
 
int GetUserStrings (ON_ClassArray< ON_UserString > &user_strings) const
 
int GetUserStringKeys (ON_ClassArray< ON_wString > &user_string_keys) const
 
int UserStringCount () const
 
ON_BOOL32 AttachUserData (ON_UserData *pUserData)
 
ON_BOOL32 DetachUserData (ON_UserData *pUserData)
 
ON_UserDataGetUserData (const ON_UUID &userdata_uuid) const
 
void PurgeUserData ()
 
ON_UserDataFirstUserData () const
 
void TransformUserData (const ON_Xform &xform)
 
void CopyUserData (const ON_Object &source_object)
 
void MoveUserData (ON_Object &source_object)
 

Additional Inherited Members

- Protected Member Functions inherited from ON_Curve
bool ParameterSearch (double t, int &index, bool bEnableSnap, const ON_SimpleArray< double > &m_t, double RelTol=ON_SQRT_EPSILON) const
 

Detailed Description

Definition at line 37 of file opennurbs_polycurve.h.

Constructor & Destructor Documentation

◆ ON_PolyCurve() [1/3]

ON_PolyCurve::ON_PolyCurve ( )

◆ ON_PolyCurve() [2/3]

ON_PolyCurve::ON_PolyCurve ( int  )

◆ ON_PolyCurve() [3/3]

ON_PolyCurve::ON_PolyCurve ( const ON_PolyCurve )

◆ ~ON_PolyCurve()

virtual ON_PolyCurve::~ON_PolyCurve ( )
virtual

Member Function Documentation

◆ Append()

ON_BOOL32 ON_PolyCurve::Append ( ON_Curve )

◆ AppendAndMatch()

ON_BOOL32 ON_PolyCurve::AppendAndMatch ( ON_Curve )

◆ ChangeClosedCurveSeam()

ON_BOOL32 ON_PolyCurve::ChangeClosedCurveSeam ( double  t)
virtual

Reimplemented from ON_Curve.

Reimplemented in ON_PolyEdgeCurve.

◆ ChangeDimension()

bool ON_PolyCurve::ChangeDimension ( int  desired_dimension)
virtual

Reimplemented from ON_Curve.

◆ CloseGap()

bool ON_PolyCurve::CloseGap ( int  gap_index,
int  segments_to_modify 
)

◆ CloseGaps()

int ON_PolyCurve::CloseGaps ( )

◆ Count()

int ON_PolyCurve::Count ( ) const

◆ DataCRC()

ON__UINT32 ON_PolyCurve::DataCRC ( ON__UINT32  current_remainder) const
virtual

Reimplemented from ON_Object.

◆ Degree()

int ON_PolyCurve::Degree ( ) const
virtual

Implements ON_Curve.

◆ Destroy()

void ON_PolyCurve::Destroy ( )

◆ DestroyRuntimeCache()

void ON_PolyCurve::DestroyRuntimeCache ( bool  bDelete = true)
virtual

Reimplemented from ON_Curve.

Reimplemented in ON_PolyEdgeCurve.

◆ Dimension()

int ON_PolyCurve::Dimension ( ) const
virtual

Implements ON_Geometry.

◆ Domain()

ON_Interval ON_PolyCurve::Domain ( ) const
virtual

Implements ON_Curve.

◆ Dump()

void ON_PolyCurve::Dump ( ON_TextLog ) const
virtual

Reimplemented from ON_Object.

◆ DuplicateCurve()

ON_Curve* ON_PolyCurve::DuplicateCurve ( ) const
virtual

Reimplemented from ON_Curve.

Reimplemented in ON_PolyEdgeCurve.

◆ EmergencyDestroy()

void ON_PolyCurve::EmergencyDestroy ( )

◆ Evaluate()

ON_BOOL32 ON_PolyCurve::Evaluate ( double  ,
int  ,
int  ,
double *  ,
int  = 0,
int *  = 0 
) const
virtual

Implements ON_Curve.

◆ EvaluatePoint()

bool ON_PolyCurve::EvaluatePoint ( const class ON_ObjRef objref,
ON_3dPoint P 
) const
virtual

Reimplemented from ON_Curve.

◆ Extend()

bool ON_PolyCurve::Extend ( const ON_Interval domain)
virtual

Reimplemented from ON_Curve.

◆ FindNextGap()

int ON_PolyCurve::FindNextGap ( int  segment_index0) const

◆ FirstSegmentCurve()

ON_Curve* ON_PolyCurve::FirstSegmentCurve ( ) const

◆ GetBBox()

ON_BOOL32 ON_PolyCurve::GetBBox ( double *  ,
double *  ,
ON_BOOL32  = false 
) const
virtual

Implements ON_Geometry.

◆ GetCurveParameterFromNurbFormParameter()

ON_BOOL32 ON_PolyCurve::GetCurveParameterFromNurbFormParameter ( double  ,
double *   
) const
virtual

Reimplemented from ON_Curve.

◆ GetNextDiscontinuity()

bool ON_PolyCurve::GetNextDiscontinuity ( ON::continuity  c,
double  t0,
double  t1,
double *  t,
int *  hint = NULL,
int *  dtype = NULL,
double  cos_angle_tolerance = ON_DEFAULT_ANGLE_TOLERANCE_COSINE,
double  curvature_tolerance = ON_SQRT_EPSILON 
) const
virtual

Reimplemented from ON_Curve.

◆ GetNurbForm()

int ON_PolyCurve::GetNurbForm ( ON_NurbsCurve ,
double  = 0.0,
const ON_Interval = NULL 
) const
virtual

Reimplemented from ON_Curve.

◆ GetNurbFormParameterFromCurveParameter()

ON_BOOL32 ON_PolyCurve::GetNurbFormParameterFromCurveParameter ( double  ,
double *   
) const
virtual

Reimplemented from ON_Curve.

◆ GetSpanVector()

ON_BOOL32 ON_PolyCurve::GetSpanVector ( double *  ) const
virtual

Implements ON_Curve.

◆ GetTightBoundingBox()

bool ON_PolyCurve::GetTightBoundingBox ( ON_BoundingBox tight_bbox,
int  bGrowBox = false,
const ON_Xform xform = 0 
) const
virtual

Reimplemented from ON_Curve.

◆ HarvestSegment()

ON_Curve* ON_PolyCurve::HarvestSegment ( int  )

◆ HasGap()

ON_DEPRECATED int ON_PolyCurve::HasGap ( ) const

◆ HasGapAt()

bool ON_PolyCurve::HasGapAt ( int  segment_index) const

◆ HasNurbForm()

int ON_PolyCurve::HasNurbForm ( ) const
virtual

Reimplemented from ON_Curve.

◆ HasSynchronizedSegmentDomains()

bool ON_PolyCurve::HasSynchronizedSegmentDomains ( ) const

◆ Insert()

ON_BOOL32 ON_PolyCurve::Insert ( int  ,
ON_Curve  
)

◆ IsArc()

ON_BOOL32 ON_PolyCurve::IsArc ( const ON_Plane = NULL,
ON_Arc = NULL,
double  = ON_ZERO_TOLERANCE 
) const
virtual

Reimplemented from ON_Curve.

◆ IsClosed()

ON_BOOL32 ON_PolyCurve::IsClosed ( void  ) const
virtual

Reimplemented from ON_Curve.

Reimplemented in ON_PolyEdgeCurve.

◆ IsContinuous()

bool ON_PolyCurve::IsContinuous ( ON::continuity  c,
double  t,
int *  hint = NULL,
double  point_tolerance = ON_ZERO_TOLERANCE,
double  d1_tolerance = ON_ZERO_TOLERANCE,
double  d2_tolerance = ON_ZERO_TOLERANCE,
double  cos_angle_tolerance = ON_DEFAULT_ANGLE_TOLERANCE_COSINE,
double  curvature_tolerance = ON_SQRT_EPSILON 
) const
virtual

Reimplemented from ON_Curve.

◆ IsDeformable()

bool ON_PolyCurve::IsDeformable ( ) const
virtual

Reimplemented from ON_Geometry.

◆ IsInPlane()

ON_BOOL32 ON_PolyCurve::IsInPlane ( const ON_Plane ,
double  = ON_ZERO_TOLERANCE 
) const
virtual

Implements ON_Curve.

◆ IsLinear()

ON_BOOL32 ON_PolyCurve::IsLinear ( double  = ON_ZERO_TOLERANCE) const
virtual

Reimplemented from ON_Curve.

◆ IsNested()

bool ON_PolyCurve::IsNested ( ) const

◆ IsPeriodic()

ON_BOOL32 ON_PolyCurve::IsPeriodic ( void  ) const
virtual

Reimplemented from ON_Curve.

◆ IsPlanar()

ON_BOOL32 ON_PolyCurve::IsPlanar ( ON_Plane = NULL,
double  = ON_ZERO_TOLERANCE 
) const
virtual

Reimplemented from ON_Curve.

◆ IsPolyline()

int ON_PolyCurve::IsPolyline ( ON_SimpleArray< ON_3dPoint > *  pline_points = NULL,
ON_SimpleArray< double > *  pline_t = NULL 
) const
virtual

Reimplemented from ON_Curve.

◆ IsValid() [1/2]

bool ON_PolyCurve::IsValid ( bool  bAllowGaps,
ON_TextLog text_log 
) const

◆ IsValid() [2/2]

ON_BOOL32 ON_PolyCurve::IsValid ( ON_TextLog text_log = NULL) const
virtual

Implements ON_Object.

◆ LastSegmentCurve()

ON_Curve* ON_PolyCurve::LastSegmentCurve ( ) const

◆ MakeDeformable()

bool ON_PolyCurve::MakeDeformable ( )
virtual

Reimplemented from ON_Geometry.

◆ operator=()

ON_PolyCurve& ON_PolyCurve::operator= ( const ON_PolyCurve )

◆ operator[]()

ON_Curve* ON_PolyCurve::operator[] ( int  ) const

◆ ParameterSearch()

bool ON_PolyCurve::ParameterSearch ( double  t,
int &  index,
bool  bEnableSnap 
) const

◆ PolyCurveParameter()

double ON_PolyCurve::PolyCurveParameter ( int  segment_index,
double  segmentcurve_parameter 
) const

◆ Prepend()

ON_BOOL32 ON_PolyCurve::Prepend ( ON_Curve )

◆ PrependAndMatch()

ON_BOOL32 ON_PolyCurve::PrependAndMatch ( ON_Curve )

◆ Read()

ON_BOOL32 ON_PolyCurve::Read ( ON_BinaryArchive )
virtual

Reimplemented from ON_Object.

◆ Remove() [1/2]

ON_BOOL32 ON_PolyCurve::Remove ( )

◆ Remove() [2/2]

ON_BOOL32 ON_PolyCurve::Remove ( int  )

◆ RemoveNesting()

void ON_PolyCurve::RemoveNesting ( )

◆ RemoveNestingEx()

bool ON_PolyCurve::RemoveNestingEx ( )

◆ Reserve()

void ON_PolyCurve::Reserve ( int  )

◆ Reverse()

ON_BOOL32 ON_PolyCurve::Reverse ( )
virtual

Implements ON_Curve.

◆ SegmentCurve()

ON_Curve* ON_PolyCurve::SegmentCurve ( int  segment_index) const

◆ SegmentCurveParameter()

double ON_PolyCurve::SegmentCurveParameter ( double  polycurve_parameter) const

◆ SegmentCurves()

const ON_CurveArray& ON_PolyCurve::SegmentCurves ( ) const

◆ SegmentDomain()

ON_Interval ON_PolyCurve::SegmentDomain ( int  segment_index) const

◆ SegmentIndex() [1/2]

int ON_PolyCurve::SegmentIndex ( double  polycurve_parameter) const

◆ SegmentIndex() [2/2]

int ON_PolyCurve::SegmentIndex ( ON_Interval  sub_domain,
int *  segment_index0,
int *  segment_index1 
) const

◆ SegmentParameters()

const ON_SimpleArray<double>& ON_PolyCurve::SegmentParameters ( ) const

◆ SetDomain()

ON_BOOL32 ON_PolyCurve::SetDomain ( double  t0,
double  t1 
)
virtual

Reimplemented from ON_Curve.

◆ SetEndPoint()

ON_BOOL32 ON_PolyCurve::SetEndPoint ( ON_3dPoint  end_point)
virtual

Reimplemented from ON_Curve.

Reimplemented in ON_PolyEdgeCurve.

◆ SetParameterization()

bool ON_PolyCurve::SetParameterization ( const double *  t)

◆ SetSegment()

void ON_PolyCurve::SetSegment ( int  index,
ON_Curve crv 
)

◆ SetStartPoint()

ON_BOOL32 ON_PolyCurve::SetStartPoint ( ON_3dPoint  start_point)
virtual

Reimplemented from ON_Curve.

Reimplemented in ON_PolyEdgeCurve.

◆ SizeOf()

unsigned int ON_PolyCurve::SizeOf ( ) const
virtual

Reimplemented from ON_Curve.

◆ SpanCount()

int ON_PolyCurve::SpanCount ( ) const
virtual

Implements ON_Curve.

◆ Split()

ON_BOOL32 ON_PolyCurve::Split ( double  t,
ON_Curve *&  left_side,
ON_Curve *&  right_side 
) const
virtual

Reimplemented from ON_Curve.

◆ SwapCoordinates()

ON_BOOL32 ON_PolyCurve::SwapCoordinates ( int  ,
int   
)
virtual

Reimplemented from ON_Geometry.

◆ SynchronizeSegmentDomains()

bool ON_PolyCurve::SynchronizeSegmentDomains ( )

◆ Transform()

ON_BOOL32 ON_PolyCurve::Transform ( const ON_Xform )
virtual

Reimplemented from ON_Geometry.

◆ Trim()

ON_BOOL32 ON_PolyCurve::Trim ( const ON_Interval domain)
virtual

Reimplemented from ON_Curve.

◆ Write()

ON_BOOL32 ON_PolyCurve::Write ( ON_BinaryArchive ) const
virtual

Reimplemented from ON_Object.


The documentation for this class was generated from the following file: