- java.lang.Object
-
- ij.ImagePlus
-
- All Implemented Interfaces:
Measurements
,java.awt.image.ImageObserver
,java.lang.Cloneable
- Direct Known Subclasses:
BMP_Reader
,CompositeImage
,DICOM
,FITS_Reader
,GIF_Reader
,HistogramPlot
,LutLoader
,PGM_Reader
public class ImagePlus extends java.lang.Object implements java.awt.image.ImageObserver, Measurements, java.lang.Cloneable
An ImagePlus contain an ImageProcessor (2D image) or an ImageStack (3D, 4D or 5D image). It also includes metadata (spatial calibration and possibly the directory/file where it was read from). The ImageProcessor contains the pixel data (8-bit, 16-bit, float or RGB) of the 2D image and some basic methods to manipulate it. An ImageStack is essentually a list ImageProcessors of same type and size.- See Also:
ImageProcessor
,ImageStack
,ImageWindow
,ImageCanvas
-
-
Field Summary
Fields Modifier and Type Field Description boolean
changes
True if any changes have been made to this image.protected static int
CLOSED
static int
COLOR_256
8-bit indexed colorstatic int
COLOR_RGB
32-bit RGB colorprotected boolean
compositeImage
protected int
currentSlice
protected boolean
dimensionsSet
static java.lang.String
flattenTitle
Title of image used by Flatten commandstatic int
GRAY16
16-bit grayscale (unsigned)static int
GRAY32
32-bit floating-point grayscalestatic int
GRAY8
8-bit grayscale (unsigned)protected int
height
protected java.awt.Image
img
protected ImageProcessor
ip
protected boolean
locked
protected int
nChannels
protected int
nFrames
protected int
nSlices
protected static int
OPENED
protected Roi
roi
protected static int
SAVED
boolean
setIJMenuBar
protected static int
UPDATED
protected int
width
protected ImageWindow
win
-
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
Fields inherited from interface ij.measure.Measurements
ADD_TO_OVERLAY, ALL_STATS, AREA, AREA_FRACTION, CENTER_OF_MASS, CENTROID, CIRCULARITY, ELLIPSE, FERET, INTEGRATED_DENSITY, INVERT_Y, KURTOSIS, LABELS, LIMIT, MAX_STANDARDS, MEAN, MEDIAN, MIN_MAX, MODE, NaN_EMPTY_CELLS, PERIMETER, RECT, SCIENTIFIC_NOTATION, SHAPE_DESCRIPTORS, SKEWNESS, SLICE, STACK_POSITION, STD_DEV
-
-
Constructor Summary
Constructors Constructor Description ImagePlus()
Constructs an uninitialized ImagePlus.ImagePlus(java.lang.String pathOrURL)
Constructs an ImagePlus from a TIFF, BMP, DICOM, FITS, PGM, GIF or JPRG specified by a path or from a TIFF, DICOM, GIF or JPEG specified by a URL.ImagePlus(java.lang.String title, ImageStack stack)
Constructs an ImagePlus from a stack.ImagePlus(java.lang.String title, ImageProcessor ip)
Constructs an ImagePlus from an ImageProcessor.ImagePlus(java.lang.String title, java.awt.Image image)
Constructs an ImagePlus from an Image or BufferedImage.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static void
addImageListener(ImageListener listener)
java.lang.Object
clone()
Returns a shallow copy of this ImagePlus.void
close()
Closes this image and sets the ImageProcessor to null.int[]
convertIndexToPosition(int n)
Converts the stack index 'n' (one-based) into a hyperstack position (channel, slice, frame).static ImageProcessor
convertToImageProcessor(java.awt.image.BufferedImage img, int band)
Extract pixels as an an ImageProcessor from a single band of a BufferedImage.void
copy()
Copies the contents of the current selection, or the entire image if there is no selection, to the internal clipboard.void
copy(boolean cut)
Copies the contents of the current selection to the internal clipboard.void
copyAttributes(ImagePlus imp)
Used internally.void
copyScale(ImagePlus imp)
Copies the calibration of the specified image to this image.void
copyToSystem()
Copies the contents of the current selection, or the entire image if there is no selection, to the system clipboard.ImageStack
createEmptyStack()
Returns an empty image stack that has the same width, height and color table as this image.ImagePlus
createHyperStack(java.lang.String title, int channels, int slices, int frames, int bitDepth)
This method has been replaced by IJ.createHyperStack().ImagePlus
createImagePlus()
Returns a new ImagePlus with this image's attributes (e.g.LookUpTable
createLut()
Creates a LookUpTable object that corresponds to this image.void
createNewRoi(int sx, int sy)
Starts the process of creating a new selection, where sx and sy are the starting screen coordinates.ByteProcessor
createRoiMask()
Returns an 8-bit binary (foreground=255, background=0) ROI or overlay mask that has the same dimensions as this image.ByteProcessor
createThresholdMask()
Returns an 8-bit binary threshold mask (foreground=255, background=0) that has the same dimensions as this image.ImagePlus
crop()
Returns a copy this image or stack slice, cropped if there is an ROI.ImagePlus[]
crop(Roi[] rois)
Multi-roi cropping with default "slice" option.ImagePlus[]
crop(Roi[] rois, java.lang.String options)
Returns an array of cropped images based on the provided list of rois.ImagePlus
crop(java.lang.String options)
Returns a cropped copy this image or stack, where 'options' can be "stack", "slice", "whole-slice" or a range (e.g., "20-30").void
cropAndSave(Roi[] rois, java.lang.String directory, java.lang.String format)
Saves the contents of the ROIs in this overlay as separate images, where 'directory' is the directory path and 'format' is "tif", "png" or "jpg".void
cut()
Copies the contents of the current selection to the internal clipboard and then clears the selection.void
deleteRoi()
Deletes the current region of interest.void
draw()
Draws the image.void
draw(int x, int y, int width, int height)
Draws image and roi outline using a clip rect.ImagePlus
duplicate()
Returns a copy of this image or stack.ImagePlus
flatten()
Returns a "flattened" version of this image, or stack slice, in RGB format.void
flattenStack()
Flattens all slices of this stack or HyperStack.void
flush()
Sets the ImageProcessor, Roi, AWT Image and stack image arrays to null.ImageStatistics
getAllStatistics()
This method returns complete calibrated statistics for this image or ROI (with "Limit to threshold"), but it is up to 70 times slower than getStatistics().int
getBitDepth()
Returns the bit depth, 8, 16, 24 (RGB) or 32, or 0 if the bit depth is unknown.java.awt.image.BufferedImage
getBufferedImage()
Returns a copy of this image as an 8-bit or RGB BufferedImage.int
getBytesPerPixel()
Returns the number of bytes per pixel.int
getC()
Returns the current hyperstack channel position.Calibration
getCalibration()
Returns this image's calibration.ImageCanvas
getCanvas()
Returns the ImageCanvas being used to display this image, or null.int
getChannel()
ImageProcessor
getChannelProcessor()
Returns a reference to the current ImageProcessor.static ImagePlus
getClipboard()
Returns the internal clipboard or null if the internal clipboard is empty.int
getCompositeMode()
Returns the display mode (IJ.COMPOSITE, IJ.COLOR or IJ.GRAYSCALE) if this is a CompositeImage, otherwise returns -1.int
getCurrentSlice()
Returns the current stack index (one-based) or 1 if this is a single image.static int
getDefault16bitRange()
Returns the default 16-bit display range, 0 (auto-scaling), 8, 10, 12, 14, 15 or 16.int[]
getDimensions()
Returns the dimensions of this image (width, height, nChannels, nSlices, nFrames) as a 5 element int array.int[]
getDimensions(boolean varify)
int
getDisplayMode()
Returns the display mode (IJ.COMPOSITE, IJ.COLOR or IJ.GRAYSCALE) if this is a composite color image, or 0 if it not.double
getDisplayRangeMax()
double
getDisplayRangeMin()
FileInfo
getFileInfo()
Returns a FileInfo object containing information, including the pixel array, needed to save this image.int
getFrame()
Calibration
getGlobalCalibration()
Returns the system-wide calibration, or null.int
getHeight()
Returns the height of this image in pixels.boolean
getHideOverlay()
int
getID()
Returns this image's unique numeric ID.java.awt.Image
getImage()
Returns this image as a AWT image.java.util.Properties
getImageProperties()
ImageStack
getImageStack()
Returns the base image stack.int
getImageStackSize()
If this is a stack, returns the actual number of images in the stack, else returns 1.java.lang.String
getInfoProperty()
Returns the "Info" property string, or null if it is not found.static java.util.Vector
getListeners()
Calibration
getLocalCalibration()
Returns this image's local calibration, ignoring the "Global" calibration flag.java.lang.String
getLocationAsString(int x, int y)
Converts the current cursor location to a string.LUT[]
getLuts()
Returns an array containing the lookup tables used by this image, one per channel, or an empty array if this is an RGB image.ImageProcessor
getMask()
For images with irregular ROIs, returns a byte mask, otherwise, returns null.int
getNChannels()
Returns the number of channels.int
getNDimensions()
Returns the number of dimensions (2, 3, 4 or 5).int
getNFrames()
Returns the number of frames (time-points).int
getNSlices()
Returns the image depth (number of z-slices).double
getNumericProp(java.lang.String key)
Returns the numeric property associated with the specified key or NaN if the property is not found.double
getNumericProperty(java.lang.String key)
Returns the numeric value from the "Info" property string associated with 'key', or NaN if the key is not found or the value associated with the key is not numeric.boolean
getOpenAsHyperStack()
FileInfo
getOriginalFileInfo()
Returns the FileInfo object that was used to open this image.Overlay
getOverlay()
Returns the current overly, or null if this image does not have an overlay.int[]
getPixel(int x, int y)
Returns the pixel value at (x,y) as a 4 element array.Plot
getPlot()
ImageProcessor
getProcessor()
Returns a reference to the current ImageProcessor.java.lang.String
getProp(java.lang.String key)
Returns as a string the image property associated with the specified key or null if the property is not found.java.util.Properties
getProperties()
Returns this image's Properties.java.lang.String[]
getPropertiesAsArray()
Used for saving string properties in TIFF header.java.lang.Object
getProperty(java.lang.String key)
Returns the property associated with 'key', or null if it is not found.java.lang.String
getPropsInfo()
Returns information displayed by Image/Show Info command.ImageStatistics
getRawStatistics()
Roi
getRoi()
Returns the current selection, or null if there is no selection.java.lang.String
getShortTitle()
If the image title is a file name, returns the name without the extension and with spaces removed, otherwise returns the title shortened to the first space.double
getSizeInBytes()
Returns the size of this image in bytes.int
getSlice()
ImageStack
getStack()
Returns the image stack.int
getStackIndex(int channel, int slice, int frame)
Returns that stack index (one-based) corresponding to the specified position.int
getStackSize()
If this is a stack, returns the number of slices, else returns 1.long
getStartTime()
Returns the time in milliseconds when startTiming() was last called.static Calibration
getStaticGlobalCalibration()
This is a version of getGlobalCalibration() that can be called from a static context.ImageStatistics
getStatistics()
Get calibrated statistics for this image or ROI, including histogram, area, mean, min and max, standard deviation and mode.ImageStatistics
getStatistics(int mOptions)
Returns an ImageStatistics object generated using the specified measurement options.ImageStatistics
getStatistics(int mOptions, int nBins)
Returns an ImageStatistics object generated using the specified measurement options and histogram bin count.ImageStatistics
getStatistics(int mOptions, int nBins, double histMin, double histMax)
Returns an ImageStatistics object generated using the specified measurement options, histogram bin count and histogram range.java.lang.String
getStringProperty(java.lang.String key)
Returns the string value from the "Info" property string associated with 'key', or null if the key is not found.int
getT()
Returns the current hyperstack frame position.java.lang.String
getTitle()
Returns the image name.int
getType()
Returns the current image type (ImagePlus.GRAY8, ImagePlus.GRAY16, ImagePlus.GRAY32, ImagePlus.COLOR_256 or ImagePlus.COLOR_RGB).int
getWidth()
Returns the width of this image in pixels.ImageWindow
getWindow()
Returns the ImageWindow that is being used to display this image.int
getZ()
Returns the current hyperstack slice position.void
hide()
Closes the window, if any, that is displaying this image.boolean
imageUpdate(java.awt.Image img, int flags, int x, int y, int w, int h)
Used by ImagePlus to monitor loading of images.boolean
isComposite()
Returns true if this is a CompositeImage.boolean
isDisplayedHyperStack()
Returns 'true' if this is a hyperstack currently being displayed in a StackWindow.boolean
isHyperStack()
Returns 'true' if this image is a hyperstack.boolean
isInvertedLut()
Returns true is this image uses an inverting LUT that displays zero as white and 255 as black.boolean
isLocked()
Returns 'true' if the image is locked.boolean
isLockedByAnotherThread()
Returns 'true' if the image was locked on another thread.boolean
isProcessor()
boolean
isRGB()
boolean
isStack()
boolean
isThreshold()
Returns 'true' if this image is thresholded.boolean
isVisible()
Returns true if this image is currently being displayed in a window.void
killRoi()
Deletes the current region of interest.void
killStack()
boolean
lock()
Locks the image so other threads can test to see if it is in use.boolean
lockSilently()
Similar to lock, but doesn't beep and display an error message if the attempt to lock the image fails.static void
logImageListeners()
For debug purposes, writes all registered (and possibly, forgotten) ImageListeners to the log windowvoid
mouseMoved(int x, int y)
Displays the cursor coordinates and pixel value in the status bar.protected void
notifyListeners(int id)
boolean
okToDeleteRoi()
void
paste()
Inserts the contents of the internal clipboard into this image.void
paste(int x, int y)
Inserts the contents of the internal clipboard at the specified location, without updating the display.void
paste(int x, int y, java.lang.String mode)
Copies the contents of the internal clipboard to the specified location using the specified transfer mode ("Copy", "Blend", "Average", "Difference", "Transparent", "Transparent2", "AND", "OR", "XOR", "Add", "Subtract", "Multiply", or "Divide").PlotWindow
plotHistogram()
Plots a 256 bin histogram of this image and returns the PlotWindow.PlotWindow
plotHistogram(int bins)
Plots a histogram of this image using the specified number of bins and returns the PlotWindow.static void
removeImageListener(ImageListener listener)
void
repaintWindow()
Calls draw to draw the image and also repaints the image window to force the information displayed above the image (dimension, type, size) to be updated.static void
resetClipboard()
Clears the internal clipboard.void
resetDisplayRange()
void
resetRoi()
Deletes the current region of interest.void
resetStack()
ImagePlus
resize(int dstWidth, int dstHeight, int dstDepth, java.lang.String options)
Returns a scaled copy of this image or ROI, where the 'options' string can contain 'none', 'bilinear'.ImagePlus
resize(int dstWidth, int dstHeight, java.lang.String options)
Returns a scaled copy of this image or ROI, where the 'options' string can contain 'none', 'bilinear'.void
restoreRoi()
void
revert()
Implements the File/Revert command.void
saveRoi()
void
setActivated()
Called by ImageWindow.windowActivated(); to end waiting in waitTillActivated.void
setActiveChannels(java.lang.String channels)
Controls which channels in a composite color image are displayed, where 'channels' is a list of ones and zeros that specify the channels to display.void
setAntialiasRendering(boolean antialiasRendering)
Enable/disable use of antialiasing by the flatten() method.void
setBorderColor(java.awt.Color borderColor)
void
setC(int channel)
Sets the hyperstack channel position (one based).void
setCalibration(Calibration cal)
Sets this image's calibration.void
setColor(java.awt.Color c)
Sets current foreground color.void
setDeactivated()
Called bynew StackWindow(ImagePlus)
before showing the StackWindow, to prepare for waitTillActivated().static void
setDefault16bitRange(int bitDepth)
Set the default 16-bit display range, where 'bitDepth' must be 0 (auto-scaling), 8 (0-255), 10 (0-1023), 12 (0-4095, 14 (0-16383), 15 (0-32767) or 16 (0-65535).void
setDefaultDisplayRange(double min, double max)
void
setDimensions(int nChannels, int nSlices, int nFrames)
Sets the 3rd, 4th and 5th dimensions, wherenChannels
*nSlices
*nFrames
must be equal to the stack size.void
setDisplayMode(int mode)
Sets the display mode of composite color images, where 'mode' should be IJ.COMPOSITE, IJ.COLOR or IJ.GRAYSCALE.void
setDisplayRange(double min, double max)
Sets the display range of the current channel.void
setDisplayRange(double min, double max, int channels)
Sets the display range of specified channels in an RGB image, where 4=red, 2=green, 1=blue, 6=red+green, etc.void
setFileInfo(FileInfo fi)
Saves this image's FileInfo so it can be later retieved using getOriginalFileInfo().void
setGlobalCalibration(Calibration global)
Sets the system-wide calibration.void
setHideOverlay(boolean hide)
void
setIgnoreFlush(boolean ignoreFlush)
void
setIgnoreGlobalCalibration(boolean ignoreGlobalCalibration)
boolean
setIJMenuBar()
void
setIJMenuBar(boolean b)
void
setImage(ImagePlus imp)
Replaces this image with the specified ImagePlus.void
setImage(java.awt.Image image)
Replaces the image, if any, with the one specified.void
setLut(LUT lut)
Assigns a LUT (lookup table) to this image.void
setOpenAsHyperStack(boolean openAsHyperStack)
void
setOverlay(Overlay overlay)
Installs a list of ROIs that will be drawn on this image as a non-destructive overlay.void
setOverlay(Roi roi, java.awt.Color strokeColor, int strokeWidth, java.awt.Color fillColor)
Creates an Overlay from the specified ROI, and assigns it to this image.void
setOverlay(java.awt.Shape shape, java.awt.Color color, java.awt.BasicStroke stroke)
Creates an Overlay from the specified Shape, Color and BasicStroke, and assigns it to this image.void
setPlot(Plot plot)
void
setPosition(int n)
Set the current hyperstack position based on the stack index 'n' (one-based).void
setPosition(int channel, int slice, int frame)
Sets the current hyperstack position and updates the display, where 'channel', 'slice' and 'frame' are one-based indexes.void
setPositionWithoutUpdate(int channel, int slice, int frame)
Sets the current hyperstack position without updating the display, where 'channel', 'slice' and 'frame' are one-based indexes.void
setProcessor(ImageProcessor ip)
Replaces the ImageProcessor with the one specified and updates the display.void
setProcessor(java.lang.String title, ImageProcessor ip)
Replaces the ImageProcessor with the one specified and updates the display.void
setProp(java.lang.String key, double value)
Saves a persistent numeric propery.void
setProp(java.lang.String key, java.lang.String value)
Adds a key-value pair to this image's string properties.void
setProperties(java.lang.String[] props)
Creates a set of image properties from an array of strings.void
setProperty(java.lang.String key, java.lang.Object value)
Adds a key-value pair to this image's properties.void
setRoi(int x, int y, int width, int height)
Creates a rectangular selection.void
setRoi(Roi newRoi)
Assigns the specified ROI to this image and displays it.void
setRoi(Roi newRoi, boolean updateDisplay)
Assigns 'newRoi' to this image and displays it if 'updateDisplay' is true.void
setRoi(java.awt.Rectangle r)
Creates a rectangular selection.void
setSlice(int n)
Displays the specified stack image, where 1<=n<=stackSize.void
setSliceWithoutUpdate(int n)
Displays the specified stack image (1<=n<=stackSize) without updating the display.void
setStack(ImageStack stack)
Replaces the image with the specified stack and updates the display.void
setStack(ImageStack newStack, int channels, int slices, int frames)
void
setStack(java.lang.String title, ImageStack newStack)
Replaces the image with the specified stack and updates the display.void
setT(int frame)
Sets the hyperstack frame position (one based).void
setTemporary()
void
setTitle(java.lang.String title)
Sets the image name.protected void
setType(int type)
void
setTypeToColor256()
void
setWindow(ImageWindow win)
This method should only be called from an ImageWindow.void
setZ(int slice)
Sets the hyperstack slice position (one based).void
show()
Opens a window to display this image and clears the status bar.void
show(java.lang.String statusMessage)
Opens a window to display this image and displays 'statusMessage' in the status bar.void
startTiming()
Calls System.currentTimeMillis() to save the current time so it can be retrieved later using getStartTime() to calculate the elapsed time of an operation.boolean
tempOverlay()
java.lang.String
toString()
void
trimProcessor()
Frees RAM by setting the snapshot (undo) buffer in the current ImageProcessor to null.void
unlock()
Unlocks the image.void
updateAndDraw()
Updates this image from the pixel data in its associated ImageProcessor, then displays it.void
updateAndRepaintWindow()
Calls updateAndDraw to update from the pixel data and draw the image, and also repaints the image window to force the information displayed above the image (dimension, type, size) to be updated.void
updateChannelAndDraw()
Updates this image from the pixel data in its associated ImageProcessor, then displays it.void
updateImage()
ImageCanvas.paint() calls this method when the ImageProcessor has generated a new image.void
updatePosition(int c, int z, int t)
void
updateStatusbarValue()
Redisplays the (x,y) coordinates and pixel value (which may have changed) in the status bar.void
updateVirtualSlice()
Use to update the image when the underlying virtual stack changes.void
waitTillActivated()
Waits until the image window becomes activated.boolean
windowActivated()
-
-
-
Field Detail
-
GRAY8
public static final int GRAY8
8-bit grayscale (unsigned)- See Also:
- Constant Field Values
-
GRAY16
public static final int GRAY16
16-bit grayscale (unsigned)- See Also:
- Constant Field Values
-
GRAY32
public static final int GRAY32
32-bit floating-point grayscale- See Also:
- Constant Field Values
-
COLOR_256
public static final int COLOR_256
8-bit indexed color- See Also:
- Constant Field Values
-
COLOR_RGB
public static final int COLOR_RGB
32-bit RGB color- See Also:
- Constant Field Values
-
flattenTitle
public static final java.lang.String flattenTitle
Title of image used by Flatten command- See Also:
- Constant Field Values
-
changes
public boolean changes
True if any changes have been made to this image.
-
img
protected java.awt.Image img
-
ip
protected ImageProcessor ip
-
win
protected ImageWindow win
-
roi
protected Roi roi
-
currentSlice
protected int currentSlice
-
OPENED
protected static final int OPENED
- See Also:
- Constant Field Values
-
CLOSED
protected static final int CLOSED
- See Also:
- Constant Field Values
-
UPDATED
protected static final int UPDATED
- See Also:
- Constant Field Values
-
SAVED
protected static final int SAVED
- See Also:
- Constant Field Values
-
compositeImage
protected boolean compositeImage
-
width
protected int width
-
height
protected int height
-
locked
protected boolean locked
-
nChannels
protected int nChannels
-
nSlices
protected int nSlices
-
nFrames
protected int nFrames
-
dimensionsSet
protected boolean dimensionsSet
-
setIJMenuBar
public boolean setIJMenuBar
-
-
Constructor Detail
-
ImagePlus
public ImagePlus()
Constructs an uninitialized ImagePlus.
-
ImagePlus
public ImagePlus(java.lang.String title, java.awt.Image image)
Constructs an ImagePlus from an Image or BufferedImage. The first argument will be used as the title of the window that displays the image. Throws an IllegalStateException if an error occurs while loading the image.
-
ImagePlus
public ImagePlus(java.lang.String title, ImageProcessor ip)
Constructs an ImagePlus from an ImageProcessor.
-
ImagePlus
public ImagePlus(java.lang.String pathOrURL)
Constructs an ImagePlus from a TIFF, BMP, DICOM, FITS, PGM, GIF or JPRG specified by a path or from a TIFF, DICOM, GIF or JPEG specified by a URL.
-
ImagePlus
public ImagePlus(java.lang.String title, ImageStack stack)
Constructs an ImagePlus from a stack.
-
-
Method Detail
-
setTemporary
public void setTemporary()
-
lock
public boolean lock()
Locks the image so other threads can test to see if it is in use. One thread can lock an image multiple times, then it has to unlock it as many times until it is unlocked. This allows nested locking within a thread. Returns true if the image was successfully locked. Beeps, displays a message in the status bar, and returns false if the image is already locked by another thread.
-
lockSilently
public boolean lockSilently()
Similar to lock, but doesn't beep and display an error message if the attempt to lock the image fails.
-
unlock
public void unlock()
Unlocks the image. In case the image had been locked several times by the current thread, it gets unlocked only after as many unlock operations as there were previous lock operations.
-
isLocked
public boolean isLocked()
Returns 'true' if the image is locked.
-
isLockedByAnotherThread
public boolean isLockedByAnotherThread()
Returns 'true' if the image was locked on another thread.
-
draw
public void draw()
Draws the image. If there is an ROI, its outline is also displayed. Does nothing if there is no window associated with this image (i.e. show() has not been called).
-
draw
public void draw(int x, int y, int width, int height)
Draws image and roi outline using a clip rect.
-
updateAndDraw
public void updateAndDraw()
Updates this image from the pixel data in its associated ImageProcessor, then displays it. Does nothing if there is no window associated with this image (i.e. show() has not been called).
-
updateVirtualSlice
public void updateVirtualSlice()
Use to update the image when the underlying virtual stack changes.
-
setDisplayMode
public void setDisplayMode(int mode)
Sets the display mode of composite color images, where 'mode' should be IJ.COMPOSITE, IJ.COLOR or IJ.GRAYSCALE.
-
getDisplayMode
public int getDisplayMode()
Returns the display mode (IJ.COMPOSITE, IJ.COLOR or IJ.GRAYSCALE) if this is a composite color image, or 0 if it not.
-
setActiveChannels
public void setActiveChannels(java.lang.String channels)
Controls which channels in a composite color image are displayed, where 'channels' is a list of ones and zeros that specify the channels to display. For example, "101" causes channels 1 and 3 to be displayed.
-
updateChannelAndDraw
public void updateChannelAndDraw()
Updates this image from the pixel data in its associated ImageProcessor, then displays it. The CompositeImage class overrides this method to only update the current channel.
-
getChannelProcessor
public ImageProcessor getChannelProcessor()
Returns a reference to the current ImageProcessor. The CompositeImage class overrides this method to return the processor associated with the current channel.
-
getLuts
public LUT[] getLuts()
Returns an array containing the lookup tables used by this image, one per channel, or an empty array if this is an RGB image.- See Also:
getNChannels()
,isComposite()
,getCompositeMode()
-
repaintWindow
public void repaintWindow()
Calls draw to draw the image and also repaints the image window to force the information displayed above the image (dimension, type, size) to be updated.
-
updateAndRepaintWindow
public void updateAndRepaintWindow()
Calls updateAndDraw to update from the pixel data and draw the image, and also repaints the image window to force the information displayed above the image (dimension, type, size) to be updated.
-
updateImage
public void updateImage()
ImageCanvas.paint() calls this method when the ImageProcessor has generated a new image.
-
hide
public void hide()
Closes the window, if any, that is displaying this image.
-
close
public void close()
Closes this image and sets the ImageProcessor to null. To avoid the "Save changes?" dialog, first set the public 'changes' variable to false.
-
show
public void show()
Opens a window to display this image and clears the status bar.
-
show
public void show(java.lang.String statusMessage)
Opens a window to display this image and displays 'statusMessage' in the status bar.
-
waitTillActivated
public void waitTillActivated()
Waits until the image window becomes activated. This is necessary in macros or other programs if an ImagePlus is shown on the screen, because displaying the window is asynchronous (happens later) and will make the image the active one. Without waiting, in the meanwhile another window could be already the active one and would become deactivated. If the ImagePlus may have been displayed previously, first call setDeactivated().ImagePlus.show()
andnew StackWindow(ImagePlus)
call this method if IJ.isMacro() is true, i.e., when running a macro or executing an IJ.run(...) call.
-
setActivated
public void setActivated()
Called by ImageWindow.windowActivated(); to end waiting in waitTillActivated.
-
setDeactivated
public void setDeactivated()
Called bynew StackWindow(ImagePlus)
before showing the StackWindow, to prepare for waitTillActivated().
-
getImage
public java.awt.Image getImage()
Returns this image as a AWT image.
-
getBufferedImage
public java.awt.image.BufferedImage getBufferedImage()
Returns a copy of this image as an 8-bit or RGB BufferedImage.- See Also:
ShortProcessor.get16BitBufferedImage()
-
getID
public int getID()
Returns this image's unique numeric ID.
-
setImage
public void setImage(java.awt.Image image)
Replaces the image, if any, with the one specified. Throws an IllegalStateException if an error occurs while loading the image.
-
convertToImageProcessor
public static ImageProcessor convertToImageProcessor(java.awt.image.BufferedImage img, int band)
Extract pixels as an an ImageProcessor from a single band of a BufferedImage.- Parameters:
img
-band
-- Returns:
-
setImage
public void setImage(ImagePlus imp)
Replaces this image with the specified ImagePlus. May not work as expected if 'imp' is a CompositeImage and this image is not.
-
setProcessor
public void setProcessor(ImageProcessor ip)
Replaces the ImageProcessor with the one specified and updates the display. With stacks, the ImageProcessor must be the same type as the other images in the stack and it must be the same width and height.
-
setProcessor
public void setProcessor(java.lang.String title, ImageProcessor ip)
Replaces the ImageProcessor with the one specified and updates the display. With stacks, the ImageProcessor must be the same type as other images in the stack and it must be the same width and height. Set 'title' to null to leave the title unchanged.
-
setStack
public void setStack(ImageStack stack)
Replaces the image with the specified stack and updates the display.
-
setStack
public void setStack(java.lang.String title, ImageStack newStack)
Replaces the image with the specified stack and updates the display. Set 'title' to null to leave the title unchanged.
-
setStack
public void setStack(ImageStack newStack, int channels, int slices, int frames)
-
setFileInfo
public void setFileInfo(FileInfo fi)
Saves this image's FileInfo so it can be later retieved using getOriginalFileInfo().
-
getWindow
public ImageWindow getWindow()
Returns the ImageWindow that is being used to display this image. Returns null if show() has not be called or the ImageWindow has been closed.
-
isVisible
public boolean isVisible()
Returns true if this image is currently being displayed in a window.
-
setWindow
public void setWindow(ImageWindow win)
This method should only be called from an ImageWindow.
-
getCanvas
public ImageCanvas getCanvas()
Returns the ImageCanvas being used to display this image, or null.
-
setColor
public void setColor(java.awt.Color c)
Sets current foreground color.
-
isProcessor
public boolean isProcessor()
-
getProcessor
public ImageProcessor getProcessor()
Returns a reference to the current ImageProcessor. If there is no ImageProcessor, it creates one. Returns null if this ImagePlus contains no ImageProcessor and no AWT Image. Sets the line width to the current line width and sets the calibration table if the image is density calibrated.
-
trimProcessor
public void trimProcessor()
Frees RAM by setting the snapshot (undo) buffer in the current ImageProcessor to null.
-
getMask
public ImageProcessor getMask()
For images with irregular ROIs, returns a byte mask, otherwise, returns null. Mask pixels have a non-zero value.and the dimensions of the mask are equal to the width and height of the ROI.- See Also:
createRoiMask()
,createThresholdMask()
-
createRoiMask
public ByteProcessor createRoiMask()
Returns an 8-bit binary (foreground=255, background=0) ROI or overlay mask that has the same dimensions as this image. Creates an ROI mask If the image has both both an ROI and an overlay. Set the threshold of the mask to 255.- See Also:
createThresholdMask()
,Roi.getMask()
-
createThresholdMask
public ByteProcessor createThresholdMask()
Returns an 8-bit binary threshold mask (foreground=255, background=0) that has the same dimensions as this image. The threshold of the mask is set to 255.
-
getStatistics
public ImageStatistics getStatistics()
Get calibrated statistics for this image or ROI, including histogram, area, mean, min and max, standard deviation and mode. This code demonstrates how to get the area, mean max and median of the current image or selection:imp = IJ.getImage(); stats = imp.getStatistics(); IJ.log("Area: "+stats.area); IJ.log("Mean: "+stats.mean); IJ.log("Max: "+stats.max);
- Returns:
- an
ImageStatistics
object - See Also:
getAllStatistics()
,getRawStatistics()
,ImageProcessor.getStats()
-
getAllStatistics
public ImageStatistics getAllStatistics()
This method returns complete calibrated statistics for this image or ROI (with "Limit to threshold"), but it is up to 70 times slower than getStatistics().- Returns:
- an
ImageStatistics
object - See Also:
getStatistics()
,ImageProcessor.getStatistics()
-
getRawStatistics
public ImageStatistics getRawStatistics()
-
getStatistics
public ImageStatistics getStatistics(int mOptions)
Returns an ImageStatistics object generated using the specified measurement options.- See Also:
Measurements
-
getStatistics
public ImageStatistics getStatistics(int mOptions, int nBins)
Returns an ImageStatistics object generated using the specified measurement options and histogram bin count.
-
getStatistics
public ImageStatistics getStatistics(int mOptions, int nBins, double histMin, double histMax)
Returns an ImageStatistics object generated using the specified measurement options, histogram bin count and histogram range.
-
getTitle
public java.lang.String getTitle()
Returns the image name.
-
getShortTitle
public java.lang.String getShortTitle()
If the image title is a file name, returns the name without the extension and with spaces removed, otherwise returns the title shortened to the first space.
-
setTitle
public void setTitle(java.lang.String title)
Sets the image name.
-
getWidth
public int getWidth()
Returns the width of this image in pixels.
-
getHeight
public int getHeight()
Returns the height of this image in pixels.
-
getSizeInBytes
public double getSizeInBytes()
Returns the size of this image in bytes.
-
getStackSize
public int getStackSize()
If this is a stack, returns the number of slices, else returns 1.
-
getImageStackSize
public int getImageStackSize()
If this is a stack, returns the actual number of images in the stack, else returns 1.
-
setDimensions
public void setDimensions(int nChannels, int nSlices, int nFrames)
Sets the 3rd, 4th and 5th dimensions, wherenChannels
*nSlices
*nFrames
must be equal to the stack size.
-
isHyperStack
public boolean isHyperStack()
Returns 'true' if this image is a hyperstack.
-
getNDimensions
public int getNDimensions()
Returns the number of dimensions (2, 3, 4 or 5).
-
isDisplayedHyperStack
public boolean isDisplayedHyperStack()
Returns 'true' if this is a hyperstack currently being displayed in a StackWindow.
-
getNChannels
public int getNChannels()
Returns the number of channels.
-
getNSlices
public int getNSlices()
Returns the image depth (number of z-slices).
-
getNFrames
public int getNFrames()
Returns the number of frames (time-points).
-
getDimensions
public int[] getDimensions()
Returns the dimensions of this image (width, height, nChannels, nSlices, nFrames) as a 5 element int array.
-
getDimensions
public int[] getDimensions(boolean varify)
-
getType
public int getType()
Returns the current image type (ImagePlus.GRAY8, ImagePlus.GRAY16, ImagePlus.GRAY32, ImagePlus.COLOR_256 or ImagePlus.COLOR_RGB).- See Also:
getBitDepth()
-
getBitDepth
public int getBitDepth()
Returns the bit depth, 8, 16, 24 (RGB) or 32, or 0 if the bit depth is unknown. RGB images actually use 32 bits per pixel.
-
getBytesPerPixel
public int getBytesPerPixel()
Returns the number of bytes per pixel.
-
setType
protected void setType(int type)
-
setTypeToColor256
public void setTypeToColor256()
-
getStringProperty
public java.lang.String getStringProperty(java.lang.String key)
Returns the string value from the "Info" property string associated with 'key', or null if the key is not found. Works with DICOM tags and Bio-Formats metadata.
-
getNumericProperty
public double getNumericProperty(java.lang.String key)
Returns the numeric value from the "Info" property string associated with 'key', or NaN if the key is not found or the value associated with the key is not numeric. Works with DICOM tags and Bio-Formats metadata.
-
setProp
public void setProp(java.lang.String key, java.lang.String value)
Adds a key-value pair to this image's string properties. The key-value pair is removed if 'value' is null. The properties persist if the image is saved in TIFF format. Add a "HideInfo" property (e.g. set("HideInfo","true")) to prevent the properties from being displayed by the Image/Show Info command.
-
setProp
public void setProp(java.lang.String key, double value)
Saves a persistent numeric propery. The property is removed if 'value' is NaN.- See Also:
getNumericProp(java.lang.String)
-
getProp
public java.lang.String getProp(java.lang.String key)
Returns as a string the image property associated with the specified key or null if the property is not found.
-
getNumericProp
public double getNumericProp(java.lang.String key)
Returns the numeric property associated with the specified key or NaN if the property is not found.- See Also:
setProp(String,double)
,getProp(java.lang.String)
-
getPropertiesAsArray
public java.lang.String[] getPropertiesAsArray()
Used for saving string properties in TIFF header.
-
getPropsInfo
public java.lang.String getPropsInfo()
Returns information displayed by Image/Show Info command.
-
setProperties
public void setProperties(java.lang.String[] props)
Creates a set of image properties from an array of strings.
-
getInfoProperty
public java.lang.String getInfoProperty()
Returns the "Info" property string, or null if it is not found.
-
getProperty
public java.lang.Object getProperty(java.lang.String key)
Returns the property associated with 'key', or null if it is not found.
-
setProperty
public void setProperty(java.lang.String key, java.lang.Object value)
Adds a key-value pair to this image's properties. The key is removed from the properties table if value is null.
-
getProperties
public java.util.Properties getProperties()
Returns this image's Properties. May return null.
-
createLut
public LookUpTable createLut()
Creates a LookUpTable object that corresponds to this image.
-
isInvertedLut
public boolean isInvertedLut()
Returns true is this image uses an inverting LUT that displays zero as white and 255 as black.
-
getPixel
public int[] getPixel(int x, int y)
Returns the pixel value at (x,y) as a 4 element array. Grayscale values are retuned in the first element. RGB values are returned in the first 3 elements. For indexed color images, the RGB values are returned in the first 3 three elements and the index (0-255) is returned in the last.
-
createEmptyStack
public ImageStack createEmptyStack()
Returns an empty image stack that has the same width, height and color table as this image.
-
getStack
public ImageStack getStack()
Returns the image stack. The stack may have only one slice. After adding or removing slices, callsetStack()
to update the image and the window that is displaying it.- See Also:
setStack(ij.ImageStack)
-
getImageStack
public ImageStack getImageStack()
Returns the base image stack.
-
getCurrentSlice
public int getCurrentSlice()
Returns the current stack index (one-based) or 1 if this is a single image.
-
getChannel
public int getChannel()
-
getSlice
public int getSlice()
-
getFrame
public int getFrame()
-
killStack
public void killStack()
-
setPosition
public void setPosition(int channel, int slice, int frame)
Sets the current hyperstack position and updates the display, where 'channel', 'slice' and 'frame' are one-based indexes.
-
setPositionWithoutUpdate
public void setPositionWithoutUpdate(int channel, int slice, int frame)
Sets the current hyperstack position without updating the display, where 'channel', 'slice' and 'frame' are one-based indexes.
-
setC
public void setC(int channel)
Sets the hyperstack channel position (one based).
-
setZ
public void setZ(int slice)
Sets the hyperstack slice position (one based).
-
setT
public void setT(int frame)
Sets the hyperstack frame position (one based).
-
getC
public int getC()
Returns the current hyperstack channel position.
-
getZ
public int getZ()
Returns the current hyperstack slice position.
-
getT
public int getT()
Returns the current hyperstack frame position.
-
getStackIndex
public int getStackIndex(int channel, int slice, int frame)
Returns that stack index (one-based) corresponding to the specified position.
-
resetStack
public void resetStack()
-
setPosition
public void setPosition(int n)
Set the current hyperstack position based on the stack index 'n' (one-based).
-
convertIndexToPosition
public int[] convertIndexToPosition(int n)
Converts the stack index 'n' (one-based) into a hyperstack position (channel, slice, frame).
-
setSlice
public void setSlice(int n)
Displays the specified stack image, where 1<=n<=stackSize. Does nothing if this image is not a stack.- See Also:
setPosition(int, int, int)
,setC(int)
,setZ(int)
,setT(int)
-
setSliceWithoutUpdate
public void setSliceWithoutUpdate(int n)
Displays the specified stack image (1<=n<=stackSize) without updating the display.
-
getRoi
public Roi getRoi()
Returns the current selection, or null if there is no selection.
-
setRoi
public void setRoi(Roi newRoi)
Assigns the specified ROI to this image and displays it. Any existing ROI is deleted ifroi
is null or its width or height is zero.
-
setRoi
public void setRoi(Roi newRoi, boolean updateDisplay)
Assigns 'newRoi' to this image and displays it if 'updateDisplay' is true.
-
setRoi
public void setRoi(int x, int y, int width, int height)
Creates a rectangular selection.
-
setRoi
public void setRoi(java.awt.Rectangle r)
Creates a rectangular selection.
-
createNewRoi
public void createNewRoi(int sx, int sy)
Starts the process of creating a new selection, where sx and sy are the starting screen coordinates. The selection type is determined by which tool in the tool bar is active. The user interactively sets the selection size and shape.
-
deleteRoi
public void deleteRoi()
Deletes the current region of interest. Makes a copy of the ROI so it can be recovered by Edit/Selection/Restore Selection.
-
okToDeleteRoi
public boolean okToDeleteRoi()
-
killRoi
public void killRoi()
Deletes the current region of interest.
-
resetRoi
public void resetRoi()
Deletes the current region of interest.
-
saveRoi
public void saveRoi()
-
restoreRoi
public void restoreRoi()
-
revert
public void revert()
Implements the File/Revert command.
-
getFileInfo
public FileInfo getFileInfo()
Returns a FileInfo object containing information, including the pixel array, needed to save this image. Use getOriginalFileInfo() to get a copy of the FileInfo object used to open the image.- See Also:
FileInfo
,getOriginalFileInfo()
,setFileInfo(ij.io.FileInfo)
-
getOriginalFileInfo
public FileInfo getOriginalFileInfo()
Returns the FileInfo object that was used to open this image. Returns null for images created using the File/New command.- See Also:
FileInfo
,getFileInfo()
-
imageUpdate
public boolean imageUpdate(java.awt.Image img, int flags, int x, int y, int w, int h)
Used by ImagePlus to monitor loading of images.- Specified by:
imageUpdate
in interfacejava.awt.image.ImageObserver
-
flush
public void flush()
Sets the ImageProcessor, Roi, AWT Image and stack image arrays to null. Does nothing if the image is locked.
-
setIgnoreFlush
public void setIgnoreFlush(boolean ignoreFlush)
-
duplicate
public ImagePlus duplicate()
Returns a copy of this image or stack.- See Also:
crop()
,Duplicator.run(java.lang.String)
-
resize
public ImagePlus resize(int dstWidth, int dstHeight, java.lang.String options)
Returns a scaled copy of this image or ROI, where the 'options' string can contain 'none', 'bilinear'. 'bicubic', 'average' and 'constrain'.
-
resize
public ImagePlus resize(int dstWidth, int dstHeight, int dstDepth, java.lang.String options)
Returns a scaled copy of this image or ROI, where the 'options' string can contain 'none', 'bilinear'. 'bicubic', 'average' and 'constrain'.
-
crop
public ImagePlus crop()
Returns a copy this image or stack slice, cropped if there is an ROI.- See Also:
duplicate()
,Duplicator.crop(ij.ImagePlus)
-
crop
public ImagePlus crop(java.lang.String options)
Returns a cropped copy this image or stack, where 'options' can be "stack", "slice", "whole-slice" or a range (e.g., "20-30").- See Also:
duplicate()
,crop()
,Duplicator.crop(ij.ImagePlus)
-
crop
public ImagePlus[] crop(Roi[] rois, java.lang.String options)
Returns an array of cropped images based on the provided list of rois. 'options' applies with stacks and can be "stack", "slice" or a range (e.g., "20-30").- See Also:
crop(ij.gui.Roi[])
-
cropAndSave
public void cropAndSave(Roi[] rois, java.lang.String directory, java.lang.String format)
Saves the contents of the ROIs in this overlay as separate images, where 'directory' is the directory path and 'format' is "tif", "png" or "jpg". Set 'format' to "show" and the images will be displayed in a stack and not saved.
-
createImagePlus
public ImagePlus createImagePlus()
Returns a new ImagePlus with this image's attributes (e.g. spatial scale), but no image.
-
createHyperStack
public ImagePlus createHyperStack(java.lang.String title, int channels, int slices, int frames, int bitDepth)
This method has been replaced by IJ.createHyperStack().
-
copyScale
public void copyScale(ImagePlus imp)
Copies the calibration of the specified image to this image.
-
copyAttributes
public void copyAttributes(ImagePlus imp)
Used internally.
-
startTiming
public void startTiming()
Calls System.currentTimeMillis() to save the current time so it can be retrieved later using getStartTime() to calculate the elapsed time of an operation.
-
getStartTime
public long getStartTime()
Returns the time in milliseconds when startTiming() was last called.
-
getCalibration
public Calibration getCalibration()
Returns this image's calibration.
-
setCalibration
public void setCalibration(Calibration cal)
Sets this image's calibration.
-
setGlobalCalibration
public void setGlobalCalibration(Calibration global)
Sets the system-wide calibration.
-
getGlobalCalibration
public Calibration getGlobalCalibration()
Returns the system-wide calibration, or null.
-
getStaticGlobalCalibration
public static Calibration getStaticGlobalCalibration()
This is a version of getGlobalCalibration() that can be called from a static context.
-
getLocalCalibration
public Calibration getLocalCalibration()
Returns this image's local calibration, ignoring the "Global" calibration flag.
-
setIgnoreGlobalCalibration
public void setIgnoreGlobalCalibration(boolean ignoreGlobalCalibration)
-
mouseMoved
public void mouseMoved(int x, int y)
Displays the cursor coordinates and pixel value in the status bar. Called by ImageCanvas when the mouse moves.
-
updateStatusbarValue
public void updateStatusbarValue()
Redisplays the (x,y) coordinates and pixel value (which may have changed) in the status bar. Called by the Next Slice and Previous Slice commands to update the z-coordinate and pixel value.
-
getLocationAsString
public java.lang.String getLocationAsString(int x, int y)
Converts the current cursor location to a string.
-
cut
public void cut()
Copies the contents of the current selection to the internal clipboard and then clears the selection.
-
copy
public void copy()
Copies the contents of the current selection, or the entire image if there is no selection, to the internal clipboard.
-
copy
public void copy(boolean cut)
Copies the contents of the current selection to the internal clipboard. Copies the entire image if there is no selection. Also clears the selection ifcut
is true.
-
paste
public void paste()
Inserts the contents of the internal clipboard into this image. If there is a selection the same size as the image on the clipboard, the image is inserted into that selection, otherwise the selection is inserted into the center of the image.
-
paste
public void paste(int x, int y)
Inserts the contents of the internal clipboard at the specified location, without updating the display.
-
paste
public void paste(int x, int y, java.lang.String mode)
Copies the contents of the internal clipboard to the specified location using the specified transfer mode ("Copy", "Blend", "Average", "Difference", "Transparent", "Transparent2", "AND", "OR", "XOR", "Add", "Subtract", "Multiply", or "Divide"). The display is not updating.
-
getClipboard
public static ImagePlus getClipboard()
Returns the internal clipboard or null if the internal clipboard is empty.
-
resetClipboard
public static void resetClipboard()
Clears the internal clipboard.
-
copyToSystem
public void copyToSystem()
Copies the contents of the current selection, or the entire image if there is no selection, to the system clipboard.
-
notifyListeners
protected void notifyListeners(int id)
-
addImageListener
public static void addImageListener(ImageListener listener)
-
removeImageListener
public static void removeImageListener(ImageListener listener)
-
getListeners
public static java.util.Vector getListeners()
-
logImageListeners
public static void logImageListeners()
For debug purposes, writes all registered (and possibly, forgotten) ImageListeners to the log window
-
setOpenAsHyperStack
public void setOpenAsHyperStack(boolean openAsHyperStack)
-
getOpenAsHyperStack
public boolean getOpenAsHyperStack()
-
isComposite
public boolean isComposite()
Returns true if this is a CompositeImage.
-
getCompositeMode
public int getCompositeMode()
Returns the display mode (IJ.COMPOSITE, IJ.COLOR or IJ.GRAYSCALE) if this is a CompositeImage, otherwise returns -1.
-
setDisplayRange
public void setDisplayRange(double min, double max)
Sets the display range of the current channel. With non-composite images it is identical to ip.setMinAndMax(min, max).
-
getDisplayRangeMin
public double getDisplayRangeMin()
-
getDisplayRangeMax
public double getDisplayRangeMax()
-
setDisplayRange
public void setDisplayRange(double min, double max, int channels)
Sets the display range of specified channels in an RGB image, where 4=red, 2=green, 1=blue, 6=red+green, etc. With non-RGB images, this method is identical to setDisplayRange(min, max). This method is used by the Image/Adjust/Color Balance tool .
-
resetDisplayRange
public void resetDisplayRange()
-
setDefaultDisplayRange
public void setDefaultDisplayRange(double min, double max)
-
isThreshold
public boolean isThreshold()
Returns 'true' if this image is thresholded.
-
setDefault16bitRange
public static void setDefault16bitRange(int bitDepth)
Set the default 16-bit display range, where 'bitDepth' must be 0 (auto-scaling), 8 (0-255), 10 (0-1023), 12 (0-4095, 14 (0-16383), 15 (0-32767) or 16 (0-65535).
-
getDefault16bitRange
public static int getDefault16bitRange()
Returns the default 16-bit display range, 0 (auto-scaling), 8, 10, 12, 14, 15 or 16.
-
updatePosition
public void updatePosition(int c, int z, int t)
-
flatten
public ImagePlus flatten()
Returns a "flattened" version of this image, or stack slice, in RGB format.
-
flattenStack
public void flattenStack()
Flattens all slices of this stack or HyperStack.- Throws:
java.lang.UnsupportedOperationException
- if this image
does not have an overlay and the RoiManager overlay is null
or Java version is less than 1.6. Copied from OverlayCommands and modified by Marcel Boeglin on 2014.01.08 to work with HyperStacks.
-
tempOverlay
public boolean tempOverlay()
-
setLut
public void setLut(LUT lut)
Assigns a LUT (lookup table) to this image.- See Also:
Opener.openLut(java.lang.String)
-
setOverlay
public void setOverlay(Overlay overlay)
Installs a list of ROIs that will be drawn on this image as a non-destructive overlay.
-
setOverlay
public void setOverlay(java.awt.Shape shape, java.awt.Color color, java.awt.BasicStroke stroke)
Creates an Overlay from the specified Shape, Color and BasicStroke, and assigns it to this image.
-
setOverlay
public void setOverlay(Roi roi, java.awt.Color strokeColor, int strokeWidth, java.awt.Color fillColor)
Creates an Overlay from the specified ROI, and assigns it to this image.- See Also:
setOverlay(ij.gui.Overlay)
-
getOverlay
public Overlay getOverlay()
Returns the current overly, or null if this image does not have an overlay.
-
setHideOverlay
public void setHideOverlay(boolean hide)
-
getHideOverlay
public boolean getHideOverlay()
-
setAntialiasRendering
public void setAntialiasRendering(boolean antialiasRendering)
Enable/disable use of antialiasing by the flatten() method.
-
clone
public java.lang.Object clone()
Returns a shallow copy of this ImagePlus.- Overrides:
clone
in classjava.lang.Object
-
plotHistogram
public PlotWindow plotHistogram()
Plots a 256 bin histogram of this image and returns the PlotWindow.
-
plotHistogram
public PlotWindow plotHistogram(int bins)
Plots a histogram of this image using the specified number of bins and returns the PlotWindow.
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
setIJMenuBar
public void setIJMenuBar(boolean b)
-
setIJMenuBar
public boolean setIJMenuBar()
-
isStack
public boolean isStack()
-
setPlot
public void setPlot(Plot plot)
-
getPlot
public Plot getPlot()
-
getImageProperties
public java.util.Properties getImageProperties()
-
isRGB
public boolean isRGB()
-
setBorderColor
public void setBorderColor(java.awt.Color borderColor)
-
windowActivated
public boolean windowActivated()
-
-