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 TypeMethodDescriptionvoid
addPoint
(double x, double y) void
addPoint
(float x, float y) boolean
contains
(double x, double y) Returns 'true' if the point (x,y) is inside this polygon.boolean
contains
(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.double
getLength
(boolean isLine) toString()
void
translate
(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
-