Point Cloud Library (PCL)  1.14.1-dev
List of all members | Public Types | Public Member Functions
ON_Surface Class Referenceabstract

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

+ Inheritance diagram for ON_Surface:
+ Collaboration diagram for ON_Surface:

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

void DestroyRuntimeCache (bool bDelete=true)
 
 ON_Surface ()
 
 ON_Surface (const ON_Surface &)
 
ON_Surfaceoperator= (const ON_Surface &)
 
virtual ~ON_Surface ()
 
unsigned int SizeOf () const
 
bool EvaluatePoint (const class ON_ObjRef &objref, ON_3dPoint &P) const
 
virtual ON_SurfaceDuplicateSurface () const
 
ON::object_type ObjectType () const
 
ON_BOOL32 HasBrepForm () const
 
ON_BrepBrepForm (ON_Brep *brep=NULL) const
 
ON_BOOL32 GetDomain (int dir, double *t0, double *t1) const
 
bool SetDomain (int dir, ON_Interval domain)
 
virtual ON_BOOL32 SetDomain (int dir, double t0, double t1)
 
virtual ON_Interval Domain (int dir) const =0
 
virtual ON_BOOL32 GetSurfaceSize (double *width, double *height) const
 
virtual int SpanCount (int dir) const =0
 
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 int Degree (int dir) const =0
 
virtual ON_BOOL32 GetParameterTolerance (int dir, double t, double *tminus, double *tplus) const
 
virtual ISO IsIsoparametric (const ON_Curve &curve, const ON_Interval *curve_domain=NULL) const
 
virtual ISO IsIsoparametric (const ON_BoundingBox &bbox) const
 
virtual ON_BOOL32 IsPlanar (ON_Plane *plane=NULL, double tolerance=ON_ZERO_TOLERANCE) const
 
bool IsSphere (ON_Sphere *sphere=NULL, double tolerance=ON_ZERO_TOLERANCE) const
 
bool IsCylinder (ON_Cylinder *cylinder=NULL, double tolerance=ON_ZERO_TOLERANCE) const
 
bool IsCone (ON_Cone *cone=NULL, double tolerance=ON_ZERO_TOLERANCE) const
 
bool IsTorus (ON_Torus *torus=NULL, double tolerance=ON_ZERO_TOLERANCE) const
 
virtual ON_BOOL32 IsClosed (int) const
 
virtual ON_BOOL32 IsPeriodic (int) const
 
virtual ON_BOOL32 IsSingular (int) const
 
bool IsSolid () const
 
bool IsAtSingularity (double s, double t, bool bExact=true) const
 
int IsAtSeam (double s, double t) 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=ON_DEFAULT_ANGLE_TOLERANCE_COSINE, double curvature_tolerance=ON_SQRT_EPSILON) 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=ON_DEFAULT_ANGLE_TOLERANCE_COSINE, double curvature_tolerance=ON_SQRT_EPSILON) const
 
virtual ON_BOOL32 Reverse (int)=0
 
virtual ON_BOOL32 Transpose ()=0
 
ON_3dPoint PointAt (double, double) const
 
ON_3dVector NormalAt (double, double) const
 
ON_BOOL32 FrameAt (double u, double v, ON_Plane &frame) const
 
ON_BOOL32 EvPoint (double u, double v, ON_3dPoint &point, int quadrant=0, int *hint=0) 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
 
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 EvNormal (double u, double v, ON_3dPoint &point, ON_3dVector &du, ON_3dVector &dv, ON_3dVector &normal, int=0, int *=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
 
virtual ON_CurveIsoCurve (int dir, double c) const
 
virtual ON_BOOL32 Trim (int dir, const ON_Interval &domain)
 
virtual bool Extend (int dir, const ON_Interval &domain)
 
virtual ON_BOOL32 Split (int dir, double c, ON_Surface *&west_or_south_side, ON_Surface *&east_or_north_side) const
 
virtual int GetNurbForm (ON_NurbsSurface &nurbs_surface, double tolerance=0.0) const
 
virtual int HasNurbForm () const
 
ON_NurbsSurfaceNurbsSurface (ON_NurbsSurface *pNurbsSurface=NULL, double tolerance=0.0, const ON_Interval *s_subdomain=NULL, const ON_Interval *t_subdomain=NULL) const
 
virtual bool GetSurfaceParameterFromNurbFormParameter (double nurbs_s, double nurbs_t, double *surface_s, double *surface_t) const
 
virtual bool GetNurbFormParameterFromSurfaceParameter (double surface_s, double surface_t, double *nurbs_s, double *nurbs_t) const
 
void DestroySurfaceTree ()
 
- 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 int Dimension () const =0
 
virtual ON_BOOL32 GetBBox (double *boxmin, double *boxmax, int bGrowBox=false) const =0
 
virtual bool GetTightBoundingBox (ON_BoundingBox &tight_bbox, int bGrowBox=false, const ON_Xform *xform=0) const
 
virtual void ClearBoundingBox ()
 
virtual ON_BOOL32 Transform (const ON_Xform &xform)
 
virtual bool IsDeformable () const
 
virtual bool MakeDeformable ()
 
virtual ON_BOOL32 SwapCoordinates (int i, int j)
 
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_BOOL32 IsValid (ON_TextLog *text_log=NULL) const =0
 
virtual void Dump (ON_TextLog &) const
 
virtual ON__UINT32 DataCRC (ON__UINT32 current_remainder) const
 
virtual ON_BOOL32 Write (ON_BinaryArchive &binary_archive) const
 
virtual ON_BOOL32 Read (ON_BinaryArchive &binary_archive)
 
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)
 

Detailed Description

Definition at line 44 of file opennurbs_surface.h.

Member Enumeration Documentation

◆ ISO

Enumerator
not_iso 
x_iso 
y_iso 
W_iso 
S_iso 
E_iso 
N_iso 
iso_count 

Definition at line 59 of file opennurbs_surface.h.

Constructor & Destructor Documentation

◆ ON_Surface() [1/2]

ON_Surface::ON_Surface ( )

◆ ON_Surface() [2/2]

ON_Surface::ON_Surface ( const ON_Surface )

◆ ~ON_Surface()

virtual ON_Surface::~ON_Surface ( )
virtual

Member Function Documentation

◆ BrepForm()

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

Reimplemented from ON_Geometry.

◆ 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()

virtual 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  = 0,
int *  = 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()

virtual 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

◆ GetDomain()

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

◆ GetNextDiscontinuity()

virtual 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 = ON_DEFAULT_ANGLE_TOLERANCE_COSINE,
double  curvature_tolerance = ON_SQRT_EPSILON 
) const
virtual

◆ GetNurbForm()

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

◆ GetNurbFormParameterFromSurfaceParameter()

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

◆ GetParameterTolerance()

virtual 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()

virtual 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()

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

◆ GetSurfaceSize()

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

◆ HasBrepForm()

ON_BOOL32 ON_Surface::HasBrepForm ( ) const
virtual

Reimplemented from ON_Geometry.

◆ HasNurbForm()

virtual int ON_Surface::HasNurbForm ( ) const
virtual

◆ IsAtSeam()

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

◆ IsAtSingularity()

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

◆ IsClosed()

virtual ON_BOOL32 ON_Surface::IsClosed ( int  ) const
virtual

◆ IsCone()

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

◆ IsContinuous()

virtual 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 = ON_DEFAULT_ANGLE_TOLERANCE_COSINE,
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]

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

Reimplemented in ON_SurfaceProxy, and ON_Extrusion.

◆ IsIsoparametric() [2/2]

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

Reimplemented in ON_SurfaceProxy, and ON_Extrusion.

◆ IsoCurve()

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

◆ IsPeriodic()

virtual ON_BOOL32 ON_Surface::IsPeriodic ( int  ) const
virtual

◆ IsPlanar()

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

◆ IsSingular()

virtual ON_BOOL32 ON_Surface::IsSingular ( int  ) 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  ,
double   
) 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.

◆ operator=()

ON_Surface& ON_Surface::operator= ( const ON_Surface )

◆ PointAt()

ON_3dPoint ON_Surface::PointAt ( double  ,
double   
) const

◆ Reverse()

virtual ON_BOOL32 ON_Surface::Reverse ( int  )
pure virtual

◆ SetDomain() [1/2]

virtual 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()

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

◆ Transpose()

virtual ON_BOOL32 ON_Surface::Transpose ( )
pure virtual

◆ Trim()

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

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