Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef _GEOMImpl_ICurvesOperations_HXX_
00024 #define _GEOMImpl_ICurvesOperations_HXX_
00025
00026 #include "GEOM_IOperations.hxx"
00027
00028 #include <TCollection_AsciiString.hxx>
00029
00030 #include <list>
00031
00032 class GEOM_Engine;
00033 class Handle(GEOM_Object);
00034
00035 class GEOMImpl_ICurvesOperations : public GEOM_IOperations {
00036
00037 public:
00038
00039 enum CurveType { Polyline, Bezier, Interpolation };
00040
00041 Standard_EXPORT GEOMImpl_ICurvesOperations(GEOM_Engine* theEngine, int theDocID);
00042 Standard_EXPORT ~GEOMImpl_ICurvesOperations();
00043
00044 Standard_EXPORT Handle(GEOM_Object) MakeCircleThreePnt (Handle(GEOM_Object) thePnt1,
00045 Handle(GEOM_Object) thePnt2,
00046 Handle(GEOM_Object) thePnt3);
00047 Standard_EXPORT Handle(GEOM_Object) MakeCircleCenter2Pnt (Handle(GEOM_Object) thePnt1,
00048 Handle(GEOM_Object) thePnt2,
00049 Handle(GEOM_Object) thePnt3);
00050 Standard_EXPORT Handle(GEOM_Object) MakeCirclePntVecR (Handle(GEOM_Object) thePnt,
00051 Handle(GEOM_Object) theVec, double theR);
00052
00053 Standard_EXPORT Handle(GEOM_Object) MakeEllipse (Handle(GEOM_Object) thePnt,
00054 Handle(GEOM_Object) theVec,
00055 double theRMajor, double theRMinor,
00056 Handle(GEOM_Object) theVecMaj);
00057
00058 Standard_EXPORT Handle(GEOM_Object) MakeArc (Handle(GEOM_Object) thePnt1,
00059 Handle(GEOM_Object) thePnt2,
00060 Handle(GEOM_Object) thePnt3);
00061
00062 Standard_EXPORT Handle(GEOM_Object) MakeArcCenter (Handle(GEOM_Object) thePnt1,
00063 Handle(GEOM_Object) thePnt2,
00064 Handle(GEOM_Object) thePnt3,
00065 bool theSense);
00066
00067 Standard_EXPORT Handle(GEOM_Object) MakeArcOfEllipse (Handle(GEOM_Object) thePnt1,
00068 Handle(GEOM_Object) thePnt2,
00069 Handle(GEOM_Object) thePnt3);
00070
00071 Standard_EXPORT Handle(GEOM_Object) MakePolyline (std::list<Handle(GEOM_Object)> thePoints,
00072 bool theIsClosed = false);
00073
00074 Standard_EXPORT Handle(GEOM_Object) MakeSplineBezier (std::list<Handle(GEOM_Object)> thePoints,
00075 bool theIsClosed = false);
00076
00077 Standard_EXPORT Handle(GEOM_Object) MakeSplineInterpolation (std::list<Handle(GEOM_Object)> thePoints,
00078 bool theIsClosed = false,
00079 bool theDoReordering = false);
00080
00081 Standard_EXPORT Handle(GEOM_Object) MakeCurveParametric(const char* thexExpr, const char* theyExpr, const char* thezExpr,
00082 double theParamMin, double theParamMax, double theParamStep,
00083 CurveType theCurveType);
00084
00085 Standard_EXPORT Handle(GEOM_Object) MakeSketcher (const char* theCommand,
00086 std::list<double> theWorkingPlane);
00087 Standard_EXPORT Handle(GEOM_Object) Make3DSketcher (std::list<double> theCoordinates);
00088 Standard_EXPORT Handle(GEOM_Object) MakeSketcherOnPlane (const char* theCommand,
00089 Handle(GEOM_Object) theWorkingPlane);
00090 };
00091
00092 #endif