15 #ifndef __vtkMRMLModelNode_h    16 #define __vtkMRMLModelNode_h    24 class vtkAlgorithmOutput;
    25 class vtkAssignAttributes;
    26 class vtkEventForwarderCommand;
    30 class vtkTransformFilter;
    31 class vtkUnstructuredGrid;
    47   void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
    56   virtual const 
char* GetNodeTagName() VTK_OVERRIDE {
return "Model";};
    65                                    void *  ) VTK_OVERRIDE;
    73   virtual void SetAndObserveMesh(vtkPointSet *Mesh);
    74   virtual void SetAndObservePolyData(vtkPolyData *polyData);
    78   virtual vtkPointSet* GetMesh();
    82   virtual vtkPolyData* GetPolyData();
    87   virtual vtkUnstructuredGrid* GetUnstructuredGrid();
    92   virtual void SetPolyDataConnection(vtkAlgorithmOutput *inputPort);
    97   virtual void SetUnstructuredGridConnection(vtkAlgorithmOutput *inputPort);
   101   vtkGetObjectMacro(MeshConnection,vtkAlgorithmOutput)
   104   virtual vtkAlgorithmOutput* GetPolyDataConnection();
   111   virtual vtkAlgorithmOutput* GetUnstructuredGridConnection();
   116     PolyDataMeshType = 0,
   117     UnstructuredGridMeshType
   125   vtkGetMacro(MeshType, MeshTypeHint);
   135     MeshModifiedEvent = 17001,
   136     PolyDataModifiedEvent = 17001 
   141   void AddPointScalars(vtkDataArray *array);
   145   void AddCellScalars(vtkDataArray *array);
   150   void AddScalars(vtkDataArray *array, 
int location);
   153   void RemoveScalars(
const char *scalarName);
   158   bool HasPointScalarName(
const char* scalarName);
   163   bool HasCellScalarName(
const char* scalarName);
   172   int SetActivePointScalars(
const char *scalarName, 
int attributeType);
   179   const char *GetActivePointScalarName(
int type);
   188   int SetActiveCellScalars(
const char *scalarName, 
int attributeType);
   194   const char *GetActiveCellScalarName(
int type);
   199   static int GetAttributeTypeFromString(
const char* typeName);
   211   int CompositeScalars(
const char* backgroundName, 
const char* overlayName,
   212                        float overlayMin, 
float overlayMax,
   213                        int showOverlayPositive, 
int showOverlayNegative,
   220   virtual void GetRASBounds(
double bounds[6]) VTK_OVERRIDE;
   225   virtual void GetBounds(
double bounds[6]) VTK_OVERRIDE;
   231   virtual void TransformBoundsToRAS(
double inputBounds_Local[6], 
double outputBounds_RAS[6]);
   234   virtual 
void ApplyTransform(vtkAbstractTransform* transform) VTK_OVERRIDE;
   238   virtual 
std::
string GetDefaultStorageNodeClassName(const 
char* filename ) VTK_OVERRIDE;
   241   virtual 
void CreateDefaultDisplayNodes() VTK_OVERRIDE;
   250   virtual 
bool GetModifiedSinceRead() VTK_OVERRIDE;
   255   vtkMRMLModelNode(const vtkMRMLModelNode&);
   256   void operator=(const vtkMRMLModelNode&);
   259   virtual 
void SetMeshConnection(vtkAlgorithmOutput *inputPort);
   276   void SetMeshToDisplayNodes();
   283   vtkAlgorithmOutput* MeshConnection;
   284   vtkEventForwarderCommand* DataEventForwarder;
   285   MeshTypeHint MeshType;
 MRML node to represent a display property of 3D surface model. 
 
virtual void GetBounds(double bounds[6])
 
MRML node to represent a 3D surface model. 
 
void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
 
virtual void ProcessMRMLEvents(vtkObject *, unsigned long, void *) VTK_OVERRIDE
alternative method to propagate events generated in Display nodes 
 
A supercalss for other storage nodes. 
 
virtual void Copy(vtkMRMLNode *node) VTK_OVERRIDE
Copy the node's attributes to this object. 
 
Abstract class that contains graphical display properties for displayable nodes. 
 
Abstract Superclass for all specific types of MRML nodes. 
 
Class to hold information about a node reference. 
 
virtual vtkMRMLNode * CreateNodeInstance() VTK_OVERRIDE=0
MRMLNode methods. 
 
virtual void GetRASBounds(double bounds[6])