java.lang.Object
ij.process.FloatPolygon
Used by the Roi classes to return float coordinate arrays and to
determine if a point is inside or outside of spline fitted selections.
Use the public 'xpoints' and 'ypoints' fields to access the coordinates
and the 'npoints' field to determine the number of points.
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionConstructs an empty FloatPolygon.FloatPolygon(float[] xpoints, float[] ypoints) Constructs a FloatPolygon from x and y arrays.FloatPolygon(float[] xpoints, float[] ypoints, int npoints) Constructs a FloatPolygon from x and y arrays. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddPoint(double x, double y) voidaddPoint(float x, float y) booleancontains(double x, double y) Returns 'true' if the point (x,y) is inside this polygon.booleancontains(float x, float y) A version of contains() that accepts float arguments.Uses the gift wrap algorithm to find the convex hull of all points in this FloatPolygon and returns it as a new FloatPolygon.doublegetLength(boolean isLine) toString()voidtranslate(double x, double y)
-
Field Details
-
npoints
public int npointsThe number of points in the 'xpoints' and 'ypoints' arrays. -
xpoints
public float[] xpoints -
ypoints
public float[] ypoints
-
-
Constructor Details
-
FloatPolygon
public FloatPolygon()Constructs an empty FloatPolygon. -
FloatPolygon
public FloatPolygon(float[] xpoints, float[] ypoints) Constructs a FloatPolygon from x and y arrays. -
FloatPolygon
public FloatPolygon(float[] xpoints, float[] ypoints, int npoints) Constructs a FloatPolygon from x and y arrays.
-
-
Method Details
-
contains
public boolean contains(double x, double y) Returns 'true' if the point (x,y) is inside this polygon. This is a Java version of the remarkably small C program by W. Randolph Franklin at http://www.ecse.rpi.edu/Homepages/wrf/Research/Short_Notes/pnpoly.html#The%20C%20Code In the absence of numerical errors, x coordinates exactly at a boundary are taken as if in the area immediately at the left of the boundary. For horizontal boundaries, y coordinates exactly at the border are taken as if in the area immediately above it (i.e., in decreasing y direction). The ImageJ convention of an offset of 0.5 pixels between pixel centers and outline coordinates is not taken into consideration; this method returns the purely geometrical relationship. -
contains
public boolean contains(float x, float y) A version of contains() that accepts float arguments. -
getBounds
-
getFloatBounds
-
addPoint
public void addPoint(float x, float y) -
addPoint
public void addPoint(double x, double y) -
duplicate
-
getLength
public double getLength(boolean isLine) -
getConvexHull
Uses the gift wrap algorithm to find the convex hull of all points in this FloatPolygon and returns it as a new FloatPolygon. The sequence of the points on the convex hull is counterclockwise. -
translate
public void translate(double x, double y) -
toString
-