15 #ifndef __vtkMRMLDisplayNode_h    16 #define __vtkMRMLDisplayNode_h    24 class vtkAlgorithmOutput;
    41   void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
    46     PointsRepresentation = 0,
    54     FlatInterpolation = 0,
    71     UseManualScalarRange = 0,
    79   const char* GetScalarRangeFlagTypeAsString(
int flag);
    91   virtual void WriteXML(ostream& of, 
int indent) VTK_OVERRIDE;
   100                                  void *callData) VTK_OVERRIDE;
   107   virtual 
void UpdateReferences() VTK_OVERRIDE;
   110   virtual 
void UpdateScene(
vtkMRMLScene *scene) VTK_OVERRIDE;
   113   virtual 
void UpdateReferenceID(const 
char *oldID, const 
char *newID) VTK_OVERRIDE;
   117   vtkSetVector3Macro(Color, 
double);
   120   vtkGetVector3Macro(Color, 
double);
   124   vtkSetVector3Macro(EdgeColor, 
double);
   127   vtkGetVector3Macro(EdgeColor, 
double);
   131   vtkSetVector3Macro(SelectedColor, 
double);
   134   vtkGetVector3Macro(SelectedColor, 
double);
   138   vtkSetMacro(SelectedAmbient, 
double);
   141   vtkGetMacro(SelectedAmbient, 
double);
   145   vtkSetMacro(SelectedSpecular, 
double);
   148   vtkGetMacro(SelectedSpecular, 
double);
   152   vtkSetMacro(PointSize, 
double);
   155   vtkGetMacro(PointSize, 
double);
   159   vtkSetMacro(LineWidth, 
double);
   162   vtkGetMacro(LineWidth, 
double);
   166   vtkSetMacro(Representation, 
int);
   169   vtkGetMacro(Representation, 
int);
   173   vtkSetMacro(Opacity, 
double);
   176   vtkGetMacro(Opacity, 
double);
   180   vtkSetMacro(SliceIntersectionOpacity, 
double);
   183   vtkGetMacro(SliceIntersectionOpacity, 
double);
   187   vtkSetMacro(Ambient, 
double);
   190   vtkGetMacro(Ambient, 
double);
   194   vtkSetMacro(Diffuse, 
double);
   197   vtkGetMacro(Diffuse, 
double);
   201   vtkSetMacro(Specular, 
double);
   204   vtkGetMacro(Specular, 
double);
   208   vtkSetMacro(Power, 
double);
   211   vtkGetMacro(Power, 
double);
   215   vtkSetMacro(Visibility, 
int);
   218   vtkGetMacro(Visibility, 
int);
   221   vtkBooleanMacro(Visibility, 
int);
   227   virtual 
bool GetVisibility(const 
char* viewNodeID);
   231   vtkSetMacro(EdgeVisibility, 
int);
   232   vtkBooleanMacro(EdgeVisibility, 
int);
   235   vtkGetMacro(EdgeVisibility, 
int);
   239   vtkSetMacro(Clipping, 
int);
   242   vtkGetMacro(Clipping, 
int);
   245   vtkBooleanMacro(Clipping, 
int);
   250   vtkSetMacro(SliceIntersectionVisibility, 
int);
   254   vtkGetMacro(SliceIntersectionVisibility, 
int);
   258   vtkBooleanMacro(SliceIntersectionVisibility, 
int);
   262   vtkSetMacro(SliceIntersectionThickness, 
int);
   265   vtkGetMacro(SliceIntersectionThickness, 
int);
   270   vtkSetMacro(FrontfaceCulling, 
int);
   274   vtkGetMacro(FrontfaceCulling, 
int);
   277   vtkBooleanMacro(FrontfaceCulling, 
int);
   281   vtkSetMacro(BackfaceCulling, 
int);
   285   vtkGetMacro(BackfaceCulling, 
int);
   288   vtkBooleanMacro(BackfaceCulling, 
int);
   293   vtkSetMacro(Lighting, 
int);
   297   vtkGetMacro(Lighting, 
int);
   300   vtkBooleanMacro(Lighting, 
int);
   304   vtkSetMacro(Interpolation, 
int);
   307   vtkGetMacro(Interpolation, 
int);
   311   vtkSetMacro(Shading, 
int);
   314   vtkGetMacro(Shading, 
int);
   319   vtkSetMacro(ScalarVisibility, 
int);
   323   vtkGetMacro(ScalarVisibility, 
int);
   326   vtkBooleanMacro(ScalarVisibility, 
int);
   331   vtkSetMacro(VectorVisibility, 
int);
   335   vtkGetMacro(VectorVisibility, 
int);
   338   vtkBooleanMacro(VectorVisibility, 
int);
   343   vtkSetMacro(TensorVisibility, 
int);
   347   vtkGetMacro(TensorVisibility, 
int);
   350   vtkBooleanMacro(TensorVisibility, 
int);
   356   void SetAutoScalarRange(
int b);
   361   int GetAutoScalarRange();
   365   void AutoScalarRangeOn();
   366   void AutoScalarRangeOff();
   370   vtkSetVector2Macro(ScalarRange, 
double);
   373   vtkGetVector2Macro(ScalarRange, 
double);
   377   vtkSetMacro(ScalarRangeFlag, 
int);
   380   vtkGetMacro(ScalarRangeFlag, 
int);
   384   virtual 
void SetTextureImageDataConnection(vtkAlgorithmOutput *ImageDataConnection);
   387   vtkGetObjectMacro(TextureImageDataConnection, vtkAlgorithmOutput);
   392   vtkSetMacro(InterpolateTexture, 
int);
   396   vtkGetMacro(InterpolateTexture, 
int);
   399   vtkBooleanMacro(InterpolateTexture, 
int);
   403   virtual 
void SetAndObserveColorNodeID(const 
char *ColorNodeID);
   407   void SetAndObserveColorNodeID(const 
std::
string& ColorNodeID);
   410   vtkGetStringMacro(ColorNodeID);
   419   vtkSetStringMacro(ActiveScalarName);
   422   vtkGetStringMacro(ActiveScalarName);
   427   vtkSetMacro(ActiveAttributeLocation, 
int);
   430   vtkGetMacro(ActiveAttributeLocation, 
int);
   434   void AddViewNodeID(const 
char* viewNodeID);
   437   void RemoveViewNodeID(
char* viewNodeID);
   440   void RemoveAllViewNodeIDs();
   444   inline 
int GetNumberOfViewNodeIDs()const;
   448   const 
char* GetNthViewNodeID(
unsigned int index);
   452   inline 
std::vector< 
std::
string > GetViewNodeIDs()const;
   456   bool IsViewNodeIDPresent(const 
char* viewNodeID)const;
   461   bool IsDisplayableInView(const 
char* viewNodeID)const;
   466   void SetDisplayableOnlyInView(const 
char *viewNodeID);
   470   void SetViewNodeIDs(const 
std::vector< 
std::
string >& viewNodeIDs);
   473   static const 
char* GetAttributeLocationAsString(
int id);
   476   static 
int GetAttributeLocationFromString(const 
char* name);
   480   ~vtkMRMLDisplayNode();
   481   vtkMRMLDisplayNode(const vtkMRMLDisplayNode&);
   482   void operator=(const vtkMRMLDisplayNode&);
   495   vtkAlgorithmOutput    *TextureImageDataConnection;
   518   char *ActiveScalarName;
   524   int ActiveAttributeLocation;
   535   double SliceIntersectionOpacity;
   560   double SelectedAmbient;
   565   double SelectedSpecular;
   626   int SliceIntersectionVisibility;
   633   int SliceIntersectionThickness;
   639   int FrontfaceCulling;
   652   int ScalarVisibility;
   659   int VectorVisibility;
   666   int TensorVisibility;
   672   int InterpolateTexture;
   679   double ScalarRange[2];
   696   double SelectedColor[3];
   719   void SetColorNodeID(const 
char* 
id);
   723 int vtkMRMLDisplayNode::GetNumberOfViewNodeIDs()
const   725   return static_cast<int>(this->ViewNodeIDs.size());
   731   return this->ViewNodeIDs;
 
virtual void ReadXMLAttributes(const char **atts)
 
virtual void ProcessMRMLEvents(vtkObject *caller, unsigned long event, void *callData)
Propagate events generated in mrml. 
 
std::vector< std::string > GetViewNodeIDs() const
 
virtual void SetSceneReferences()
Update the references of the node to the scene. 
 
virtual void Copy(vtkMRMLNode *node)
Copy parameters (not including ID and Scene) from another node of the same type. 
 
A set of MRML Nodes that supports serialization and undo/redo. 
 
Abstract MRML node to represent color information. 
 
virtual void WriteXML(ostream &of, int indent)
 
void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
 
Abstract class that contains graphical display properties for displayable nodes. 
 
Abstract Superclass for all specific types of MRML nodes.