Class VOI

All Implemented Interfaces:
Serializable, Cloneable, Iterable<ROI>, Collection<ROI>, Deque<ROI>, List<ROI>, Queue<ROI>

public class VOI extends LinkedList<ROI>
A volume-of-interest, which is a stack of ROIs that connect in 3-D across slices.
See Also:
  • Constructor Details

    • VOI

      public VOI()
      Creates a new (empty) VOI.
  • Method Details

    • addROI

      public void addROI(ROI roi)
      Add an ROI to this VOI.
      Parameters:
      roi - the ROI to add.
    • getVOIs

      public static List<VOI> getVOIs(List<ROI> rois)
      Returns a List of VOIs (3-D volumes of interest) created from a List of ROIs.
      Parameters:
      rois - the List of ROIs to connect in 3-D to produce VOIs.
      Returns:
      a List of VOIs.
    • contains

      public boolean contains(ROI roi)
      Tests whether this volume of interest (VOI) contains an ROI.
      Parameters:
      roi - the ROI to test whether it is contained in this VOI.
      Returns:
      true if the roi is within the VOI; false otherwise.
    • intersects

      public boolean intersects(ROI roi)
      Tests whether this volume of interest (VOI) intersects an ROI.
      Parameters:
      roi - the ROI to test whether it is intersected by this VOI.
      Returns:
      true if the roi intersects the VOI; false otherwise.
    • getVolume

      public double getVolume(float pixelZSize)
      Returns the volume of a VOI. The volume is simply the summed area of all ROIs within a VOI, multiplied by the distance between slices.
      Parameters:
      pixelZSize - the distance between slice centres.
      Returns:
      the volume (in cubic mm) of the supplied VOI.