15 #ifndef __vtkMRMLModelDisplayNode_h 16 #define __vtkMRMLModelDisplayNode_h 23 class vtkAlgorithmOutput;
24 class vtkAssignAttribute;
25 class vtkGeometryFilter;
30 class vtkUnstructuredGrid;
41 void PrintSelf(ostream& os, vtkIndent indent)
override;
57 void WriteXML(ostream& of,
int indent)
override;
71 virtual void SetInputMeshConnection(vtkAlgorithmOutput* meshConnection);
72 virtual void SetInputPolyDataConnection(vtkAlgorithmOutput* polyDataConnection);
77 virtual vtkAlgorithmOutput* GetInputMeshConnection();
78 virtual vtkAlgorithmOutput* GetInputPolyDataConnection();
82 virtual vtkPointSet* GetInputMesh();
83 virtual vtkPolyData* GetInputPolyData();
84 virtual vtkUnstructuredGrid* GetInputUnstructuredGrid();
93 virtual vtkPointSet* GetOutputMesh();
94 virtual vtkPolyData* GetOutputPolyData();
95 virtual vtkUnstructuredGrid* GetOutputUnstructuredGrid();
100 virtual vtkAlgorithmOutput* GetOutputMeshConnection();
101 virtual vtkAlgorithmOutput* GetOutputPolyDataConnection();
117 void SetThresholdEnabled(
bool enabled);
118 vtkBooleanMacro(ThresholdEnabled,
bool);
123 vtkGetMacro(ThresholdEnabled,
bool);
127 void SetThresholdRange(
double min,
double max);
128 void SetThresholdRange(
double range[2]);
132 void GetThresholdRange(
double range[2]);
133 double* GetThresholdRange();
134 double GetThresholdMin();
135 double GetThresholdMax();
140 vtkGetMacro(SliceDisplayMode,
int);
141 vtkSetMacro(SliceDisplayMode,
int);
142 void SetSliceDisplayModeToIntersection();
143 void SetSliceDisplayModeToProjection();
144 void SetSliceDisplayModeToDistanceEncodedProjection();
147 static const char* GetSliceDisplayModeAsString(
int id);
148 static int GetSliceDisplayModeFromString(
const char* name);
154 virtual void SetAndObserveDistanceEncodedProjectionColorNodeID(
const char *colorNodeID);
157 virtual const char* GetDistanceEncodedProjectionColorNodeID();
168 vtkSetVector3Macro(BackfaceColorHSVOffset,
double);
169 vtkGetVector3Macro(BackfaceColorHSVOffset,
double);
179 void *callData)
override;
182 virtual void SetInputToMeshPipeline(vtkAlgorithmOutput* meshConnection);
219 double ThresholdRangeTemp[2];
221 double BackfaceColorHSVOffset[3];
vtkAssignAttribute * AssignAttribute
Show full model projected on the slice, colored by distance from slice plane.
void PrintSelf(ostream &os, vtkIndent indent) override
virtual vtkDataArray * GetActiveScalarArray()
MRML node to represent a display property of 3D surface model.
vtkGeometryFilter * ConvertToPolyDataFilter
Show full model projected on the slice (similar to MIP view of images)
void ReadXMLAttributes(const char **atts) override
virtual void SetActiveScalarName(const char *)
virtual vtkMRMLNode * CreateNodeInstance()=0
Create instance of the default node. Like New only virtual.
vtkThreshold * ThresholdFilter
vtkMRMLCopyContentMacro(vtkMRMLDisplayNode)
void WriteXML(ostream &of, int indent) override
Show model in slice view as intersection with slice.
void operator=(const vtkMRMLDisplayNode &)
virtual vtkDataSet * GetScalarDataSet()
Abstract MRML node to represent color information.
virtual void SetActiveAttributeLocation(int)
void ProcessMRMLEvents(vtkObject *caller, unsigned long event, void *callData) override
const char * GetNodeTagName() override
Get node XML tag name (like Volume, Model)
Abstract class that contains graphical display properties for displayable nodes.
Abstract Superclass for all specific types of MRML nodes.
vtkPassThrough * PassThrough
virtual void UpdateAssignedAttribute()