3 #ifndef REVE_StraightLineSet_H
4 #define REVE_StraightLineSet_H
12 #include <TAttMarker.h>
15 #include <Reve/Reve.h>
16 #include <Reve/RenderElement.h>
17 #include <Reve/Plex.h>
22 class StraightLineSet : public RenderElement,
23 public TNamed, public TQObject,
28 friend class StraightLineSetGL;
29 friend class StraightLineSetEditor;
32 StraightLineSet(const StraightLineSet&); // Not implemented
33 StraightLineSet& operator=(const StraightLineSet&); // Not implemented
42 Line(Float_t x1, Float_t y1, Float_t z1,Float_t x2, Float_t y2, Float_t z2)
44 fV1[0] = x1, fV1[1] = y1, fV1[2] = z1;
45 fV2[0] = x2, fV2[1] = y2, fV2[2] = z2;
55 Marker(Int_t lineID, Float_t pos) : fLineID(lineID), fPos(pos) {};
61 Bool_t fOwnLinesIds; //Flag specifying if id-objects are owned by the QuadSet
62 Bool_t fOwnMarkersIds; //Flag specifying if id-objects are owned by the QuadSet
65 VoidCPlex fMarkerPlex;
71 StraightLineSet(const Text_t* n="StraightLine", const Text_t* t="");
72 virtual ~StraightLineSet() {}
74 virtual Bool_t CanEditMainColor() { return kTRUE; }
76 void AddLine(Float_t x1, Float_t y1, Float_t z1, Float_t x2, Float_t y2, Float_t z2);
77 void AddMarker(Int_t lineID, Float_t pos);
79 virtual void ComputeBBox();
80 virtual void Paint(Option_t* option="");
82 Color_t GetColor() const { return fColor; };
83 void SetColor(Color_t c) { fColor=c; }
85 ClassDef(StraightLineSet, 1);
86 }; // endclass StraightLineSet