00001
00002
00003
00004
00005
00006
00007
00008 #ifndef EVDB_VIEW3D_H
00009 #define EVDB_VIEW3D_H
00010 #include <list>
00011
00012 class TMarker3DBox;
00013 class TPolyMarker3D;
00014 class TPolyLine3D;
00015 class TText;
00016
00017 namespace evdb {
00018 class View3D {
00019 public:
00020 View3D();
00021 ~View3D();
00022
00023 void Draw();
00024 void Clear();
00025
00026 TMarker3DBox& AddMarker3DBox(double x, double y, double z,
00027 double dx, double dy, double dz,
00028 double th=0.0, double ph=0.0);
00029 TPolyMarker3D& AddPolyMarker3D(int n, int c, int st, double sz);
00030 TPolyLine3D& AddPolyLine3D(int n, int c, int w, int s);
00031 TText& AddText(double x, double y, const char* text);
00032
00033 private:
00034 std::list<TMarker3DBox*> fMarker3DBoxL;
00035 std::list<TPolyMarker3D*> fPolyMarker3DL;
00036 std::list<TPolyLine3D*> fPolyLine3DL;
00037 std::list<TText*> fText3DL;
00038
00039 std::list<TMarker3DBox*>::iterator fNextMarker3DBox;
00040 std::list<TPolyMarker3D*>::iterator fNextPolyMarker3D;
00041 std::list<TPolyLine3D*>::iterator fNextPolyLine3D;
00042 std::list<TText*>::iterator fNextText3D;
00043 };
00044 }
00045
00046 #endif // B_VIEW3D_H
00047