java.lang.Object
java.awt.Component
java.awt.Container
java.awt.Window
java.awt.Frame
ij.plugin.frame.PlugInFrame
ij.plugin.frame.RoiManager
- All Implemented Interfaces:
PlugIn,ActionListener,FocusListener,ItemListener,MouseListener,MouseWheelListener,WindowListener,ImageObserver,MenuContainer,Serializable,Iterable<Roi>,EventListener,Accessible,ListSelectionListener
public class RoiManager
extends PlugInFrame
implements ActionListener, ItemListener, MouseListener, MouseWheelListener, ListSelectionListener, Iterable<Roi>
This plugin implements the Analyze/Tools/ROI Manager command.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class java.awt.Frame
Frame.AccessibleAWTFrameNested classes/interfaces inherited from class java.awt.Window
Window.AccessibleAWTWindow, Window.TypeNested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainerNested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy -
Field Summary
FieldsFields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSORFields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH -
Constructor Summary
ConstructorsConstructorDescriptionOpens the "ROI Manager" window, or activates it if it is already open.RoiManager(boolean b) Constructs an ROI Manager without displaying it. -
Method Summary
Modifier and TypeMethodDescriptionvoidvoidAdds the specified ROI to the list.voidAdds the specified ROI to the list.voidAdds the specified ROI.voidallowRecording(boolean allow) voidclose()Overrides PlugInFrame.close().voiddeselect()voidDeselect the specified ROI if it is the only one selected.intgetCount()Returns the ROI count.booleanstatic StringReturns the most recent I/O error message, or null if there was no error.intReturns the index of the first ROI with the specified name, or -1 if no ROI has that name.int[]Returns an array of the selected indexes or all indexes if none are selected.static StringThis is a macro-callable version of getSelectedIndexes().static RoiManagerReturns a reference to the ROI Manager, or null if it is not open and a batch mode macro is not running.static RoiManagerReturns a reference to the ROI Manager window or to the macro batch mode RoiManager, or null if neither exists.getList()Deprecated.getName(int index) Returns the name of the ROI with the specified index, or null if the index is out of range.static StringReturns the name of the ROI with the specified index.static RoiManagergetRoi(int index) Returns a reference to the ROI at the specified index.intgetRoiIndex(Roi roi) Returns the index of the specified Roi, or -1 if it is not found.static RoiManagerReturns a reference to the ROI Manager if it open or opens it if it is not already open.getROIs()Deprecated.Roi[]Returns the ROIs as an array.intReturns the index of the first selected ROI or -1 if no ROI is selected.int[]Returns an array of the selected indexes.Roi[]Returns the selected ROIs as an array, or all the ROIs if none are selected.intgetSliceNumber(String label) Returns the slice number associated with the specified name, or -1 if the name does not include a slice number.booleanisSelected(int index) Returns 'true' if the index is valid and the indexed ROI is selected.voiditerator()voidvoidvoidvoidvoidvoidmouseWheelMoved(MouseWheelEvent event) voidMoves all the ROIs to the specified image's overlay.voidmultiMeasure(ImagePlus imp) This method measures the selected ROIs, or all ROIs if none are selected, on all the slices of a stack and returns a ResultsTable arranged with one row per slice.static ResultsTablemultiMeasure(ImagePlus imp, Roi[] rois, boolean appendResults) booleanOpens a single .roi file or a ZIP-compressed set of ROIs.voidvoidvoidreset()Clears this RoiManager so that it contains no ROIs.static voidstatic voidrestoreCentered(boolean b) voidrotate(double angle) voidrotate(double angle, double xcenter, double ycenter) booleanrunCommand(ImagePlus imp, String cmd) Using the specified image, runs the ROI Manager "Add", "Add invalid input: '&' Draw", "Update", "Delete", "Measure", "Draw", "Show All", "Show None", "Fill", "Deselect", "Select All", "Combine", "AND", "XOR", "Split", "Sort" or "Multi Measure" command.booleanrunCommand(String cmd) Executes the ROI Manager "Add", "Add invalid input: '&' Draw", "Update", "Delete", "Measure", "Draw", "Show All", "Show None", "Fill", "Deselect", "Select All", "Combine", "AND", "XOR", "Split", "Sort" or "Multi Measure" command.booleanrunCommand(String cmd, String name) Executes the ROI Manager "Open", "Save" or "Rename" command.booleanrunCommand(String cmd, String hexColor, double lineWidth) Adds the current selection to the ROI Manager, using the specified color (a 6 digit hex string) and line width.booleanIf one ROI is selected, it is saved as a .roi file, if multiple (or no) ROIs are selected, they are saved as a .zip ROI set.voidscale(double xscale, double yscale, boolean centered) voidselect(int index) Assigns the ROI at the specified index to the current image.voidselect(int index, boolean shiftKeyDown, boolean altKeyDown) voidAssigns the ROI at the specified index to 'imp'.voidselectAndMakeVisible(ImagePlus imp, int index) intselected()Returns the count of selected ROIs.voidselectGroup(int group) Selects all ROIs of a given group.static voidselectGroup(String group) Obsolete; replaced by RoiManager.selectGroup() macro function.voidselectPosition(int c, int z, int t) Selects all ROIs at the specified position.voidsetEditMode(ImagePlus imp, boolean editMode) voidsetGroup(int group) Sets the group for the selected ROIs.static voidObsolete; replaced by RoiManager.setGroup() macro function.voidsetOverlay(Overlay overlay) voidsetPosition(int position) Sets the position of the selected ROIs.voidsetPosition(int c, int z, int t) Sets the c,z,t position of the selected ROIs.voidReplaces the ROI at the specified index.voidsetSelectedIndexes(int[] indexes) Selects multiple ROIs, where 'indexes' is an array of integers, each greater than or equal to 0 and less than the value returned by getCount().toString()voidtranslate(double dx, double dy) Moves the selected ROIs or all the ROIs if none are selected.voidvoidMethods inherited from class ij.plugin.frame.PlugInFrame
focusGained, focusLost, run, windowClosed, windowClosing, windowDeactivated, windowDeiconified, windowIconified, windowOpenedMethods inherited from class java.awt.Frame
addNotify, getAccessibleContext, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, paramString, remove, removeNotify, setBackground, setCursor, setExtendedState, setIconImage, setMaximizedBounds, setMenuBar, setOpacity, setResizable, setShape, setState, setTitle, setUndecoratedMethods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, setVisible, show, toBack, toFrontMethods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, setLayout, transferFocusDownCycle, update, validate, validateTreeMethods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, transferFocus, transferFocusBackward, transferFocusUpCycleMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface java.lang.Iterable
forEach, spliteratorMethods inherited from interface java.awt.MenuContainer
getFont, postEvent
-
Field Details
-
LOC_KEY
- See Also:
-
-
Constructor Details
-
RoiManager
public RoiManager()Opens the "ROI Manager" window, or activates it if it is already open.- See Also:
-
RoiManager
public RoiManager(boolean b) Constructs an ROI Manager without displaying it. The boolean argument is ignored.
-
-
Method Details
-
actionPerformed
- Specified by:
actionPerformedin interfaceActionListener
-
itemStateChanged
- Specified by:
itemStateChangedin interfaceItemListener
-
addRoi
Adds the specified ROI. -
add
Adds the specified ROI to the list. The second argument ('n') will be used to form the first part of the ROI label if it is zero or greater.- Parameters:
roi- the Roi to be addedn- if zero or greater, will be used to form the first part of the label
-
add
Adds the specified ROI to the list. The third argument ('n') will be used to form the first part of the ROI label if it is zero or greater.- Parameters:
imp- the image associated with the ROI, or nullroi- the Roi to be addedn- if zero or greater, will be used to form the first part of the label
-
setRoi
Replaces the ROI at the specified index. -
rename
-
getSliceNumber
Returns the slice number associated with the specified name, or -1 if the name does not include a slice number. -
open
Opens a single .roi file or a ZIP-compressed set of ROIs. Returns 'true' if the operation was succesful. -
save
If one ROI is selected, it is saved as a .roi file, if multiple (or no) ROIs are selected, they are saved as a .zip ROI set. Returns 'true' if the save operation was succesful.- See Also:
-
multiMeasure
This method measures the selected ROIs, or all ROIs if none are selected, on all the slices of a stack and returns a ResultsTable arranged with one row per slice.- See Also:
-
multiMeasure
-
multiCrop
-
setGroup
public void setGroup(int group) Sets the group for the selected ROIs. -
setPosition
public void setPosition(int position) Sets the position of the selected ROIs. -
setPosition
public void setPosition(int c, int z, int t) Sets the c,z,t position of the selected ROIs. -
setGroup
Obsolete; replaced by RoiManager.setGroup() macro function. -
getDrawLabels
public boolean getDrawLabels() -
processWindowEvent
- Overrides:
processWindowEventin classWindow
-
getRoiManager
Returns a reference to the ROI Manager if it open or opens it if it is not already open. -
getInstance
Returns a reference to the ROI Manager, or null if it is not open and a batch mode macro is not running. If the ROI Manager is not open and a batch mode macro is running, returns the hidden batch mode RoiManager.- See Also:
-
getRawInstance
-
getInstance2
Returns a reference to the ROI Manager window or to the macro batch mode RoiManager, or null if neither exists. -
getROIs
Deprecated.Obsolete- See Also:
-
getList
Deprecated.Obsolete- See Also:
-
getCount
public int getCount()Returns the ROI count. -
selected
public int selected()Returns the count of selected ROIs. -
getRoiIndex
Returns the index of the specified Roi, or -1 if it is not found. -
getSelectedIndex
public int getSelectedIndex()Returns the index of the first selected ROI or -1 if no ROI is selected. -
getRoi
Returns a reference to the ROI at the specified index. -
getRoisAsArray
Returns the ROIs as an array. -
getSelectedRoisAsArray
Returns the selected ROIs as an array, or all the ROIs if none are selected. -
getName
Returns the name of the ROI with the specified index, or null if the index is out of range. See also: RoiManager.getName() macro function. -
getIndex
Returns the index of the first ROI with the specified name, or -1 if no ROI has that name. See also: RoiManager.getIndex() macro function. -
getName
Returns the name of the ROI with the specified index. Can be called from a macro usingcall("ij.plugin.frame.RoiManager.getName", index)Returns "null" if the Roi Manager is not open or index is out of range. -
runCommand
Executes the ROI Manager "Add", "Add invalid input: '&' Draw", "Update", "Delete", "Measure", "Draw", "Show All", "Show None", "Fill", "Deselect", "Select All", "Combine", "AND", "XOR", "Split", "Sort" or "Multi Measure" command. Returns false ifcmdis not one of these strings. -
runCommand
Using the specified image, runs the ROI Manager "Add", "Add invalid input: '&' Draw", "Update", "Delete", "Measure", "Draw", "Show All", "Show None", "Fill", "Deselect", "Select All", "Combine", "AND", "XOR", "Split", "Sort" or "Multi Measure" command. -
runCommand
Executes the ROI Manager "Open", "Save" or "Rename" command. Returns false ifcmdis not "Open", "Save" or "Rename", or if an error occurs. -
reset
public void reset()Clears this RoiManager so that it contains no ROIs. -
scale
public void scale(double xscale, double yscale, boolean centered) -
rotate
public void rotate(double angle) -
rotate
public void rotate(double angle, double xcenter, double ycenter) -
translate
public void translate(double dx, double dy) Moves the selected ROIs or all the ROIs if none are selected. -
runCommand
Adds the current selection to the ROI Manager, using the specified color (a 6 digit hex string) and line width. -
select
public void select(int index) Assigns the ROI at the specified index to the current image. -
select
Assigns the ROI at the specified index to 'imp'. -
selectAndMakeVisible
-
select
public void select(int index, boolean shiftKeyDown, boolean altKeyDown) -
selectGroup
public void selectGroup(int group) Selects all ROIs of a given group. -
selectPosition
public void selectPosition(int c, int z, int t) Selects all ROIs at the specified position. -
selectGroup
Obsolete; replaced by RoiManager.selectGroup() macro function. -
deselect
public void deselect() -
deselect
Deselect the specified ROI if it is the only one selected. -
setEditMode
-
close
public void close()Overrides PlugInFrame.close().- Overrides:
closein classPlugInFrame
-
moveRoisToOverlay
Moves all the ROIs to the specified image's overlay. -
mousePressed
- Specified by:
mousePressedin interfaceMouseListener
-
mouseWheelMoved
- Specified by:
mouseWheelMovedin interfaceMouseWheelListener
-
setSelectedIndexes
public void setSelectedIndexes(int[] indexes) Selects multiple ROIs, where 'indexes' is an array of integers, each greater than or equal to 0 and less than the value returned by getCount().- See Also:
-
getSelectedIndexes
public int[] getSelectedIndexes()Returns an array of the selected indexes. -
getIndexesAsString
This is a macro-callable version of getSelectedIndexes(). Example: indexes=split(call("ij.plugin.frame.RoiManager.getIndexesAsString")); -
getIndexes
public int[] getIndexes()Returns an array of the selected indexes or all indexes if none are selected. -
isSelected
public boolean isSelected(int index) Returns 'true' if the index is valid and the indexed ROI is selected. -
allowRecording
public void allowRecording(boolean allow) -
restoreCentered
public static void restoreCentered(boolean b) -
mouseClicked
- Specified by:
mouseClickedin interfaceMouseListener
-
mouseReleased
- Specified by:
mouseReleasedin interfaceMouseListener
-
mouseEntered
- Specified by:
mouseEnteredin interfaceMouseListener
-
mouseExited
- Specified by:
mouseExitedin interfaceMouseListener
-
valueChanged
- Specified by:
valueChangedin interfaceListSelectionListener
-
windowActivated
- Specified by:
windowActivatedin interfaceWindowListener- Overrides:
windowActivatedin classPlugInFrame
-
resetMultiMeasureResults
public static void resetMultiMeasureResults() -
setOverlay
-
getErrorMessage
Returns the most recent I/O error message, or null if there was no error. -
toString
-
iterator
-