34 #ifndef CXTEXTURE3DSLICERPROXY_H_ 35 #define CXTEXTURE3DSLICERPROXY_H_ 37 #include "cxResourceVisualizationExport.h" 79 virtual void setImages(std::vector<ImagePtr> images) {}
82 return std::vector<ImagePtr>();
129 void setImages(std::vector<ImagePtr> images);
132 void setTargetSpaceToR();
134 std::vector<ImagePtr> getImages();
138 void transformChangedSlot();
139 void transferFunctionChangedSlot();
147 void resetGeometryPlane();
149 void updateAndUploadImages(std::vector<ImagePtr> new_images_raw);
150 void updateAndUploadCoordinates();
151 void updateAndUploadColorAttribute();
157 QString getTCoordName(
int index);
158 void setColorAttributes(
int i);
159 std::vector<ImagePtr> convertToUnsigned(std::vector<ImagePtr> images_raw);
161 bool isNewInputImages(std::vector<ImagePtr> images_raw);
163 QString generateTextureCoordinateName(QString imageUid)
const;
164 void generateAndSetShaders();
172 std::vector<ImagePtr> mImages;
173 std::vector<ImagePtr> mRawImages;
175 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.