- java.lang.Object
-
- ij.gui.Roi
-
- ij.gui.PolygonRoi
-
- ij.gui.PointRoi
-
- All Implemented Interfaces:
java.io.Serializable,java.lang.Cloneable,java.lang.Iterable<java.awt.Point>
public class PointRoi extends PolygonRoi
This class represents a collection of points that can be associated with counters. Use the getPolygon() or getFloatPolygon() methods to retrieve the coordinates of the points.- See Also:
- PointProperties.js, Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static intCIRCLEstatic intCROSSstatic intCROSSHAIRstatic intDOTstatic intHYBRIDstatic intMAX_COUNTERSstatic PointRoisavedPointsstatic java.lang.String[]sizesstatic java.lang.String[]types-
Fields inherited from class ij.gui.PolygonRoi
maxPoints, nPoints, splinePoints, xp, xp2, xpf, xSpline, yp, yp2, ypf, ySpline
-
Fields inherited from class ij.gui.Roi
ANGLE, asp_bk, aspect, cachedMask, center, clipboard, clipHeight, clipWidth, clipX, clipY, COMPOSITE, constrain, CONSTRUCTING, defaultColor, defaultFillColor, FERET_ARRAY_POINTOFFSET, FERET_ARRAYSIZE, fillColor, flattenScale, FREELINE, FREEROI, HANDLE_SIZE, handleColor, ic, ignoreClipRect, imp, instanceColor, LINE, lineWidth, mag, MOVING, MOVING_HANDLE, nonScalable, NORMAL, NOT_PASTING, oldHeight, oldWidth, oldX, oldY, onePixelWide, OVAL, overlay, pasteMode, POINT, POLYGON, POLYLINE, previousRoi, RECTANGLE, RESIZING, ROIColor, stroke, strokeColor, TRACED_ROI, updateFullWindow, wideLine, xMax, yMax
-
-
Constructor Summary
Constructors Constructor Description PointRoi()PointRoi(double ox, double oy)Creates a new PointRoi using the specified offscreen double coordinates.PointRoi(double ox, double oy, java.lang.String options)Creates a new PointRoi using the specified coordinates and options.PointRoi(float[] ox, float[] oy)Creates a new PointRoi using the specified float arrays of offscreen coordinates.PointRoi(float[] ox, float[] oy, int points)Creates a new PointRoi using the specified float arrays of offscreen coordinates.PointRoi(float[] ox, float[] oy, java.lang.String options)Creates a new PointRoi using the specified coordinate arrays and options.PointRoi(int[] ox, int[] oy, int points)Creates a new PointRoi using the specified int arrays of offscreen coordinates.PointRoi(int ox, int oy)Creates a new PointRoi using the specified offscreen int coordinates.PointRoi(int sx, int sy, ImagePlus imp)Creates a new PointRoi using the specified screen coordinates.PointRoi(FloatPolygon poly)Creates a new PointRoi from a FloatPolygon.PointRoi(java.awt.Polygon poly)Creates a new PointRoi from a Polygon.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description PointRoiaddPoint(double x, double y)Adds a point to this PointRoi.voidaddPoint(double x, double y, int position)Adds a point at the specified stack position.voidaddPoint(ImagePlus imp, double ox, double oy)Adds a point to this PointRoi.booleanaddToOverlay()voidaddUserPoint(ImagePlus imp, double ox, double oy)java.lang.Objectclone()Returns a copy of this PointRoi.PointRoicontainedPoints(Roi roi)Returns the points of this Roi that are contained in the specified area ROI.booleancontains(int x, int y)Returns true if (x,y) is one of the points in this collection.voidcopyAttributes(Roi roi2)Copy the attributes (outline color, fill color, outline width) of 'roi2' to the this selection.PointRoicrop(Roi roi)protected voiddeletePoint(int index)voiddisplayCounts()voiddraw(java.awt.Graphics g)Draws the points on the image.voiddrawPixels(ImageProcessor ip)Draws the selection outline on the specified ImageProcessor.protected intgetClosestPoint(double x, double y, FloatPolygon points)FloatPolygongetContainedFloatPoints()Returns the points as a FloatPolygon.java.awt.Point[]getContainedPoints()Returns the points as an array of Points.intgetCount(int counter)Returns the count associated with the specified counter index.intgetCounter()Returns the index of the current counter.intgetCounter(int index)Returns the counter assocated with the specified point.static java.lang.String[]getCounterChoices()int[]getCounterInfo()int[]getCounters()Returns an array containing for each point: The counter number (0-100) in the lower 8 bits, and the slice number (or 0, if the point appears on all slices) in the higher 24 bits.static java.awt.ColorgetDefaultCrossColor()Deprecatedstatic java.lang.StringgetDefaultMarkerSize()Deprecated.static intgetDefaultSize()Returns the default point size 0-6 (Tiny-XXXL).static intgetDefaultType()intgetLastCounter()Returns the index of the last counter.ImageProcessorgetMask()Always returns null for rectangular Roi'sintgetNCounters()Returns the number of counters.intgetPointPosition(int index)Returns the stack slice of the point with the given index, or 0 if no slice defined for this pointintgetPointType()Returns the point type (0=hybrid, 1=cross, 2=dot, 3=circle).booleangetShowLabels()intgetSize()Returns the current point size 0-6 (Tiny-XXXL).protected voidhandleMouseUp(int sx, int sy)With segmented selections, ignore first mouse up and finalize when user double-clicks, control-clicks or clicks in start box.intisHandle(int sx, int sy)Returns a point index if it has been at least one second since the last point was added and the specified screen coordinates are inside or near a point, otherwise returns -1.java.util.Iterator<java.awt.Point>iterator()Custom iterator for points contained in aPointRoi.booleanpromptBeforeDeleting()voidpromptBeforeDeleting(java.lang.Boolean prompt)voidresetCounters()voidsetCounter(int counter)voidsetCounterInfo(int[] info)voidsetCounters(int[] counters)Sets the counter number and slice number for each point from an array, where the lower 8 bits are the counter number and the higher 24 bits contain the slice position of each point.static voidsetDefaultCounter(int counter)static voidsetDefaultCrossColor(java.awt.Color color)Deprecatedstatic voidsetDefaultMarkerSize(java.lang.String size)Deprecated.static voidsetDefaultSize(int size)Sets the default point size, where 'size' is 0-6 (Tiny-XXXL).static voidsetDefaultType(int type)voidsetHideLabels(boolean hideLabels)Deprecated.voidsetOptions(java.lang.String options)voidsetPointType(int type)Sets the point type (0=hybrid, 1=cross, 2=dot, 3=circle).voidsetShowLabels(boolean showLabels)voidsetSize(int size)Sets the point size, where 'size' is 0-6 (Tiny-XXXL).booleansubPixelResolution()Always returns true.PointRoisubtractPoints(Roi roi)Returns the points of this Roi that are not contained in the specified area ROI.java.lang.StringtoString()voidupdateCounts()Updates the counts for each category in 'counters'-
Methods inherited from class ij.gui.PolygonRoi
addOffset, clipRectMargin, containsPoint, deleteHandle, enableSubPixelResolution, exitConstructingMode, fitSpline, fitSpline, fitSplineForStraightening, getAngle, getDebugInfo, getFloatPolygon, getInterpolatedPolygon, getLength, getNCoordinates, getNonSplineCoordinates, getNonSplineFloatPolygon, getPolygon, getUncalibratedLength, getXCoordinates, getYCoordinates, grow, isSplineFit, mouseDownInHandle, mouseMoved, moveHandle, removeSplineFit, resetBoundingRect, setLocation, size, updatePolygon, wipeBack
-
Methods inherited from class ij.gui.Roi
abortModification, abortPaste, addRoiListener, convertLineToArea, convertToPolygon, create, create, drawOverlay, drawPixels, endPaste, equals, getAngle, getAntiAlias, getBoundingRect, getBounds, getColor, getContourCentroid, getConvexHull, getCornerDiameter, getCPosition, getCurrentPasteMode, getDefaultFillColor, getDefaultGroup, getDefaultHandleSize, getDefaultStrokeWidth, getDrawOffset, getFeretsDiameter, getFeretValues, getFillColor, getFloatAngle, getFloatBounds, getFloatConvexHull, getFloatHeight, getFloatPolygon, getFloatWidth, getGroup, getGroupName, getGroupNames, getHandleSize, getHashCode, getImage, getImageID, getInterpolatedPolygon, getInterpolatedPolygon, getInverse, getListeners, getMagnification, getName, getPasteMode, getPosition, getPreviousRoi, getProperties, getProperty, getPropertyCount, getPrototypeOverlay, getRotationCenter, getRoundRectArcSize, getScaledStroke, getScaleStrokeWidth, getState, getStatistics, getStroke, getStrokeColor, getStrokeWidth, getTPosition, getType, getTypeAsString, getXBase, getYBase, getZPosition, handleMouseDown, handleMouseDrag, hasHyperStackPosition, isActiveOverlayRoi, isArea, isCursor, isDrawingTool, isInteger, isLine, isLineOrPoint, isVisible, lineCircleIntersection, magnificationForSubPixel, magnificationForSubPixel, mouseDragged, mouseReleased, notifyListeners, nudge, nudgeCorner, offScreenX, offScreenXD, offScreenY, offScreenYD, removeRoiListener, resetDefaultHandleSize, saveGroupNames, screenX, screenXD, screenY, screenYD, setAntiAlias, setBounds, setColor, setCornerDiameter, setDefaultColor, setDefaultFillColor, setDefaultGroup, setDefaultStrokeWidth, setDrawOffset, setFillColor, setFlattenScale, setGroup, setGroupName, setGroupNames, setHandleSize, setIgnoreClipRect, setImage, setInstanceColor, setIsCursor, setLineWidth, setLocation, setName, setNonScalable, setPasteMode, setPosition, setPosition, setPosition, setPreviousRoi, setProperties, setProperty, setPrototypeOverlay, setRenderingHint, setRotationCenter, setRoundRectArcSize, setStroke, setStrokeColor, setStrokeWidth, setStrokeWidth, setUnscalableStrokeWidth, showStatus, startPaste, temporarilyHide, toFloat, toInt, toInt, toIntR, translate, update, updateClipRect, updateWideLine, useLineSubpixelConvention, xor
-
-
-
-
Field Detail
-
sizes
public static final java.lang.String[] sizes
-
types
public static final java.lang.String[] types
-
HYBRID
public static final int HYBRID
- See Also:
- Constant Field Values
-
CROSS
public static final int CROSS
- See Also:
- Constant Field Values
-
CROSSHAIR
public static final int CROSSHAIR
- See Also:
- Constant Field Values
-
DOT
public static final int DOT
- See Also:
- Constant Field Values
-
CIRCLE
public static final int CIRCLE
- See Also:
- Constant Field Values
-
MAX_COUNTERS
public static final int MAX_COUNTERS
- See Also:
- Constant Field Values
-
savedPoints
public static PointRoi savedPoints
-
-
Constructor Detail
-
PointRoi
public PointRoi()
-
PointRoi
public PointRoi(int[] ox, int[] oy, int points)Creates a new PointRoi using the specified int arrays of offscreen coordinates.
-
PointRoi
public PointRoi(float[] ox, float[] oy, int points)Creates a new PointRoi using the specified float arrays of offscreen coordinates.
-
PointRoi
public PointRoi(float[] ox, float[] oy)Creates a new PointRoi using the specified float arrays of offscreen coordinates.
-
PointRoi
public PointRoi(float[] ox, float[] oy, java.lang.String options)Creates a new PointRoi using the specified coordinate arrays and options.
-
PointRoi
public PointRoi(FloatPolygon poly)
Creates a new PointRoi from a FloatPolygon.
-
PointRoi
public PointRoi(java.awt.Polygon poly)
Creates a new PointRoi from a Polygon.
-
PointRoi
public PointRoi(double ox, double oy, java.lang.String options)Creates a new PointRoi using the specified coordinates and options.
-
PointRoi
public PointRoi(int ox, int oy)Creates a new PointRoi using the specified offscreen int coordinates.
-
PointRoi
public PointRoi(double ox, double oy)Creates a new PointRoi using the specified offscreen double coordinates.
-
PointRoi
public PointRoi(int sx, int sy, ImagePlus imp)Creates a new PointRoi using the specified screen coordinates.
-
-
Method Detail
-
setOptions
public void setOptions(java.lang.String options)
-
handleMouseUp
protected void handleMouseUp(int sx, int sy)Description copied from class:PolygonRoiWith segmented selections, ignore first mouse up and finalize when user double-clicks, control-clicks or clicks in start box.- Overrides:
handleMouseUpin classPolygonRoi
-
draw
public void draw(java.awt.Graphics g)
Draws the points on the image.- Overrides:
drawin classPolygonRoi
-
drawPixels
public void drawPixels(ImageProcessor ip)
Description copied from class:RoiDraws the selection outline on the specified ImageProcessor.- Overrides:
drawPixelsin classPolygonRoi- See Also:
ImageProcessor.setColor(java.awt.Color),ImageProcessor.setLineWidth(int)
-
addPoint
public void addPoint(ImagePlus imp, double ox, double oy)
Adds a point to this PointRoi.
-
addUserPoint
public void addUserPoint(ImagePlus imp, double ox, double oy)
-
addPoint
public PointRoi addPoint(double x, double y)
Adds a point to this PointRoi.
-
addPoint
public void addPoint(double x, double y, int position)Adds a point at the specified stack position.
-
deletePoint
protected void deletePoint(int index)
- Overrides:
deletePointin classPolygonRoi
-
getCounter
public int getCounter()
Returns the index of the current counter.
-
getCount
public int getCount(int counter)
Returns the count associated with the specified counter index.- See Also:
getLastCounter(), PointProperties.js
-
getLastCounter
public int getLastCounter()
Returns the index of the last counter.
-
getNCounters
public int getNCounters()
Returns the number of counters.
-
getCounter
public int getCounter(int index)
Returns the counter assocated with the specified point.
-
resetCounters
public void resetCounters()
-
subtractPoints
public PointRoi subtractPoints(Roi roi)
Returns the points of this Roi that are not contained in the specified area ROI. Returns null if there are no resulting points or Roi is not an area roi.
-
containedPoints
public PointRoi containedPoints(Roi roi)
Returns the points of this Roi that are contained in the specified area ROI. Returns null if there are no resulting points or Roi is not an area roi.
-
getMask
public ImageProcessor getMask()
Description copied from class:RoiAlways returns null for rectangular Roi's- Overrides:
getMaskin classPolygonRoi
-
contains
public boolean contains(int x, int y)Returns true if (x,y) is one of the points in this collection.- Overrides:
containsin classPolygonRoi
-
setShowLabels
public void setShowLabels(boolean showLabels)
-
getShowLabels
public boolean getShowLabels()
-
setDefaultType
public static void setDefaultType(int type)
-
getDefaultType
public static int getDefaultType()
-
setPointType
public void setPointType(int type)
Sets the point type (0=hybrid, 1=cross, 2=dot, 3=circle).
-
getPointType
public int getPointType()
Returns the point type (0=hybrid, 1=cross, 2=dot, 3=circle).
-
setDefaultSize
public static void setDefaultSize(int size)
Sets the default point size, where 'size' is 0-6 (Tiny-XXXL).
-
getDefaultSize
public static int getDefaultSize()
Returns the default point size 0-6 (Tiny-XXXL).
-
setSize
public void setSize(int size)
Sets the point size, where 'size' is 0-6 (Tiny-XXXL).
-
getSize
public int getSize()
Returns the current point size 0-6 (Tiny-XXXL).
-
subPixelResolution
public boolean subPixelResolution()
Always returns true.- Overrides:
subPixelResolutionin classRoi
-
setCounter
public void setCounter(int counter)
-
promptBeforeDeleting
public boolean promptBeforeDeleting()
-
promptBeforeDeleting
public void promptBeforeDeleting(java.lang.Boolean prompt)
-
setDefaultCounter
public static void setDefaultCounter(int counter)
-
getCounters
public int[] getCounters()
Returns an array containing for each point: The counter number (0-100) in the lower 8 bits, and the slice number (or 0, if the point appears on all slices) in the higher 24 bits. Used when writing a Roi to file (RoiEncoder)
-
setCounters
public void setCounters(int[] counters)
Sets the counter number and slice number for each point from an array, where the lower 8 bits are the counter number and the higher 24 bits contain the slice position of each point. Used when reading a roi fromfile (RoiDecoder).
-
updateCounts
public void updateCounts()
Updates the counts for each category in 'counters'
-
getPointPosition
public int getPointPosition(int index)
Returns the stack slice of the point with the given index, or 0 if no slice defined for this point
-
displayCounts
public void displayCounts()
-
getCounterChoices
public static java.lang.String[] getCounterChoices()
-
isHandle
public int isHandle(int sx, int sy)Returns a point index if it has been at least one second since the last point was added and the specified screen coordinates are inside or near a point, otherwise returns -1.- Overrides:
isHandlein classPolygonRoi
-
getContainedPoints
public java.awt.Point[] getContainedPoints()
Returns the points as an array of Points. Wilhelm Burger: modified to use FloatPolygon for correct point positions.- Overrides:
getContainedPointsin classRoi- See Also:
Roi.getContainedFloatPoints(),Roi.iterator()
-
getContainedFloatPoints
public FloatPolygon getContainedFloatPoints()
Returns the points as a FloatPolygon.- Overrides:
getContainedFloatPointsin classRoi- See Also:
Roi.getContainedPoints(),Roi.iterator()
-
iterator
public java.util.Iterator<java.awt.Point> iterator()
Custom iterator for points contained in aPointRoi. Author: W. Burger- Specified by:
iteratorin interfacejava.lang.Iterable<java.awt.Point>- Overrides:
iteratorin classRoi- See Also:
Roi.getContainedPoints(),Roi.getContainedFloatPoints()
-
getClosestPoint
protected int getClosestPoint(double x, double y, FloatPolygon points)- Overrides:
getClosestPointin classPolygonRoi
-
clone
public java.lang.Object clone()
Returns a copy of this PointRoi.- Overrides:
clonein classPolygonRoi
-
copyAttributes
public void copyAttributes(Roi roi2)
Description copied from class:RoiCopy the attributes (outline color, fill color, outline width) of 'roi2' to the this selection.- Overrides:
copyAttributesin classRoi
-
setCounterInfo
public void setCounterInfo(int[] info)
-
getCounterInfo
public int[] getCounterInfo()
-
addToOverlay
public boolean addToOverlay()
-
setHideLabels
public void setHideLabels(boolean hideLabels)
Deprecated.
-
setDefaultMarkerSize
public static void setDefaultMarkerSize(java.lang.String size)
Deprecated.
-
getDefaultMarkerSize
public static java.lang.String getDefaultMarkerSize()
Deprecated.
-
setDefaultCrossColor
public static void setDefaultCrossColor(java.awt.Color color)
Deprecated
-
getDefaultCrossColor
public static java.awt.Color getDefaultCrossColor()
Deprecated
-
-