9 #include "fwRenderVTK/config.hpp" 10 #include "fwRenderVTK/SRender.hpp" 12 #include <fwCom/helper/SigSlotConnection.hpp> 14 #include <fwServices/IHasServices.hpp> 15 #include <fwServices/IService.hpp> 20 class vtkPropCollection;
22 class vtkRenderWindowInteractor;
42 FWRENDERVTK_API
void setRenderService( SRender::sptr service );
45 FWRENDERVTK_API SRender::sptr getRenderService()
const;
48 FWRENDERVTK_API
void setRendererId(SRender::RendererIdType newID);
51 FWRENDERVTK_API SRender::RendererIdType getRendererId()
const;
54 FWRENDERVTK_API vtkRenderer* getRenderer();
57 FWRENDERVTK_API
void setPickerId(SRender::PickerIdType newID);
60 FWRENDERVTK_API SRender::PickerIdType getPickerId()
const;
68 FWRENDERVTK_API vtkAbstractPropPicker* getPicker(std::string pickerId =
"");
71 FWRENDERVTK_API
void setTransformId(SRender::VtkObjectIdType newID);
74 FWRENDERVTK_API SRender::VtkObjectIdType getTransformId()
const;
77 FWRENDERVTK_API vtkTransform* getTransform();
80 FWRENDERVTK_API vtkObject* getVtkObject(
const SRender::VtkObjectIdType& objectId)
const;
83 FWRENDERVTK_API vtkRenderWindowInteractor* getInteractor();
90 FWRENDERVTK_API IAdaptor::sptr getAssociatedAdaptor(vtkProp* prop,
int depth);
98 FWRENDERVTK_API
void getAllSubProps(vtkPropCollection* propc,
int depth = -1);
101 FWRENDERVTK_API
void setVtkPipelineModified();
104 FWRENDERVTK_API
bool getAutoRender()
const;
111 FWRENDERVTK_API
IAdaptor() noexcept;
116 FWRENDERVTK_API virtual ~
IAdaptor() noexcept;
119 FWRENDERVTK_API
void configureParams();
122 FWRENDERVTK_API
void initialize();
125 FWRENDERVTK_API
void registerProp(vtkProp* prop);
128 FWRENDERVTK_API
void unregisterProps();
131 FWRENDERVTK_API
void addToRenderer(vtkProp* prop);
134 FWRENDERVTK_API
void removeAllPropFromRenderer();
141 FWRENDERVTK_API
void addToPicker(vtkProp* prop,
std::
string pickerId = "");
148 FWRENDERVTK_API
void removeFromPicker(vtkProp* prop,
std::
string pickerId = "");
155 FWRENDERVTK_API static
void getProps(vtkPropCollection* outPropc, vtkProp* inProp);
158 FWRENDERVTK_API
void requestRender();
161 bool m_vtkPipelineModified;
162 SRender::RendererIdType m_rendererId;
163 SRender::PickerIdType m_pickerId;
164 SRender::VtkObjectIdType m_transformId;
167 vtkPropCollection* m_propCollection;
169 ::
fwCom::helper::SigSlotConnection m_connections;
Base class for all services.
Interface for objects that need to manage services.
Namespace containing fw4spl communication tools.
The generic scene service shows adaptors in a 3D VTK scene.
#define fwCoreAllowSharedFromThis()
Generate getSptr and getConstSptr methods.
#define fwCoreServiceClassDefinitionsMacro(_classinfo_)
Generate common code for services classes.
The namespace fwRenderVTK contains classes for rendering with VTK.
Base class for VTK adaptors.