Module ij
Package ij.gui

Class Overlay

java.lang.Object
ij.gui.Overlay
All Implemented Interfaces:
Iterable<Roi>

public class Overlay extends Object implements Iterable<Roi>
An Overlay is a list of ROIs that can be drawn non-destructively on an Image.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Constructs an empty Overlay.
    Overlay(Roi roi)
    Constructs an Overlay and adds the specified ROI.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    add(Roi roi)
    Adds an ROI to this Overlay.
    void
    add(Roi roi, String name)
    Adds an ROI to this Overlay using the specified name.
    void
    Adds an ROI to this Overlay.
    void
    Removes all the ROIs in this Overlay.
    boolean
    Returns 'true' if this Overlay contains the specified ROI.
    Returns a new Overlay that has the same properties as this one.
    static Overlay
     
    void
    crop(int firstSlice, int lastSlice)
    Removes ROIs having positions outside of the interval defined by firstSlice and lastSlice.
    void
    crop(int firstC, int lastC, int firstZ, int lastZ, int firstT, int lastT)
    Removes ROIs having a C, Z or T coordinate outside the volume defined by firstC, lastC, firstZ, lastZ, firstT and lastT.
    crop(Rectangle bounds)
     
    void
    drawBackgrounds(boolean b)
     
    void
    drawLabels(boolean b)
     
    void
    drawNames(boolean b)
     
    Returns a clone of this Overlay.
    void
    fill(ImagePlus imp, Color foreground, Color background)
    Fills all the ROIs in this overlay with 'foreground' after clearing the the image to 'background' if it is not null.
    get(int index)
    Returns the ROI with the specified index or null if the index is invalid.
    get(String name)
    Returns the ROI with the specified name or null if not found.
    boolean
     
    boolean
     
    boolean
     
    int
    Returns the index of the ROI with the specified name, or -1 if not found.
     
     
    int
    indexAt(int x, int y)
    Returns the index of the last ROI that contains the point (x,y) or null if no ROI contains the point.
    boolean
     
    boolean
    Returns 'true' if ROIs in this overlay can be dragged by their labels.
    boolean
    Returns 'true' if ROIs in this overlay can be activated by clicking on their labels or by a long press.
     
    Measures the ROIs in this overlay on the specified image and returns the results as a ResultsTable.
    void
    remove(int index)
    Removes the ROI with the specified index from this Overlay.
    void
    remove(Roi roi)
    Removes the specified ROI from this Overlay.
    void
    remove(String name)
    Removes all ROIs that have the specified name.
    rotate(double angle, double xcenter, double ycenter)
    Returns a rotated version of this Overlay.
    boolean
     
    scale(double xscale, double yscale)
    Returns a scaled version of this Overlay.
    void
    selectable(boolean selectable)
    Set 'false' to prevent ROIs in this overlay from being activated by clicking on their labels or by a long clicking.
    void
    set(Roi roi, int index)
    Replaces the ROI at the specified index.
    void
    setDraggable(boolean draggable)
    Set 'false' to prevent ROIs in this overlay from being dragged by their labels.
    void
    Sets the fill color of all the ROIs in this overlay.
    void
     
    void
     
    void
     
    void
    setLabelFont(Font font, boolean scalable)
     
    void
    setLabelFontSize(int size, String options)
    Set the label font size with options.
    void
    Sets the stroke color of all the ROIs in this overlay.
    void
    Sets the stroke width of all the ROIs in this overlay.
    int
    Returns the number of ROIs in this Overlay.
    Roi[]
    Returns on array containing the ROIs in this Overlay.
    Roi[]
    toArray(int[] indexes)
    Returns on array containing the ROIs with the specified indexes.
     
    void
    translate(double dx, double dy)
    Moves all the ROIs in this overlay.
    void
    translate(int dx, int dy)
    Moves all the ROIs in this overlay.
    static void
    updateTableOverlay(ImagePlus imp, int first, int last, int tableSize)
    Updates overlays created by the particle analyzer after rows are deleted from the Results table.
    xor(int[] indexes)
    Returns the bounds of this overlay.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface java.lang.Iterable

    forEach, spliterator
  • Constructor Details

    • Overlay

      public Overlay()
      Constructs an empty Overlay.
    • Overlay

      public Overlay(Roi roi)
      Constructs an Overlay and adds the specified ROI.
  • Method Details

    • add

      public void add(Roi roi)
      Adds an ROI to this Overlay.
    • add

      public void add(Roi roi, String name)
      Adds an ROI to this Overlay using the specified name.
    • addElement

      public void addElement(Roi roi)
      Adds an ROI to this Overlay.
    • set

      public void set(Roi roi, int index)
      Replaces the ROI at the specified index.
    • remove

      public void remove(int index)
      Removes the ROI with the specified index from this Overlay.
    • remove

      public void remove(Roi roi)
      Removes the specified ROI from this Overlay.
    • remove

      public void remove(String name)
      Removes all ROIs that have the specified name.
    • clear

      public void clear()
      Removes all the ROIs in this Overlay.
    • get

      public Roi get(int index)
      Returns the ROI with the specified index or null if the index is invalid.
    • get

      public Roi get(String name)
      Returns the ROI with the specified name or null if not found.
    • getIndex

      public int getIndex(String name)
      Returns the index of the ROI with the specified name, or -1 if not found.
    • indexAt

      public int indexAt(int x, int y)
      Returns the index of the last ROI that contains the point (x,y) or null if no ROI contains the point.
    • contains

      public boolean contains(Roi roi)
      Returns 'true' if this Overlay contains the specified ROI.
    • size

      public int size()
      Returns the number of ROIs in this Overlay.
    • toArray

      public Roi[] toArray()
      Returns on array containing the ROIs in this Overlay.
    • toArray

      public Roi[] toArray(int[] indexes)
      Returns on array containing the ROIs with the specified indexes.
    • setStrokeColor

      public void setStrokeColor(Color color)
      Sets the stroke color of all the ROIs in this overlay.
    • setStrokeWidth

      public void setStrokeWidth(Double width)
      Sets the stroke width of all the ROIs in this overlay.
    • setFillColor

      public void setFillColor(Color color)
      Sets the fill color of all the ROIs in this overlay.
    • translate

      public void translate(int dx, int dy)
      Moves all the ROIs in this overlay.
    • translate

      public void translate(double dx, double dy)
      Moves all the ROIs in this overlay. Marcel Boeglin, October 2013
    • measure

      public ResultsTable measure(ImagePlus imp)
      Measures the ROIs in this overlay on the specified image and returns the results as a ResultsTable.
    • crop

      public Overlay crop(Rectangle bounds)
    • crop

      public void crop(int firstSlice, int lastSlice)
      Removes ROIs having positions outside of the interval defined by firstSlice and lastSlice. Marcel Boeglin, September 2013
    • crop

      public void crop(int firstC, int lastC, int firstZ, int lastZ, int firstT, int lastT)
      Removes ROIs having a C, Z or T coordinate outside the volume defined by firstC, lastC, firstZ, lastZ, firstT and lastT. Marcel Boeglin, September 2013
    • xor

      public Roi xor(int[] indexes)
      Returns the bounds of this overlay.
    • create

      public Overlay create()
      Returns a new Overlay that has the same properties as this one.
    • duplicate

      public Overlay duplicate()
      Returns a clone of this Overlay.
    • scale

      public Overlay scale(double xscale, double yscale)
      Returns a scaled version of this Overlay.
    • rotate

      public Overlay rotate(double angle, double xcenter, double ycenter)
      Returns a rotated version of this Overlay.
    • drawLabels

      public void drawLabels(boolean b)
    • getDrawLabels

      public boolean getDrawLabels()
    • drawNames

      public void drawNames(boolean b)
    • getDrawNames

      public boolean getDrawNames()
    • drawBackgrounds

      public void drawBackgrounds(boolean b)
    • getDrawBackgrounds

      public boolean getDrawBackgrounds()
    • setLabelColor

      public void setLabelColor(Color c)
    • getLabelColor

      public Color getLabelColor()
    • setLabelFont

      public void setLabelFont(Font font)
    • setLabelFont

      public void setLabelFont(Font font, boolean scalable)
    • setLabelFontSize

      public void setLabelFontSize(int size, String options)
      Set the label font size with options. The options string can contain 'scale' (enlarge labels when image zoomed), 'bold' (display bold labels) or 'background' (display labels with contrasting background.
    • getLabelFont

      public Font getLabelFont()
    • setIsCalibrationBar

      public void setIsCalibrationBar(boolean b)
    • isCalibrationBar

      public boolean isCalibrationBar()
    • fill

      public void fill(ImagePlus imp, Color foreground, Color background)
      Fills all the ROIs in this overlay with 'foreground' after clearing the the image to 'background' if it is not null.
    • selectable

      public void selectable(boolean selectable)
      Set 'false' to prevent ROIs in this overlay from being activated by clicking on their labels or by a long clicking.
    • isSelectable

      public boolean isSelectable()
      Returns 'true' if ROIs in this overlay can be activated by clicking on their labels or by a long press.
    • setDraggable

      public void setDraggable(boolean draggable)
      Set 'false' to prevent ROIs in this overlay from being dragged by their labels.
    • isDraggable

      public boolean isDraggable()
      Returns 'true' if ROIs in this overlay can be dragged by their labels.
    • scalableLabels

      public boolean scalableLabels()
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • updateTableOverlay

      public static void updateTableOverlay(ImagePlus imp, int first, int last, int tableSize)
      Updates overlays created by the particle analyzer after rows are deleted from the Results table.
    • createStackOverlay

      public static Overlay createStackOverlay(Roi[] rois)
    • iterator

      public Iterator<Roi> iterator()
      Specified by:
      iterator in interface Iterable<Roi>