public class Crossing extends Object
Modifier and Type | Class and Description |
---|---|
static class |
Crossing.CubicCurve
CubicCurve class provides basic functionality to find curve crossing and calculating bounds
|
static class |
Crossing.QuadCurve
QuadCurve class provides basic functionality to find curve crossing and calculating bounds
|
Modifier and Type | Field and Description |
---|---|
static int |
CROSSING
Rectangle cross segment
|
Constructor and Description |
---|
Crossing() |
Modifier and Type | Method and Description |
---|---|
static int |
crossCubic(double x1, double y1, double cx1, double cy1, double cx2, double cy2, double x2, double y2, double x, double y)
Returns how many times ray from point (x,y) cross cubic curve
|
static int |
crossLine(double x1, double y1, double x2, double y2, double x, double y)
Returns how many times ray from point (x,y) cross line.
|
static int |
crossPath(PathIterator p, double x, double y)
Returns how many times ray from point (x,y) cross path
|
static int |
crossQuad(double x1, double y1, double cx, double cy, double x2, double y2, double x, double y)
Returns how many times ray from point (x,y) cross quard curve
|
static int |
crossShape(Shape s, double x, double y)
Returns how many times ray from point (x,y) cross shape
|
static int |
intersectCubic(double x1, double y1, double cx1, double cy1, double cx2, double cy2, double x2, double y2, double rx1, double ry1, double rx2, double ry2)
Returns how many times rectangle stripe cross cubic curve or the are intersect
|
static int |
intersectLine(double x1, double y1, double x2, double y2, double rx1, double ry1, double rx2, double ry2)
Returns how many times rectangle stripe cross line or the are intersect
|
static int |
intersectPath(PathIterator p, double x, double y, double w, double h)
Returns how many times rectangle stripe cross path or the are intersect
|
static int |
intersectQuad(double x1, double y1, double cx, double cy, double x2, double y2, double rx1, double ry1, double rx2, double ry2)
Returns how many times rectangle stripe cross quad curve or the are intersect
|
static int |
intersectShape(Shape s, double x, double y, double w, double h)
Returns how many times rectangle stripe cross shape or the are intersect
|
static boolean |
isInsideEvenOdd(int cross)
Returns true if cross count correspond inside location for even-odd path rule
|
static boolean |
isInsideNonZero(int cross)
Returns true if cross count correspond inside location for non zero path rule
|
static boolean |
isZero(double val)
Returns true if value enough small
|
static int |
solveCubic(double[] eqn, double[] res)
Solves cubic equation
|
static int |
solveQuad(double[] eqn, double[] res)
Solves quadratic equation
|
public static final int CROSSING
public static int solveQuad(double[] eqn, double[] res)
eqn
- - the coefficients of the equation
res
- - the roots of the equation
public static int solveCubic(double[] eqn, double[] res)
eqn
- - the coefficients of the equation
res
- - the roots of the equation
public static int crossLine(double x1, double y1, double x2, double y2, double x, double y)
public static int crossQuad(double x1, double y1, double cx, double cy, double x2, double y2, double x, double y)
public static int crossCubic(double x1, double y1, double cx1, double cy1, double cx2, double cy2, double x2, double y2, double x, double y)
public static int crossPath(PathIterator p, double x, double y)
public static int crossShape(Shape s, double x, double y)
public static boolean isZero(double val)
public static int intersectLine(double x1, double y1, double x2, double y2, double rx1, double ry1, double rx2, double ry2)
public static int intersectQuad(double x1, double y1, double cx, double cy, double x2, double y2, double rx1, double ry1, double rx2, double ry2)
public static int intersectCubic(double x1, double y1, double cx1, double cy1, double cx2, double cy2, double x2, double y2, double rx1, double ry1, double rx2, double ry2)
public static int intersectPath(PathIterator p, double x, double y, double w, double h)
public static int intersectShape(Shape s, double x, double y, double w, double h)
public static boolean isInsideNonZero(int cross)
public static boolean isInsideEvenOdd(int cross)
Copyright © 1998–2022. All rights reserved.