| Rhino C++ API
    8.24
    | 
This is the complete list of members for ON_NurbsCurve, including all inherited members.
| AggregateComponentStatus() const | ON_Object | virtual | 
| Append(const ON_NurbsCurve &) | ON_NurbsCurve | |
| AreaMassProperties(ON_3dPoint base_point, ON_3dVector plane_normal, ON_MassProperties &mp, bool bArea=true, bool bFirstMoments=true, bool bSecondMoments=true, bool bProductMoments=true, double rel_tol=1.0e-6, double abs_tol=1.0e-6) const | ON_Curve | |
| AttachUserData(class ON_UserData *pUserData) | ON_Object | |
| BoundingBox() const | ON_Geometry | |
| BrepForm(class ON_Brep *brep=nullptr) const | ON_Geometry | virtual | 
| ChangeClosedCurveSeam(double t) override | ON_NurbsCurve | virtual | 
| ON_Curve::ChangeClosedCurveSeam(double t, double min_dist) | ON_Curve | |
| ChangeDimension(int desired_dimension) override | ON_NurbsCurve | virtual | 
| ChangeEndWeights(double w0, double w1) | ON_NurbsCurve | |
| ClampEnd(int end) | ON_NurbsCurve | |
| ClearAllComponentStates() const | ON_Object | |
| ClearBoundingBox() | ON_Geometry | virtual | 
| ClearComponentStates(ON_ComponentStatus states_to_clear) const | ON_Object | virtual | 
| ClearComponentStates(ON_COMPONENT_INDEX component_index, ON_ComponentStatus states_to_clear) const | ON_Object | virtual | 
| ComponentIndex() const | ON_Geometry | virtual | 
| ControlPoint(int cv_index) const | ON_NurbsCurve | |
| ControlPointSpans(int control_point_index) const | ON_NurbsCurve | |
| ControlPointSupport(int control_point_index) const | ON_NurbsCurve | |
| ControlPolygonLength() const | ON_NurbsCurve | |
| ConvertSpanToBezier(int, ON_BezierCurve &) const | ON_NurbsCurve | |
| CopyUserData(const ON_Object &source_object, ON_UUID source_userdata_item_id, ON_Object::UserDataConflictResolution userdata_conflict_resolution) | ON_Object | |
| CopyUserData(const ON_Object &source_object) | ON_Object | |
| Create(int dimension, bool bIsRational, int order, int cv_count) | ON_NurbsCurve | |
| CreateClampedUniformNurbs(int dimension, int order, int point_count, const ON_3dPoint *point, double knot_delta=1.0) | ON_NurbsCurve | |
| CreateCubicLoft(int point_count, int point_dim, int point_stride, const double *point_list, double k, int is_closed=0, ON::cubic_loft_end_condition start_shape=ON::cubic_loft_ec_quadratic, ON::cubic_loft_end_condition end_shape=ON::cubic_loft_ec_quadratic, class ON_NurbsCurve *nurbs_curve=0) | ON_Curve | static | 
| CreateCurveTree() const | ON_Curve | virtual | 
| CreatePeriodicUniformNurbs(int dimension, int order, int point_count, const ON_3dPoint *point, double knot_delta=1.0) | ON_NurbsCurve | |
| CurvatureAt(double t) const | ON_Curve | |
| CurveTree() const | ON_Curve | |
| CV(int cv_index) const | ON_NurbsCurve | |
| CVCapacity() const | ON_NurbsCurve | |
| CVCount(void) const | ON_NurbsCurve | |
| CVSize(void) const | ON_NurbsCurve | |
| CVStyle() const | ON_NurbsCurve | |
| DataCRC(ON__UINT32 current_remainder) const override | ON_NurbsCurve | virtual | 
| Degree() const override | ON_NurbsCurve | virtual | 
| DeleteComponents(const ON_COMPONENT_INDEX *ci_list, size_t ci_count) | ON_Object | virtual | 
| DerivativeAt(double t) const | ON_Curve | |
| Destroy() | ON_NurbsCurve | |
| DestroyCurveTree() | ON_Curve | |
| DestroyRuntimeCache(bool bDelete=true) override | ON_Curve | virtual | 
| DetachUserData(class ON_UserData *pUserData) | ON_Object | |
| Dimension() const override | ON_NurbsCurve | virtual | 
| Domain() const override | ON_NurbsCurve | virtual | 
| Dump(ON_TextLog &dump) const override | ON_NurbsCurve | virtual | 
| DumpUserData(const wchar_t *description, ON_TextLog &text_log) const | ON_Object | |
| DuplicateCurve() const | ON_Curve | virtual | 
| EmergencyDestroy() | ON_NurbsCurve | |
| Ev1Der(double t, ON_3dPoint &point, ON_3dVector &first_derivative, int side=0, int *hint=0) const | ON_Curve | |
| Ev2Der(double t, ON_3dPoint &point, ON_3dVector &first_derivative, ON_3dVector &second_derivative, int side=0, int *hint=0) const | ON_Curve | |
| Evaluate(double, int, int, double *, int=0, int *=0) const override | ON_NurbsCurve | virtual | 
| EvaluatePoint(const class ON_ObjRef &objref, ON_3dPoint &P) const override | ON_Curve | virtual | 
| EvCurvature(double t, ON_3dPoint &point, ON_3dVector &tangent, ON_3dVector &kappa, int side=0, int *hint=0) const | ON_Curve | |
| EvPoint(double t, ON_3dPoint &point, int side=0, int *hint=0) const | ON_Curve | |
| EvSignedCurvature(double t, ON_3dPoint &point, ON_3dVector &tangent, double &kappa, const ON_3dVector *normal=nullptr, int side=0, int *hint=0) const | ON_Curve | |
| EvTangent(double t, ON_3dPoint &point, ON_3dVector &tangent, int side=0, int *hint=0) const | ON_Curve | |
| Extend(const ON_Interval &domain) override | ON_NurbsCurve | virtual | 
| FirstSpanIsLinear(double min_length, double tolerance) const | ON_Curve | |
| FirstSpanIsLinear(double min_length, double tolerance, ON_Line *span_line) const | ON_Curve | |
| FirstUserData() const | ON_Object | |
| FrameAt(double t, ON_Plane &plane) const | ON_Curve | |
| GetBBox(double *boxmin, double *boxmax, bool bGrowBox=false) const override | ON_NurbsCurve | virtual | 
| GetBoundingBox(ON_BoundingBox &bbox, bool bGrowBox=false) const | ON_Geometry | |
| GetBoundingBox(ON_3dPoint &bbox_min, ON_3dPoint &bbox_max, bool bGrowBox=false) const | ON_Geometry | |
| GetClosestPoint(const ON_3dPoint &, double *t, double maximum_distance=0.0, const ON_Interval *sub_domain=nullptr) const override | ON_NurbsCurve | virtual | 
| GetComponentsWithSetStates(ON_ComponentStatus states_filter, bool bAllEqualStates, ON_SimpleArray< ON_COMPONENT_INDEX > &components) const | ON_Object | virtual | 
| GetCubicBezierApproximation(double max_deviation, class ON_BezierCurve &bezierCurve) const | ON_NurbsCurve | |
| GetCubicBezierApproximation(double max_deviation, ON_3dPoint bezCV[4]) const | ON_NurbsCurve | |
| GetCurveParameterFromNurbFormParameter(double nurbs_t, double *curve_t) const override | ON_NurbsCurve | virtual | 
| GetCV(int, ON::point_style, double *) const | ON_NurbsCurve | |
| GetCV(int, ON_3dPoint &) const | ON_NurbsCurve | |
| GetCV(int, ON_4dPoint &) const | ON_NurbsCurve | |
| GetDomain(double *t0, double *t1) const | ON_Curve | |
| GetGrevilleAbcissae(double *) const | ON_NurbsCurve | |
| GetLength(double *length, double fractional_tolerance=1.0e-8, const ON_Interval *sub_domain=nullptr) const | ON_Curve | virtual | 
| GetLocalClosestPoint(const ON_3dPoint &test_point, double seed_parameter, double *t, const ON_Interval *sub_domain=0) const | ON_Curve | virtual | 
| GetNextDiscontinuity(ON::continuity c, double t0, double t1, double *t, int *hint=nullptr, int *dtype=nullptr, double cos_angle_tolerance=ON_DEFAULT_ANGLE_TOLERANCE_COSINE, double curvature_tolerance=ON_SQRT_EPSILON) const override | ON_NurbsCurve | virtual | 
| GetNormalizedArcLengthPoint(double s, double *t, double fractional_tolerance=1.0e-8, const ON_Interval *sub_domain=nullptr) const | ON_Curve | virtual | 
| GetNormalizedArcLengthPoints(int count, const double *s, double *t, double absolute_tolerance=0.0, double fractional_tolerance=1.0e-8, const ON_Interval *sub_domain=nullptr) const | ON_Curve | virtual | 
| GetNurbForm(ON_NurbsCurve &nurbsform, double tolerance=0.0, const ON_Interval *subdomain=nullptr) const override | ON_NurbsCurve | virtual | 
| GetNurbFormParameterFromCurveParameter(double curve_t, double *nurbs_t) const override | ON_NurbsCurve | virtual | 
| GetParameterTolerance(double t, double *tminus, double *tplus) const override | ON_NurbsCurve | virtual | 
| GetSpanVector(double *knot_values) const override | ON_NurbsCurve | virtual | 
| GetSpanVectorIndex(double t, int side, int *span_vector_index, ON_Interval *span_domain) const | ON_Curve | virtual | 
| GetTightBoundingBox(class ON_BoundingBox &tight_bbox, bool bGrowBox=false, const class ON_Xform *xform=nullptr) const override | ON_Curve | virtual | 
| GetUserData(const ON_UUID &userdata_uuid) const | ON_Object | |
| GetUserString(const wchar_t *key, ON_wString &string_value) const | ON_Object | |
| GetUserStringKeys(ON_ClassArray< ON_wString > &user_string_keys) const | ON_Object | |
| GetUserStrings(ON_ClassArray< ON_UserString > &user_strings) const | ON_Object | |
| GrevilleAbcissa(int) const | ON_NurbsCurve | |
| GrevilleInterpolate(const ON_SimpleArray< ON_3dPoint > &points, bool bPeriodic) | ON_NurbsCurve | |
| GrevilleInterpolate(const double *points, size_t point_count, size_t point_stride, bool bPeriodic) | ON_NurbsCurve | |
| GrevilleInterpolate(const double *points, size_t point_count, size_t point_stride, bool bPeriodic, int cv0, int cv1) | ON_NurbsCurve | |
| GrevilleInterpolate(const ON_SimpleArray< ON_3dPoint > &points, bool bPeriodic, int cv0, int cv1) | ON_NurbsCurve | |
| HasBezierSpans() const | ON_NurbsCurve | |
| HasBrepForm() const | ON_Geometry | virtual | 
| HasNurbForm() const override | ON_NurbsCurve | virtual | 
| IncreaseDegree(int desired_degree) | ON_NurbsCurve | |
| Initialize(void) | ON_NurbsCurve | |
| InsertKnot(double knot_value, int knot_multiplicity) | ON_NurbsCurve | |
| IntersectCurve(const ON_Curve *curveB, ON_SimpleArray< ON_X_EVENT > &x, double intersection_tolerance=0.0, double overlap_tolerance=0.0, const ON_Interval *curveA_domain=0, const ON_Interval *curveB_domain=0) const | ON_Curve | |
| IntersectPlane(ON_PlaneEquation plane_equation, ON_SimpleArray< ON_X_EVENT > &x, double intersection_tolerance=0.0, double overlap_tolerance=0.0, const ON_Interval *curve_domain=0) const | ON_Curve | |
| IntersectSelf(ON_SimpleArray< ON_X_EVENT > &x, double intersection_tolerance=0.0, const ON_Interval *curve_domain=0) const | ON_Curve | virtual | 
| IntersectSurface(const ON_Surface *surfaceB, ON_SimpleArray< ON_X_EVENT > &x, double intersection_tolerance=0.0, double overlap_tolerance=0.0, const ON_Interval *curveA_domain=0, const ON_Interval *surfaceB_udomain=0, const ON_Interval *surfaceB_vdomain=0) const | ON_Curve | |
| IsArc(const ON_Plane *plane=nullptr, ON_Arc *arc=nullptr, double tolerance=ON_ZERO_TOLERANCE) const override | ON_NurbsCurve | virtual | 
| IsArcAt(double t, const ON_Plane *plane=0, ON_Arc *arc=0, double tolerance=ON_ZERO_TOLERANCE, double *t0=0, double *t1=0) const | ON_Curve | |
| IsClamped(int end=2) const | ON_NurbsCurve | |
| IsClosable(double tolerance, double min_abs_size=0.0, double min_rel_size=10.0) const | ON_Curve | |
| IsClosed() const override | ON_NurbsCurve | virtual | 
| IsContinuous(ON::continuity c, double t, int *hint=nullptr, 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 override | ON_NurbsCurve | virtual | 
| IsCorrupt(bool bRepair, bool bSilentError, class ON_TextLog *text_log) const | ON_Object | |
| IsDeformable() const override | ON_NurbsCurve | virtual | 
| IsDuplicate(const ON_NurbsCurve &other, bool bIgnoreParameterization, double tolerance=ON_ZERO_TOLERANCE) const | ON_NurbsCurve | |
| IsEllipse(const ON_Plane *plane=nullptr, ON_Ellipse *ellipse=nullptr, double tolerance=ON_ZERO_TOLERANCE) const | ON_Curve | virtual | 
| IsInPlane(const ON_Plane &test_plane, double tolerance=ON_ZERO_TOLERANCE) const override | ON_NurbsCurve | virtual | 
| IsKindOf(const ON_ClassId *pClassId) const | ON_Object | |
| IsLinear(double tolerance=ON_ZERO_TOLERANCE) const override | ON_NurbsCurve | virtual | 
| IsMorphable() const override | ON_NurbsCurve | virtual | 
| IsNatural(int end=2) const | ON_NurbsCurve | |
| IsPeriodic() const override | ON_NurbsCurve | virtual | 
| IsPlanar(ON_Plane *plane=nullptr, double tolerance=ON_ZERO_TOLERANCE) const override | ON_NurbsCurve | virtual | 
| IsPolyline(ON_SimpleArray< ON_3dPoint > *pline_points=nullptr, ON_SimpleArray< double > *pline_t=nullptr) const override | ON_NurbsCurve | virtual | 
| IsRational(void) const | ON_NurbsCurve | |
| IsShort(double tolerance, const ON_Interval *sub_domain=0, double *length_estimate=0) const override | ON_NurbsCurve | virtual | 
| IsSingular() const | ON_NurbsCurve | |
| IsSubDFriendly(bool bPermitCreases) const | ON_NurbsCurve | |
| IsValid(class ON_TextLog *text_log=nullptr) const override | ON_NurbsCurve | virtual | 
| Knot(int knot_index) const | ON_NurbsCurve | |
| Knot() const | ON_NurbsCurve | |
| KnotCapacity() const | ON_NurbsCurve | |
| KnotCount(void) const | ON_NurbsCurve | |
| KnotMultiplicity(int knot_index) const | ON_NurbsCurve | |
| LastSpanIsLinear(double min_length, double tolerance) const | ON_Curve | |
| LastSpanIsLinear(double min_length, double tolerance, ON_Line *span_line) const | ON_Curve | |
| LengthMassProperties(class ON_MassProperties &mp, bool bLength=true, bool bFirstMoments=true, bool bSecondMoments=true, bool bProductMoments=true, double rel_tol=1.0e-6, double abs_tol=1.0e-6) const | ON_Curve | |
| m_cv | ON_NurbsCurve | |
| m_cv_capacity | ON_NurbsCurve | |
| m_cv_count | ON_NurbsCurve | |
| m_cv_stride | ON_NurbsCurve | |
| m_dim | ON_NurbsCurve | |
| m_is_rat | ON_NurbsCurve | |
| m_knot | ON_NurbsCurve | |
| m_order | ON_NurbsCurve | |
| MakeClampedUniformKnotVector(double delta=1.0) | ON_NurbsCurve | |
| MakeDeformable() override | ON_NurbsCurve | virtual | 
| MakeNonRational() | ON_NurbsCurve | |
| MakePeriodicUniformKnotVector(double delta=1.0) | ON_NurbsCurve | |
| MakePiecewiseBezier(bool bSetEndWeightsToOne=false) | ON_NurbsCurve | |
| MakeRational() | ON_NurbsCurve | |
| ManageKnotForExperts(int knot_capacity, double *knot) | ON_NurbsCurve | |
| MarkAggregateComponentStatusAsNotCurrent() const | ON_Object | virtual | 
| MemoryRelocate() | ON_Object | virtual | 
| MeshCurve(ON_MeshCurveParameters &mp, ON_PolylineCurve *polyline, bool bSkipFirstPoint, const ON_Interval *domain) const | ON_Curve | |
| ModelObjectId() const | ON_Object | virtual | 
| Morph(const ON_SpaceMorph &morph) override | ON_NurbsCurve | |
| ON_Curve::Morph(const class ON_SpaceMorph &morph) | ON_Geometry | virtual | 
| MoveUserData(ON_Object &source_object, ON_UUID source_userdata_item_id, ON_Object::UserDataConflictResolution userdata_conflict_resolution, bool bDeleteAllSourceItems) | ON_Object | |
| MoveUserData(ON_Object &source_object) | ON_Object | |
| New() | ON_NurbsCurve | static | 
| New(const ON_NurbsCurve &nurbs_curve) | ON_NurbsCurve | static | 
| New(const ON_BezierCurve &bezier_curve) | ON_NurbsCurve | static | 
| New(int dimension, bool bIsRational, int order, int cv_count) | ON_NurbsCurve | static | 
| NurbsCurve(ON_NurbsCurve *pNurbsCurve=nullptr, double tolerance=0.0, const ON_Interval *subdomain=nullptr) const | ON_Curve | |
| ObjectType() const override | ON_Curve | virtual | 
| ON_Curve() ON_NOEXCEPT | ON_Curve | |
| ON_Curve(const ON_Curve &) | ON_Curve | |
| ON_Geometry()=default | ON_Geometry | |
| ON_Geometry(const ON_Geometry &)=default | ON_Geometry | |
| ON_NurbsCurve() ON_NOEXCEPT | ON_NurbsCurve | |
| ON_NurbsCurve(const ON_NurbsCurve &) | ON_NurbsCurve | |
| ON_NurbsCurve(const ON_BezierCurve &bezier_curve) | ON_NurbsCurve | |
| ON_NurbsCurve(int dimension, bool bIsRational, int order, int cv_count) | ON_NurbsCurve | |
| ON_Object() ON_NOEXCEPT | ON_Object | |
| ON_Object(const ON_Object &) | ON_Object | |
| operator=(const ON_NurbsCurve &src) | ON_NurbsCurve | |
| operator=(const ON_BezierCurve &bezier_curve) | ON_NurbsCurve | |
| ON_Curve::operator=(const ON_Curve &) | ON_Curve | |
| ON_Geometry::operator=(const ON_Geometry &)=default | ON_Geometry | |
| ON_Object::operator=(const ON_Object &) | ON_Object | |
| Order(void) const | ON_NurbsCurve | |
| ParameterSearch(double t, int &index, bool bEnableSnap, const ON_SimpleArray< double > &m_t, double RelTol=ON_SQRT_EPSILON) const | ON_Curve | protected | 
| PointAt(double t) const | ON_Curve | |
| PointAtEnd() const | ON_Curve | |
| PointAtStart() const | ON_Curve | |
| PurgeUserData() | ON_Object | |
| Read(ON_BinaryArchive &binary_archive) override | ON_NurbsCurve | virtual | 
| RemoveKnots(int i0, int i1, double tolerance=0.0) | ON_NurbsCurve | |
| RemoveShortSegments(double tolerance, bool bRemoveShortSegments=true) override | ON_NurbsCurve | virtual | 
| RemoveSingularSpans() | ON_NurbsCurve | |
| RemoveSpan(int span_index) | ON_NurbsCurve | |
| RepairBadKnots(double knot_tolerance=0.0, bool bRepair=true) | ON_NurbsCurve | |
| Reparameterize(double c) | ON_NurbsCurve | |
| ReserveCVCapacity(int) | ON_NurbsCurve | |
| ReserveKnotCapacity(int) | ON_NurbsCurve | |
| Reverse() override | ON_NurbsCurve | virtual | 
| Rotate(double sin_angle, double cos_angle, const ON_3dVector &rotation_axis, const ON_3dPoint &rotation_center) | ON_Geometry | |
| Rotate(double rotation_angle, const ON_3dVector &rotation_axis, const ON_3dPoint &rotation_center) | ON_Geometry | |
| Scale(double scale_factor) | ON_Geometry | |
| SetComponentStates(ON_COMPONENT_INDEX component_index, ON_ComponentStatus states_to_set) const | ON_Object | virtual | 
| SetComponentStatus(ON_COMPONENT_INDEX component_index, ON_ComponentStatus status_to_copy) const | ON_Object | virtual | 
| SetCV(int, ON::point_style, const double *) | ON_NurbsCurve | |
| SetCV(int, const ON_3dPoint &) | ON_NurbsCurve | |
| SetCV(int, const ON_4dPoint &) | ON_NurbsCurve | |
| SetDomain(double t0, double t1) override | ON_NurbsCurve | virtual | 
| ON_Curve::SetDomain(ON_Interval domain) | ON_Curve | |
| SetEndPoint(ON_3dPoint end_point) override | ON_NurbsCurve | virtual | 
| SetKnot(int knot_index, double knot_value) | ON_NurbsCurve | |
| SetStartPoint(ON_3dPoint start_point) override | ON_NurbsCurve | virtual | 
| SetSubDFriendlyTag(bool bSubDFriendlyTag) | ON_NurbsCurve | |
| SetUnclampedTagForExperts(bool bUnclampedTag) | ON_NurbsCurve | |
| SetUserString(const wchar_t *key, const wchar_t *string_value) | ON_Object | |
| SetUserStrings(int count, const ON_UserString *user_strings, bool bReplace) | ON_Object | |
| SetWeight(int, double) | ON_NurbsCurve | |
| SignedCurvatureAt(double t, const ON_3dVector *plane_normal=nullptr) const | ON_Curve | |
| SizeOf() const override | ON_NurbsCurve | virtual | 
| SpanCount() const override | ON_NurbsCurve | virtual | 
| SpanIsLinear(int span_index, double min_length, double tolerance) const | ON_NurbsCurve | |
| SpanIsLinear(int span_index, double min_length, double tolerance, ON_Line *line) const | ON_NurbsCurve | |
| SpanIsSingular(int span_index) const | ON_NurbsCurve | |
| SpanVector() const | ON_Curve | |
| Split(double split_param, ON_Curve *&left_result, ON_Curve *&right_result) const override | ON_NurbsCurve | virtual | 
| SubDFriendlyTag() const | ON_NurbsCurve | |
| SuperfluousKnot(int) const | ON_NurbsCurve | |
| SwapCoordinates(int i, int j) override | ON_NurbsCurve | virtual | 
| TangentAt(double t) const | ON_Curve | |
| ThisIsNullptr(bool bSilentError) const | ON_Object | |
| TightBoundingBox() const | ON_Geometry | |
| Transform(const ON_Xform &xform) override | ON_NurbsCurve | virtual | 
| TransformUserData(const class ON_Xform &xform) | ON_Object | |
| Translate(const ON_3dVector &translation_vector) | ON_Geometry | |
| Trim(const ON_Interval &) override | ON_NurbsCurve | virtual | 
| TrimClosedCurve(const ON_Interval &in) | ON_NurbsCurve | |
| UnclampedTagForExperts() const | ON_NurbsCurve | |
| UnclampEndForExperts(int end) | ON_NurbsCurve | |
| UnmanageKnotForExperts(int &knot_capacity, double *&knot) | ON_NurbsCurve | |
| Unset | ON_Geometry | static | 
| UpdateReferencedComponents(const class ON_ComponentManifest &source_manifest, const class ON_ComponentManifest &destination_manifest, const class ON_ManifestMap &manifest_map) | ON_Object | virtual | 
| UserDataConflictResolution enum name | ON_Object | |
| UserStringCount() const | ON_Object | |
| Weight(int) const | ON_NurbsCurve | |
| Write(ON_BinaryArchive &binary_archive) const override | ON_NurbsCurve | virtual | 
| ZeroCVs() | ON_NurbsCurve | |
| ~ON_Curve() | ON_Curve | virtual | 
| ~ON_Geometry()=default | ON_Geometry | |
| ~ON_NurbsCurve() | ON_NurbsCurve | virtual | 
| ~ON_Object() | ON_Object | virtual | 
 1.8.17
 1.8.17