Package com.pixelmed.display
Class SuperimposedImage
- java.lang.Object
-
- com.pixelmed.display.SuperimposedImage
-
- Direct Known Subclasses:
SuperimposedDicomImage
public class SuperimposedImage extends java.lang.ObjectA class that supports matching the geometry of a superimposed image and an underlying images, and creating BufferedImages suitable for drawing on an underlying image.
- See Also:
SingleImagePanel
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description classSuperimposedImage.AppliedToUnderlyingImageA class that supports matching the geometry of a superimposed image and a specified underlying image, and creating a BufferedImage suitable for drawing on that underlying image.
-
Field Summary
Fields Modifier and Type Field Description protected int[]cieLabScaledstatic doubleDEFAULT_CLOSEST_SLICE_TOLERANCE_DISTANCEprotected GeometryOfVolumesuperimposedGeometryprotected SourceImagesuperimposedSourceImage
-
Constructor Summary
Constructors Modifier Constructor Description protectedSuperimposedImage()SuperimposedImage(SourceImage superimposedSourceImage, GeometryOfVolume superimposedGeometry)SuperimposedImage(SourceImage superimposedSourceImage, GeometryOfVolume superimposedGeometry, int[] cieLabScaled)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description SuperimposedImage.AppliedToUnderlyingImagegetAppliedToUnderlyingImage(GeometryOfVolume underlyingGeometry, int underlyingFrame)SuperimposedImage.AppliedToUnderlyingImagegetAppliedToUnderlyingImage(GeometryOfVolume underlyingGeometry, int underlyingFrame, double toleranceDistance)int[]getIntegerScaledCIELabPCS()static booleanisSliceCloseEnoughToSuperimpose(GeometryOfSlice geometryOfSuperimposedSlice, GeometryOfSlice geometryOfUnderlyingSlice)Is the superimposed slice close enough to the underlying slice to superimpose?static booleanisSliceCloseEnoughToSuperimpose(GeometryOfSlice geometryOfSuperimposedSlice, GeometryOfSlice geometryOfUnderlyingSlice, double toleranceDistance)Is the superimposed slice close enough to the underlying slice to superimpose?
-
-
-
Field Detail
-
DEFAULT_CLOSEST_SLICE_TOLERANCE_DISTANCE
public static final double DEFAULT_CLOSEST_SLICE_TOLERANCE_DISTANCE
- See Also:
- Constant Field Values
-
superimposedSourceImage
protected SourceImage superimposedSourceImage
-
superimposedGeometry
protected GeometryOfVolume superimposedGeometry
-
cieLabScaled
protected int[] cieLabScaled
-
-
Constructor Detail
-
SuperimposedImage
protected SuperimposedImage()
-
SuperimposedImage
public SuperimposedImage(SourceImage superimposedSourceImage, GeometryOfVolume superimposedGeometry, int[] cieLabScaled)
- Parameters:
superimposedSourceImage-superimposedGeometry-cieLabScaled-
-
SuperimposedImage
public SuperimposedImage(SourceImage superimposedSourceImage, GeometryOfVolume superimposedGeometry)
- Parameters:
superimposedSourceImage-superimposedGeometry-
-
-
Method Detail
-
isSliceCloseEnoughToSuperimpose
public static boolean isSliceCloseEnoughToSuperimpose(GeometryOfSlice geometryOfSuperimposedSlice, GeometryOfSlice geometryOfUnderlyingSlice, double toleranceDistance)
Is the superimposed slice close enough to the underlying slice to superimpose?
- Parameters:
geometryOfSuperimposedSlice-geometryOfUnderlyingSlice-toleranceDistance- difference in distance along normal to orientation for underlying and superimposed frames to be close enough to superimpose, in mm
-
isSliceCloseEnoughToSuperimpose
public static boolean isSliceCloseEnoughToSuperimpose(GeometryOfSlice geometryOfSuperimposedSlice, GeometryOfSlice geometryOfUnderlyingSlice)
Is the superimposed slice close enough to the underlying slice to superimpose?
Assumes a default tolerance factor that is close to zero but allows for floating point rounding error.
- Parameters:
geometryOfSuperimposedSlice-geometryOfUnderlyingSlice-
-
getAppliedToUnderlyingImage
public SuperimposedImage.AppliedToUnderlyingImage getAppliedToUnderlyingImage(GeometryOfVolume underlyingGeometry, int underlyingFrame, double toleranceDistance)
- Parameters:
underlyingGeometry-underlyingFrame- numbered from 0toleranceDistance- difference in distance along normal to orientation for underlying and superimposed frames to be close enough to superimpose, in mm- Returns:
- an instance of AppliedToUnderlyingImage, which will contain a BufferedImage if a superimposed frame that is close enough can be found
-
getAppliedToUnderlyingImage
public SuperimposedImage.AppliedToUnderlyingImage getAppliedToUnderlyingImage(GeometryOfVolume underlyingGeometry, int underlyingFrame)
- Parameters:
underlyingGeometry-underlyingFrame- numbered from 0- Returns:
- an instance of AppliedToUnderlyingImage, which will contain a BufferedImage if a superimposed frame that is close enough can be found
-
getIntegerScaledCIELabPCS
public int[] getIntegerScaledCIELabPCS()
-
-