Class SliceViewCameraSynchronizeStrategy

Inheritance Relationships

Base Type

Class Documentation

class SliceViewCameraSynchronizeStrategy : public CameraSynchronizeStrategy

Inheritance diagram for SliceViewCameraSynchronizeStrategy:

digraph { graph [bgcolor="#00000000"] node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2] edge [color="#1414CE"] "2" [label="CameraSynchronizeStrategy" tooltip="CameraSynchronizeStrategy"] "1" [label="SliceViewCameraSynchronizeStrategy" tooltip="SliceViewCameraSynchronizeStrategy" fillcolor="#BFBFBF"] "1" -> "2" [dir=forward tooltip="public-inheritance"] }

Collaboration diagram for SliceViewCameraSynchronizeStrategy:

digraph { graph [bgcolor="#00000000"] node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2] edge [color="#1414CE"] "2" [label="CameraSynchronizeStrategy" tooltip="CameraSynchronizeStrategy"] "1" [label="SliceViewCameraSynchronizeStrategy" tooltip="SliceViewCameraSynchronizeStrategy" fillcolor="#BFBFBF"] "1" -> "2" [dir=forward tooltip="public-inheritance"] }

Synchronizes the default camera to the current slice node view configuration. The Slice renderer 0 camera is not configured nor modified during camera changes. All of its actors are set to render in 2D.

To simplify adding new pipelines, the sync adjusts the default camera to render in parallel projection in the correct orientation with respect to the current node configuration.

Clipping range is configured to show all actors attached to the default camera. If clipping is required, then it should be done inside the specific pipeline.

Public Functions

inline explicit SliceViewCameraSynchronizeStrategy(const vtkSmartPointer<vtkCamera> &camera, vtkMRMLSliceNode *sliceNode, std::function<void()> invokeModifiedEvent)
inline virtual void UpdateCamera() override