# gdcm::ImageHelper Class Reference

ImageHelper (internal class, not intended for user level) More...

`#include <gdcmImageHelper.h>`

List of all members.

## Static Public Member Functions

static bool | ComputeSpacingFromImagePositionPatient (const std::vector< double > &imageposition, std::vector< double > &spacing)
| DO NOT USE.
static bool | GetDirectionCosinesFromDataSet (DataSet const &ds, std::vector< double > &dircos)
static std::vector< double > | GetDirectionCosinesValue (File const &f)
| Get Direction Cosines (IOP) from/to a file.
static bool | GetForcePixelSpacing ()
static bool | GetForceRescaleInterceptSlope ()
static std::vector< double > | GetOriginValue (File const &f)
| Set/Get Origin (IPP) from/to a file.
static std::vector< double > | GetRescaleInterceptSlopeValue (File const &f)
| Set/Get shift/scale from/to a file.
static std::vector< double > | GetSpacingValue (File const &f)
| Set/Get Spacing from/to a File.
static void | SetDirectionCosinesValue (DataSet &ds, const std::vector< double > &dircos)
static void | SetForcePixelSpacing (bool)
static void | SetForceRescaleInterceptSlope (bool)
static void | SetOriginValue (DataSet &ds, const Image &img)
static void | SetRescaleInterceptSlopeValue (File &f, const Image &img)
static void | SetSpacingValue (DataSet &ds, const std::vector< double > &spacing)

## Static Protected Member Functions

static Tag | GetSpacingTagFromMediaStorage (MediaStorage const &ms)
static Tag | GetZSpacingTagFromMediaStorage (MediaStorage const &ms)

## Detailed Description

ImageHelper (internal class, not intended for user level)

Helper for writing World images in DICOM. DICOM has a 'template' approach to image where MR Image Storage are distinct object from Enhanced MR Image Storage. For example the Pixel Spacing in one object is not at the same position (ie Tag) as in the other this class is the central (read: fragile) place where all the dispatching is done from a unified view of a world image (typically VTK or ITK point of view) down to the low level DICOM point of view.

Warning:
  : do not expect the API of this class to be maintained at any point, since as Modalities are added the API might have to be augmented or behavior changed to cope with new modalities.

## Member Function Documentation

static bool gdcm::ImageHelper::ComputeSpacingFromImagePositionPatient | ( | const std::vector< double > & | imageposition,
|  | std::vector< double > & | spacing
| ) |  | `[static]`

DO NOT USE.

static bool gdcm::ImageHelper::GetDirectionCosinesFromDataSet | ( | DataSet const & | ds,
|  | std::vector< double > & | dircos
| ) |  | `[static]`

static std::vector<double> gdcm::ImageHelper::GetDirectionCosinesValue | ( | File const & | f ) | `[static]`

Get Direction Cosines (IOP) from/to a file.

static bool gdcm::ImageHelper::GetForcePixelSpacing | ( | ) | `[static]`

static bool gdcm::ImageHelper::GetForceRescaleInterceptSlope | ( | ) | `[static]`

static std::vector<double> gdcm::ImageHelper::GetOriginValue | ( | File const & | f ) | `[static]`

Set/Get Origin (IPP) from/to a file.

static std::vector<double> gdcm::ImageHelper::GetRescaleInterceptSlopeValue | ( | File const & | f ) | `[static]`

Set/Get shift/scale from/to a file.

static Tag gdcm::ImageHelper::GetSpacingTagFromMediaStorage | ( | MediaStorage const & | ms ) | `[static, protected]`

static std::vector<double> gdcm::ImageHelper::GetSpacingValue | ( | File const & | f ) | `[static]`

Set/Get Spacing from/to a File.

static Tag gdcm::ImageHelper::GetZSpacingTagFromMediaStorage | ( | MediaStorage const & | ms ) | `[static, protected]`

static void gdcm::ImageHelper::SetDirectionCosinesValue | ( | DataSet & | ds,
|  | const std::vector< double > & | dircos
| ) |  | `[static]`

Set Direction Cosines (IOP) from/to a file When IOD does not defines what is IOP (eg. typically Secondary Capture Image Storage) this call will simply remove the IOP attribute. Else in case of MR/CT image storage, this call will properly lookup the correct attribute to store the IOP.

static void gdcm::ImageHelper::SetForcePixelSpacing | ( | bool | ) | `[static]`

GDCM 1.x compatibility issue: When using ReWrite an MR Image Storage would be rewritten as Secondary Capture Object while still having a Pixel Spacing tag (0028,0030). If you have deal with those files, use this very special flag to handle them Unless explicitely set elsewhere by the standard, it will use value from 0028,0030 / 0018,0088 for the Pixel Spacing of the Image

static void gdcm::ImageHelper::SetForceRescaleInterceptSlope | ( | bool | ) | `[static]`

GDCM 1.x compatibility issue: when using ReWrite an MR Image Storage would be rewritten with a Rescale Slope/Intercept while the standard would prohibit this (Philips Medical System is still doing that) Unless explicitely set elsewhere by the standard, it will use value from 0028,1052 / 0028,1053 for the Rescale Slope & Rescale Intercept values

static void gdcm::ImageHelper::SetOriginValue | ( | DataSet & | ds,
|  | const Image & | img
| ) |  | `[static]`

static void gdcm::ImageHelper::SetRescaleInterceptSlopeValue | ( | File & | f,
|  | const Image & | img
| ) |  | `[static]`

static void gdcm::ImageHelper::SetSpacingValue | ( | DataSet & | ds,
|  | const std::vector< double > & | spacing
| ) |  | `[static]`

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

- gdcmImageHelper.h