Class Image
Represents a 2D or 3D image, which can be a DRR, a CT, MR, or other volumetric dataset.
Implements
Inherited Members
Namespace: VMS.TPS.Common.Model.API
Assembly: VMS.TPS.Common.Model.API.dll
Syntax
public class Image : ApiDataObject, IXmlSerializable
Properties
ApprovalHistory
Returns the approval history of the image.
Declaration
public IEnumerable<ImageApprovalHistoryEntry> ApprovalHistory { get; }
Property Value
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<ImageApprovalHistoryEntry> |
ContrastBolusAgentIngredientName
The name of the contrast bolus agent ingredient that is used in the image. If the value has not been specified, returns null.
Declaration
public string ContrastBolusAgentIngredientName { get; }
Property Value
Type | Description |
---|---|
System.String |
CreationDateTime
The date when this object was created.
Declaration
public DateTime? CreationDateTime { get; }
Property Value
Type | Description |
---|---|
System.Nullable<System.DateTime> |
DisplayUnit
The name of the display unit in which the voxels of the image are shown in the user interface.
Declaration
public string DisplayUnit { get; }
Property Value
Type | Description |
---|---|
System.String |
FOR
The UID of the frame of reference.
Declaration
public string FOR { get; }
Property Value
Type | Description |
---|---|
System.String |
HasUserOrigin
Defines if a user origin has been specified for the image.
Declaration
public bool HasUserOrigin { get; }
Property Value
Type | Description |
---|---|
System.Boolean |
Id
[Availability of this property depends on your Eclipse Scripting API license] The identifier of the image.
Declaration
public string Id { get; set; }
Property Value
Type | Description |
---|---|
System.String |
ImageType
The type of the image as indicated in the properties of the image slices.
Declaration
public string ImageType { get; }
Property Value
Type | Description |
---|---|
System.String |
ImagingOrientation
The orientation of the patient.
Declaration
public PatientOrientation ImagingOrientation { get; }
Property Value
Type | Description |
---|---|
PatientOrientation |
IsProcessed
Returns the value true if an image processing filter is in use for the image.
Declaration
public bool IsProcessed { get; }
Property Value
Type | Description |
---|---|
System.Boolean |
Level
The level setting. The value is given in the internal voxel scale.
Declaration
public int Level { get; }
Property Value
Type | Description |
---|---|
System.Int32 |
Origin
The origin of the image. In other words, the DICOM coordinates of the center point of the upper-left hand corner voxel of the first image plane. Supported only for volume images. For other types of images, the return value is a vector of Double.NaNs.
Declaration
public VVector Origin { get; }
Property Value
Type | Description |
---|---|
VVector |
Series
Used for navigating to parent series.
Declaration
public Series Series { get; }
Property Value
Type | Description |
---|---|
Series |
UID
Return UID of the first (and the only) slice in case of a 2D Image. Return null in case of a 3D Image.
Declaration
public string UID { get; }
Property Value
Type | Description |
---|---|
System.String |
UserOrigin
The user origin in DICOM coordinates in millimeter.
Declaration
public VVector UserOrigin { get; set; }
Property Value
Type | Description |
---|---|
VVector |
UserOriginComments
The text typed on the Origin tab in the Image Properties dialog box.
Declaration
public string UserOriginComments { get; }
Property Value
Type | Description |
---|---|
System.String |
Window
The window setting. The value is given in the internal voxel scale.
Declaration
public int Window { get; }
Property Value
Type | Description |
---|---|
System.Int32 |
XDirection
The direction of the x-axis in the image. Supported only for volume images. For other types of images, the return value is a vector of Double.NaNs.
Declaration
public VVector XDirection { get; }
Property Value
Type | Description |
---|---|
VVector |
XRes
The image resolution in X-direction in millimeters.
Declaration
public double XRes { get; }
Property Value
Type | Description |
---|---|
System.Double |
XSize
The image size in X-direction in voxels.
Declaration
public int XSize { get; }
Property Value
Type | Description |
---|---|
System.Int32 |
YDirection
The direction of the y-axis in the image. Supported only for volume images. For other types of images, the return value is a vector of Double.NaNs.
Declaration
public VVector YDirection { get; }
Property Value
Type | Description |
---|---|
VVector |
YRes
The image resolution in Y-direction in millimeters.
Declaration
public double YRes { get; }
Property Value
Type | Description |
---|---|
System.Double |
YSize
The image size in Y-direction in voxels.
Declaration
public int YSize { get; }
Property Value
Type | Description |
---|---|
System.Int32 |
ZDirection
The direction of the z-axis in the image. Supported only for volume images. For other types of images, the return value is a vector of Double.NaNs.
Declaration
public VVector ZDirection { get; }
Property Value
Type | Description |
---|---|
VVector |
ZRes
The image resolution in Z-direction in millimeters.
Declaration
public double ZRes { get; }
Property Value
Type | Description |
---|---|
System.Double |
ZSize
The image size in Z-direction in voxels.
Declaration
public int ZSize { get; }
Property Value
Type | Description |
---|---|
System.Int32 |
Methods
CalculateDectProtonStoppingPowers(Image, Image, Int32, Double[,])
Returns the voxel-wise DECT proton stopping powers of the given image plane calculated from the current image and the rho and Z images. The image FOR, size, and resolution for the rho and Z images must conform with this image.
Declaration
public void CalculateDectProtonStoppingPowers(Image rhoImage, Image zImage, int planeIndex, double[, ] preallocatedBuffer)
Parameters
Type | Name | Description |
---|---|---|
Image | rhoImage | A DECT relative electron density image. The electron density is interpreted from the image values as rho = 0.001 * (value + 1000). |
Image | zImage | A DECT effective atomic number image. |
System.Int32 | planeIndex | Zero based index of the plane. |
System.Double[,] | preallocatedBuffer | Pre-allocated buffer where the proton stopping power values are stored. The size of the buffer must conform with the X- and Y-size of this image. |
CreateNewStructureSet()
[Availability of this method depends on your Eclipse Scripting API license] Creates a new structure set. If the image does not yet have a structure set, the new structure set will be assigned directly to it. If the image already has a structure set, a copy of this image is made, and the new structure set is assigned to the copy. The image must be a 3D image.
Declaration
public StructureSet CreateNewStructureSet()
Returns
Type | Description |
---|---|
StructureSet | New structure set. |
DicomToUser(VVector, PlanSetup)
Converts DICOM coordinates to the planning coordinate system used in the Eclipse user interface.
Declaration
public VVector DicomToUser(VVector dicom, PlanSetup planSetup)
Parameters
Type | Name | Description |
---|---|---|
VVector | dicom | Coordinate value in DICOM coordinate system. |
PlanSetup | planSetup | Plan that defines the planning orientation or null. |
Returns
Type | Description |
---|---|
VVector | The coordinate value in the planning coordinate system used in Eclipse user interface. |
GetImageProfile(VVector, VVector, Double[])
Gets the image profile.
Declaration
public ImageProfile GetImageProfile(VVector start, VVector stop, double[] preallocatedBuffer)
Parameters
Type | Name | Description |
---|---|---|
VVector | start | Location of the first point of the profile. |
VVector | stop | Location of the last point of the profile. |
System.Double[] | preallocatedBuffer | Preallocated buffer where the values are stored. The size of the buffer determines the number of values to return. |
Returns
Type | Description |
---|---|
ImageProfile | The ImageProfile object holding the image pixel values along the line segment defined by start and stop parameters. |
GetProtonStoppingPowerCurve(SortedList<Double, Double>)
Returns the HU to proton stopping power curve associated with the image.
Declaration
public bool GetProtonStoppingPowerCurve(SortedList<double, double> protonStoppingPowerCurve)
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.SortedList<System.Double, System.Double> | protonStoppingPowerCurve | An empty list where the curve values will be stored. |
Returns
Type | Description |
---|---|
System.Boolean | True if the stopping power curve was succesfully found, false otherwise |
GetVoxels(Int32, Int32[,])
Gets the voxels of the given image plane.
Declaration
public void GetVoxels(int planeIndex, int[, ] preallocatedBuffer)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | planeIndex | Zero based index of the plane. |
System.Int32[,] | preallocatedBuffer | Preallocated buffer where the voxel values are stored. The size of the buffer must conform with the X- and Y-size of this image. |
UserToDicom(VVector, PlanSetup)
Converts a coordinate value from the planning coordinate system used in the Eclipse user interface to DICOM coordinates.
Declaration
public VVector UserToDicom(VVector user, PlanSetup planSetup)
Parameters
Type | Name | Description |
---|---|---|
VVector | user | Coordinate value in the planning coordinate system. |
PlanSetup | planSetup | Plan that defines the planning orientation or null. |
Returns
Type | Description |
---|---|
VVector | The coordinate value in DICOM coordinate system. |
VoxelToDisplayValue(Int32)
Converts the given raw voxel value to the corresponding value in the user interface display unit, for example, HU, Bq/ml.
Declaration
public double VoxelToDisplayValue(int voxelValue)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | voxelValue | Voxel value. |
Returns
Type | Description |
---|---|
System.Double | Value converted to user interface display unit. |
WriteXml(XmlWriter)
Converts an object into its XML representation. For more information on how to serialize an object into an XML document, see System.Xml.Serialization.XmlSerializer.
Declaration
public override void WriteXml(XmlWriter writer)
Parameters
Type | Name | Description |
---|---|---|
System.Xml.XmlWriter | writer | The System.Xml.XmlWriter stream, to which the object is serialized. |