|
Rhino C++ API
9.0
|
#include <opennurbs_curveonsurface.h>
Public Member Functions | |
| ON_CurveOnSurface () ON_NOEXCEPT | |
| ON_CurveOnSurface (ON_Curve *p2dCurve, ON_Curve *p3dCurve, ON_Surface *pSurface) | |
| virtual | ~ON_CurveOnSurface () |
| int | Degree () const override |
| int | Dimension () const override |
| ON_Geometry overrides. More... | |
| ON_Interval | Domain () const override |
| ON_Curve overrides. More... | |
| void | Dump (ON_TextLog &) const override |
| for debugging More... | |
| bool | Evaluate (double, int, int, double *, int=0, int *=0) const override |
| Domain changes from [a,b] to [-b,-a]. More... | |
| bool | GetBBox (double *boxmin, double *boxmax, bool bGrowBox=false) const override |
| virtual ON_Geometry GetBBox override More... | |
| int | GetNurbForm (ON_NurbsCurve &, double=0.0, const ON_Interval *=nullptr) const override |
| bool | GetParameterTolerance (double, double *, double *) const override |
| (optional - override if curve is piecewise smooth) More... | |
| bool | GetSpanVector (double *) const override |
| bool | IsArc (const ON_Plane *=nullptr, ON_Arc *=nullptr, double=ON_ZERO_TOLERANCE) const override |
| bool | IsClosed (void) const override |
| bool | IsInPlane (const ON_Plane &, double=ON_ZERO_TOLERANCE) const override |
| bool | IsLinear (double=ON_ZERO_TOLERANCE) const override |
| bool | IsPeriodic (void) const override |
| periodic.) More... | |
| bool | IsPlanar (ON_Plane *=nullptr, double=ON_ZERO_TOLERANCE) const override |
| bool | IsValid (class ON_TextLog *text_log=nullptr) const override |
| ON_Object overrides. More... | |
| bool | Read (ON_BinaryArchive &) override |
| bool | Reverse () override |
| unsigned int | SizeOf () const override |
| virtual ON_Object::SizeOf override More... | |
| int | SpanCount () const override |
| number of smooth spans in curve More... | |
| bool | SwapCoordinates (int, int) override |
| (optional - default uses Transform for 2d and 3d objects) More... | |
| bool | Transform (const ON_Xform &) override |
| bool | Write (ON_BinaryArchive &) const override |
Public Member Functions inherited from ON_Curve | |
| ON_Curve () ON_NOEXCEPT | |
| ON_Curve (const ON_Curve &) | |
| virtual | ~ON_Curve () |
| bool | 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 |
| virtual bool | ChangeClosedCurveSeam (double t) |
| bool | ChangeClosedCurveSeam (double t, double min_dist) |
| virtual bool | ChangeDimension (int desired_dimension) |
| virtual class ON_CurveTree * | CreateCurveTree () const |
| ON_3dVector | CurvatureAt (double t) const |
| const class ON_CurveTree * | CurveTree () const |
| ON_3dVector | DerivativeAt (double t) const |
| void | DestroyCurveTree () |
| void | DestroyRuntimeCache (bool bDelete=true) override |
| virtual ON_Object::DestroyRuntimeCache override More... | |
| virtual ON_Curve * | DuplicateCurve () const |
| bool | Ev1Der (double t, ON_3dPoint &point, ON_3dVector &first_derivative, int side=0, int *hint=0) const |
| bool | Ev2Der (double t, ON_3dPoint &point, ON_3dVector &first_derivative, ON_3dVector &second_derivative, int side=0, int *hint=0) const |
| bool | EvaluatePoint (const class ON_ObjRef &objref, ON_3dPoint &P) const override |
| virtual ON_Geometry override More... | |
| bool | EvCurvature (double t, ON_3dPoint &point, ON_3dVector &tangent, ON_3dVector &kappa, int side=0, int *hint=0) const |
| bool | EvPoint (double t, ON_3dPoint &point, int side=0, int *hint=0) const |
| bool | EvSignedCurvature (double t, ON_3dPoint &point, ON_3dVector &tangent, double &kappa, const ON_3dVector *normal=nullptr, int side=0, int *hint=0) const |
| bool | EvTangent (double t, ON_3dPoint &point, ON_3dVector &tangent, int side=0, int *hint=0) const |
| virtual bool | Extend (const ON_Interval &domain) |
| bool | FirstSpanIsLinear (double min_length, double tolerance) const |
| bool | FirstSpanIsLinear (double min_length, double tolerance, ON_Line *span_line) const |
| bool | FrameAt (double t, ON_Plane &plane) const |
| virtual bool | GetClosestPoint (const ON_3dPoint &test_point, double *t, double maximum_distance=0.0, const ON_Interval *sub_domain=nullptr) const |
| virtual bool | GetCurveParameterFromNurbFormParameter (double nurbs_t, double *curve_t) const |
| bool | GetDomain (double *t0, double *t1) const |
| curve interface More... | |
| virtual bool | GetLength (double *length, double fractional_tolerance=1.0e-8, const ON_Interval *sub_domain=nullptr) const |
| virtual bool | GetLocalClosestPoint (const ON_3dPoint &test_point, double seed_parameter, double *t, const ON_Interval *sub_domain=0) const |
| virtual bool | 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 |
| virtual bool | GetNormalizedArcLengthPoint (double s, double *t, double fractional_tolerance=1.0e-8, const ON_Interval *sub_domain=nullptr) const |
| virtual bool | 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 |
| virtual bool | GetNurbFormParameterFromCurveParameter (double curve_t, double *nurbs_t) const |
| virtual bool | GetSpanVectorIndex (double t, int side, int *span_vector_index, ON_Interval *span_domain) const |
| bool | GetTightBoundingBox (class ON_BoundingBox &tight_bbox, bool bGrowBox=false, const class ON_Xform *xform=nullptr) const override |
| virtual ON_Geometry GetTightBoundingBox override More... | |
| virtual int | HasNurbForm () const |
| int | 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 |
| int | 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 |
| virtual int | IntersectSelf (ON_SimpleArray< ON_X_EVENT > &x, double intersection_tolerance=0.0, const ON_Interval *curve_domain=0) const |
| int | 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 |
| 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 |
| bool | IsClosable (double tolerance, double min_abs_size=0.0, double min_rel_size=10.0) const |
| virtual bool | 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 |
| virtual bool | IsEllipse (const ON_Plane *plane=nullptr, ON_Ellipse *ellipse=nullptr, double tolerance=ON_ZERO_TOLERANCE) const |
| bool | IsLong (double min_length, const ON_Interval *sub_domain=0) const |
| virtual int | IsPolyline (ON_SimpleArray< ON_3dPoint > *pline_points=nullptr, ON_SimpleArray< double > *pline_t=nullptr) const |
| virtual bool | IsShort (double tolerance, const ON_Interval *sub_domain=0, double *length_estimate=0) const |
| bool | LastSpanIsLinear (double min_length, double tolerance) const |
| bool | LastSpanIsLinear (double min_length, double tolerance, ON_Line *span_line) const |
| bool | 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 |
| class ON_PolylineCurve * | MeshCurve (ON_MeshCurveParameters &mp, ON_PolylineCurve *polyline, bool bSkipFirstPoint, const ON_Interval *domain) const |
| double | NextCurveKink (ON_Interval search_domain, const class ON_CurveKinkDefinition &kink_definition) const |
| Find the next curve kink in the search domain. More... | |
| ON_NurbsCurve * | NurbsCurve (ON_NurbsCurve *pNurbsCurve=nullptr, double tolerance=0.0, const ON_Interval *subdomain=nullptr) const |
| class ON_NurbsCurve * | NurbsCurveFit (ON_Interval domain, const class ON_NurbsCurveFitParameters &fit_parameters, class ON_NurbsCurve *destination_nurbs_cuve, class ON_Line &maximum_separation, double &this_separation_parameter, double &nurbs_separation_parameter) const |
| Get a uniform NURBS curve fit to this curve.. This function is useful when you want to fit this curve a single time. If you are in a situation where you are repeatedly adjusting fit_parameters, it is much more efficient to use the ON_NurbsCurveFitBuilder class because the steps involved in sampling points and other information from this input curve are expensive and can be reused as fit_parameters.Degree(), fit_parameters.PointCount(), and other fitting parmeters are changed. More... | |
| ON::object_type | ObjectType () const override |
| ON_Curve & | operator= (const ON_Curve &) |
| ON_3dPoint | PointAt (double t) const |
| ON_3dPoint | PointAtEnd () const |
| ON_3dPoint | PointAtStart () const |
| virtual bool | RemoveShortSegments (double tolerance, bool bRemoveShortSegments=true) |
| virtual bool | SetDomain (double t0, double t1) |
| bool | SetDomain (ON_Interval domain) |
| virtual bool | SetEndPoint (ON_3dPoint end_point) |
| virtual bool | SetStartPoint (ON_3dPoint start_point) |
| double | SignedCurvatureAt (double t, const ON_3dVector *plane_normal=nullptr) const |
| const ON_SimpleArray< double > | SpanVector () const |
| The curve's span vector is a stricltly monotone increasing list of doubles that are the intervals on which the curve is C-infinity. More... | |
| virtual bool | Split (double t, ON_Curve *&left_side, ON_Curve *&right_side) const |
| ON_3dVector | TangentAt (double t) const |
| ON_3dVector | TangentAt (double t, int side) const |
| Evaluate the unit tangent vector with the option to specify the direction of the limit. This is useful when evaluating tangent vectors at a tangent discontinuity. More... | |
| virtual bool | Trim (const ON_Interval &domain) |
Public Member Functions inherited from ON_Geometry | |
| ON_Geometry ()=default | |
| ON_Geometry (const ON_Geometry &)=default | |
| ~ON_Geometry ()=default | |
| ON_BoundingBox | BoundingBox () const |
| virtual class ON_Brep * | BrepForm (class ON_Brep *brep=nullptr) const |
| virtual void | ClearBoundingBox () |
| virtual ON_COMPONENT_INDEX | ComponentIndex () const |
| bool | GetBoundingBox (ON_3dPoint &bbox_min, ON_3dPoint &bbox_max, bool bGrowBox=false) const |
| bool | GetBoundingBox (ON_BoundingBox &bbox, bool bGrowBox=false) const |
| virtual bool | HasBrepForm () const |
| virtual bool | IsDeformable () const |
| virtual bool | IsMorphable () const |
| bool | IsValid (class ON_TextLog *text_log=nullptr) const override |
| virtual bool | MakeDeformable () |
| virtual bool | Morph (const class ON_SpaceMorph &morph) |
| ON_Geometry & | operator= (const ON_Geometry &)=default |
| bool | Rotate (double rotation_angle, const ON_3dVector &rotation_axis, const ON_3dPoint &rotation_center) |
| bool | Rotate (double sin_angle, double cos_angle, const ON_3dVector &rotation_axis, const ON_3dPoint &rotation_center) |
| bool | Scale (double scale_factor) |
| const ON_BoundingBox | TightBoundingBox () const |
| bool | Translate (const ON_3dVector &translation_vector) |
Public Member Functions inherited from ON_Object | |
| ON_Object () ON_NOEXCEPT | |
| ON_Object (const ON_Object &) | |
| virtual | ~ON_Object () |
| virtual ON_AggregateComponentStatus | AggregateComponentStatus () const |
| bool | AttachUserData (class ON_UserData *pUserData) |
| unsigned int | ClearAllComponentStates () const |
| virtual unsigned int | ClearComponentStates (ON_COMPONENT_INDEX component_index, ON_ComponentStatus states_to_clear) const |
| virtual unsigned int | ClearComponentStates (ON_ComponentStatus states_to_clear) const |
| void | CopyUserData (const ON_Object &source_object) |
| unsigned int | CopyUserData (const ON_Object &source_object, ON_UUID source_userdata_item_id, ON_Object::UserDataConflictResolution userdata_conflict_resolution) |
| virtual ON__UINT32 | DataCRC (ON__UINT32 current_remainder) const |
| virtual bool | DeleteComponents (const ON_COMPONENT_INDEX *ci_list, size_t ci_count) |
| bool | DetachUserData (class ON_UserData *pUserData) |
| void | DumpUserData (const wchar_t *description, ON_TextLog &text_log) const |
| Go through the linked list of ON_UserData attached to this and call the virtual Dump(text_log) function on each instance. More... | |
| void | EmergencyDestroy () |
| class ON_UserData * | FirstUserData () const |
| virtual unsigned int | GetComponentsWithSetStates (ON_ComponentStatus states_filter, bool bAllEqualStates, ON_SimpleArray< ON_COMPONENT_INDEX > &components) const |
| class ON_UserData * | GetUserData (const ON_UUID &userdata_uuid) const |
| bool | GetUserString (const wchar_t *key, ON_wString &string_value) const |
| int | GetUserStringKeys (ON_ClassArray< ON_wString > &user_string_keys) const |
| int | GetUserStrings (ON_ClassArray< ON_UserString > &user_strings) const |
| bool | IsCorrupt (bool bRepair, bool bSilentError, class ON_TextLog *text_log) const |
| bool | IsKindOf (const ON_ClassId *pClassId) const |
| virtual void | MarkAggregateComponentStatusAsNotCurrent () const |
| virtual void | MemoryRelocate () |
| virtual ON_UUID | ModelObjectId () const |
| void | MoveUserData (ON_Object &source_object) |
| unsigned int | MoveUserData (ON_Object &source_object, ON_UUID source_userdata_item_id, ON_Object::UserDataConflictResolution userdata_conflict_resolution, bool bDeleteAllSourceItems) |
| ON_wString | ObjectTypeStr () const |
| virtual More... | |
| ON_Object & | operator= (const ON_Object &) |
| void | PurgeUserData () |
| virtual unsigned int | SetComponentStates (ON_COMPONENT_INDEX component_index, ON_ComponentStatus states_to_set) const |
| virtual unsigned int | SetComponentStatus (ON_COMPONENT_INDEX component_index, ON_ComponentStatus status_to_copy) const |
| bool | SetUserString (const wchar_t *key, const wchar_t *string_value) |
| int | SetUserStrings (int count, const ON_UserString *user_strings, bool bReplace) |
| bool | ThisIsNullptr (bool bSilentError) const |
| void | TransformUserData (const class ON_Xform &xform) |
| virtual bool | UpdateReferencedComponents (const class ON_ComponentManifest &source_manifest, const class ON_ComponentManifest &destination_manifest, const class ON_ManifestMap &manifest_map) |
| int | UserStringCount () const |
Public Attributes | |
| ON_Curve * | m_c2 |
| Interface. More... | |
| ON_Curve * | m_c3 |
| OPTIONAL 3d curve (approximation) to srf(crv2(t)) More... | |
| ON_Surface * | m_s |
Additional Inherited Members | |
Public Types inherited from ON_Object | |
| enum | UserDataConflictResolution : unsigned char { UserDataConflictResolution::destination_object = 0, UserDataConflictResolution::source_object = 1, UserDataConflictResolution::source_copycount_gt = 2, UserDataConflictResolution::source_copycount_ge = 3, UserDataConflictResolution::destination_copycount_gt = 4, UserDataConflictResolution::destination_copycount_ge = 5, UserDataConflictResolution::delete_item = 6 } |
Static Public Member Functions inherited from ON_Curve | |
| static class 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) |
| static bool | GetCurveSeparation (const ON_Curve &curveA, ON_Interval domainA, const ON_Curve &curveB, ON_Interval domainB, ON_Line &minimum_separation, double *min_parameter_A, double *min_parameter_B, ON_Line &maximum_separation, double *max_parameter_A, double *max_parameter_B) |
| Find the locations of the minimimum and maximum separation between two curves. When the separation points are distinct, the line connecting the separation points is perpindicular to the curves. This calculates the distances and locations shown in the Rhino CrvDeviation command. More... | |
Static Public Attributes inherited from ON_Geometry | |
| const static ON_Geometry | Unset |
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 |
Copyright (c) 1993-2026 Robert McNeel & Associates. All rights reserved. OpenNURBS, Rhinoceros, and Rhino3D are registered trademarks of Robert McNeel & Associates.
THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY. ALL IMPLIED WARRANTIES OF FITNESS FOR ANY PARTICULAR PURPOSE AND OF MERCHANTABILITY ARE HEREBY DISCLAIMED.
For complete openNURBS copyright information see http://www.opennurbs.org.
| ON_CurveOnSurface::ON_CurveOnSurface | ( | ) |
|
virtual |
Remarks: Deletes m_c2, m_c3, and m_s. Use ON_CurveProxy or ON_SurfaceProxy if you need to use curves or a surface that you do not want deleted.
| ON_CurveOnSurface::ON_CurveOnSurface | ( | ON_Curve * | p2dCurve, |
| ON_Curve * | p3dCurve, | ||
| ON_Surface * | pSurface | ||
| ) |
Parameters: p2dCurve - [in] ~ON_CurveOnSurface() will delete this curve. Use an ON_CurveProxy if you don't want the original deleted. p3dCurve - [in] ~ON_CurveOnSurface() will delete this curve. Use an ON_CurveProxy if you don't want the original deleted. pSurface - [in] ~ON_CurveOnSurface() will delete this surface. Use an ON_SurfaceProxy if you don't want the original deleted.
| p2dCurve | required 2d curve |
| p3dCurve | optional 3d curve |
| pSurface | required surface |
|
overridevirtual |
Description: Returns maximum algebraic degree of any span or a good estimate if curve spans are not algebraic. Returns: degree
Implements ON_Curve.
|
overridevirtual |
ON_Geometry overrides.
Reimplemented from ON_Geometry.
|
overridevirtual |
|
overridevirtual |
for debugging
Reimplemented from ON_Object.
|
overridevirtual |
Domain changes from [a,b] to [-b,-a].
Implements ON_Curve.
|
overridevirtual |
virtual ON_Geometry GetBBox override
Reimplemented from ON_Geometry.
|
overridevirtual |
Description: Get a NURBS curve representation of this curve. Parameters: nurbs_curve - [out] NURBS representation returned here tolerance - [in] tolerance to use when creating NURBS representation. subdomain - [in] if not nullptr, then the NURBS representation for this portion of the curve is returned. Returns: 0 unable to create NURBS representation with desired accuracy. 1 success - returned NURBS parameterization matches the curve's to wthe desired accuracy 2 success - returned NURBS point locus matches the curve's to the desired accuracy and the domain of the NURBS curve is correct. On However, This curve's parameterization and the NURBS curve parameterization may not match to the desired accuracy. This situation happens when getting NURBS representations of curves that have a transcendental parameterization like circles Remarks: This is a low-level virtual function. If you do not need the parameterization information provided by the return code, then ON_Curve::NurbsCurve may be easier to use. See Also: ON_Curve::NurbsCurve
Reimplemented from ON_Curve.
|
overridevirtual |
(optional - override if curve is piecewise smooth)
Reimplemented from ON_Curve.
|
overridevirtual |
Description: Get number of parameters of "knots". Parameters: span_parameters - [out] an array of length SpanCount()+1 is filled in with the parameters where the curve is not smooth (C-infinity). Returns: true if successful
Implements ON_Curve.
|
overridevirtual |
Description: Test a curve to see if the locus if its points is an arc or circle. Parameters: plane - [in] if not nullptr, test is performed in this plane arc - [out] if not nullptr and true is returned, then arc parameters are filled in tolerance - [in] tolerance to use when checking Returns: ON_Arc.m_angle > 0 if curve locus is an arc between specified points. If ON_Arc.m_angle is 2.0*ON_PI, then the curve is a circle.
Reimplemented from ON_Curve.
|
overridevirtual |
CV = euclidean location of end CV, or curve is
Reimplemented from ON_Curve.
|
overridevirtual |
Description: Test a curve to see if it lies in a specific plane. Parameters: test_plane - [in] tolerance - [in] tolerance to use when checking Returns: true if the maximum distance from the curve to the test_plane is <= tolerance.
Implements ON_Curve.
|
overridevirtual |
Description: Test a curve to see if the locus if its points is a line segment. Parameters: tolerance - [in] ///< tolerance to use when checking linearity Returns: true if the ends of the curve are farther than tolerance apart and the maximum distance from any point on the curve to the line segment connecting the curve's ends is <= tolerance.
Reimplemented from ON_Curve.
|
overridevirtual |
periodic.)
Reimplemented from ON_Curve.
|
overridevirtual |
Description: Test a curve to see if it is planar. Parameters: plane - [out] if not nullptr and true is returned, the plane parameters are filled in. tolerance - [in] tolerance to use when checkin Note: If the curve is a simple planar closed curve the plane orientation agrees with the curve orientation. Returns: true if there is a plane such that the maximum distance from the curve to the plane is <= tolerance.
Reimplemented from ON_Curve.
|
overridevirtual |
|
overridevirtual |
Description: Low level archive writing tool used by ON_BinaryArchive::ReadObject(). Parameters: binary_archive - archive to read from Returns: Returns true if the read is successful. Remarks: Use ON_BinaryArchive::ReadObject() to read objects. This Read() function should read the objects definition back into its data members.
The default implementation of this virtual function returns false and does nothing.
Reimplemented from ON_Object.
|
overridevirtual |
reverse parameterization
Implements ON_Curve.
|
overridevirtual |
virtual ON_Object::SizeOf override
Reimplemented from ON_Curve.
|
overridevirtual |
number of smooth spans in curve
Implements ON_Curve.
|
overridevirtual |
(optional - default uses Transform for 2d and 3d objects)
Reimplemented from ON_Geometry.
|
overridevirtual |
Description: overrides virtual ON_Geometry::Transform(). ON_Curve::Transform() calls ON_Geometry::Transform(xform), which calls ON_Object::TransformUserData(xform), and then calls this->DestroyCurveTree(). Parameters: xform - [in] transformation to apply to object. Remarks: Classes derived from ON_Curve should call ON_Curve::Transform() to handle user data transformations and curve tree destruction and then transform their definition.
Reimplemented from ON_Curve.
|
overridevirtual |
Description: Low level archive writing tool used by ON_BinaryArchive::WriteObject(). Parameters: binary_archive - archive to write to Returns: Returns true if the write is successful. Remarks: Use ON_BinaryArchive::WriteObject() to write objects. This Write() function should just write the specific definition of this object. It should not write and any chunk typecode or length information.
The default implementation of this virtual function returns false and does nothing.
Reimplemented from ON_Object.
| ON_Curve* ON_CurveOnSurface::m_c2 |
Interface.
~ON_CurveOnSurface() deletes these classes. Use a ON_CurveProxy and/or ON_SurfaceProxy wrapper if you don't want the destructor to destroy the curves REQUIRED parameter space (2d) curve
| ON_Curve* ON_CurveOnSurface::m_c3 |
OPTIONAL 3d curve (approximation) to srf(crv2(t))
| ON_Surface* ON_CurveOnSurface::m_s |
1.8.17