comparison Framework/Radiography/RadiographyLayer.cpp @ 1279:7ec8fea061b9 broker

integration mainline->broker
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 04 Feb 2020 15:20:08 +0100
parents 0ca50d275b9a 398ea4259e65
children 379c00958553
comparison
equal deleted inserted replaced
1271:0ca50d275b9a 1279:7ec8fea061b9
57 height = cropHeight_; 57 height = cropHeight_;
58 } 58 }
59 59
60 void RadiographyLayer::UpdateTransform() 60 void RadiographyLayer::UpdateTransform()
61 { 61 {
62 // important to update transform_ before getting the center to use the right scaling !!!
62 transform_ = AffineTransform2D::CreateScaling(geometry_.GetScalingX(), geometry_.GetScalingY()); 63 transform_ = AffineTransform2D::CreateScaling(geometry_.GetScalingX(), geometry_.GetScalingY());
63 64
64 double centerX, centerY; 65 double centerX, centerY;
65 GetCenter(centerX, centerY); 66 GetCenter(centerX, centerY);
66 67
67 transform_ = AffineTransform2D::Combine( 68 transform_ = AffineTransform2D::Combine(
68 AffineTransform2D::CreateOffset(geometry_.GetPanX() + centerX, geometry_.GetPanY() + centerY), 69 AffineTransform2D::CreateOffset(geometry_.GetPanX(), geometry_.GetPanY()),
69 AffineTransform2D::CreateRotation(geometry_.GetAngle()), 70 AffineTransform2D::CreateRotation(geometry_.GetAngle(), centerX, centerY),
70 AffineTransform2D::CreateOffset(-centerX, -centerY),
71 transform_); 71 transform_);
72 72
73 transformInverse_ = AffineTransform2D::Invert(transform_); 73 transformInverse_ = AffineTransform2D::Invert(transform_);
74 } 74 }
75 75
220 220
221 BroadcastMessage(RadiographyLayer::LayerEditedMessage(*this)); 221 BroadcastMessage(RadiographyLayer::LayerEditedMessage(*this));
222 } 222 }
223 223
224 void RadiographyLayer::SetSize(unsigned int width, 224 void RadiographyLayer::SetSize(unsigned int width,
225 unsigned int height) 225 unsigned int height,
226 bool emitLayerEditedEvent)
226 { 227 {
227 hasSize_ = true; 228 hasSize_ = true;
228 width_ = width; 229 width_ = width;
229 height_ = height; 230 height_ = height;
230 231
231 UpdateTransform(); 232 UpdateTransform();
232 BroadcastMessage(RadiographyLayer::LayerEditedMessage(*this)); 233
234 if (emitLayerEditedEvent)
235 {
236 BroadcastMessage(RadiographyLayer::LayerEditedMessage(*this));
237 }
233 } 238 }
234 239
235 240
236 Extent2D RadiographyLayer::GetExtent() const 241 Extent2D RadiographyLayer::GetExtent() const
237 { 242 {