35 #include <vtkImageData.h>
42 Image(uid, source->getVtkImageData(), name),
43 mSliceProxy(sliceProxy)
47 connect(source.get(), SIGNAL(newFrame()),
48 this, SLOT(newFrame()));
52 static double computeEffectiveOffset(
double offset,
double size)
72 double offsetX = computeEffectiveOffset( mToolPositionX, size[0] );
73 double offsetY = computeEffectiveOffset( mToolPositionY, size[1] );
76 return mSliceProxy->get_sMr().inv() * Flip * T;
87 double scalefactorX =(viewport[1]-viewport[0])/(
double)size[0];
88 double scalefactorY = (viewport[3]-viewport[2])/(
double)size[1];
89 return std::min(scalefactorX, scalefactorY);
92 void NavigatedVideoImage::newFrame()
96 if (spacing[0] != mSpacing[0] || spacing[1] != mSpacing[1] ||
97 spacing[2] != mSpacing[2] )
102 mSpacing[0] = spacing[0];
103 mSpacing[1] = spacing[1];
104 mSpacing[2] = spacing[2];
115 mToolPositionX = positionX;
116 mToolPositionY = positionY;
virtual void setToolPosition(double, double)
Set the position of the tool point in the video image.
Transform3D createTransformScale(const Vector3D &scale_)
Transform3D Transform3D
Transform3D is a representation of an affine 3D transform.
void transformChanged()
emitted when transform is changed
NavigatedVideoImage(QString uid, VideoSourcePtr source, SliceProxyPtr sliceProxy, QString name="")
virtual double computeFullViewZoomFactor(DoubleBoundingBox3D viewport) const
Compute the largest zoom factor that will still fit the entire video image in the given viewport...
boost::shared_ptr< class VideoSource > VideoSourcePtr
Transform3D createTransformTranslate(const Vector3D &translation)
Representation of a floating-point bounding box in 3D. The data are stored as {xmin,xmax,ymin,ymax,zmin,zmax}, in order to simplify communication with vtk.
Eigen::Vector3d Vector3D
Vector3D is a representation of a point or vector in 3D.
void vtkImageDataChanged()
emitted when the vktimagedata are invalidated and must be retrieved anew.
virtual Transform3D get_rMd() const
vtkImageDataPtr mBaseImageData
image data in data space
virtual ImageLUT2DPtr getLookupTable2D()