15#ifndef __vtkMRMLDiffusionTensorDisplayPropertiesNode_h
16#define __vtkMRMLDiffusionTensorDisplayPropertiesNode_h
22class vtkAlgorithmOutput;
40 void PrintSelf(ostream& os, vtkIndent indent)
override;
54 void WriteXML(ostream& of,
int indent)
override;
62 const char*
GetNodeTagName()
override {
return "DiffusionTensorDisplayProperties";}
virtual void SetScalarInvariant(int)
const char * GetNodeTagName() override
Get node XML tag name (like Volume, Model)
void operator=(const vtkMRMLDiffusionTensorDisplayPropertiesNode &)
virtual const char * GetGlyphGeometryAsString()
Return a text string describing the GlyphGeometry variable.
int GetFirstGlyphGeometry()
Return the lowest and highest integers, for use in looping.
int GlyphExtractEigenvalues
void SetTubeGlyphNumberOfSides(int numberOfSides)
void SetGlyphGeometryToSuperquadrics()
void SetGlyphEigenvector(int eigenvector)
Set the type of glyph geometry (line, ellipsoid, etc.)
void WriteXML(ostream &of, int indent) override
Write this node's information to a MRML file in XML format.
static int GetLastScalarInvariant()
static int GetFirstColorGlyphBy()
Return the lowest and highest integers, for use in looping.
static int GetLastColorGlyphBy()
vtkMRMLDiffusionTensorDisplayPropertiesNode(const vtkMRMLDiffusionTensorDisplayPropertiesNode &)
virtual const char * GetScalarInvariantAsString()
TO DO: add the rest of the scalars.
static const char * GetScalarEnumAsString(int val)
void ColorGlyphByTrace()
Set scalar invariant to trace (sum of eigenvalues).
void SetLineGlyphResolution(int resolution)
void SetGlyphEigenvectorToMiddle()
int GetLastGlyphGeometry()
int GlyphGeometry
Glyph general parameters.
void SetScalarInvariantToPlanarMeasure()
Set scalar invariant to C_P (Westin's planar measure)
int EllipsoidGlyphThetaResolution
Ellipsoid Glyph parameters.
static bool ScalarInvariantHasKnownScalarRange(int ScalarInvariant)
void SetTubeGlyphRadius(double radius)
Set the radius of the tube glyph.
vtkMRMLStorageNode * CreateDefaultStorageNode() override
Create default storage node or nullptr if does not have one.
void SetScalarInvariantToLinearMeasure()
Set scalar invariant to C_L (Westin's linear measure)
void SetScalarInvariantToRelativeAnisotropy()
Set scalar invariant to relative anisotropy.
void ColorGlyphByLinearMeasure()
Set scalar invariant to FA (normalized variance of eigenvalues)
void SetGlyphGeometryToTubes()
int SuperquadricGlyphThetaResolution
void SetGlyphGeometry(int geometry)
Set the type of glyph geometry (line, ellipsoid, etc.)
static void ScalarInvariantKnownScalarRange(int ScalarInvariant, double range[2])
static vtkMRMLDiffusionTensorDisplayPropertiesNode * New()
virtual const char * GetColorGlyphByAsString()
Return a text string describing the ColorGlyphBy.
int GetFirstGlyphEigenvector()
Return the lowest and highest integers, for use in looping.
int EllipsoidGlyphPhiResolution
void SetGlyphEigenvectorToMajor()
virtual const char * GetGlyphEigenvectorAsString(int)
int LineGlyphResolution
Line Glyph parameters.
void ColorGlyphByFractionalAnisotropy()
Set scalar invariant to FA (normalized variance of eigenvalues)
@ PerpendicularDiffusivity
@ ColorOrientationMiddleEigenvector
@ ColorOrientationMinEigenvector
void PrintSelf(ostream &os, vtkIndent indent) override
void SetGlyphGeometryToEllipsoids()
int SuperquadricGlyphPhiResolution
void SetGlyphEigenvectorToMinor()
virtual const char * GetGlyphGeometryAsString(int)
vtkMRMLNode * CreateNodeInstance() override
MRMLNode methods.
virtual void SetGlyphConnection(vtkAlgorithmOutput *glyphPort)
-— End of parameters that should be written to MRML — //
void SetScalarInvariantToFractionalAnisotropy()
Set scalar invariant to FA (normalized variance of eigenvalues)
virtual const char * GetGlyphEigenvectorAsString()
Return a text string describing GlyphEigenvector variable.
vtkMRMLDiffusionTensorDisplayPropertiesNode()
void SetGlyphGeometryToLines()
vtkAlgorithmOutput * GlyphConnection
virtual void SetColorGlyphBy(int)
int ScalarInvariant
-— Parameters that should be written to MRML — //
static int GetFirstScalarInvariant()
Return the lowest and highest integers, for use in looping.
~vtkMRMLDiffusionTensorDisplayPropertiesNode() override
void SetScalarInvariantToSphericalMeasure()
Set scalar invariant to C_S (Westin's spherical measure)
void Copy(vtkMRMLNode *node) override
Copy the node's attributes to this object.
double TubeGlyphRadius
Tube Glyph parameters.
int GetLastGlyphEigenvector()
int TubeGlyphNumberOfSides
void SetScalarInvariantToTrace()
Set scalar invariant to trace (sum of eigenvalues).
void ReadXMLAttributes(const char **atts) override
Read node attributes from a MRML file in XML format.
double SuperquadricGlyphGamma
Superquadric Glyph parameters.
Abstract Superclass for all specific types of MRML nodes.
void Modified() override
Customized version of Modified() allowing to compress vtkCommand::ModifiedEvent.
A superclass for other storage nodes.