Slicer  5.3
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
List of all members | Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Static Protected Attributes
vtkSlicerMarkupsWidgetRepresentation3D Class Reference

Default representation for the markups widget in 3D views. More...

#include <Modules/Loadable/Markups/VTKWidgets/vtkSlicerMarkupsWidgetRepresentation3D.h>

Inheritance diagram for vtkSlicerMarkupsWidgetRepresentation3D:
Inheritance graph
Collaboration diagram for vtkSlicerMarkupsWidgetRepresentation3D:
Collaboration graph


class  ControlPointsPipeline3D

Public Types

typedef vtkSlicerMarkupsWidgetRepresentation Superclass
 Standard methods for instances of this class. More...
- Public Types inherited from vtkSlicerMarkupsWidgetRepresentation
enum  {
  Unselected, Selected, Active, Project,
  ProjectBack, NumberOfControlPointTypes
typedef vtkMRMLAbstractWidgetRepresentation Superclass
 Standard methods for instances of this class. More...
- Public Types inherited from vtkMRMLAbstractWidgetRepresentation
typedef vtkProp Superclass
 Standard methods for instances of this class. More...

Public Member Functions

bool AccuratePick (int x, int y, double pickPoint[3], double pickNormal[3]=nullptr)
void CanInteract (vtkMRMLInteractionEventData *interactionEventData, int &foundComponentType, int &foundComponentIndex, double &closestDistance2) override
virtual void CanInteractWithHandles (vtkMRMLInteractionEventData *interactionEventData, int &foundComponentType, int &foundComponentIndex, double &closestDistance2)
 Check if interaction with the transformation handles is possible. More...
void CanInteractWithLine (vtkMRMLInteractionEventData *interactionEventData, int &foundComponentType, int &foundComponentIndex, double &closestDistance2)
void GetActors (vtkPropCollection *) override
 Methods to make this class behave as a vtkProp. More...
double * GetBounds () override
 Return the bounds of the representation. More...
virtual const char * GetClassName ()
bool GetNthControlPointViewVisibility (int n)
virtual double GetOccludedRelativeOffset ()
vtkTypeBool HasTranslucentPolygonalGeometry () override
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent) override
void ReleaseGraphicsResources (vtkWindow *) override
int RenderOpaqueGeometry (vtkViewport *viewport) override
int RenderOverlay (vtkViewport *viewport) override
int RenderTranslucentPolygonalGeometry (vtkViewport *viewport) override
virtual void SetOccludedRelativeOffset (double)
void SetRenderer (vtkRenderer *ren) override
void UpdateFromMRML (vtkMRMLNode *caller, unsigned long event, void *callData=nullptr) override
- Public Member Functions inherited from vtkSlicerMarkupsWidgetRepresentation
virtual int FindClosestPointOnWidget (const int displayPos[2], double worldPos[3], int *idx)
void GetActors (vtkPropCollection *) override
 Methods to make this class behave as a vtkProp. More...
virtual vtkPolyData * GetControlPointsPolyData (int controlPointType)
virtual void GetInteractionHandleAxisWorld (int type, int index, double axis[3])
 Get the axis for the handle specified by the index. More...
virtual void GetInteractionHandleOriginWorld (double origin[3])
 Get the origin of the interaction handle widget. More...
virtual void GetInteractionHandlePositionWorld (int type, int index, double position[3])
 Get the position of an interaction handle in world coordinates. More...
virtual vtkPolyData * GetLabelControlPointsPolyData (int pipeline)
virtual vtkStringArray * GetLabels (int pipeline)
virtual vtkMRMLMarkupsDisplayNodeGetMarkupsDisplayNode ()
virtual vtkMRMLMarkupsNodeGetMarkupsNode ()
virtual vtkMRMLMarkupsNode::ControlPointGetNthControlPoint (int n)
 Get the nth control point. More...
virtual int GetNthControlPointDisplayPosition (int n, double pos[2])
virtual int GetNumberOfControlPoints ()
 Get number of control points. More...
virtual vtkPointPlacer * GetPointPlacer ()
virtual bool GetTransformationReferencePoint (double referencePointWorld[3])
 Translation, rotation, scaling will happen around this position. More...
vtkTypeBool HasTranslucentPolygonalGeometry () override
void PrintSelf (ostream &os, vtkIndent indent) override
void ReleaseGraphicsResources (vtkWindow *) override
int RenderOpaqueGeometry (vtkViewport *viewport) override
int RenderOverlay (vtkViewport *viewport) override
int RenderTranslucentPolygonalGeometry (vtkViewport *viewport) override
virtual void SetMarkupsDisplayNode (vtkMRMLMarkupsDisplayNode *markupsDisplayNode)
 Set/Get the vtkMRMLMarkipsNode connected with this representation. More...
virtual void UpdateCenterOfRotation ()
 Compute the center of rotation and update it in the Markups node. More...
bool IsDisplayable ()
- Public Member Functions inherited from vtkMRMLAbstractWidgetRepresentation
virtual void AlwaysOnTopOff ()
virtual void AlwaysOnTopOn ()
virtual bool GetAlwaysOnTop ()
virtual double GetPickingTolerance ()
void PrintSelf (ostream &os, vtkIndent indent) override
virtual void SetAlwaysOnTop (bool)
virtual void SetPickingTolerance (double)
double * GetBounds () VTK_SIZEHINT(6) override
void GetActors (vtkPropCollection *) override
void GetActors2D (vtkPropCollection *) override
void GetVolumes (vtkPropCollection *) override
void ReleaseGraphicsResources (vtkWindow *) override
int RenderOverlay (vtkViewport *vtkNotUsed(viewport)) override
int RenderOpaqueGeometry (vtkViewport *vtkNotUsed(viewport)) override
int RenderTranslucentPolygonalGeometry (vtkViewport *vtkNotUsed(viewport)) override
int RenderVolumetricGeometry (vtkViewport *vtkNotUsed(viewport)) override
vtkTypeBool HasTranslucentPolygonalGeometry () override
virtual vtkRenderer * GetRenderer ()
virtual void SetApplicationLogic (vtkMRMLApplicationLogic *appLogic)
virtual vtkMRMLApplicationLogicGetApplicationLogic ()
virtual void SetViewNode (vtkMRMLAbstractViewNode *viewNode)
virtual vtkMRMLAbstractViewNodeGetViewNode ()
virtual bool GetNeedToRender ()
virtual void SetNeedToRender (bool)
virtual void NeedToRenderOn ()
virtual void NeedToRenderOff ()

Static Public Member Functions

static int IsTypeOf (const char *type)
static vtkSlicerMarkupsWidgetRepresentation3DSafeDownCast (vtkObject *o)
- Static Public Member Functions inherited from vtkSlicerMarkupsWidgetRepresentation
static int IsTypeOf (const char *type)
static vtkSlicerMarkupsWidgetRepresentationSafeDownCast (vtkObject *o)
- Static Public Member Functions inherited from vtkMRMLAbstractWidgetRepresentation
static int IsTypeOf (const char *type)
static vtkMRMLAbstractWidgetRepresentationSafeDownCast (vtkObject *o)

Protected Member Functions

ControlPointsPipeline3DGetControlPointsPipeline (int controlPointType)
double GetViewScaleFactorAtPosition (double positionWorld[3], vtkMRMLInteractionEventData *interactionEventData=nullptr)
virtual void UpdateAllPointsAndLabelsFromMRML ()
virtual void UpdateControlPointGlyphOrientation ()
void UpdateControlPointSize () override
void UpdateInteractionPipeline () override
 Update the interaction pipeline. More...
virtual void UpdateNthPointAndLabelFromMRML (int n)
void UpdateRelativeCoincidentTopologyOffsets (vtkMapper *mapper, vtkMapper *occludedMapper)
virtual void UpdateRelativeCoincidentTopologyOffsets (vtkMapper *mapper)
void UpdateViewScaleFactor () override
 vtkSlicerMarkupsWidgetRepresentation3D ()
 ~vtkSlicerMarkupsWidgetRepresentation3D () override
- Protected Member Functions inherited from vtkSlicerMarkupsWidgetRepresentation
void BuildLine (vtkPolyData *linePolyData, bool displayPosition)
bool GetAllControlPointsSelected ()
 Convenience method. More...
virtual bool GetAllControlPointsVisible ()
 Convenience method. More...
double * GetWidgetColor (int controlPointType)
virtual void SetMarkupsNode (vtkMRMLMarkupsNode *markupsNode)
virtual void SetupInteractionPipeline ()
virtual void UpdateInteractionHandleSize ()
 vtkSlicerMarkupsWidgetRepresentation ()
 ~vtkSlicerMarkupsWidgetRepresentation () override
- Protected Member Functions inherited from vtkMRMLAbstractWidgetRepresentation
void AddActorsBounds (vtkBoundingBox &bounds, const std::vector< vtkProp *> &actors, double *additionalBounds=nullptr)
void GetRendererComputedDisplayPositionFromWorldPosition (const double worldPos[3], double displayPos[2])
virtual void UpdateRelativeCoincidentTopologyOffsets (vtkMapper *mapper)
 vtkMRMLAbstractWidgetRepresentation ()
 ~vtkMRMLAbstractWidgetRepresentation () override

Static Protected Member Functions

static vtkFloatArray * GetCachedZBuffer (vtkRenderer *renderer)
static void OnRenderCompleted (vtkObject *caller, unsigned long event, void *clientData, void *callData)
- Static Protected Member Functions inherited from vtkSlicerMarkupsWidgetRepresentation
static int GetGlyphTypeSourceFromDisplay (int glyphTypeDisplay)

Protected Attributes

vtkSmartPointer< vtkCellPicker > AccuratePicker
bool HideTextActorIfAllPointsOccluded
double OccludedRelativeOffset
vtkSmartPointer< vtkCallbackCommand > RenderCompletedCallback
bool TextActorOccluded
double TextActorPositionWorld [3]
- Protected Attributes inherited from vtkSlicerMarkupsWidgetRepresentation
ControlPointsPipelineControlPoints [NumberOfControlPointTypes]
double ControlPointSize
vtkTypeBool CurveClosed
vtkWeakPointer< vtkMRMLMarkupsDisplayNodeMarkupsDisplayNode
vtkWeakPointer< vtkMRMLMarkupsNodeMarkupsNode
vtkTimeStamp MarkupsTransformModifiedTime
vtkSmartPointer< vtkPointPlacer > PointPlacer
double ScreenSizePixel
vtkSmartPointer< vtkTextActor > TextActor
double ViewScaleFactorMmPerPixel
- Protected Attributes inherited from vtkMRMLAbstractWidgetRepresentation
bool AlwaysOnTop
vtkWeakPointer< vtkMRMLApplicationLogicApplicationLogic
double Bounds [6]
 Temporary variable to store GetBounds() result. More...
bool NeedToRender
double PickingTolerance
vtkWeakPointer< vtkRenderer > Renderer
 The renderer in which this widget is placed. More...
double ScreenScaleFactor
 Allows global rescaling of all widgets (to compensate for larger or smaller physical screen size) More...
vtkWeakPointer< vtkMRMLAbstractViewNodeViewNode

Static Protected Attributes

static std::map< vtkRenderer *, vtkSmartPointer< vtkFloatArray > > CachedZBuffers

Additional Inherited Members

- Protected Types inherited from vtkSlicerMarkupsWidgetRepresentation
typedef std::vector< MarkupsInteractionPipeline::HandleInfoHandleInfoList

Detailed Description

Default representation for the markups widget in 3D views.

See also
vtkSlicerMarkupsWidgetRepresentation vtkSlicerMarkupsWidget

Definition at line 46 of file vtkSlicerMarkupsWidgetRepresentation3D.h.

Member Typedef Documentation

◆ Superclass

Standard methods for instances of this class.

Definition at line 50 of file vtkSlicerMarkupsWidgetRepresentation3D.h.

Constructor & Destructor Documentation

◆ vtkSlicerMarkupsWidgetRepresentation3D()

vtkSlicerMarkupsWidgetRepresentation3D::vtkSlicerMarkupsWidgetRepresentation3D ( )

◆ ~vtkSlicerMarkupsWidgetRepresentation3D()

vtkSlicerMarkupsWidgetRepresentation3D::~vtkSlicerMarkupsWidgetRepresentation3D ( )

Member Function Documentation

◆ AccuratePick()

bool vtkSlicerMarkupsWidgetRepresentation3D::AccuratePick ( int  x,
int  y,
double  pickPoint[3],
double  pickNormal[3] = nullptr 

◆ CanInteract()

void vtkSlicerMarkupsWidgetRepresentation3D::CanInteract ( vtkMRMLInteractionEventData interactionEventData,
int &  foundComponentType,
int &  foundComponentIndex,
double &  closestDistance2 

Return found component type (as vtkMRMLMarkupsDisplayNode::ComponentType). closestDistance2 is the squared distance in display coordinates from the closest position where interaction is possible. componentIndex returns index of the found component (e.g., if control point is found then control point index is returned).

Reimplemented from vtkSlicerMarkupsWidgetRepresentation.

Reimplemented in vtkSlicerROIRepresentation3D, and vtkSlicerPlaneRepresentation3D.

◆ CanInteractWithHandles()

virtual void vtkSlicerMarkupsWidgetRepresentation3D::CanInteractWithHandles ( vtkMRMLInteractionEventData interactionEventData,
int &  foundComponentType,
int &  foundComponentIndex,
double &  closestDistance2 

Check if interaction with the transformation handles is possible.

◆ CanInteractWithLine()

void vtkSlicerMarkupsWidgetRepresentation3D::CanInteractWithLine ( vtkMRMLInteractionEventData interactionEventData,
int &  foundComponentType,
int &  foundComponentIndex,
double &  closestDistance2 

Checks if interaction with straight line between visible points is possible. Can be used on the output of CanInteract, as if no better component is found then the input is returned.

◆ GetActors()

void vtkSlicerMarkupsWidgetRepresentation3D::GetActors ( vtkPropCollection *  )

Methods to make this class behave as a vtkProp.

◆ GetBounds()

double* vtkSlicerMarkupsWidgetRepresentation3D::GetBounds ( )

Return the bounds of the representation.

◆ GetCachedZBuffer()

static vtkFloatArray* vtkSlicerMarkupsWidgetRepresentation3D::GetCachedZBuffer ( vtkRenderer *  renderer)

◆ GetClassName()

virtual const char* vtkSlicerMarkupsWidgetRepresentation3D::GetClassName ( )

◆ GetControlPointsPipeline()

ControlPointsPipeline3D* vtkSlicerMarkupsWidgetRepresentation3D::GetControlPointsPipeline ( int  controlPointType)

◆ GetNthControlPointViewVisibility()

bool vtkSlicerMarkupsWidgetRepresentation3D::GetNthControlPointViewVisibility ( int  n)

Return true if the control point is actually visible (displayed and not occluded by other objects in the view). Useful for non-regression tests that need to inspect internal state of the widget.

◆ GetOccludedRelativeOffset()

virtual double vtkSlicerMarkupsWidgetRepresentation3D::GetOccludedRelativeOffset ( )

◆ GetViewScaleFactorAtPosition()

double vtkSlicerMarkupsWidgetRepresentation3D::GetViewScaleFactorAtPosition ( double  positionWorld[3],
vtkMRMLInteractionEventData interactionEventData = nullptr 

◆ HasTranslucentPolygonalGeometry()

vtkTypeBool vtkSlicerMarkupsWidgetRepresentation3D::HasTranslucentPolygonalGeometry ( )

◆ IsA()

virtual int vtkSlicerMarkupsWidgetRepresentation3D::IsA ( const char *  type)

◆ IsTypeOf()

static int vtkSlicerMarkupsWidgetRepresentation3D::IsTypeOf ( const char *  type)

◆ OnRenderCompleted()

static void vtkSlicerMarkupsWidgetRepresentation3D::OnRenderCompleted ( vtkObject *  caller,
unsigned long  event,
void *  clientData,
void *  callData 

◆ PrintSelf()

void vtkSlicerMarkupsWidgetRepresentation3D::PrintSelf ( ostream &  os,
vtkIndent  indent 

◆ ReleaseGraphicsResources()

void vtkSlicerMarkupsWidgetRepresentation3D::ReleaseGraphicsResources ( vtkWindow *  )

◆ RenderOpaqueGeometry()

int vtkSlicerMarkupsWidgetRepresentation3D::RenderOpaqueGeometry ( vtkViewport *  viewport)

◆ RenderOverlay()

int vtkSlicerMarkupsWidgetRepresentation3D::RenderOverlay ( vtkViewport *  viewport)

◆ RenderTranslucentPolygonalGeometry()

int vtkSlicerMarkupsWidgetRepresentation3D::RenderTranslucentPolygonalGeometry ( vtkViewport *  viewport)

◆ SafeDownCast()

static vtkSlicerMarkupsWidgetRepresentation3D* vtkSlicerMarkupsWidgetRepresentation3D::SafeDownCast ( vtkObject *  o)

◆ SetOccludedRelativeOffset()

virtual void vtkSlicerMarkupsWidgetRepresentation3D::SetOccludedRelativeOffset ( double  )

Relative offset used for rendering occluded actors. The range of coincident offset can be between +/- 65000. Positive values move the occluded objects away from the camera, and negative values towards. Default value is -25000.

◆ SetRenderer()

void vtkSlicerMarkupsWidgetRepresentation3D::SetRenderer ( vtkRenderer *  ren)

Set the renderer in which the representations draws itself. Typically the renderer is set by the associated widget. Use the widget's SetCurrentRenderer() method in most cases; otherwise there is a risk of inconsistent behavior as events and drawing may be performed in different viewports. WARNING: The renderer is NOT reference counted by the representation, in order to avoid reference loops. Be sure that the representation lifetime does not extend beyond the renderer lifetime.

Reimplemented from vtkMRMLAbstractWidgetRepresentation.

◆ UpdateAllPointsAndLabelsFromMRML()

virtual void vtkSlicerMarkupsWidgetRepresentation3D::UpdateAllPointsAndLabelsFromMRML ( )

◆ UpdateControlPointGlyphOrientation()

virtual void vtkSlicerMarkupsWidgetRepresentation3D::UpdateControlPointGlyphOrientation ( )

◆ UpdateControlPointSize()

void vtkSlicerMarkupsWidgetRepresentation3D::UpdateControlPointSize ( )

◆ UpdateFromMRML()

void vtkSlicerMarkupsWidgetRepresentation3D::UpdateFromMRML ( vtkMRMLNode caller,
unsigned long  event,
void *  callData = nullptr 

Subclasses of vtkSlicerMarkupsWidgetRepresentation3D must implement these methods. These are the methods that the widget and its representation use to communicate with each other.

Reimplemented from vtkSlicerMarkupsWidgetRepresentation.

Reimplemented in vtkSlicerROIRepresentation3D, and vtkSlicerPlaneRepresentation3D.

◆ UpdateInteractionPipeline()

void vtkSlicerMarkupsWidgetRepresentation3D::UpdateInteractionPipeline ( )

Update the interaction pipeline.

Reimplemented from vtkSlicerMarkupsWidgetRepresentation.

Reimplemented in vtkSlicerPlaneRepresentation3D, and vtkSlicerROIRepresentation3D.

◆ UpdateNthPointAndLabelFromMRML()

virtual void vtkSlicerMarkupsWidgetRepresentation3D::UpdateNthPointAndLabelFromMRML ( int  n)

◆ UpdateRelativeCoincidentTopologyOffsets() [1/2]

void vtkSlicerMarkupsWidgetRepresentation3D::UpdateRelativeCoincidentTopologyOffsets ( vtkMapper *  mapper,
vtkMapper *  occludedMapper 

Update the occluded relative offsets for an occluded mapper Allows occluded regions to be rendered on top. Sets the following parameter on the mappers:

  • RelativeCoincidentTopologyLineOffsetParameters
  • RelativeCoincidentTopologyPolygonOffsetParameters
  • RelativeCoincidentTopologyPointOffsetParameter

◆ UpdateRelativeCoincidentTopologyOffsets() [2/2]

virtual void vtkMRMLAbstractWidgetRepresentation::UpdateRelativeCoincidentTopologyOffsets

◆ UpdateViewScaleFactor()

void vtkSlicerMarkupsWidgetRepresentation3D::UpdateViewScaleFactor ( )

Member Data Documentation

◆ AccuratePicker

vtkSmartPointer<vtkCellPicker> vtkSlicerMarkupsWidgetRepresentation3D::AccuratePicker

Definition at line 160 of file vtkSlicerMarkupsWidgetRepresentation3D.h.

◆ CachedZBuffers

std::map<vtkRenderer*, vtkSmartPointer<vtkFloatArray> > vtkSlicerMarkupsWidgetRepresentation3D::CachedZBuffers

Definition at line 167 of file vtkSlicerMarkupsWidgetRepresentation3D.h.

◆ HideTextActorIfAllPointsOccluded

bool vtkSlicerMarkupsWidgetRepresentation3D::HideTextActorIfAllPointsOccluded

Definition at line 164 of file vtkSlicerMarkupsWidgetRepresentation3D.h.

◆ OccludedRelativeOffset

double vtkSlicerMarkupsWidgetRepresentation3D::OccludedRelativeOffset

Definition at line 165 of file vtkSlicerMarkupsWidgetRepresentation3D.h.

◆ RenderCompletedCallback

vtkSmartPointer<vtkCallbackCommand> vtkSlicerMarkupsWidgetRepresentation3D::RenderCompletedCallback

Definition at line 169 of file vtkSlicerMarkupsWidgetRepresentation3D.h.

◆ TextActorOccluded

bool vtkSlicerMarkupsWidgetRepresentation3D::TextActorOccluded

Definition at line 163 of file vtkSlicerMarkupsWidgetRepresentation3D.h.

◆ TextActorPositionWorld

double vtkSlicerMarkupsWidgetRepresentation3D::TextActorPositionWorld[3]

Definition at line 162 of file vtkSlicerMarkupsWidgetRepresentation3D.h.

The documentation for this class was generated from the following file: