Public Types | Public Member Functions | Private Member Functions
ON_Surface Class Reference

#include <opennurbs_surface.h>

Inheritance diagram for ON_Surface:
Inheritance graph
[legend]

List of all members.

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

ON_BrepBrepForm (ON_Brep *brep=NULL) 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 &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
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
ON_BOOL32 GetDomain (int dir, double *t0, double *t1) 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 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 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=ON_DEFAULT_ANGLE_TOLERANCE_COSINE, double curvature_tolerance=ON_SQRT_EPSILON) const
bool IsCylinder (ON_Cylinder *cylinder=NULL, double tolerance=ON_ZERO_TOLERANCE) 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_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
 ON_Surface ()
 ON_Surface (const ON_Surface &)
ON_Surfaceoperator= (const ON_Surface &)
ON_3dPoint PointAt (double, double) const
virtual ON_BOOL32 Reverse (int)=0
bool SetDomain (int dir, ON_Interval domain)
virtual ON_BOOL32 SetDomain (int dir, double t0, double t1)
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
virtual ON_BOOL32 Transpose ()=0
virtual ON_BOOL32 Trim (int dir, const ON_Interval &domain)
virtual ~ON_Surface ()

Private Member Functions

 ON_OBJECT_DECLARE (ON_Surface)

Detailed Description

Definition at line 44 of file opennurbs_surface.h.


Member Enumeration Documentation

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

Definition at line 21 of file opennurbs_surface.cpp.

Definition at line 25 of file opennurbs_surface.cpp.

ON_Surface::~ON_Surface ( ) [virtual]

Definition at line 49 of file opennurbs_surface.cpp.


Member Function Documentation

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

Reimplemented from ON_Geometry.

Reimplemented in ON_Extrusion.

Definition at line 1461 of file opennurbs_surface.cpp.

virtual int ON_Surface::Degree ( int  dir) const [pure virtual]
void ON_Surface::DestroyRuntimeCache ( bool  bDelete = true) [virtual]

Reimplemented from ON_Object.

Reimplemented in ON_BrepFace, ON_SurfaceProxy, ON_SumSurface, and ON_RevSurface.

Definition at line 1725 of file opennurbs_object.cpp.

Definition at line 1491 of file opennurbs_surface.cpp.

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

Reimplemented in ON_SurfaceProxy.

Definition at line 59 of file opennurbs_surface.cpp.

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

Definition at line 987 of file opennurbs_surface.cpp.

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

Definition at line 1042 of file opennurbs_surface.cpp.

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]
bool ON_Surface::EvaluatePoint ( const class ON_ObjRef objref,
ON_3dPoint P 
) const [virtual]

Reimplemented from ON_Geometry.

Definition at line 1110 of file opennurbs_curve.cpp.

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

Definition at line 1138 of file opennurbs_surface.cpp.

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

Definition at line 1119 of file opennurbs_surface.cpp.

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

Definition at line 1157 of file opennurbs_surface.cpp.

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

Definition at line 947 of file opennurbs_surface.cpp.

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

Reimplemented in ON_NurbsSurface, ON_SumSurface, ON_RevSurface, ON_PlaneSurface, and ON_Extrusion.

Definition at line 1264 of file opennurbs_surface.cpp.

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

Definition at line 927 of file opennurbs_surface.cpp.

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

Definition at line 69 of file opennurbs_surface.cpp.

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]
int ON_Surface::GetNurbForm ( ON_NurbsSurface nurbs_surface,
double  tolerance = 0.0 
) const [virtual]
bool ON_Surface::GetNurbFormParameterFromSurfaceParameter ( double  surface_s,
double  surface_t,
double *  nurbs_s,
double *  nurbs_t 
) const [virtual]

Reimplemented in ON_RevSurface, ON_SumSurface, ON_SurfaceProxy, and ON_Extrusion.

Definition at line 1309 of file opennurbs_surface.cpp.

ON_BOOL32 ON_Surface::GetParameterTolerance ( int  dir,
double  t,
double *  tminus,
double *  tplus 
) const [virtual]
virtual ON_BOOL32 ON_Surface::GetSpanVector ( int  dir,
double *  span_vector 
) const [pure 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.

Definition at line 113 of file opennurbs_surface.cpp.

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

Reimplemented in ON_RevSurface, ON_SumSurface, ON_SurfaceProxy, and ON_Extrusion.

Definition at line 1298 of file opennurbs_surface.cpp.

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

Reimplemented from ON_Geometry.

Definition at line 1456 of file opennurbs_surface.cpp.

int ON_Surface::HasNurbForm ( ) const [virtual]

Reimplemented in ON_RevSurface, ON_PlaneSurface, ON_SumSurface, ON_SurfaceProxy, and ON_Extrusion.

Definition at line 1293 of file opennurbs_surface.cpp.

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

Definition at line 894 of file opennurbs_surface.cpp.

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

Definition at line 820 of file opennurbs_surface.cpp.

ON_BOOL32 ON_Surface::IsClosed ( int  dir) const [virtual]
bool ON_Surface::IsCone ( ON_Cone cone = NULL,
double  tolerance = ON_ZERO_TOLERANCE 
) const

Definition at line 1881 of file opennurbs_revsurface.cpp.

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]
bool ON_Surface::IsCylinder ( ON_Cylinder cylinder = NULL,
double  tolerance = ON_ZERO_TOLERANCE 
) const

Definition at line 1777 of file opennurbs_revsurface.cpp.

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.

Definition at line 158 of file opennurbs_surface.cpp.

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

Reimplemented in ON_Extrusion, and ON_SurfaceProxy.

Definition at line 237 of file opennurbs_surface.cpp.

ON_Curve * ON_Surface::IsoCurve ( int  dir,
double  c 
) const [virtual]
ON_BOOL32 ON_Surface::IsPeriodic ( int  dir) const [virtual]
ON_BOOL32 ON_Surface::IsPlanar ( ON_Plane plane = NULL,
double  tolerance = ON_ZERO_TOLERANCE 
) const [virtual]
ON_BOOL32 ON_Surface::IsSingular ( int  side) const [virtual]
bool ON_Surface::IsSolid ( ) const

Reimplemented in ON_Extrusion.

Definition at line 803 of file opennurbs_surface.cpp.

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

Definition at line 1584 of file opennurbs_revsurface.cpp.

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

Definition at line 2019 of file opennurbs_revsurface.cpp.

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

Definition at line 920 of file opennurbs_surface.cpp.

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

Definition at line 1321 of file opennurbs_surface.cpp.

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

Reimplemented from ON_Object.

Reimplemented in ON_ClippingPlaneSurface, and ON_Extrusion.

Definition at line 64 of file opennurbs_surface.cpp.

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

Definition at line 42 of file opennurbs_surface.cpp.

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

Definition at line 912 of file opennurbs_surface.cpp.

virtual ON_BOOL32 ON_Surface::Reverse ( int  ) [pure virtual]
bool ON_Surface::SetDomain ( int  dir,
ON_Interval  domain 
)

Definition at line 89 of file opennurbs_surface.cpp.

ON_BOOL32 ON_Surface::SetDomain ( int  dir,
double  t0,
double  t1 
) [virtual]
unsigned int ON_Surface::SizeOf ( ) const [virtual]
virtual int ON_Surface::SpanCount ( int  dir) const [pure virtual]
ON_BOOL32 ON_Surface::Split ( int  dir,
double  c,
ON_Surface *&  west_or_south_side,
ON_Surface *&  east_or_north_side 
) const [virtual]

Reimplemented in ON_NurbsSurface, ON_SumSurface, ON_RevSurface, ON_PlaneSurface, and ON_Extrusion.

Definition at line 1273 of file opennurbs_surface.cpp.

virtual ON_BOOL32 ON_Surface::Transpose ( ) [pure virtual]
ON_BOOL32 ON_Surface::Trim ( int  dir,
const ON_Interval domain 
) [virtual]

Reimplemented in ON_NurbsSurface, ON_SumSurface, ON_RevSurface, ON_PlaneSurface, and ON_Extrusion.

Definition at line 1255 of file opennurbs_surface.cpp.


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


pcl
Author(s): Open Perception
autogenerated on Wed Aug 26 2015 15:38:52