Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Private Member Functions
ON_Extrusion Class Reference

#include <opennurbs_beam.h>

Inheritance diagram for ON_Extrusion:
Inheritance graph
[legend]

List of all members.

Public Member Functions

bool AddInnerProfile (ON_Curve *inner_profile)
ON_BrepBrepForm (ON_Brep *brep=NULL) const
ON_BrepBrepForm (ON_Brep *brep, bool bSmoothFaces) const
int CapCount () const
ON__UINT32 DataCRC (ON__UINT32 current_remainder) const
int Degree (int dir) const
void Destroy ()
int Dimension () const
ON_Interval Domain (int dir) const
void Dump (ON_TextLog &) const
ON_BOOL32 Evaluate (double u, double v, int num_der, int array_stride, double *der_array, int quadrant=0, int *hint=0) const
bool Extend (int dir, const ON_Interval &domain)
ON_DEPRECATED int FaceCount () const
ON_BOOL32 GetBBox (double *boxmin, double *boxmax, int bGrowBox=false) const
bool GetBrepFormComponentIndex (ON_COMPONENT_INDEX extrusion_ci, ON_COMPONENT_INDEX &brep_ci) const
bool GetBrepFormComponentIndex (ON_COMPONENT_INDEX extrusion_ci, double extrusion_profile_parameter, const ON_Brep &brep_form, ON_COMPONENT_INDEX &brep_ci) const
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 GetLocalClosestPoint (const ON_3dPoint &, double, double, double *, double *, const ON_Interval *=NULL, const ON_Interval *=NULL) const
void GetMiterPlaneNormal (int end, ON_3dVector &N) const
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
int GetNurbForm (ON_NurbsSurface &nurbs_surface, double tolerance=0.0) const
bool GetNurbFormParameterFromSurfaceParameter (double surface_s, double surface_t, double *nurbs_s, double *nurbs_t) const
ON_BOOL32 GetParameterTolerance (int dir, double t, double *tminus, double *tplus) const
bool GetPathPlane (double s, ON_Plane &plane) const
int GetProfileCurves (ON_SimpleArray< const ON_Curve * > &profile_curves) const
int GetProfileKinkParameters (int profile_index, ON_SimpleArray< double > &profile_kink_parameters) const
bool GetProfilePlane (double s, ON_Plane &plane) const
bool GetProfileTransformation (double s, ON_Xform &xform) const
ON_BOOL32 GetSpanVector (int dir, double *span_vector) const
ON_BOOL32 GetSpanVectorIndex (int dir, double t, int side, int *span_vector_index, ON_Interval *span_interval) const
bool GetSurfaceParameterFromNurbFormParameter (double nurbs_s, double nurbs_t, double *surface_s, double *surface_t) const
ON_BOOL32 GetSurfaceSize (double *width, double *height) const
bool GetTightBoundingBox (ON_BoundingBox &tight_bbox, int bGrowBox=false, const ON_Xform *xform=0) const
int HasNurbForm () const
int IsCapped () const
ON_BOOL32 IsClosed (int) const
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
ISO IsIsoparametric (const ON_Curve &curve, const ON_Interval *curve_domain=NULL) const
ISO IsIsoparametric (const ON_BoundingBox &bbox) const
int IsMitered () const
ON_CurveIsoCurve (int dir, double c) const
ON_BOOL32 IsPeriodic (int) const
ON_BOOL32 IsPlanar (ON_Plane *plane=NULL, double tolerance=ON_ZERO_TOLERANCE) const
bool IsSolid () const
ON_BOOL32 IsValid (ON_TextLog *text_log=NULL) const
ON::object_type ObjectType () const
 ON_Extrusion ()
 ON_Extrusion (const ON_Extrusion &src)
ON_Extrusionoperator= (const ON_Extrusion &)
ON_3dPoint PathEnd () const
ON_LineCurvePathLineCurve (ON_LineCurve *line_curve) const
int PathParameter () const
ON_3dPoint PathStart () const
ON_3dVector PathTangent () const
const ON_PolyCurvePolyProfile () const
const ON_CurveProfile (int profile_index) const
ON_CurveProfile3d (int profile_index, double s) const
ON_CurveProfile3d (ON_COMPONENT_INDEX ci) const
int ProfileCount () const
int ProfileIndex (double profile_parameter) const
bool ProfileIsKinked (int profile_index) const
int ProfileParameter () const
int ProfileSmoothSegmentCount (int profile_index) const
ON_BOOL32 Read (ON_BinaryArchive &binary_archive)
ON_BOOL32 Reverse (int dir)
ON_BOOL32 SetDomain (int dir, double t0, double t1)
bool SetMiterPlaneNormal (ON_3dVector N, int end)
bool SetOuterProfile (ON_Curve *outer_profile, bool bCap)
bool SetPath (ON_3dPoint A, ON_3dPoint B)
bool SetPathAndUp (ON_3dPoint A, ON_3dPoint B, ON_3dVector up)
unsigned int SizeOf () const
int SpanCount (int dir) const
ON_BOOL32 Split (int dir, double c, ON_Surface *&west_or_south_side, ON_Surface *&east_or_north_side) const
ON_SumSurfaceSumSurfaceForm (ON_SumSurface *sum_surface) const
ON_BOOL32 Transform (const ON_Xform &xform)
ON_BOOL32 Transpose ()
ON_BOOL32 Trim (int dir, const ON_Interval &domain)
ON_CurveWallEdge (ON_COMPONENT_INDEX ci) const
ON_SurfaceWallSurface (ON_COMPONENT_INDEX ci) const
ON_BOOL32 Write (ON_BinaryArchive &binary_archive) const
 ~ON_Extrusion ()

Static Public Member Functions

static bool CleanupPolyCurveProfile (ON_PolyCurve &polycurve)
static ON_ExtrusionCreateFrom3dCurve (const ON_Curve &curve, const ON_Plane *plane, double height, bool bCap, ON_Extrusion *extrusion=0)
static ON_ExtrusionCylinder (const ON_Cylinder &cylinder, bool bCapBottom, bool bCapTop, ON_Extrusion *extrusion=0)
static bool IsValidPolyCurveProfile (const ON_PolyCurve &polycurve, ON_TextLog *text_log=0)
static ON_ExtrusionPipe (const ON_Cylinder &cylinder, double other_radius, bool bCapBottom, bool bCapTop, ON_Extrusion *extrusion=0)

Public Attributes

bool m_bCap [2]
bool m_bHaveN [2]
bool m_bTransposed
ON_3dVector m_N [2]
ON_Line m_path
ON_Interval m_path_domain
ON_Curvem_profile
int m_profile_count
ON_Interval m_t
ON_3dVector m_up

Static Public Attributes

static const double m_Nz_min = 1.0/64.0
static const double m_path_length_min = ON_ZERO_TOLERANCE

Private Member Functions

 ON_OBJECT_DECLARE (ON_Extrusion)

Detailed Description

Definition at line 36 of file opennurbs_beam.h.


Constructor & Destructor Documentation

Definition at line 1153 of file opennurbs_beam.cpp.

Definition at line 1158 of file opennurbs_beam.cpp.

Definition at line 1163 of file opennurbs_beam.cpp.


Member Function Documentation

bool ON_Extrusion::AddInnerProfile ( ON_Curve inner_profile)

Definition at line 832 of file opennurbs_beam.cpp.

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

Reimplemented from ON_Surface.

Definition at line 2245 of file opennurbs_beam.cpp.

ON_Brep * ON_Extrusion::BrepForm ( ON_Brep brep,
bool  bSmoothFaces 
) const

Definition at line 2550 of file opennurbs_beam.cpp.

int ON_Extrusion::CapCount ( ) const

Definition at line 473 of file opennurbs_beam.cpp.

bool ON_Extrusion::CleanupPolyCurveProfile ( ON_PolyCurve polycurve) [static]

Definition at line 92 of file opennurbs_beam.cpp.

ON_Extrusion * ON_Extrusion::CreateFrom3dCurve ( const ON_Curve curve,
const ON_Plane plane,
double  height,
bool  bCap,
ON_Extrusion extrusion = 0 
) [static]

Definition at line 4408 of file opennurbs_beam.cpp.

ON_Extrusion * ON_Extrusion::Cylinder ( const ON_Cylinder cylinder,
bool  bCapBottom,
bool  bCapTop,
ON_Extrusion extrusion = 0 
) [static]

Definition at line 4263 of file opennurbs_beam.cpp.

ON__UINT32 ON_Extrusion::DataCRC ( ON__UINT32  current_remainder) const [virtual]

Reimplemented from ON_Object.

Definition at line 1369 of file opennurbs_beam.cpp.

int ON_Extrusion::Degree ( int  dir) const [virtual]

Implements ON_Surface.

Definition at line 3306 of file opennurbs_beam.cpp.

Definition at line 418 of file opennurbs_beam.cpp.

int ON_Extrusion::Dimension ( ) const [virtual]

Implements ON_Geometry.

Definition at line 1524 of file opennurbs_beam.cpp.

ON_Interval ON_Extrusion::Domain ( int  dir) const [virtual]

Implements ON_Surface.

Definition at line 3186 of file opennurbs_beam.cpp.

void ON_Extrusion::Dump ( ON_TextLog text_log) const [virtual]

Reimplemented from ON_Object.

Definition at line 1324 of file opennurbs_beam.cpp.

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

Implements ON_Surface.

Definition at line 3515 of file opennurbs_beam.cpp.

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

Reimplemented from ON_Surface.

Definition at line 3822 of file opennurbs_beam.cpp.

int ON_Extrusion::FaceCount ( ) const

Definition at line 517 of file opennurbs_beam.cpp.

ON_BOOL32 ON_Extrusion::GetBBox ( double *  boxmin,
double *  boxmax,
int  bGrowBox = false 
) const [virtual]

Implements ON_Geometry.

Definition at line 1571 of file opennurbs_beam.cpp.

bool ON_Extrusion::GetBrepFormComponentIndex ( ON_COMPONENT_INDEX  extrusion_ci,
ON_COMPONENT_INDEX &  brep_ci 
) const

Definition at line 2956 of file opennurbs_beam.cpp.

bool ON_Extrusion::GetBrepFormComponentIndex ( ON_COMPONENT_INDEX  extrusion_ci,
double  extrusion_profile_parameter,
const ON_Brep brep_form,
ON_COMPONENT_INDEX &  brep_ci 
) const

Definition at line 3057 of file opennurbs_beam.cpp.

bool ON_Extrusion::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 ON_Extrusion::GetLocalClosestPoint ( const ON_3dPoint ,
double  ,
double  ,
double *  ,
double *  ,
const ON_Interval = NULL,
const ON_Interval = NULL 
) const
void ON_Extrusion::GetMiterPlaneNormal ( int  end,
ON_3dVector N 
) const

Definition at line 455 of file opennurbs_beam.cpp.

bool ON_Extrusion::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]

Reimplemented from ON_Surface.

Definition at line 3400 of file opennurbs_beam.cpp.

int ON_Extrusion::GetNurbForm ( ON_NurbsSurface nurbs_surface,
double  tolerance = 0.0 
) const [virtual]

Reimplemented from ON_Surface.

Definition at line 4056 of file opennurbs_beam.cpp.

bool ON_Extrusion::GetNurbFormParameterFromSurfaceParameter ( double  surface_s,
double  surface_t,
double *  nurbs_s,
double *  nurbs_t 
) const [virtual]

Reimplemented from ON_Surface.

Definition at line 4127 of file opennurbs_beam.cpp.

ON_BOOL32 ON_Extrusion::GetParameterTolerance ( int  dir,
double  t,
double *  tminus,
double *  tplus 
) const [virtual]

Reimplemented from ON_Surface.

Definition at line 3319 of file opennurbs_beam.cpp.

bool ON_Extrusion::GetPathPlane ( double  s,
ON_Plane plane 
) const

Definition at line 558 of file opennurbs_beam.cpp.

int ON_Extrusion::GetProfileCurves ( ON_SimpleArray< const ON_Curve * > &  profile_curves) const

Definition at line 1109 of file opennurbs_beam.cpp.

int ON_Extrusion::GetProfileKinkParameters ( int  profile_index,
ON_SimpleArray< double > &  profile_kink_parameters 
) const

Definition at line 2520 of file opennurbs_beam.cpp.

bool ON_Extrusion::GetProfilePlane ( double  s,
ON_Plane plane 
) const

Definition at line 583 of file opennurbs_beam.cpp.

bool ON_Extrusion::GetProfileTransformation ( double  s,
ON_Xform xform 
) const

Definition at line 623 of file opennurbs_beam.cpp.

ON_BOOL32 ON_Extrusion::GetSpanVector ( int  dir,
double *  span_vector 
) const [virtual]

Implements ON_Surface.

Definition at line 3260 of file opennurbs_beam.cpp.

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

Reimplemented from ON_Surface.

Definition at line 3282 of file opennurbs_beam.cpp.

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

Reimplemented from ON_Surface.

Definition at line 4101 of file opennurbs_beam.cpp.

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

Reimplemented from ON_Surface.

Definition at line 3196 of file opennurbs_beam.cpp.

bool ON_Extrusion::GetTightBoundingBox ( ON_BoundingBox tight_bbox,
int  bGrowBox = false,
const ON_Xform xform = 0 
) const [virtual]

Reimplemented from ON_Geometry.

Definition at line 1613 of file opennurbs_beam.cpp.

int ON_Extrusion::HasNurbForm ( ) const [virtual]

Reimplemented from ON_Surface.

Definition at line 4096 of file opennurbs_beam.cpp.

int ON_Extrusion::IsCapped ( ) const

Definition at line 487 of file opennurbs_beam.cpp.

ON_BOOL32 ON_Extrusion::IsClosed ( int  dir) const [virtual]

Reimplemented from ON_Surface.

Definition at line 3384 of file opennurbs_beam.cpp.

bool ON_Extrusion::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]

Reimplemented from ON_Surface.

Definition at line 3424 of file opennurbs_beam.cpp.

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

Reimplemented from ON_Surface.

Definition at line 3334 of file opennurbs_beam.cpp.

Reimplemented from ON_Surface.

Definition at line 3453 of file opennurbs_beam.cpp.

int ON_Extrusion::IsMitered ( ) const

Definition at line 463 of file opennurbs_beam.cpp.

ON_Curve * ON_Extrusion::IsoCurve ( int  dir,
double  c 
) const [virtual]

Reimplemented from ON_Surface.

Definition at line 3684 of file opennurbs_beam.cpp.

ON_BOOL32 ON_Extrusion::IsPeriodic ( int  dir) const [virtual]

Reimplemented from ON_Surface.

Definition at line 3392 of file opennurbs_beam.cpp.

ON_BOOL32 ON_Extrusion::IsPlanar ( ON_Plane plane = NULL,
double  tolerance = ON_ZERO_TOLERANCE 
) const [virtual]

Reimplemented from ON_Surface.

Definition at line 3342 of file opennurbs_beam.cpp.

bool ON_Extrusion::IsSolid ( ) const

Reimplemented from ON_Surface.

Definition at line 551 of file opennurbs_beam.cpp.

ON_BOOL32 ON_Extrusion::IsValid ( ON_TextLog text_log = NULL) const [virtual]

Implements ON_Object.

Definition at line 1195 of file opennurbs_beam.cpp.

bool ON_Extrusion::IsValidPolyCurveProfile ( const ON_PolyCurve polycurve,
ON_TextLog text_log = 0 
) [static]

Definition at line 8 of file opennurbs_beam.cpp.

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

Reimplemented from ON_Surface.

Definition at line 1517 of file opennurbs_beam.cpp.

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

Definition at line 1171 of file opennurbs_beam.cpp.

Definition at line 401 of file opennurbs_beam.cpp.

Definition at line 930 of file opennurbs_beam.cpp.

Definition at line 382 of file opennurbs_beam.cpp.

Definition at line 392 of file opennurbs_beam.cpp.

Definition at line 410 of file opennurbs_beam.cpp.

ON_Extrusion * ON_Extrusion::Pipe ( const ON_Cylinder cylinder,
double  other_radius,
bool  bCapBottom,
bool  bCapTop,
ON_Extrusion extrusion = 0 
) [static]

Definition at line 4332 of file opennurbs_beam.cpp.

Definition at line 900 of file opennurbs_beam.cpp.

const ON_Curve * ON_Extrusion::Profile ( int  profile_index) const

Definition at line 908 of file opennurbs_beam.cpp.

ON_Curve * ON_Extrusion::Profile3d ( int  profile_index,
double  s 
) const

Definition at line 1031 of file opennurbs_beam.cpp.

ON_Curve * ON_Extrusion::Profile3d ( ON_COMPONENT_INDEX  ci) const

Definition at line 918 of file opennurbs_beam.cpp.

Definition at line 1088 of file opennurbs_beam.cpp.

int ON_Extrusion::ProfileIndex ( double  profile_parameter) const

Definition at line 1059 of file opennurbs_beam.cpp.

bool ON_Extrusion::ProfileIsKinked ( int  profile_index) const

Definition at line 2496 of file opennurbs_beam.cpp.

Definition at line 387 of file opennurbs_beam.cpp.

int ON_Extrusion::ProfileSmoothSegmentCount ( int  profile_index) const

Definition at line 2512 of file opennurbs_beam.cpp.

ON_BOOL32 ON_Extrusion::Read ( ON_BinaryArchive binary_archive) [virtual]

Reimplemented from ON_Object.

Definition at line 1436 of file opennurbs_beam.cpp.

ON_BOOL32 ON_Extrusion::Reverse ( int  dir) [virtual]

Implements ON_Surface.

Definition at line 3460 of file opennurbs_beam.cpp.

ON_BOOL32 ON_Extrusion::SetDomain ( int  dir,
double  t0,
double  t1 
) [virtual]

Reimplemented from ON_Surface.

Definition at line 3163 of file opennurbs_beam.cpp.

Definition at line 430 of file opennurbs_beam.cpp.

bool ON_Extrusion::SetOuterProfile ( ON_Curve outer_profile,
bool  bCap 
)

Definition at line 806 of file opennurbs_beam.cpp.

Definition at line 327 of file opennurbs_beam.cpp.

Definition at line 342 of file opennurbs_beam.cpp.

unsigned int ON_Extrusion::SizeOf ( ) const [virtual]

Reimplemented from ON_Surface.

Definition at line 1361 of file opennurbs_beam.cpp.

int ON_Extrusion::SpanCount ( int  dir) const [virtual]

Implements ON_Surface.

Definition at line 3248 of file opennurbs_beam.cpp.

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

Reimplemented from ON_Surface.

Definition at line 3888 of file opennurbs_beam.cpp.

Definition at line 4153 of file opennurbs_beam.cpp.

ON_BOOL32 ON_Extrusion::Transform ( const ON_Xform xform) [virtual]

Reimplemented from ON_Geometry.

Definition at line 1727 of file opennurbs_beam.cpp.

Implements ON_Surface.

Definition at line 3509 of file opennurbs_beam.cpp.

ON_BOOL32 ON_Extrusion::Trim ( int  dir,
const ON_Interval domain 
) [virtual]

Reimplemented from ON_Surface.

Definition at line 3762 of file opennurbs_beam.cpp.

ON_Curve * ON_Extrusion::WallEdge ( ON_COMPONENT_INDEX  ci) const

Definition at line 948 of file opennurbs_beam.cpp.

ON_Surface * ON_Extrusion::WallSurface ( ON_COMPONENT_INDEX  ci) const

Definition at line 990 of file opennurbs_beam.cpp.

ON_BOOL32 ON_Extrusion::Write ( ON_BinaryArchive binary_archive) const [virtual]

Reimplemented from ON_Object.

Definition at line 1390 of file opennurbs_beam.cpp.


Member Data Documentation

Definition at line 768 of file opennurbs_beam.h.

Definition at line 778 of file opennurbs_beam.h.

Definition at line 783 of file opennurbs_beam.h.

Definition at line 779 of file opennurbs_beam.h.

const double ON_Extrusion::m_Nz_min = 1.0/64.0 [static]

Definition at line 787 of file opennurbs_beam.h.

Definition at line 741 of file opennurbs_beam.h.

Definition at line 782 of file opennurbs_beam.h.

Definition at line 791 of file opennurbs_beam.h.

Definition at line 763 of file opennurbs_beam.h.

Definition at line 762 of file opennurbs_beam.h.

Definition at line 742 of file opennurbs_beam.h.

Definition at line 743 of file opennurbs_beam.h.


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


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