QCAD
Open Source 2D CAD
Loading...
Searching...
No Matches
ON_Surface Class Referenceabstract

#include <opennurbs_surface.h>

Inheritance diagram for ON_Surface:
ON_Geometry ON_Object ON_Extrusion ON_NurbsSurface ON_PlaneSurface ON_RevSurface ON_SumSurface ON_SurfaceProxy ON_ClippingPlaneSurface ON_BrepFace ON_OffsetSurface

Public Types

enum  ISO {
  not_iso = 0 , x_iso = 1 , y_iso = 2 , W_iso = 3 ,
  S_iso = 4 , E_iso = 5 , N_iso = 6 , iso_count = 7
}
 

Public Member Functions

bool AreaMassProperties (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_BrepBrepForm (ON_Brep *brep=NULL) const
 
virtual ON_MeshCreateMesh (const ON_MeshParameters &mp, ON_Mesh *mesh=NULL) const
 
virtual ON_SurfaceTree * CreateSurfaceTree () const
 
virtual int Degree (int dir) const =0
 
void DestroyRuntimeCache (bool bDelete=true)
 
void DestroySurfaceTree ()
 
virtual ON_Interval Domain (int dir) const =0
 
virtual ON_SurfaceDuplicateSurface () const
 
ON_BOOL32 Ev1Der (double u, double v, ON_3dPoint &point, ON_3dVector &du, ON_3dVector &dv, int quadrant=0, int *hint=0) const
 
ON_BOOL32 Ev2Der (double u, double v, ON_3dPoint &point, ON_3dVector &du, ON_3dVector &dv, ON_3dVector &duu, ON_3dVector &duv, ON_3dVector &dvv, int quadrant=0, int *hint=0) const
 
virtual ON_BOOL32 Evaluate (double u, double v, int num_der, int array_stride, double *der_array, int quadrant=0, int *hint=0) const =0
 
bool EvaluatePoint (const class ON_ObjRef &objref, ON_3dPoint &P) const
 
ON_BOOL32 EvNormal (double u, double v, ON_3dPoint &point, ON_3dVector &du, ON_3dVector &dv, ON_3dVector &normal, int=0, int *=0) const
 
ON_BOOL32 EvNormal (double u, double v, ON_3dPoint &point, ON_3dVector &normal, int quadrant=0, int *hint=0) const
 
ON_BOOL32 EvNormal (double u, double v, ON_3dVector &normal, int quadrant=0, int *hint=0) const
 
ON_BOOL32 EvPoint (double u, double v, ON_3dPoint &point, int quadrant=0, int *hint=0) const
 
virtual bool Extend (int dir, const ON_Interval &domain)
 
ON_BOOL32 FrameAt (double u, double v, ON_Plane &frame) const
 
virtual bool GetClosestPoint (const ON_3dPoint &P, double *s, double *t, double maximum_distance=0.0, const ON_Interval *sdomain=0, const ON_Interval *tdomain=0) const
 
ON_BOOL32 GetDomain (int dir, double *t0, double *t1) const
 
virtual ON_BOOL32 GetLocalClosestPoint (const ON_3dPoint &, double, double, double *, double *, const ON_Interval *=NULL, const ON_Interval *=NULL) const
 
virtual bool GetNextDiscontinuity (int dir, ON::continuity c, double t0, double t1, double *t, int *hint=NULL, int *dtype=NULL, double cos_angle_tolerance=0.99984769515639123915701155881391, double curvature_tolerance=ON_SQRT_EPSILON) const
 
virtual int GetNurbForm (ON_NurbsSurface &nurbs_surface, double tolerance=0.0) const
 
virtual bool GetNurbFormParameterFromSurfaceParameter (double surface_s, double surface_t, double *nurbs_s, double *nurbs_t) const
 
virtual ON_BOOL32 GetParameterTolerance (int dir, double t, double *tminus, double *tplus) const
 
virtual ON_BOOL32 GetSpanVector (int dir, double *span_vector) const =0
 
virtual ON_BOOL32 GetSpanVectorIndex (int dir, double t, int side, int *span_vector_index, ON_Interval *span_interval) const
 
virtual bool GetSurfaceParameterFromNurbFormParameter (double nurbs_s, double nurbs_t, double *surface_s, double *surface_t) const
 
virtual ON_BOOL32 GetSurfaceSize (double *width, double *height) const
 
ON_BOOL32 HasBrepForm () const
 
virtual int HasNurbForm () const
 
int IntersectSurface (const ON_Surface *surfaceB, ON_ClassArray< ON_SSX_EVENT > &x, double intersection_tolerance=0.0, double overlap_tolerance=0.0, double fitting_tolerance=0.0, const ON_Interval *surfaceA_udomain=0, const ON_Interval *surfaceA_vdomain=0, const ON_Interval *surfaceB_udomain=0, const ON_Interval *surfaceB_vdomain=0) const
 
int IsAtSeam (double s, double t) const
 
bool IsAtSingularity (double s, double t, bool bExact=true) const
 
virtual ON_BOOL32 IsClosed (int) const
 
bool IsCone (ON_Cone *cone=NULL, double tolerance=ON_ZERO_TOLERANCE) const
 
virtual bool IsContinuous (ON::continuity c, double s, 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=0.99984769515639123915701155881391, double curvature_tolerance=ON_SQRT_EPSILON) const
 
bool IsCylinder (ON_Cylinder *cylinder=NULL, double tolerance=ON_ZERO_TOLERANCE) const
 
virtual ISO IsIsoparametric (const ON_BoundingBox &bbox) const
 
virtual ISO IsIsoparametric (const ON_Curve &curve, const ON_Interval *curve_domain=NULL) const
 
virtual ON_CurveIsoCurve (int dir, double c) const
 
virtual ON_BOOL32 IsPeriodic (int) const
 
virtual ON_BOOL32 IsPlanar (ON_Plane *plane=NULL, double tolerance=ON_ZERO_TOLERANCE) const
 
virtual ON_BOOL32 IsSingular (int) const
 
bool IsSolid () const
 
bool IsSphere (ON_Sphere *sphere=NULL, double tolerance=ON_ZERO_TOLERANCE) const
 
bool IsTorus (ON_Torus *torus=NULL, double tolerance=ON_ZERO_TOLERANCE) const
 
ON_3dVector NormalAt (double, double) const
 
ON_NurbsSurfaceNurbsSurface (ON_NurbsSurface *pNurbsSurface=NULL, double tolerance=0.0, const ON_Interval *s_subdomain=NULL, const ON_Interval *t_subdomain=NULL) const
 
ON::object_type ObjectType () const
 
virtual ON_SurfaceOffset (double offset_distance, double tolerance, double *max_deviation=NULL) const
 
 ON_Surface ()
 
 ON_Surface (const ON_Surface &)
 
ON_Surfaceoperator= (const ON_Surface &)
 
ON_3dPoint PointAt (double, double) const
 
virtual ON_CurvePullback (const ON_Curve &curve_3d, double tolerance, const ON_Interval *curve_3d_subdomain=NULL, ON_3dPoint start_uv=ON_UNSET_POINT, ON_3dPoint end_uv=ON_UNSET_POINT) const
 
virtual ON_CurvePushup (const ON_Curve &curve_2d, double tolerance, const ON_Interval *curve_2d_subdomain=NULL) const
 
virtual ON_BOOL32 Reverse (int)=0
 
virtual ON_BOOL32 SetDomain (int dir, double t0, double t1)
 
bool SetDomain (int dir, ON_Interval domain)
 
unsigned int SizeOf () const
 
virtual int SpanCount (int dir) const =0
 
virtual ON_BOOL32 Split (int dir, double c, ON_Surface *&west_or_south_side, ON_Surface *&east_or_north_side) const
 
const ON_SurfaceTree * SurfaceTree () const
 
virtual ON_BOOL32 Transpose ()=0
 
virtual ON_BOOL32 Trim (int dir, const ON_Interval &domain)
 
bool VolumeMassProperties (ON_MassProperties &mp, bool bVolume=true, bool bFirstMoments=true, bool bSecondMoments=true, bool bProductMoments=true, ON_3dPoint base_point=ON_UNSET_POINT, double rel_tol=1.0e-6, double abs_tol=1.0e-6) const
 
virtual ~ON_Surface ()
 
- Public Member Functions inherited from ON_Geometry
ON_BoundingBox BoundingBox () const
 
virtual void ClearBoundingBox ()
 
virtual ON_COMPONENT_INDEX ComponentIndex () const
 
virtual int Dimension () const =0
 
virtual ON_BOOL32 GetBBox (double *boxmin, double *boxmax, int bGrowBox=false) const =0
 
ON_BOOL32 GetBoundingBox (ON_3dPoint &bbox_min, ON_3dPoint &bbox_max, int bGrowBox=false) const
 
ON_BOOL32 GetBoundingBox (ON_BoundingBox &bbox, int bGrowBox=false) const
 
virtual bool GetTightBoundingBox (ON_BoundingBox &tight_bbox, int bGrowBox=false, const ON_Xform *xform=0) const
 
virtual bool IsDeformable () const
 
virtual bool IsMorphable () const
 
virtual bool MakeDeformable ()
 
virtual bool Morph (const ON_SpaceMorph &morph)
 
 ON_Geometry ()
 
 ON_Geometry (const ON_Geometry &)
 
ON_Geometryoperator= (const ON_Geometry &)
 
ON_BOOL32 Rotate (double rotation_angle, const ON_3dVector &rotation_axis, const ON_3dPoint &rotation_center)
 
ON_BOOL32 Rotate (double sin_angle, double cos_angle, const ON_3dVector &rotation_axis, const ON_3dPoint &rotation_center)
 
ON_BOOL32 Scale (double scale_factor)
 
virtual ON_BOOL32 SwapCoordinates (int i, int j)
 
virtual ON_BOOL32 Transform (const ON_Xform &xform)
 
ON_BOOL32 Translate (const ON_3dVector &translation_vector)
 
virtual ~ON_Geometry ()
 
- Public Member Functions inherited from ON_Object
ON_BOOL32 AttachUserData (ON_UserData *pUserData)
 
bool CopyFrom (const ON_Object *src)
 
void CopyUserData (const ON_Object &source_object)
 
virtual ON__UINT32 DataCRC (ON__UINT32 current_remainder) const
 
ON_BOOL32 DetachUserData (ON_UserData *pUserData)
 
virtual void Dump (ON_TextLog &) const
 
ON_UserDataFirstUserData () const
 
ON_UserDataGetUserData (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
 
ON_BOOL32 IsKindOf (const ON_ClassId *pClassId) const
 
virtual ON_BOOL32 IsValid (ON_TextLog *text_log=NULL) const =0
 
virtual void MemoryRelocate ()
 
virtual ON_UUID ModelObjectId () const
 
void MoveUserData (ON_Object &source_object)
 
 ON_Object ()
 
 ON_Object (const ON_Object &)
 
ON_Objectoperator= (const ON_Object &)
 
void PurgeUserData ()
 
virtual ON_BOOL32 Read (ON_BinaryArchive &binary_archive)
 
bool SetUserString (const wchar_t *key, const wchar_t *string_value)
 
void TransformUserData (const ON_Xform &xform)
 
virtual ON_BOOL32 Write (ON_BinaryArchive &binary_archive) const
 
virtual ~ON_Object ()
 

Static Public Member Functions

static class ON_NurbsSurfaceCreateCubicLoft (int curve_count, const ON_Curve *const *curve_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_NurbsSurface *nurbs_surface=0)
 

Protected Member Functions

ON_CurvePullbackCurveProxy (const ON_CurveProxy &curveproxy_3d, double tolerance, const ON_Interval *curve_3d_subdomain, ON_3dPoint start_uv, ON_3dPoint end_uv) const
 
ON_CurvePullbackPolyCurve (const ON_PolyCurve &polycurve_3d, double tolerance, const ON_Interval *curve_3d_subdomain, ON_3dPoint start_uv, ON_3dPoint end_uv) const
 
ON_CurvePushupCurveProxy (const ON_CurveProxy &curveproxy_2d, double tolerance, const ON_Interval *curve_2d_subdomain) const
 
ON_CurvePushupPolyCurve (const ON_PolyCurve &polycurve_2d, double tolerance, const ON_Interval *curve_2d_subdomain) const
 

Protected Attributes

ON_SurfaceTree * m_stree
 

Private Member Functions

 ON_OBJECT_DECLARE (ON_Surface)
 

Additional Inherited Members

- Public Attributes inherited from ON_Object
ON_MEMORY_POOLm_mempool
 

Member Enumeration Documentation

◆ ISO

Enumerator
not_iso 
x_iso 
y_iso 
W_iso 
S_iso 
E_iso 
N_iso 
iso_count 

Constructor & Destructor Documentation

◆ ON_Surface() [1/2]

ON_Surface::ON_Surface ( )

◆ ON_Surface() [2/2]

ON_Surface::ON_Surface ( const ON_Surface & src)

◆ ~ON_Surface()

ON_Surface::~ON_Surface ( )
virtual

Member Function Documentation

◆ AreaMassProperties()

bool ON_Surface::AreaMassProperties ( 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

◆ BrepForm()

ON_Brep * ON_Surface::BrepForm ( ON_Brep * brep = NULL) const
virtual

Reimplemented from ON_Geometry.

◆ CreateCubicLoft()

class ON_NurbsSurface * ON_Surface::CreateCubicLoft ( int curve_count,
const ON_Curve *const * curve_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_NurbsSurface * nurbs_surface = 0 )
static

◆ CreateMesh()

ON_Mesh * ON_Surface::CreateMesh ( const ON_MeshParameters & mp,
ON_Mesh * mesh = NULL ) const
virtual

◆ CreateSurfaceTree()

ON_SurfaceTree * ON_Surface::CreateSurfaceTree ( ) const
virtual

◆ Degree()

virtual int ON_Surface::Degree ( int dir) const
pure virtual

◆ DestroyRuntimeCache()

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

Reimplemented from ON_Object.

Reimplemented in ON_SurfaceProxy.

◆ DestroySurfaceTree()

void ON_Surface::DestroySurfaceTree ( )

◆ Domain()

virtual ON_Interval ON_Surface::Domain ( int dir) const
pure virtual

◆ DuplicateSurface()

ON_Surface * ON_Surface::DuplicateSurface ( ) const
virtual

Reimplemented in ON_SurfaceProxy.

◆ Ev1Der()

ON_BOOL32 ON_Surface::Ev1Der ( double u,
double v,
ON_3dPoint & point,
ON_3dVector & du,
ON_3dVector & dv,
int quadrant = 0,
int * hint = 0 ) const

◆ Ev2Der()

ON_BOOL32 ON_Surface::Ev2Der ( double u,
double v,
ON_3dPoint & point,
ON_3dVector & du,
ON_3dVector & dv,
ON_3dVector & duu,
ON_3dVector & duv,
ON_3dVector & dvv,
int quadrant = 0,
int * hint = 0 ) const

◆ Evaluate()

virtual ON_BOOL32 ON_Surface::Evaluate ( double u,
double v,
int num_der,
int array_stride,
double * der_array,
int quadrant = 0,
int * hint = 0 ) const
pure virtual

◆ EvaluatePoint()

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

Reimplemented from ON_Geometry.

◆ EvNormal() [1/3]

ON_BOOL32 ON_Surface::EvNormal ( double u,
double v,
ON_3dPoint & point,
ON_3dVector & du,
ON_3dVector & dv,
ON_3dVector & normal,
int side = 0,
int * hint = 0 ) const

◆ EvNormal() [2/3]

ON_BOOL32 ON_Surface::EvNormal ( double u,
double v,
ON_3dPoint & point,
ON_3dVector & normal,
int quadrant = 0,
int * hint = 0 ) const

◆ EvNormal() [3/3]

ON_BOOL32 ON_Surface::EvNormal ( double u,
double v,
ON_3dVector & normal,
int quadrant = 0,
int * hint = 0 ) const

◆ EvPoint()

ON_BOOL32 ON_Surface::EvPoint ( double u,
double v,
ON_3dPoint & point,
int quadrant = 0,
int * hint = 0 ) const

◆ Extend()

bool ON_Surface::Extend ( int dir,
const ON_Interval & domain )
virtual

◆ FrameAt()

ON_BOOL32 ON_Surface::FrameAt ( double u,
double v,
ON_Plane & frame ) const

◆ GetClosestPoint()

bool ON_Surface::GetClosestPoint ( const ON_3dPoint & P,
double * s,
double * t,
double maximum_distance = 0.0,
const ON_Interval * sdomain = 0,
const ON_Interval * tdomain = 0 ) const
virtual

◆ GetDomain()

ON_BOOL32 ON_Surface::GetDomain ( int dir,
double * t0,
double * t1 ) const

◆ GetLocalClosestPoint()

ON_BOOL32 ON_Surface::GetLocalClosestPoint ( const ON_3dPoint & ,
double ,
double ,
double * ,
double * ,
const ON_Interval * = NULL,
const ON_Interval * = NULL ) const
virtual

Reimplemented in ON_Extrusion, ON_PlaneSurface, and ON_SurfaceProxy.

◆ GetNextDiscontinuity()

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

◆ GetNurbForm()

int ON_Surface::GetNurbForm ( ON_NurbsSurface & nurbs_surface,
double tolerance = 0.0 ) const
virtual

◆ GetNurbFormParameterFromSurfaceParameter()

bool ON_Surface::GetNurbFormParameterFromSurfaceParameter ( double surface_s,
double surface_t,
double * nurbs_s,
double * nurbs_t ) const
virtual

◆ GetParameterTolerance()

ON_BOOL32 ON_Surface::GetParameterTolerance ( int dir,
double t,
double * tminus,
double * tplus ) const
virtual

◆ GetSpanVector()

virtual ON_BOOL32 ON_Surface::GetSpanVector ( int dir,
double * span_vector ) const
pure virtual

◆ GetSpanVectorIndex()

ON_BOOL32 ON_Surface::GetSpanVectorIndex ( int dir,
double t,
int side,
int * span_vector_index,
ON_Interval * span_interval ) const
virtual

Reimplemented in ON_Extrusion.

◆ GetSurfaceParameterFromNurbFormParameter()

bool ON_Surface::GetSurfaceParameterFromNurbFormParameter ( double nurbs_s,
double nurbs_t,
double * surface_s,
double * surface_t ) const
virtual

◆ GetSurfaceSize()

ON_BOOL32 ON_Surface::GetSurfaceSize ( double * width,
double * height ) const
virtual

◆ HasBrepForm()

ON_BOOL32 ON_Surface::HasBrepForm ( ) const
virtual

Reimplemented from ON_Geometry.

◆ HasNurbForm()

int ON_Surface::HasNurbForm ( ) const
virtual

◆ IntersectSurface()

int ON_Surface::IntersectSurface ( const ON_Surface * surfaceB,
ON_ClassArray< ON_SSX_EVENT > & x,
double intersection_tolerance = 0.0,
double overlap_tolerance = 0.0,
double fitting_tolerance = 0.0,
const ON_Interval * surfaceA_udomain = 0,
const ON_Interval * surfaceA_vdomain = 0,
const ON_Interval * surfaceB_udomain = 0,
const ON_Interval * surfaceB_vdomain = 0 ) const

◆ IsAtSeam()

int ON_Surface::IsAtSeam ( double s,
double t ) const

◆ IsAtSingularity()

bool ON_Surface::IsAtSingularity ( double s,
double t,
bool bExact = true ) const

◆ IsClosed()

ON_BOOL32 ON_Surface::IsClosed ( int dir) const
virtual

◆ IsCone()

bool ON_Surface::IsCone ( ON_Cone * cone = NULL,
double tolerance = ON_ZERO_TOLERANCE ) const

◆ IsContinuous()

bool ON_Surface::IsContinuous ( ON::continuity c,
double s,
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 = 0.99984769515639123915701155881391,
double curvature_tolerance = ON_SQRT_EPSILON ) const
virtual

◆ IsCylinder()

bool ON_Surface::IsCylinder ( ON_Cylinder * cylinder = NULL,
double tolerance = ON_ZERO_TOLERANCE ) const

◆ IsIsoparametric() [1/2]

ON_Surface::ISO ON_Surface::IsIsoparametric ( const ON_BoundingBox & bbox) const
virtual

Reimplemented in ON_Extrusion, and ON_SurfaceProxy.

◆ IsIsoparametric() [2/2]

ON_Surface::ISO ON_Surface::IsIsoparametric ( const ON_Curve & curve,
const ON_Interval * curve_domain = NULL ) const
virtual

Reimplemented in ON_Extrusion, and ON_SurfaceProxy.

◆ IsoCurve()

ON_Curve * ON_Surface::IsoCurve ( int dir,
double c ) const
virtual

◆ IsPeriodic()

ON_BOOL32 ON_Surface::IsPeriodic ( int dir) const
virtual

◆ IsPlanar()

ON_BOOL32 ON_Surface::IsPlanar ( ON_Plane * plane = NULL,
double tolerance = ON_ZERO_TOLERANCE ) const
virtual

◆ IsSingular()

ON_BOOL32 ON_Surface::IsSingular ( int side) const
virtual

◆ IsSolid()

bool ON_Surface::IsSolid ( ) const

◆ IsSphere()

bool ON_Surface::IsSphere ( ON_Sphere * sphere = NULL,
double tolerance = ON_ZERO_TOLERANCE ) const

◆ IsTorus()

bool ON_Surface::IsTorus ( ON_Torus * torus = NULL,
double tolerance = ON_ZERO_TOLERANCE ) const

◆ NormalAt()

ON_3dVector ON_Surface::NormalAt ( double s,
double t ) const

◆ NurbsSurface()

ON_NurbsSurface * ON_Surface::NurbsSurface ( ON_NurbsSurface * pNurbsSurface = NULL,
double tolerance = 0.0,
const ON_Interval * s_subdomain = NULL,
const ON_Interval * t_subdomain = NULL ) const

◆ ObjectType()

ON::object_type ON_Surface::ObjectType ( ) const
virtual

Reimplemented from ON_Object.

◆ Offset()

ON_Surface * ON_Surface::Offset ( double offset_distance,
double tolerance,
double * max_deviation = NULL ) const
virtual

◆ ON_OBJECT_DECLARE()

ON_Surface::ON_OBJECT_DECLARE ( ON_Surface )
private

◆ operator=()

ON_Surface & ON_Surface::operator= ( const ON_Surface & src)

◆ PointAt()

ON_3dPoint ON_Surface::PointAt ( double s,
double t ) const

◆ Pullback()

ON_Curve * ON_Surface::Pullback ( const ON_Curve & curve_3d,
double tolerance,
const ON_Interval * curve_3d_subdomain = NULL,
ON_3dPoint start_uv = ON_UNSET_POINT,
ON_3dPoint end_uv = ON_UNSET_POINT ) const
virtual

Reimplemented in ON_PlaneSurface, and ON_SurfaceProxy.

◆ PullbackCurveProxy()

ON_Curve * ON_Surface::PullbackCurveProxy ( const ON_CurveProxy & curveproxy_3d,
double tolerance,
const ON_Interval * curve_3d_subdomain,
ON_3dPoint start_uv,
ON_3dPoint end_uv ) const
protected

◆ PullbackPolyCurve()

ON_Curve * ON_Surface::PullbackPolyCurve ( const ON_PolyCurve & polycurve_3d,
double tolerance,
const ON_Interval * curve_3d_subdomain,
ON_3dPoint start_uv,
ON_3dPoint end_uv ) const
protected

◆ Pushup()

ON_Curve * ON_Surface::Pushup ( const ON_Curve & curve_2d,
double tolerance,
const ON_Interval * curve_2d_subdomain = NULL ) const
virtual

Reimplemented in ON_PlaneSurface, and ON_SurfaceProxy.

◆ PushupCurveProxy()

ON_Curve * ON_Surface::PushupCurveProxy ( const ON_CurveProxy & curveproxy_2d,
double tolerance,
const ON_Interval * curve_2d_subdomain ) const
protected

◆ PushupPolyCurve()

ON_Curve * ON_Surface::PushupPolyCurve ( const ON_PolyCurve & polycurve_2d,
double tolerance,
const ON_Interval * curve_2d_subdomain ) const
protected

◆ Reverse()

virtual ON_BOOL32 ON_Surface::Reverse ( int )
pure virtual

◆ SetDomain() [1/2]

ON_BOOL32 ON_Surface::SetDomain ( int dir,
double t0,
double t1 )
virtual

◆ SetDomain() [2/2]

bool ON_Surface::SetDomain ( int dir,
ON_Interval domain )

◆ SizeOf()

unsigned int ON_Surface::SizeOf ( ) const
virtual

Reimplemented from ON_Object.

Reimplemented in ON_SurfaceProxy.

◆ SpanCount()

virtual int ON_Surface::SpanCount ( int dir) const
pure virtual

◆ Split()

ON_BOOL32 ON_Surface::Split ( int dir,
double c,
ON_Surface *& west_or_south_side,
ON_Surface *& east_or_north_side ) const
virtual

◆ SurfaceTree()

const ON_SurfaceTree * ON_Surface::SurfaceTree ( ) const

◆ Transpose()

virtual ON_BOOL32 ON_Surface::Transpose ( )
pure virtual

◆ Trim()

ON_BOOL32 ON_Surface::Trim ( int dir,
const ON_Interval & domain )
virtual

◆ VolumeMassProperties()

bool ON_Surface::VolumeMassProperties ( ON_MassProperties & mp,
bool bVolume = true,
bool bFirstMoments = true,
bool bSecondMoments = true,
bool bProductMoments = true,
ON_3dPoint base_point = ON_UNSET_POINT,
double rel_tol = 1.0e-6,
double abs_tol = 1.0e-6 ) const

Member Data Documentation

◆ m_stree

ON_SurfaceTree* ON_Surface::m_stree
protected

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