13 #ifndef CXTEXTURE3DSLICERPROXY_H_ 14 #define CXTEXTURE3DSLICERPROXY_H_ 16 #include "cxResourceVisualizationExport.h" 58 virtual void setImages(std::vector<ImagePtr> images) {}
61 return std::vector<ImagePtr>();
108 void setImages(std::vector<ImagePtr> images);
111 void setTargetSpaceToR();
113 std::vector<ImagePtr> getImages();
117 void transformChangedSlot();
118 void transferFunctionChangedSlot();
119 void uploadChangedImage(QString uid);
126 void resetGeometryPlane();
128 void updateAndUploadImages(std::vector<ImagePtr> new_images_raw);
129 void updateAndUploadCoordinates();
130 void updateAndUploadColorAttribute();
136 QString getTCoordName(
int index);
137 void setColorAttributes(
int i);
138 std::vector<ImagePtr> convertToUnsigned(std::vector<ImagePtr> images_raw);
140 bool isNewInputImages(std::vector<ImagePtr> images_raw);
142 QString generateTextureCoordinateName(QString imageUid)
const;
143 void generateAndSetShaders();
151 std::vector<ImagePtr> mImages;
152 std::vector<ImagePtr> mRawImages;
154 bool mTargetSpaceIsR;
virtual std::vector< ImagePtr > getImages()
virtual SliceProxyPtr getSliceProxy()
vtkSmartPointer< class vtkActor > vtkActorPtr
vtkSmartPointer< class TextureSlicePainter > TextureSlicePainterPtr
vtkSmartPointer< class ShaderCallback > ShaderCallbackPtr
Transform3D Transform3D
Transform3D is a representation of an affine 3D transform.
vtkSmartPointer< class vtkFloatArray > vtkFloatArrayPtr
vtkSmartPointer< class vtkRenderWindow > vtkRenderWindowPtr
vtkSmartPointer< class vtkPolyDataAlgorithm > vtkPolyDataAlgorithmPtr
virtual void setImages(std::vector< ImagePtr > images)
virtual vtkActorPtr getActor()
Slice volumes using a SliceProxy.
virtual void setSliceProxy(SliceProxyPtr slicer)
virtual void setRenderWindow(vtkRenderWindowPtr window)
boost::shared_ptr< class SharedOpenGLContext > SharedOpenGLContextPtr
vtkSmartPointer< class vtkOpenGLPolyDataMapper > vtkOpenGLPolyDataMapperPtr
Helper class for GPU-based slicing.
virtual void setShaderPath(QString shaderFile)
vtkSmartPointer< class vtkLookupTable > vtkLookupTablePtr
boost::shared_ptr< class Texture3DSlicerProxy > Texture3DSlicerProxyPtr
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.
vtkSmartPointer< vtkPolyData > vtkPolyDataPtr
Eigen::Vector3d Vector3D
Vector3D is a representation of a point or vector in 3D.
vtkSmartPointer< class vtkPlaneSource > vtkPlaneSourcePtr
vtkSmartPointer< class vtkPolyDataAlgorithm > vtkPolyDataAlgorithmPtr
static bool isSupported(vtkRenderWindowPtr window)
virtual void setTargetSpaceToR()
virtual void setViewportData(const Transform3D &vpMs, const DoubleBoundingBox3D &vp)
virtual ~Texture3DSlicerProxy()
Namespace for all CustusX production code.