Dtk_Curve is a geometrical entity representing a curve. It is an abstract class that cannot be instancied. 
 It has several utility methods :
.  
 More...
 Inheritance diagram for Dtk_Curve:Public Member Functions | |
| virtual Dtk_ErrorStatus | _ComputeAnyDerivative (Dtk_Double64 inUvalue, int inUdiff, Dtk_dir &outdir, int exttype) const | 
| virtual Dtk_ErrorStatus | _Store (void *) | 
| virtual Dtk_ErrorStatus | ComputeBoundingBox (Dtk_pnt &outMin, Dtk_pnt &outMax, Dtk_bool inMorePrecise=0) | 
| Compute Bounding Box.  More... | |
| virtual Dtk_pnt | ComputeEndPoint () const =0 | 
| Return Last point.  More... | |
| Dtk_Double64 | ComputeLength () | 
| return curve Length  More... | |
| Dtk_NurbsCurvePtr | ComputeOffset (Dtk_Double64 inOffset, Dtk_dir inOffsetDirection) | 
| Compute offset curve and convert it to nurbs.  More... | |
| virtual Dtk_ErrorStatus | ComputeOrientedBoundingBox (Dtk_pnt &outMin, Dtk_pnt &outMax, const Dtk_transfo &inLocal) | 
| Compute Oriented Bounding Box.  More... | |
| virtual Dtk_ErrorStatus | ComputeParameter (const Dtk_pnt &inPoint, Dtk_Double64 &outU) const =0 | 
| Compute U parameter from point.  More... | |
| virtual Dtk_pnt | ComputeStartPoint () const =0 | 
| Return First point.  More... | |
| virtual Dtk_ErrorStatus | ComputeUDir (const Dtk_Double64 &inU, Dtk_dir &outDir) const | 
| Compute dir on U parameter.  More... | |
| virtual Dtk_ErrorStatus | ComputeUPoint (const Dtk_Double64 &inU, Dtk_pnt &outPoint) const =0 | 
| Compute point on U parameter.  More... | |
| virtual Dtk_ErrorStatus | ComputeUPointDir (const Dtk_Double64 &inU, Dtk_pnt &outPoint, Dtk_dir &outDir) const | 
| Compute point and dir on U parameter.  More... | |
| void | DeleteCorrespondingNurbs () | 
| int | DtkDynamicType (const int &inId) | 
| downcasting  More... | |
| virtual void | dump (FILE *file=stdout) | 
| Dtk_InfoPtr | get_info () const | 
| virtual enum type_detk | get_type_detk () const =0 | 
| Dtk_Size_t | GetDimension () const | 
| Return 2 or 3.  More... | |
| virtual Dtk_ErrorStatus | GetDomain (Dtk_Double64 &outUmin, Dtk_Double64 &outUmax) const =0 | 
| Get Curve Parametrisation.  More... | |
| const Dtk_ID & | GetID () const | 
| Get Internal UniqueID.  More... | |
| virtual Dtk_Size_t | GetSize () const | 
| Dtk_pnt | GetTrimEndPoint () const | 
| Return last trim point.  More... | |
| Dtk_pnt | GetTrimStartPoint () const | 
| Return first trim point.  More... | |
| Dtk_Double64 | GetTrimUMax () const | 
| Get end Trim parameter.  More... | |
| Dtk_Double64 | GetTrimUMin () const | 
| Get start Trim parameter.  More... | |
| Dtk_InfoPtr & | info () | 
| virtual Dtk_ErrorStatus | InverseTrim () | 
| virtual Dtk_bool | IsClosed (Dtk_Double64 inTol=DTK_TOLERANCE) const | 
| return True if Curve is closed  More... | |
| Dtk_bool | IsLine () | 
| return True if Curve is a line  More... | |
| virtual Dtk_bool | IsPeriodic () const | 
| return True if Curve is periodic  More... | |
| Dtk_bool | IsTrimmed () const | 
| Return DTK_TRUE if Curve Is trimmed by point or parameter value.  More... | |
| virtual void | Normalize () | 
| Normalize Curve.  More... | |
| virtual void | PrepareTransfo () | 
| virtual void | Reverse ()=0 | 
| Reverse Curve.  More... | |
| void | SetDimension (const Dtk_Size_t &inDimension) | 
| Set curve dimension (2 or 3)  More... | |
| virtual Dtk_ErrorStatus | SetTrimmingParameters (const Dtk_Double64 &inUmin, const Dtk_Double64 &inUmax) | 
| Set Trim parameter for curve.  More... | |
| void | SetTrimPoints (const Dtk_pnt &inStartPoint, const Dtk_pnt &inEndPoint) | 
| Set Trim points for curve.  More... | |
| virtual Dtk_NurbsCurvePtr | ToNurbs () const =0 | 
| Convert Curve to nurbs.  More... | |
| virtual Dtk_PolylinePtr | ToPolyline (const int &inMinPoint, const Dtk_Double64 &inTolerance) const =0 | 
| Convert Curve to polyline.  More... | |
| Dtk_ErrorStatus | Transform (const Dtk_transfo &inTransfo) | 
| Transform Curve.  More... | |
| virtual | ~Dtk_Curve () | 
Static Public Member Functions | |
| static Dtk_Curve * | DtkDynamicCast (Dtk_Object *inObject) | 
Protected Types | |
| enum | { _typeID = DTK_TYPE_OBJECT } | 
| enum | { _typeID = DTK_TYPE_CURVE } | 
Protected Member Functions | |
| void | _Copy (const Dtk_Curve &s) | 
| void | _copy (const Dtk_Entity &s) | 
| void | _init () | 
| void | _reset () | 
| virtual Dtk_Object * | Clone ()=0 | 
| Dtk_Curve () | |
| Dtk_Curve (const Dtk_Curve &s) | |
Protected Attributes | |
| Dtk_Handle * | _Private | 
| unsigned long | count_ | 
Dtk_Curve is a geometrical entity representing a curve. It is an abstract class that cannot be instancied. 
 It has several utility methods :
. 
      
  | 
  protected | 
      
  | 
  protected | 
      
  | 
  virtual | 
      
  | 
  virtual | 
Reimplemented in Dtk_Hyperbola, Dtk_Parabola, Dtk_Polyline, Dtk_Ellipse, Dtk_Line, and Dtk_NurbsCurve.
      
  | 
  protected | 
      
  | 
  protectedinherited | 
      
  | 
  protectedinherited | 
      
  | 
  protectedinherited | 
      
  | 
  virtual | 
Reimplemented from Dtk_Entity.
Reimplemented in Dtk_Hyperbola, Dtk_Parabola, Dtk_Ellipse, Dtk_Conic, Dtk_Line, Dtk_Polyline, and Dtk_NurbsCurve.
      
  | 
  protectedpure virtual | 
Implements Dtk_Entity.
Implemented in Dtk_Conic, Dtk_Hyperbola, Dtk_Parabola, Dtk_Ellipse, Dtk_Line, Dtk_Polyline, and Dtk_NurbsCurve.
      
  | 
  virtual | 
Compute Bounding Box.
Reimplemented in Dtk_Ellipse, Dtk_Line, Dtk_Polyline, and Dtk_NurbsCurve.
      
  | 
  pure virtual | 
Return Last point.
Implemented in Dtk_Hyperbola, Dtk_Parabola, Dtk_Ellipse, Dtk_Line, Dtk_Polyline, and Dtk_NurbsCurve.
| Dtk_Double64 Dtk_Curve::ComputeLength | ( | ) | 
return curve Length
| Dtk_NurbsCurvePtr Dtk_Curve::ComputeOffset | ( | Dtk_Double64 | inOffset, | 
| Dtk_dir | inOffsetDirection | ||
| ) | 
Compute offset curve and convert it to nurbs.
      
  | 
  virtual | 
Compute Oriented Bounding Box.
      
  | 
  pure virtual | 
Compute U parameter from point.
Implemented in Dtk_Hyperbola, Dtk_Parabola, Dtk_Ellipse, Dtk_Line, Dtk_Polyline, and Dtk_NurbsCurve.
      
  | 
  pure virtual | 
Return First point.
Implemented in Dtk_Hyperbola, Dtk_Parabola, Dtk_Ellipse, Dtk_Line, Dtk_Polyline, and Dtk_NurbsCurve.
      
  | 
  virtual | 
Compute dir on U parameter.
Reimplemented in Dtk_Ellipse, Dtk_Line, and Dtk_NurbsCurve.
      
  | 
  pure virtual | 
Compute point on U parameter.
Implemented in Dtk_Hyperbola, Dtk_Parabola, Dtk_Ellipse, Dtk_Line, Dtk_Polyline, and Dtk_NurbsCurve.
      
  | 
  virtual | 
Compute point and dir on U parameter.
Reimplemented in Dtk_NurbsCurve.
| void Dtk_Curve::DeleteCorrespondingNurbs | ( | ) | 
      
  | 
  static | 
      
  | 
  virtual | 
downcasting
Reimplemented from Dtk_Entity.
Reimplemented in Dtk_Hyperbola, Dtk_Parabola, Dtk_Ellipse, Dtk_Conic, Dtk_Line, Dtk_Polyline, and Dtk_NurbsCurve.
      
  | 
  virtualinherited | 
      
  | 
  inherited | 
      
  | 
  pure virtualinherited | 
Implemented in Dtk_Annotation, Dtk_2dEntity, Dtk_Shell, Dtk_Body, Dtk_Lump, Dtk_Volume, Dtk_Face, Dtk_Loop, Dtk_Coedge, Dtk_Edge, Dtk_Vertex, Dtk_TopologicalEntity, Dtk_SelectionSet, Dtk_mesh, Dtk_Kinematic, Dtk_MeshSurface, Dtk_TransformedSurface, Dtk_FilletSurface, Dtk_OffsetSurface, Dtk_SphericalSurface, Dtk_ToroidalSurface, Dtk_ConicalSurface, Dtk_CylindricalSurface, Dtk_RuledSurface, Dtk_LinearExtrusionSurface, Dtk_StandardRevolutionSurface, Dtk_RevolutionSurface, Dtk_PlaneSurface, Dtk_NurbsSurface, Dtk_Hyperbola, Dtk_Parabola, Dtk_Ellipse, Dtk_Conic, Dtk_Line, Dtk_Polyline, Dtk_NurbsCurve, Dtk_Point, Dtk_Constraint, Dtk_ConstraintReference, Dtk_ModelDisplay, Dtk_AxisSystem, Dtk_Region, Dtk_CompositeEntity, Dtk_Hatching, Dtk_Camera, Dtk_Fdt, Dtk_View, Dtk_Drawing, Dtk_Symbol, Dtk_GeometricalTolerance, Dtk_Dimension, Dtk_Grid, Dtk_Table, Dtk_DatumTarget, Dtk_Welding, Dtk_Roughness, and Dtk_feat.
| Dtk_Size_t Dtk_Curve::GetDimension | ( | ) | const | 
Return 2 or 3.
      
  | 
  pure virtual | 
Get Curve Parametrisation.
Implemented in Dtk_Hyperbola, Dtk_Parabola, Dtk_Ellipse, Dtk_Line, Dtk_Polyline, and Dtk_NurbsCurve.
      
  | 
  inherited | 
Get Internal UniqueID.
      
  | 
  virtual | 
Reimplemented from Dtk_Entity.
Reimplemented in Dtk_Hyperbola, Dtk_Parabola, Dtk_Ellipse, Dtk_Conic, Dtk_Line, Dtk_Polyline, and Dtk_NurbsCurve.
| Dtk_pnt Dtk_Curve::GetTrimEndPoint | ( | ) | const | 
Return last trim point.
| Dtk_pnt Dtk_Curve::GetTrimStartPoint | ( | ) | const | 
Return first trim point.
| Dtk_Double64 Dtk_Curve::GetTrimUMax | ( | ) | const | 
Get end Trim parameter.
| Dtk_Double64 Dtk_Curve::GetTrimUMin | ( | ) | const | 
Get start Trim parameter.
      
  | 
  inherited | 
      
  | 
  virtual | 
      
  | 
  virtual | 
return True if Curve is closed
Reimplemented in Dtk_NurbsCurve.
| Dtk_bool Dtk_Curve::IsLine | ( | ) | 
return True if Curve is a line
      
  | 
  virtual | 
return True if Curve is periodic
Reimplemented in Dtk_NurbsCurve.
| Dtk_bool Dtk_Curve::IsTrimmed | ( | ) | const | 
Return DTK_TRUE if Curve Is trimmed by point or parameter value.
      
  | 
  virtual | 
Normalize Curve.
Reimplemented in Dtk_Line.
      
  | 
  virtualinherited | 
Reimplemented in Dtk_OffsetSurface.
      
  | 
  pure virtual | 
Reverse Curve.
Implemented in Dtk_Hyperbola, Dtk_Parabola, Dtk_Ellipse, Dtk_Line, Dtk_Polyline, and Dtk_NurbsCurve.
| void Dtk_Curve::SetDimension | ( | const Dtk_Size_t & | inDimension | ) | 
Set curve dimension (2 or 3)
      
  | 
  virtual | 
Set Trim parameter for curve.
Set Trim points for curve.
      
  | 
  pure virtual | 
Convert Curve to nurbs.
Implemented in Dtk_Hyperbola, Dtk_Conic, Dtk_Line, Dtk_Polyline, and Dtk_NurbsCurve.
      
  | 
  pure virtual | 
Convert Curve to polyline.
| [in] | inMinPoint | : Minimal number of result points | 
| [in] | inTolerance | : max tolerance for 3 points alignement. | 
Implemented in Dtk_Hyperbola, Dtk_Parabola, Dtk_Ellipse, Dtk_Line, Dtk_Polyline, and Dtk_NurbsCurve.
      
  | 
  virtual | 
Transform Curve.
Implements Dtk_Entity.
Reimplemented in Dtk_Hyperbola, Dtk_Parabola, Dtk_Ellipse, Dtk_Conic, Dtk_Line, Dtk_Polyline, and Dtk_NurbsCurve.
      
  | 
  protected | 
      
  | 
  protectedinherited |