vtk-dicom  0.8.17
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
vtkNIFTIWriter Class Reference

Write NIfTI-1 and NIfTI-2 medical image files. More...

#include <vtkNIFTIWriter.h>

Inheritance diagram for vtkNIFTIWriter:
Inheritance graph
[legend]
Collaboration diagram for vtkNIFTIWriter:
Collaboration graph
[legend]

Public Types

enum  EndianEnum { BigEndian = 0 , LittleEndian = 1 }
 Endianness of output file.
 
typedef vtkImageWriter Superclass
 
- Public Types inherited from vtkImageWriter
typedef vtkImageAlgorithm Superclass
 
- Public Types inherited from vtkImageAlgorithm
typedef vtkAlgorithm Superclass
 
- Public Types inherited from vtkAlgorithm
enum  DesiredOutputPrecision { SINGLE_PRECISION , DOUBLE_PRECISION , DEFAULT_PRECISION }
 
typedef vtkObject Superclass
 

Public Member Functions

virtual vtkTypeBool IsA (const char *type)
 
vtkNIFTIWriterNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent) VTK_DICOM_OVERRIDE
 Print information about this object.
 
virtual void SetNIFTIVersion (int)
 Set the version number for the NIfTI file format to use. More...
 
virtual int GetNIFTIVersion ()
 
virtual void SetDescription (const char *)
 Set a short description (max 80 chars) of how the file was produced.
 
virtual char * GetDescription ()
 
virtual int GetTimeDimension ()
 Set the time dimension to use in the NIFTI file (or zero if none). More...
 
virtual void SetTimeDimension (int)
 
virtual double GetTimeSpacing ()
 
virtual void SetTimeSpacing (double)
 
virtual void SetRescaleSlope (double)
 Set the slope and intercept for calibrating the scalar values. More...
 
virtual double GetRescaleSlope ()
 
virtual void SetRescaleIntercept (double)
 
virtual double GetRescaleIntercept ()
 
virtual bool GetPlanarRGB ()
 Write planar RGB (separate R, G, and B planes), rather than packed RGB. More...
 
virtual void SetPlanarRGB (bool)
 
virtual void PlanarRGBOn ()
 
virtual void PlanarRGBOff ()
 
virtual void SetQFac (double)
 The QFac sets the ordering of the slices in the NIFTI file. More...
 
virtual double GetQFac ()
 
void SetQFormMatrix (vtkMatrix4x4 *)
 Set the "qform" orientation and offset for the image data. More...
 
vtkMatrix4x4 * GetQFormMatrix ()
 
void SetSFormMatrix (vtkMatrix4x4 *)
 Set a matrix for the "sform" transformation stored in the file. More...
 
vtkMatrix4x4 * GetSFormMatrix ()
 
void SetNIFTIHeader (vtkNIFTIHeader *hdr)
 Set the NIFTI header information to use when writing the file. More...
 
vtkNIFTIHeaderGetNIFTIHeader ()
 
virtual void SetDataByteOrder (EndianEnum)
 Set the byte order for the files (default: little endian). More...
 
void SetDataByteOrderToBigEndian ()
 
void SetDataByteOrderToLittleEndian ()
 
virtual EndianEnum GetDataByteOrder ()
 
- Public Member Functions inherited from vtkImageWriter
vtkImageWriterNewInstance () const
 
virtual void SetFileName (const char *)
 
virtual char * GetFileName ()
 
virtual void SetFilePrefix (const char *)
 
virtual char * GetFilePrefix ()
 
virtual void SetFilePattern (const char *)
 
virtual char * GetFilePattern ()
 
virtual void SetFileDimensionality (int)
 
virtual int GetFileDimensionality ()
 
vtkImageData * GetInput ()
 
virtual void Write ()
 
void DeleteFiles ()
 
- Public Member Functions inherited from vtkImageAlgorithm
vtkImageAlgorithmNewInstance () const
 
vtkImageData * GetOutput ()
 
vtkImageData * GetOutput (int)
 
virtual void SetOutput (vtkDataObject *d)
 
int ProcessRequest (vtkInformation *, vtkInformationVector **, vtkInformationVector *) VTK_OVERRIDE
 
void SetInputData (vtkDataObject *)
 
void SetInputData (int, vtkDataObject *)
 
vtkDataObject * GetInput (int port)
 
vtkDataObject * GetInput ()
 
vtkImageData * GetImageDataInput (int port)
 
virtual void AddInputData (vtkDataObject *)
 
virtual void AddInputData (int, vtkDataObject *)
 
- Public Member Functions inherited from vtkAlgorithm
vtkAlgorithmNewInstance () const
 
int HasExecutive ()
 
vtkExecutive * GetExecutive ()
 
virtual void SetExecutive (vtkExecutive *executive)
 
int ProcessRequest (vtkInformation *request, vtkCollection *inInfo, vtkInformationVector *outInfo)
 
virtual int ComputePipelineMTime (vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec, int requestFromOutputPort, vtkMTimeType *mtime)
 
virtual int ModifyRequest (vtkInformation *request, int when)
 
vtkInformation * GetInputPortInformation (int port)
 
vtkInformation * GetOutputPortInformation (int port)
 
virtual vtkInformation * GetInformation ()
 
virtual void SetInformation (vtkInformation *)
 
int GetNumberOfInputPorts ()
 
int GetNumberOfOutputPorts ()
 
void Register (vtkObjectBase *o) VTK_OVERRIDE
 
void UnRegister (vtkObjectBase *o) VTK_OVERRIDE
 
virtual void SetAbortExecute (int)
 
virtual int GetAbortExecute ()
 
virtual void AbortExecuteOn ()
 
virtual void AbortExecuteOff ()
 
virtual void SetProgress (double)
 
virtual double GetProgress ()
 
void UpdateProgress (double amount)
 
void SetProgressText (const char *ptext)
 
virtual char * GetProgressText ()
 
virtual unsigned long GetErrorCode ()
 
virtual void SetInputArrayToProcess (int idx, int port, int connection, int fieldAssociation, const char *name)
 
virtual void SetInputArrayToProcess (int idx, int port, int connection, int fieldAssociation, int fieldAttributeType)
 
virtual void SetInputArrayToProcess (int idx, vtkInformation *info)
 
virtual void SetInputArrayToProcess (int idx, int port, int connection, const char *fieldAssociation, const char *attributeTypeorName)
 
vtkInformation * GetInputArrayInformation (int idx)
 
void RemoveAllInputs ()
 
vtkDataObject * GetOutputDataObject (int port)
 
vtkDataObject * GetInputDataObject (int port, int connection)
 
virtual void SetInputConnection (int port, vtkAlgorithmOutput *input)
 
virtual void SetInputConnection (vtkAlgorithmOutput *input)
 
virtual void AddInputConnection (int port, vtkAlgorithmOutput *input)
 
virtual void AddInputConnection (vtkAlgorithmOutput *input)
 
virtual void RemoveInputConnection (int port, vtkAlgorithmOutput *input)
 
virtual void RemoveInputConnection (int port, int idx)
 
virtual void RemoveAllInputConnections (int port)
 
virtual void SetInputDataObject (int port, vtkDataObject *data)
 
virtual void SetInputDataObject (vtkDataObject *data)
 
virtual void AddInputDataObject (int port, vtkDataObject *data)
 
virtual void AddInputDataObject (vtkDataObject *data)
 
vtkAlgorithmOutput * GetOutputPort (int index)
 
vtkAlgorithmOutput * GetOutputPort ()
 
int GetNumberOfInputConnections (int port)
 
int GetTotalNumberOfInputConnections ()
 
vtkAlgorithmOutput * GetInputConnection (int port, int index)
 
vtkAlgorithmGetInputAlgorithm (int port, int index, int &algPort)
 
vtkAlgorithmGetInputAlgorithm (int port, int index)
 
vtkAlgorithmGetInputAlgorithm ()
 
vtkExecutive * GetInputExecutive (int port, int index)
 
vtkExecutive * GetInputExecutive ()
 
vtkInformation * GetInputInformation (int port, int index)
 
vtkInformation * GetInputInformation ()
 
vtkInformation * GetOutputInformation (int port)
 
virtual void Update (int port)
 
virtual void Update ()
 
virtual int Update (int port, vtkInformationVector *requests)
 
virtual int Update (vtkInformation *requests)
 
virtual int UpdatePiece (int piece, int numPieces, int ghostLevels, const int extents[6]=0)
 
virtual int UpdateExtent (const int extents[6])
 
virtual int UpdateTimeStep (double time, int piece=-1, int numPieces=1, int ghostLevels=0, const int extents[6]=0)
 
virtual void UpdateInformation ()
 
virtual void UpdateDataObject ()
 
virtual void PropagateUpdateExtent ()
 
virtual void UpdateWholeExtent ()
 
void ConvertTotalInputToPortConnection (int ind, int &port, int &conn)
 
virtual void SetReleaseDataFlag (int)
 
virtual int GetReleaseDataFlag ()
 
void ReleaseDataFlagOn ()
 
void ReleaseDataFlagOff ()
 
int UpdateExtentIsEmpty (vtkInformation *pinfo, vtkDataObject *output)
 
int UpdateExtentIsEmpty (vtkInformation *pinfo, int extentType)
 
int SetUpdateExtentToWholeExtent (int port)
 
int SetUpdateExtentToWholeExtent ()
 
void SetUpdateExtent (int port, int piece, int numPieces, int ghostLevel)
 
void SetUpdateExtent (int piece, int numPieces, int ghostLevel)
 
void SetUpdateExtent (int port, int extent[6])
 
void SetUpdateExtent (int extent[6])
 
int * GetUpdateExtent ()
 
int * GetUpdateExtent (int port)
 
void GetUpdateExtent (int &x0, int &x1, int &y0, int &y1, int &z0, int &z1)
 
void GetUpdateExtent (int port, int &x0, int &x1, int &y0, int &y1, int &z0, int &z1)
 
void GetUpdateExtent (int extent[6])
 
void GetUpdateExtent (int port, int extent[6])
 
int GetUpdatePiece ()
 
int GetUpdatePiece (int port)
 
int GetUpdateNumberOfPieces ()
 
int GetUpdateNumberOfPieces (int port)
 
int GetUpdateGhostLevel ()
 
int GetUpdateGhostLevel (int port)
 
void SetProgressObserver (vtkProgressObserver *)
 
virtual vtkProgressObserver * GetProgressObserver ()
 
- Public Member Functions inherited from vtkObject
 vtkBaseTypeMacro (vtkObject, vtkObjectBase)
 
virtual void DebugOn ()
 
virtual void DebugOff ()
 
bool GetDebug ()
 
void SetDebug (bool debugFlag)
 
virtual void Modified ()
 
virtual vtkMTimeType GetMTime ()
 
void PrintSelf (ostream &os, vtkIndent indent) VTK_OVERRIDE
 
unsigned long AddObserver (unsigned long event, vtkCommand *, float priority=0.0f)
 
unsigned long AddObserver (const char *event, vtkCommand *, float priority=0.0f)
 
vtkCommand * GetCommand (unsigned long tag)
 
void RemoveObserver (vtkCommand *)
 
void RemoveObservers (unsigned long event, vtkCommand *)
 
void RemoveObservers (const char *event, vtkCommand *)
 
int HasObserver (unsigned long event, vtkCommand *)
 
int HasObserver (const char *event, vtkCommand *)
 
void RemoveObserver (unsigned long tag)
 
void RemoveObservers (unsigned long event)
 
void RemoveObservers (const char *event)
 
void RemoveAllObservers ()
 
int HasObserver (unsigned long event)
 
int HasObserver (const char *event)
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f)
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 
int InvokeEvent (unsigned long event, void *callData)
 
int InvokeEvent (const char *event, void *callData)
 
int InvokeEvent (unsigned long event)
 
int InvokeEvent (const char *event)
 
- Public Member Functions inherited from vtkObjectBase
const char * GetClassName () const
 
virtual void Delete ()
 
virtual void FastDelete ()
 
void InitializeObjectBase ()
 
void Print (ostream &os)
 
virtual void PrintHeader (ostream &os, vtkIndent indent)
 
virtual void PrintTrailer (ostream &os, vtkIndent indent)
 
int GetReferenceCount ()
 
void SetReferenceCount (int)
 
void PrintRevisions (ostream &)
 

Static Public Member Functions

static vtkNIFTIWriterNew ()
 Static method for construction.
 
static vtkTypeBool IsTypeOf (const char *type)
 
static vtkNIFTIWriterSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkImageWriter
static vtkImageWriterNew ()
 
static vtkTypeBool IsTypeOf (const char *type)
 
static vtkImageWriterSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkImageAlgorithm
static vtkTypeBool IsTypeOf (const char *type)
 
static vtkImageAlgorithmSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkAlgorithm
static vtkAlgorithmNew ()
 
static vtkTypeBool IsTypeOf (const char *type)
 
static vtkAlgorithmSafeDownCast (vtkObjectBase *o)
 
static vtkInformationIntegerKey * INPUT_IS_OPTIONAL ()
 
static vtkInformationIntegerKey * INPUT_IS_REPEATABLE ()
 
static vtkInformationInformationVectorKey * INPUT_REQUIRED_FIELDS ()
 
static vtkInformationStringVectorKey * INPUT_REQUIRED_DATA_TYPE ()
 
static vtkInformationInformationVectorKey * INPUT_ARRAYS_TO_PROCESS ()
 
static vtkInformationIntegerKey * INPUT_PORT ()
 
static vtkInformationIntegerKey * INPUT_CONNECTION ()
 
static vtkInformationIntegerKey * CAN_PRODUCE_SUB_EXTENT ()
 
static vtkInformationIntegerKey * CAN_HANDLE_PIECE_REQUEST ()
 
static void SetDefaultExecutivePrototype (vtkExecutive *proto)
 
- Static Public Member Functions inherited from vtkObject
static vtkObjectNew ()
 
static void BreakOnError ()
 
static void SetGlobalWarningDisplay (int val)
 
static void GlobalWarningDisplayOn ()
 
static void GlobalWarningDisplayOff ()
 
static int GetGlobalWarningDisplay ()
 
- Static Public Member Functions inherited from vtkObjectBase
static vtkTypeBool IsTypeOf (const char *name)
 
static vtkObjectBaseNew ()
 

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 
int GenerateHeader (vtkInformation *info, bool singleFile)
 Generate the header information for the file.
 
int RequestData (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) VTK_DICOM_OVERRIDE
 The main execution method, which writes the file.
 
- Protected Member Functions inherited from vtkImageWriter
virtual void RecursiveWrite (int dim, vtkImageData *region, vtkInformation *inInfo, ofstream *file)
 
virtual void RecursiveWrite (int dim, vtkImageData *cache, vtkImageData *data, vtkInformation *inInfo, ofstream *file)
 
virtual void WriteFile (ofstream *file, vtkImageData *data, int extent[6], int wExtent[6])
 
virtual void WriteFileHeader (ofstream *, vtkImageData *, int[6])
 
virtual void WriteFileTrailer (ofstream *, vtkImageData *)
 
- Protected Member Functions inherited from vtkImageAlgorithm
virtual int RequestInformation (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
 
virtual int RequestUpdateExtent (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
 
virtual void CopyInputArrayAttributesToOutput (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
 
virtual void ExecuteDataWithInformation (vtkDataObject *output, vtkInformation *outInfo)
 
virtual void ExecuteData (vtkDataObject *output)
 
virtual void Execute ()
 
virtual void AllocateOutputData (vtkImageData *out, vtkInformation *outInfo, int *uExtent)
 
virtual vtkImageData * AllocateOutputData (vtkDataObject *out, vtkInformation *outInfo)
 
virtual void CopyAttributeData (vtkImageData *in, vtkImageData *out, vtkInformationVector **inputVector)
 
int FillOutputPortInformation (int port, vtkInformation *info) VTK_OVERRIDE
 
int FillInputPortInformation (int port, vtkInformation *info) VTK_OVERRIDE
 
- Protected Member Functions inherited from vtkAlgorithm
virtual void SetNumberOfInputPorts (int n)
 
virtual void SetNumberOfOutputPorts (int n)
 
int InputPortIndexInRange (int index, const char *action)
 
int OutputPortIndexInRange (int index, const char *action)
 
int GetInputArrayAssociation (int idx, vtkInformationVector **inputVector)
 
int GetInputArrayAssociation (int idx, int connection, vtkInformationVector **inputVector)
 
int GetInputArrayAssociation (int idx, vtkDataObject *input)
 
vtkDataArray * GetInputArrayToProcess (int idx, vtkInformationVector **inputVector)
 
vtkDataArray * GetInputArrayToProcess (int idx, vtkInformationVector **inputVector, int &association)
 
vtkDataArray * GetInputArrayToProcess (int idx, int connection, vtkInformationVector **inputVector)
 
vtkDataArray * GetInputArrayToProcess (int idx, int connection, vtkInformationVector **inputVector, int &association)
 
vtkDataArray * GetInputArrayToProcess (int idx, vtkDataObject *input)
 
vtkDataArray * GetInputArrayToProcess (int idx, vtkDataObject *input, int &association)
 
vtkAbstractArray * GetInputAbstractArrayToProcess (int idx, vtkInformationVector **inputVector)
 
vtkAbstractArray * GetInputAbstractArrayToProcess (int idx, vtkInformationVector **inputVector, int &association)
 
vtkAbstractArray * GetInputAbstractArrayToProcess (int idx, int connection, vtkInformationVector **inputVector)
 
vtkAbstractArray * GetInputAbstractArrayToProcess (int idx, int connection, vtkInformationVector **inputVector, int &association)
 
vtkAbstractArray * GetInputAbstractArrayToProcess (int idx, vtkDataObject *input)
 
vtkAbstractArray * GetInputAbstractArrayToProcess (int idx, vtkDataObject *input, int &association)
 
vtkInformation * GetInputArrayFieldInformation (int idx, vtkInformationVector **inputVector)
 
virtual vtkExecutive * CreateDefaultExecutive ()
 
virtual void SetErrorCode (unsigned long)
 
void ReportReferences (vtkGarbageCollector *) VTK_OVERRIDE
 
virtual void SetNthInputConnection (int port, int index, vtkAlgorithmOutput *input)
 
virtual void SetNumberOfInputConnections (int port, int n)
 
void SetInputDataInternal (int port, vtkDataObject *input)
 
void AddInputDataInternal (int port, vtkDataObject *input)
 
- Protected Member Functions inherited from vtkObject
void RegisterInternal (vtkObjectBase *, vtkTypeBool check) VTK_OVERRIDE
 
void UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) VTK_OVERRIDE
 
void InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL)
 
void InternalReleaseFocus ()
 
- Protected Member Functions inherited from vtkObjectBase
virtual void CollectRevisions (ostream &)
 
 vtkObjectBase (const vtkObjectBase &)
 
void operator= (const vtkObjectBase &)
 

Static Protected Member Functions

static char * ReplaceExtension (const char *fname, const char *ext1, const char *ext2)
 Make a new filename by replacing extension "ext1" with "ext2". More...
 
- Static Protected Member Functions inherited from vtkAlgorithm
static vtkInformationIntegerKey * PORT_REQUIREMENTS_FILLED ()
 

Protected Attributes

int TimeDimension
 Time dimension to use in the file.
 
double TimeSpacing
 
double RescaleIntercept
 Information for rescaling data to quantitative units.
 
double RescaleSlope
 
double QFac
 Set to -1 when VTK slice order is opposite to NIFTI slice order.
 
vtkMatrix4x4 * QFormMatrix
 The orientation matrices for the NIFTI file.
 
vtkMatrix4x4 * SFormMatrix
 
char * Description
 A description of how the file was produced.
 
vtkNIFTIHeaderNIFTIHeader
 The header information.
 
vtkNIFTIHeaderOwnHeader
 
int NIFTIVersion
 
bool PlanarRGB
 Use planar RGB instead of the default (packed).
 
EndianEnum DataByteOrder
 Whether the file should be little endian.
 
- Protected Attributes inherited from vtkImageWriter
int FileDimensionality
 
char * FilePrefix
 
char * FilePattern
 
char * FileName
 
int FileNumber
 
int FileLowerLeft
 
char * InternalFileName
 
int MinimumFileNumber
 
int MaximumFileNumber
 
int FilesDeleted
 
- Protected Attributes inherited from vtkAlgorithm
vtkInformation * Information
 
unsigned long ErrorCode
 
double Progress
 
char * ProgressText
 
vtkProgressObserver * ProgressObserver
 
- Protected Attributes inherited from vtkObject
bool Debug
 
vtkTimeStamp MTime
 
vtkSubjectHelper * SubjectHelper
 
- Protected Attributes inherited from vtkObjectBase
vtkAtomicInt32 ReferenceCount
 
vtkWeakPointerBase ** WeakPointers
 

Additional Inherited Members

- Public Attributes inherited from vtkAlgorithm
int AbortExecute
 
- Static Protected Attributes inherited from vtkAlgorithm
static vtkExecutive * DefaultExecutivePrototype
 

Detailed Description

Write NIfTI-1 and NIfTI-2 medical image files.

This class writes NIFTI files, either in .nii format or as separate .img and .hdr files. If told to write a file that ends in ".gz", then the writer will automatically compress the file with zlib. Images of type unsigned char that have 3 or 4 scalar components will automatically be written as RGB or RGBA respectively. Images of type float or double that have 2 components will automatically be written as complex values.

This class was contributed to VTK by the Calgary Image Processing and Analysis Centre (CIPAC).

See also
vtkNIFTIReader

Member Function Documentation

◆ GetPlanarRGB()

virtual bool vtkNIFTIWriter::GetPlanarRGB ( )
virtual

Write planar RGB (separate R, G, and B planes), rather than packed RGB.

Use this option with extreme caution: the NIFTI standard requires RGB pixels to be packed. The Analyze format, however, was used to store both planar RGB and packed RGB depending on the software, without any indication in the header about which convention was being used.

◆ GetTimeDimension()

virtual int vtkNIFTIWriter::GetTimeDimension ( )
virtual

Set the time dimension to use in the NIFTI file (or zero if none).

The number of components of the input data must be divisible by the time dimension if the time dimension is not set to zero. The vector dimension will be set to the number of components divided by the time dimension.

◆ IsA()

virtual vtkTypeBool vtkNIFTIWriter::IsA ( const char *  name)
virtual

Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkImageWriter.

◆ ReplaceExtension()

static char* vtkNIFTIWriter::ReplaceExtension ( const char *  fname,
const char *  ext1,
const char *  ext2 
)
staticprotected

Make a new filename by replacing extension "ext1" with "ext2".

The extensions must include a period, must be three characters long, and must be lower case. A new string is returned that must be deleted by the caller.

◆ SetDataByteOrder()

virtual void vtkNIFTIWriter::SetDataByteOrder ( EndianEnum  )
virtual

Set the byte order for the files (default: little endian).

These methods allow the byte order of the NIFTI file to be set. Originally, Analyze files (and NIFTI, by extension) were meant to be written using the native endianness of the system. However, with the overwhelming preference for little-endian architectures on image processing workstations, defaulting to little endian files (even on big-endian systems) provides better compatibility.

◆ SetNIFTIHeader()

void vtkNIFTIWriter::SetNIFTIHeader ( vtkNIFTIHeader hdr)

Set the NIFTI header information to use when writing the file.

The data dimensions and pixdim from the supplied header will be ignored. Likewise, the QForm and SForm information in the supplied header will be ignored if you have called SetQFormMatrix() or SetSFormMatrix() to provide the orientation information for the file.

◆ SetNIFTIVersion()

virtual void vtkNIFTIWriter::SetNIFTIVersion ( int  )
virtual

Set the version number for the NIfTI file format to use.

This can be 1, 2, or 0 (the default). If set to zero, then it will save as NIfTI version 1 unless SetNIFTIHeader() provided header information from a NIfTI version 2 file.

◆ SetQFac()

virtual void vtkNIFTIWriter::SetQFac ( double  )
virtual

The QFac sets the ordering of the slices in the NIFTI file.

If QFac is -1, then the slice ordering in the file will be reversed as compared to VTK. Use with caution.

◆ SetQFormMatrix()

void vtkNIFTIWriter::SetQFormMatrix ( vtkMatrix4x4 *  )

Set the "qform" orientation and offset for the image data.

The 3x3 portion of the matrix must be orthonormal and have a positive determinant, it will be used to compute the quaternion. The last column of the matrix will be used for the offset. In the NIFTI header, the qform_code will be set to 1.

◆ SetRescaleSlope()

virtual void vtkNIFTIWriter::SetRescaleSlope ( double  )
virtual

Set the slope and intercept for calibrating the scalar values.

Other programs that read the NIFTI file can use the equation v = u*RescaleSlope + RescaleIntercept to rescale the data to real values. If both the slope and the intercept are zero, then the SclSlope and SclIntercept in the header info provided via SetNIFTIHeader() are used instead.

◆ SetSFormMatrix()

void vtkNIFTIWriter::SetSFormMatrix ( vtkMatrix4x4 *  )

Set a matrix for the "sform" transformation stored in the file.

Unlike the qform matrix, the sform matrix can contain scaling information. Before being stored in the NIFTI header, the first three columns of the matrix will be multiplied by the voxel spacing. In the NIFTI header, the sform_code will be set to 2.


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