File indexing completed on 2025-01-18 10:10:39
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012 #ifndef ROOT_REveFrameBox
0013 #define ROOT_REveFrameBox
0014
0015 #include "ROOT/REveUtil.hxx"
0016
0017 namespace ROOT {
0018 namespace Experimental {
0019
0020 class REveFrameBox : public REveRefBackPtr
0021 {
0022 public:
0023 enum EFrameType_e { kFT_None, kFT_Quad, kFT_Box };
0024
0025 private:
0026 REveFrameBox(const REveFrameBox&) = delete;
0027 REveFrameBox& operator=(const REveFrameBox&) = delete;
0028
0029 protected:
0030 EFrameType_e fFrameType;
0031 Int_t fFrameSize;
0032 Float_t *fFramePoints;
0033
0034 Float_t fFrameWidth;
0035 Color_t fFrameColor;
0036 Color_t fBackColor;
0037 UChar_t fFrameRGBA[4];
0038 UChar_t fBackRGBA[4];
0039 Bool_t fFrameFill;
0040 Bool_t fDrawBack;
0041
0042 public:
0043 REveFrameBox();
0044 ~REveFrameBox() override;
0045
0046 void SetAAQuadXY(Float_t x, Float_t y, Float_t z, Float_t dx, Float_t dy);
0047 void SetAAQuadXZ(Float_t x, Float_t y, Float_t z, Float_t dx, Float_t dz);
0048
0049 void SetQuadByPoints(const Float_t* pointArr, Int_t nPoints);
0050
0051 void SetAABox(Float_t x, Float_t y, Float_t z,
0052 Float_t dx, Float_t dy, Float_t dz);
0053
0054 void SetAABoxCenterHalfSize(Float_t x, Float_t y, Float_t z,
0055 Float_t dx, Float_t dy, Float_t dz);
0056
0057
0058
0059 EFrameType_e GetFrameType() const { return fFrameType; }
0060 Int_t GetFrameSize() const { return fFrameSize; }
0061 Float_t* GetFramePoints() const { return fFramePoints; }
0062
0063 Float_t GetFrameWidth() const { return fFrameWidth; }
0064 void SetFrameWidth(Float_t f) { fFrameWidth = f; }
0065
0066 Color_t GetFrameColor() const { return fFrameColor; }
0067 Color_t* PtrFrameColor() { return &fFrameColor; }
0068 UChar_t* GetFrameRGBA() { return fFrameRGBA; }
0069
0070 void SetFrameColor(Color_t ci);
0071 void SetFrameColorPixel(Pixel_t pix);
0072 void SetFrameColorRGBA(UChar_t r, UChar_t g, UChar_t b, UChar_t a=255);
0073
0074 Color_t GetBackColor() const { return fBackColor; }
0075 Color_t* PtrBackColor() { return &fBackColor; }
0076 UChar_t* GetBackRGBA() { return fBackRGBA; }
0077
0078 void SetBackColor(Color_t ci);
0079 void SetBackColorPixel(Pixel_t pix);
0080 void SetBackColorRGBA(UChar_t r, UChar_t g, UChar_t b, UChar_t a=255);
0081
0082 Bool_t GetFrameFill() const { return fFrameFill; }
0083 void SetFrameFill(Bool_t f) { fFrameFill = f; }
0084
0085 Bool_t GetDrawBack() const { return fDrawBack; }
0086 void SetDrawBack(Bool_t f) { fDrawBack = f; }
0087
0088 void OnZeroRefCount() override { delete this; }
0089
0090 };
0091
0092 }
0093 }
0094 #endif