#include <opennurbs_curveproxy.h>
Public Member Functions | |
ON__UINT32 | DataCRC (ON__UINT32 current_remainder) const |
int | Degree () const |
void | DestroyRuntimeCache (bool bDelete=true) |
int | Dimension () const |
ON_Interval | Domain () const |
void | Dump (ON_TextLog &) const |
ON_Curve * | DuplicateCurve () const |
ON_BOOL32 | Evaluate (double, int, int, double *, int=0, int *=0) const |
ON_BOOL32 | GetBBox (double *, double *, ON_BOOL32=false) const |
ON_BOOL32 | GetCurveParameterFromNurbFormParameter (double, double *) 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 |
int | GetNurbForm (ON_NurbsCurve &, double=0.0, const ON_Interval *=NULL) const |
ON_BOOL32 | GetNurbFormParameterFromCurveParameter (double, double *) const |
ON_BOOL32 | GetParameterTolerance (double, double *, double *) const |
ON_BOOL32 | GetSpanVector (double *) const |
int | HasNurbForm () const |
ON_BOOL32 | IsArc (const ON_Plane *=NULL, ON_Arc *=NULL, double=ON_ZERO_TOLERANCE) const |
ON_BOOL32 | IsClosed (void) 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 | IsInPlane (const ON_Plane &, double=ON_ZERO_TOLERANCE) const |
ON_BOOL32 | IsLinear (double=ON_ZERO_TOLERANCE) const |
ON_BOOL32 | IsPeriodic (void) const |
ON_BOOL32 | IsPlanar (ON_Plane *=NULL, double=ON_ZERO_TOLERANCE) const |
int | IsPolyline (ON_SimpleArray< ON_3dPoint > *pline_points=NULL, ON_SimpleArray< double > *pline_t=NULL) const |
ON_BOOL32 | IsValid (ON_TextLog *text_log=NULL) const |
ON_CurveProxy () | |
ON_CurveProxy (const ON_CurveProxy &) | |
ON_CurveProxy (const ON_Curve *) | |
ON_CurveProxy (const ON_Curve *, ON_Interval) | |
ON_CurveProxy & | operator= (const ON_CurveProxy &) |
const ON_Curve * | ProxyCurve () const |
ON_Interval | ProxyCurveDomain () const |
bool | ProxyCurveIsReversed () const |
ON_BOOL32 | Read (ON_BinaryArchive &) |
double | RealCurveParameter (double t) const |
ON_BOOL32 | Reverse () |
ON_BOOL32 | SetDomain (double t0, double t1) |
bool | SetDomain (ON_Interval domain) |
void | SetProxyCurve (const ON_Curve *real_curve) |
void | SetProxyCurve (const ON_Curve *real_curve, ON_Interval real_curve_subdomain) |
bool | SetProxyCurveDomain (ON_Interval proxy_curve_subdomain) |
unsigned int | SizeOf () const |
int | SpanCount () const |
ON_BOOL32 | Split (double t, ON_Curve *&left_side, ON_Curve *&right_side) const |
double | ThisCurveParameter (double real_curve_parameter) const |
ON_BOOL32 | Transform (const ON_Xform &) |
ON_BOOL32 | Trim (const ON_Interval &domain) |
ON_BOOL32 | Write (ON_BinaryArchive &) const |
virtual | ~ON_CurveProxy () |
Private Member Functions | |
ON_OBJECT_DECLARE (ON_CurveProxy) | |
ON_Interval | RealCurveInterval (const ON_Interval *sub_domain) const |
Private Attributes | |
bool | m_bReversed |
const ON_Curve * | m_real_curve |
ON_Interval | m_real_curve_domain |
ON_Interval | m_this_domain |
Definition at line 38 of file opennurbs_curveproxy.h.
Definition at line 21 of file opennurbs_curveproxy.cpp.
ON_CurveProxy::ON_CurveProxy | ( | const ON_CurveProxy & | src | ) |
Definition at line 24 of file opennurbs_curveproxy.cpp.
ON_CurveProxy::ON_CurveProxy | ( | const ON_Curve * | c | ) |
Definition at line 30 of file opennurbs_curveproxy.cpp.
ON_CurveProxy::ON_CurveProxy | ( | const ON_Curve * | c, |
ON_Interval | domain | ||
) |
Definition at line 37 of file opennurbs_curveproxy.cpp.
ON_CurveProxy::~ON_CurveProxy | ( | ) | [virtual] |
Definition at line 77 of file opennurbs_curveproxy.cpp.
ON__UINT32 ON_CurveProxy::DataCRC | ( | ON__UINT32 | current_remainder | ) | const [virtual] |
Reimplemented from ON_Object.
Reimplemented in ON_BrepEdge.
Definition at line 54 of file opennurbs_curveproxy.cpp.
int ON_CurveProxy::Degree | ( | ) | const [virtual] |
Implements ON_Curve.
Definition at line 464 of file opennurbs_curveproxy.cpp.
void ON_CurveProxy::DestroyRuntimeCache | ( | bool | bDelete = true | ) | [virtual] |
Reimplemented from ON_Curve.
Reimplemented in ON_BrepTrim, and ON_PolyEdgeSegment.
Definition at line 1714 of file opennurbs_object.cpp.
int ON_CurveProxy::Dimension | ( | ) | const [virtual] |
Implements ON_Geometry.
Definition at line 298 of file opennurbs_curveproxy.cpp.
ON_Interval ON_CurveProxy::Domain | ( | ) | const [virtual] |
Implements ON_Curve.
Definition at line 319 of file opennurbs_curveproxy.cpp.
void ON_CurveProxy::Dump | ( | ON_TextLog & | dump | ) | const [virtual] |
Reimplemented from ON_Object.
Reimplemented in ON_BrepTrim, and ON_BrepEdge.
Definition at line 276 of file opennurbs_curveproxy.cpp.
ON_Curve * ON_CurveProxy::DuplicateCurve | ( | ) | const [virtual] |
Reimplemented from ON_Curve.
Reimplemented in ON_PolyEdgeSegment.
Definition at line 227 of file opennurbs_curveproxy.cpp.
ON_BOOL32 ON_CurveProxy::Evaluate | ( | double | t, |
int | der_count, | ||
int | v_stride, | ||
double * | v, | ||
int | side = 0 , |
||
int * | hint = 0 |
||
) | const [virtual] |
Implements ON_Curve.
Definition at line 859 of file opennurbs_curveproxy.cpp.
ON_BOOL32 ON_CurveProxy::GetBBox | ( | double * | boxmin, |
double * | boxmax, | ||
ON_BOOL32 | bGrowBox = false |
||
) | const [virtual] |
Implements ON_Geometry.
Definition at line 304 of file opennurbs_curveproxy.cpp.
ON_BOOL32 ON_CurveProxy::GetCurveParameterFromNurbFormParameter | ( | double | nurbs_t, |
double * | curve_t | ||
) | const [virtual] |
Reimplemented from ON_Curve.
Definition at line 1141 of file opennurbs_curveproxy.cpp.
bool ON_CurveProxy::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.
Definition at line 703 of file opennurbs_curveproxy.cpp.
int ON_CurveProxy::GetNurbForm | ( | ON_NurbsCurve & | nurbs, |
double | tolerance = 0.0 , |
||
const ON_Interval * | sub_domain = NULL |
||
) | const [virtual] |
Reimplemented from ON_Curve.
Definition at line 1041 of file opennurbs_curveproxy.cpp.
ON_BOOL32 ON_CurveProxy::GetNurbFormParameterFromCurveParameter | ( | double | curve_t, |
double * | nurbs_t | ||
) | const [virtual] |
Reimplemented from ON_Curve.
Definition at line 1181 of file opennurbs_curveproxy.cpp.
ON_BOOL32 ON_CurveProxy::GetParameterTolerance | ( | double | t, |
double * | tminus, | ||
double * | tplus | ||
) | const [virtual] |
Reimplemented from ON_Curve.
Definition at line 470 of file opennurbs_curveproxy.cpp.
ON_BOOL32 ON_CurveProxy::GetSpanVector | ( | double * | d | ) | const [virtual] |
Implements ON_Curve.
Definition at line 373 of file opennurbs_curveproxy.cpp.
int ON_CurveProxy::HasNurbForm | ( | ) | const [virtual] |
Reimplemented from ON_Curve.
Definition at line 1123 of file opennurbs_curveproxy.cpp.
ON_BOOL32 ON_CurveProxy::IsArc | ( | const ON_Plane * | plane = NULL , |
ON_Arc * | arc = NULL , |
||
double | tolerance = ON_ZERO_TOLERANCE |
||
) | const [virtual] |
Reimplemented from ON_Curve.
Definition at line 630 of file opennurbs_curveproxy.cpp.
ON_BOOL32 ON_CurveProxy::IsClosed | ( | void | ) | const [virtual] |
Reimplemented from ON_Curve.
Reimplemented in ON_BrepEdge, and ON_PolyEdgeSegment.
Definition at line 682 of file opennurbs_curveproxy.cpp.
bool ON_CurveProxy::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.
Definition at line 785 of file opennurbs_curveproxy.cpp.
ON_BOOL32 ON_CurveProxy::IsInPlane | ( | const ON_Plane & | plane, |
double | tolerance = ON_ZERO_TOLERANCE |
||
) | const [virtual] |
Implements ON_Curve.
Definition at line 673 of file opennurbs_curveproxy.cpp.
ON_BOOL32 ON_CurveProxy::IsLinear | ( | double | tolerance = ON_ZERO_TOLERANCE | ) | const [virtual] |
Reimplemented from ON_Curve.
Definition at line 491 of file opennurbs_curveproxy.cpp.
ON_BOOL32 ON_CurveProxy::IsPeriodic | ( | void | ) | const [virtual] |
Reimplemented from ON_Curve.
Definition at line 693 of file opennurbs_curveproxy.cpp.
ON_BOOL32 ON_CurveProxy::IsPlanar | ( | ON_Plane * | plane = NULL , |
double | tolerance = ON_ZERO_TOLERANCE |
||
) | const [virtual] |
Reimplemented from ON_Curve.
Definition at line 663 of file opennurbs_curveproxy.cpp.
int ON_CurveProxy::IsPolyline | ( | ON_SimpleArray< ON_3dPoint > * | pline_points = NULL , |
ON_SimpleArray< double > * | pline_t = NULL |
||
) | const [virtual] |
Reimplemented from ON_Curve.
Definition at line 524 of file opennurbs_curveproxy.cpp.
ON_BOOL32 ON_CurveProxy::IsValid | ( | ON_TextLog * | text_log = NULL | ) | const [virtual] |
Implements ON_Object.
Reimplemented in ON_BrepTrim, and ON_BrepEdge.
Definition at line 247 of file opennurbs_curveproxy.cpp.
ON_CurveProxy::ON_OBJECT_DECLARE | ( | ON_CurveProxy | ) | [private] |
ON_CurveProxy & ON_CurveProxy::operator= | ( | const ON_CurveProxy & | src | ) |
Definition at line 64 of file opennurbs_curveproxy.cpp.
const ON_Curve * ON_CurveProxy::ProxyCurve | ( | ) | const |
Definition at line 195 of file opennurbs_curveproxy.cpp.
ON_Interval ON_CurveProxy::ProxyCurveDomain | ( | ) | const |
Definition at line 222 of file opennurbs_curveproxy.cpp.
bool ON_CurveProxy::ProxyCurveIsReversed | ( | ) | const |
Definition at line 123 of file opennurbs_curveproxy.cpp.
ON_BOOL32 ON_CurveProxy::Read | ( | ON_BinaryArchive & | ) | [virtual] |
Reimplemented from ON_Object.
Reimplemented in ON_BrepTrim, ON_BrepEdge, and ON_PolyEdgeSegment.
Definition at line 290 of file opennurbs_curveproxy.cpp.
ON_Interval ON_CurveProxy::RealCurveInterval | ( | const ON_Interval * | sub_domain | ) | const [private] |
Definition at line 111 of file opennurbs_curveproxy.cpp.
double ON_CurveProxy::RealCurveParameter | ( | double | t | ) | const |
Definition at line 82 of file opennurbs_curveproxy.cpp.
ON_BOOL32 ON_CurveProxy::Reverse | ( | ) | [virtual] |
Implements ON_Curve.
Reimplemented in ON_BrepTrim, and ON_BrepEdge.
Definition at line 847 of file opennurbs_curveproxy.cpp.
ON_BOOL32 ON_CurveProxy::SetDomain | ( | double | t0, |
double | t1 | ||
) | [virtual] |
Reimplemented from ON_Curve.
Definition at line 324 of file opennurbs_curveproxy.cpp.
bool ON_CurveProxy::SetDomain | ( | ON_Interval | domain | ) |
Reimplemented from ON_Curve.
Definition at line 337 of file opennurbs_curveproxy.cpp.
void ON_CurveProxy::SetProxyCurve | ( | const ON_Curve * | real_curve | ) |
Definition at line 128 of file opennurbs_curveproxy.cpp.
void ON_CurveProxy::SetProxyCurve | ( | const ON_Curve * | real_curve, |
ON_Interval | real_curve_subdomain | ||
) |
Definition at line 145 of file opennurbs_curveproxy.cpp.
bool ON_CurveProxy::SetProxyCurveDomain | ( | ON_Interval | proxy_curve_subdomain | ) |
Definition at line 200 of file opennurbs_curveproxy.cpp.
unsigned int ON_CurveProxy::SizeOf | ( | ) | const [virtual] |
Reimplemented from ON_Curve.
Reimplemented in ON_BrepTrim, and ON_BrepEdge.
Definition at line 45 of file opennurbs_curveproxy.cpp.
int ON_CurveProxy::SpanCount | ( | ) | const [virtual] |
Implements ON_Curve.
Definition at line 343 of file opennurbs_curveproxy.cpp.
ON_BOOL32 ON_CurveProxy::Split | ( | double | t, |
ON_Curve *& | left_side, | ||
ON_Curve *& | right_side | ||
) | const [virtual] |
Reimplemented from ON_Curve.
Definition at line 950 of file opennurbs_curveproxy.cpp.
double ON_CurveProxy::ThisCurveParameter | ( | double | real_curve_parameter | ) | const |
Definition at line 96 of file opennurbs_curveproxy.cpp.
ON_BOOL32 ON_CurveProxy::Transform | ( | const ON_Xform & | ) | [virtual] |
Reimplemented from ON_Geometry.
Definition at line 314 of file opennurbs_curveproxy.cpp.
ON_BOOL32 ON_CurveProxy::Trim | ( | const ON_Interval & | domain | ) | [virtual] |
Reimplemented from ON_Curve.
Definition at line 924 of file opennurbs_curveproxy.cpp.
ON_BOOL32 ON_CurveProxy::Write | ( | ON_BinaryArchive & | ) | const [virtual] |
Reimplemented from ON_Object.
Reimplemented in ON_BrepTrim, ON_BrepEdge, and ON_PolyEdgeSegment.
Definition at line 282 of file opennurbs_curveproxy.cpp.
bool ON_CurveProxy::m_bReversed [private] |
Definition at line 152 of file opennurbs_curveproxy.h.
const ON_Curve* ON_CurveProxy::m_real_curve [private] |
Definition at line 148 of file opennurbs_curveproxy.h.
Definition at line 158 of file opennurbs_curveproxy.h.
ON_Interval ON_CurveProxy::m_this_domain [private] |
Definition at line 168 of file opennurbs_curveproxy.h.