23 #ifndef _CurveCreator_ICurve_HeaderFile
24 #define _CurveCreator_ICurve_HeaderFile
29 #include <TColgp_HArray1OfPnt.hxx>
30 #include <AIS_InteractiveObject.hxx>
37 namespace CurveCreator
62 virtual void GetDifferentPoints(
63 const int theDimension,
Handle(TColgp_HArray1OfPnt)& thePoints)
const = 0;
90 virtual int getNbUndo()
const = 0;
93 virtual bool undo() = 0;
96 virtual int getNbRedo()
const = 0;
99 virtual bool redo() = 0;
107 virtual bool clear() = 0;
111 virtual bool join(
const std::list<int>& theSections ) = 0;
114 virtual int getNbSections()
const = 0;
117 virtual int addSection(
const std::string& theName,
119 const bool theIsClosed ) = 0;
122 virtual bool removeSection(
const int theISection ) = 0;
125 virtual bool isClosed(
const int theISection )
const = 0;
131 virtual bool setClosed(
const int theISection,
132 const bool theIsClosed ) = 0;
135 virtual std::string getSectionName(
const int theISection )
const = 0;
138 virtual bool setSectionName(
const int theISection,
139 const std::string& theName ) = 0;
148 virtual bool setSectionType(
const int theISection,
153 const int theSectionIndex)
const = 0;
171 const int theISection,
172 const int theIPnt = -1 ) = 0;
175 virtual bool setPoint(
const int theISection,
180 virtual bool setSeveralPoints(
const SectionToPointCoordsList &theSectionToPntCoords,
181 const bool theIsToSaveDiff =
true ) = 0;
184 virtual bool removePoint(
const int theISection,
const int theIPnt = -1 ) = 0;
186 virtual bool removeSeveralPoints(
const SectionToPointList &theSectionToPntIDs) = 0;
190 const int theIPnt )
const = 0;
201 virtual int getNbPoints(
const int theISection )
const = 0;
206 virtual void setSkipSorting(
const bool ) = 0;
211 virtual bool canPointsBeSorted() = 0;
217 virtual void saveCoordDiff(
const SectionToPointCoordsList &theOldCoords ) = 0;
226 virtual
void constructAISObject() = 0;