com.itextpdf.awt.geom.gl
Class Crossing

java.lang.Object
  extended by com.itextpdf.awt.geom.gl.Crossing

public class Crossing
extends Object


Nested Class Summary
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
 
Field Summary
static int CROSSING
          Rectangle cross segment
 
Constructor Summary
Crossing()
           
 
Method Summary
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
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CROSSING

public static final int CROSSING
Rectangle cross segment

See Also:
Constant Field Values
Constructor Detail

Crossing

public Crossing()
Method Detail

solveQuad

public static int solveQuad(double[] eqn,
                            double[] res)
Solves quadratic equation

Parameters:
eqn - - the coefficients of the equation
res - - the roots of the equation
Returns:
a number of roots

solveCubic

public static int solveCubic(double[] eqn,
                             double[] res)
Solves cubic equation

Parameters:
eqn - - the coefficients of the equation
res - - the roots of the equation
Returns:
a number of roots

crossLine

public 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.


crossQuad

public 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


crossCubic

public 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


crossPath

public static int crossPath(PathIterator p,
                            double x,
                            double y)
Returns how many times ray from point (x,y) cross path


crossShape

public static int crossShape(Shape s,
                             double x,
                             double y)
Returns how many times ray from point (x,y) cross shape


isZero

public static boolean isZero(double val)
Returns true if value enough small


intersectLine

public 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


intersectQuad

public 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


intersectCubic

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)
Returns how many times rectangle stripe cross cubic curve or the are intersect


intersectPath

public 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


intersectShape

public 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


isInsideNonZero

public static boolean isInsideNonZero(int cross)
Returns true if cross count correspond inside location for non zero path rule


isInsideEvenOdd

public static boolean isInsideEvenOdd(int cross)
Returns true if cross count correspond inside location for even-odd path rule



Copyright © 2013. All Rights Reserved.