comparison Framework/Radiography/RadiographyLayer.h @ 860:238693c3bc51 am-dev

merge default -> am-dev
author Alain Mazy <alain@mazy.be>
date Mon, 24 Jun 2019 14:35:00 +0200
parents c237e0625065
children 580dd82e13f5
comparison
equal deleted inserted replaced
856:a6e17a5a39e7 860:238693c3bc51
21 21
22 #pragma once 22 #pragma once
23 23
24 #include "../Toolbox/AffineTransform2D.h" 24 #include "../Toolbox/AffineTransform2D.h"
25 #include "../Toolbox/Extent2D.h" 25 #include "../Toolbox/Extent2D.h"
26 #include "../Viewport/CairoContext.h" 26 #include "../Wrappers/CairoContext.h"
27 #include "../Messages/IMessage.h" 27 #include "../Messages/IMessage.h"
28 #include "../Messages/IObservable.h" 28 #include "../Messages/IObservable.h"
29 29
30 namespace OrthancStone 30 namespace OrthancStone
31 { 31 {
32 class RadiographyScene; 32 class RadiographyScene;
33 33
34 enum RadiographyControlPointType
35 {
36 RadiographyControlPointType_TopLeftCorner = 0,
37 RadiographyControlPointType_TopRightCorner = 1,
38 RadiographyControlPointType_BottomRightCorner = 2,
39 RadiographyControlPointType_BottomLeftCorner = 3
40 };
41
42 enum RadiographyPhotometricDisplayMode
43 {
44 RadiographyPhotometricDisplayMode_Default,
45
46 RadiographyPhotometricDisplayMode_Monochrome1,
47 RadiographyPhotometricDisplayMode_Monochrome2
48 };
49
50
34 struct ControlPoint 51 struct ControlPoint
35 { 52 {
36 double x; 53 double x;
37 double y; 54 double y;
38 size_t index; 55 size_t index;
194 unsigned int width_; 211 unsigned int width_;
195 unsigned int height_; 212 unsigned int height_;
196 AffineTransform2D transform_; 213 AffineTransform2D transform_;
197 AffineTransform2D transformInverse_; 214 AffineTransform2D transformInverse_;
198 Geometry geometry_; 215 Geometry geometry_;
199 PhotometricDisplayMode prefferedPhotometricDisplayMode_; 216 RadiographyPhotometricDisplayMode prefferedPhotometricDisplayMode_;
200 const RadiographyScene& scene_; 217 const RadiographyScene& scene_;
201 218
202 protected: 219 protected:
203 virtual const AffineTransform2D& GetTransform() const 220 virtual const AffineTransform2D& GetTransform() const
204 { 221 {
208 virtual const AffineTransform2D& GetTransformInverse() const 225 virtual const AffineTransform2D& GetTransformInverse() const
209 { 226 {
210 return transformInverse_; 227 return transformInverse_;
211 } 228 }
212 229
213 void SetPreferredPhotomotricDisplayMode(PhotometricDisplayMode prefferedPhotometricDisplayMode); 230 void SetPreferredPhotomotricDisplayMode(RadiographyPhotometricDisplayMode prefferedPhotometricDisplayMode);
214 231
215 private: 232 private:
216 void UpdateTransform(); 233 void UpdateTransform();
217 234
218 void AddToExtent(Extent2D& extent, 235 void AddToExtent(Extent2D& extent,
323 double viewportDistance) const; 340 double viewportDistance) const;
324 341
325 virtual bool GetDefaultWindowing(float& center, 342 virtual bool GetDefaultWindowing(float& center,
326 float& width) const = 0; 343 float& width) const = 0;
327 344
328 PhotometricDisplayMode GetPreferredPhotomotricDisplayMode() const 345 RadiographyPhotometricDisplayMode GetPreferredPhotomotricDisplayMode() const
329 { 346 {
330 return prefferedPhotometricDisplayMode_; 347 return prefferedPhotometricDisplayMode_;
331 } 348 }
332 349
333 virtual void Render(Orthanc::ImageAccessor& buffer, 350 virtual void Render(Orthanc::ImageAccessor& buffer,