Mercurial > hg > orthanc-stone
comparison Framework/Scene2DViewport/AngleMeasureTool.h @ 865:a29c13497557
Added operators to ScenePoint2D + highlight support on MouseOver for measuring tools
author | Benjamin Golinvaux <bgo@osimis.io> |
---|---|
date | Tue, 25 Jun 2019 15:24:13 +0200 |
parents | e42b491f1fb2 |
children | c71ef52602a0 |
comparison
equal
deleted
inserted
replaced
864:ae3eccd0f545 | 865:a29c13497557 |
---|---|
45 | 45 |
46 void SetSide1End(ScenePoint2D start); | 46 void SetSide1End(ScenePoint2D start); |
47 void SetCenter(ScenePoint2D start); | 47 void SetCenter(ScenePoint2D start); |
48 void SetSide2End(ScenePoint2D start); | 48 void SetSide2End(ScenePoint2D start); |
49 | 49 |
50 virtual bool HitTest(ScenePoint2D p) const ORTHANC_OVERRIDE; | |
51 virtual void Highlight(ScenePoint2D p) ORTHANC_OVERRIDE; | |
52 virtual void ResetHighlightState() ORTHANC_OVERRIDE; | |
50 | 53 |
51 virtual bool HitTest(ScenePoint2D p) const ORTHANC_OVERRIDE; | 54 enum AngleHighlightArea |
55 { | |
56 AngleHighlightArea_None, | |
57 AngleHighlightArea_Side1End, | |
58 AngleHighlightArea_Side1, | |
59 AngleHighlightArea_Side2End, | |
60 AngleHighlightArea_Side2, | |
61 AngleHighlightArea_Center | |
62 }; | |
63 | |
64 | |
65 AngleHighlightArea AngleHitTest(ScenePoint2D p) const; | |
52 | 66 |
53 private: | 67 private: |
54 virtual void RefreshScene() ORTHANC_OVERRIDE; | 68 virtual void RefreshScene() ORTHANC_OVERRIDE; |
55 void RemoveFromScene(); | 69 void RemoveFromScene(); |
70 void SetAngleHighlightArea(AngleHighlightArea area); | |
56 | 71 |
57 private: | 72 private: |
58 ScenePoint2D side1End_; | 73 ScenePoint2D side1End_; |
59 ScenePoint2D side2End_; | 74 ScenePoint2D side2End_; |
60 ScenePoint2D center_; | 75 ScenePoint2D center_; |
61 boost::shared_ptr<LayerHolder> layerHolder_; | 76 boost::shared_ptr<LayerHolder> layerHolder_; |
77 AngleHighlightArea angleHighlightArea_; | |
62 }; | 78 }; |
63 } | 79 } |
64 | 80 |
65 | 81 |