#ifndef HYDROGUI_AIS_CURVE_H
-
#define HYDROGUI_AIS_CURVE_H
-
-
#include <vector>
-
#include <list>
-
-
#include <AIS_InteractiveContext.hxx>
-
#include <AIS_Point.hxx>
-
#include <AIS_Line.hxx>
#include <CurveCreator_Listener.hxx>
-
-
class CurveCreator_Curve;
class AIS_InteractiveObject;
-
class AIS_Point;
-
class AIS_Line;
-
-
class HYDROGUI_AISCurveSection
-
{
-
public:
-
HYDROGUI_AISCurveSection( Handle_AIS_InteractiveContext theContext,
-
CurveCreator_Curve* theCurve, int theSection );
-
virtual ~HYDROGUI_AISCurveSection();
-
-
void Display();
-
void Erase();
-
-
void highlight( bool isHL );
protected:
-
virtual void buildSection();
void getPoint( int theIndx, double& theX, double& theY, double& theZ );
Handle_AIS_Point getAISPoint( int theIndx );
-
Handle_AIS_Line getAISLine( int theIndx1, int theIndx2 );
Quantity_Color getActiveColor();
-
-
private:
-
CurveCreator_Curve* myCurve;
-
int mySection;
-
std::vector< Handle_AIS_InteractiveObject > myObjects;
-
Handle_AIS_InteractiveContext myContext;
-
bool myIsHighlight;
-
bool myIsHL;
-
};
-
-
class HYDROGUI_AISCurve : public CurveCreator_Listener
-
{
-
public:
-
HYDROGUI_AISCurve(CurveCreator_Curve* theCurve, Handle_AIS_InteractiveContext theContext );
-
~HYDROGUI_AISCurve(void);
-
-
void setCurve( CurveCreator_Curve* theCurve );
-
-
void Display();
-
-
+ void Erase();
virtual void pointInserted( int theSection, int theIndx );
-
-
void highlightSection( int theSection, bool isHL );
void clearSelection();
-
-
protected:
-
virtual void buildCurve();
-
Quantity_Color getActiveColor();
-
-
private:
-
CurveCreator_Curve* myCurve;
-
Handle_AIS_InteractiveContext myContext;
-
std::vector< HYDROGUI_AISCurveSection* > myCurveRepresentation;
-
};
-
-
-#endif
\ No newline at end of file
+#endif