1 #if !defined(OPENNURBS_EXTRUSION_INC_)
2 #define OPENNURBS_EXTRUSION_INC_
26 bool ON_GetEndCapTransformation(
52 unsigned int SizeOf()
const;
53 ON__UINT32
DataCRC( ON__UINT32 current_remainder )
const;
154 bool GetBrepFormComponentIndex(
155 ON_COMPONENT_INDEX extrusion_ci,
156 ON_COMPONENT_INDEX& brep_ci
159 bool GetBrepFormComponentIndex(
160 ON_COMPONENT_INDEX extrusion_ci,
161 double extrusion_profile_parameter,
163 ON_COMPONENT_INDEX& brep_ci
193 int* span_vector_index,
211 double tolerance = ON_ZERO_TOLERANCE
227 double cos_angle_tolerance=ON_DEFAULT_ANGLE_TOLERANCE_COSINE,
228 double curvature_tolerance=ON_SQRT_EPSILON
235 double point_tolerance=ON_ZERO_TOLERANCE,
236 double d1_tolerance=ON_ZERO_TOLERANCE,
237 double d2_tolerance=ON_ZERO_TOLERANCE,
238 double cos_angle_tolerance=ON_DEFAULT_ANGLE_TOLERANCE_COSINE,
239 double curvature_tolerance=ON_SQRT_EPSILON
274 bool GetClosestPoint(
278 double maximum_distance = 0.0,
283 ON_BOOL32 GetLocalClosestPoint(
const ON_3dPoint&,
298 double tolerance = 0.0
302 double nurbs_s,
double nurbs_t,
303 double* surface_s,
double* surface_t
306 double surface_s,
double surface_t,
307 double* nurbs_s,
double* nurbs_t
367 int PathParameter()
const;
388 void GetMiterPlaneNormal(
int end,
ON_3dVector& N)
const;
397 int IsMitered()
const;
412 int IsCapped()
const;
423 int CapCount()
const;
448 ON_DEPRECATED
int FaceCount()
const;
458 bool GetProfileTransformation(
double s,
ON_Xform& xform )
const;
478 bool GetProfilePlane(
double s,
ON_Plane& plane )
const;
499 bool GetPathPlane(
double s,
ON_Plane& plane )
const;
523 bool SetOuterProfile(
ON_Curve* outer_profile,
bool bCap );
542 bool AddInnerProfile(
ON_Curve* inner_profile );
551 int ProfileCount()
const;
565 int ProfileSmoothSegmentCount(
int profile_index )
const;
579 int ProfileParameter()
const;
592 const ON_Curve* Profile(
int profile_index)
const;
609 ON_Curve* Profile3d(
int profile_index,
double s )
const;
621 ON_Curve* Profile3d( ON_COMPONENT_INDEX ci )
const;
633 ON_Curve* WallEdge( ON_COMPONENT_INDEX ci )
const;
645 ON_Surface* WallSurface( ON_COMPONENT_INDEX ci )
const;
670 int ProfileIndex(
double profile_parameter )
const;
712 bool ProfileIsKinked(
int profile_index )
const;
732 static bool CleanupPolyCurveProfile(
ON_PolyCurve& polycurve );