org.apache.batik.ext.awt.geom
Class Cubic
java.lang.Object
org.apache.batik.ext.awt.geom.AbstractSegment
org.apache.batik.ext.awt.geom.Cubic
- All Implemented Interfaces:
- java.lang.Cloneable, Segment
public class Cubic
- extends AbstractSegment
A class representing a cubic path segment.
Field Summary |
java.awt.geom.Point2D.Double |
p1
|
java.awt.geom.Point2D.Double |
p2
|
java.awt.geom.Point2D.Double |
p3
|
java.awt.geom.Point2D.Double |
p4
|
Constructor Summary |
Cubic()
|
Cubic(double x1,
double y1,
double x2,
double y2,
double x3,
double y3,
double x4,
double y4)
|
Cubic(java.awt.geom.Point2D.Double p1,
java.awt.geom.Point2D.Double p2,
java.awt.geom.Point2D.Double p3,
java.awt.geom.Point2D.Double p4)
|
Method Summary |
java.lang.Object |
clone()
|
java.awt.geom.Point2D.Double |
eval(double t)
|
java.awt.geom.Point2D.Double |
evalDt(double t)
|
protected int |
findRoots(double y,
double[] roots)
|
java.awt.geom.Rectangle2D |
getBounds2D()
|
double |
getLength()
|
double |
getLength(double maxErr)
|
Segment |
getSegment(double t0,
double t1)
|
double |
maxX()
|
double |
maxY()
|
double |
minX()
|
double |
minY()
|
Segment |
reverse()
|
void |
subdivide(Cubic c0,
Cubic c1)
Subdivides this Cubic curve into two curves at t = 0.5. |
void |
subdivide(double t,
Cubic c0,
Cubic c1)
Subdivides this Cubic curve into two curves at given t. |
void |
subdivide(double t,
Segment s0,
Segment s1)
Subdivides this Cubic curve into two curves at given t. |
void |
subdivide(Segment s0,
Segment s1)
Subdivides this Cubic curve into two curves at t = 0.5. |
protected double |
subLength(double leftLegLen,
double rightLegLen,
double maxErr)
|
java.lang.String |
toString()
|
Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
p1
public java.awt.geom.Point2D.Double p1
p2
public java.awt.geom.Point2D.Double p2
p3
public java.awt.geom.Point2D.Double p3
p4
public java.awt.geom.Point2D.Double p4
Cubic
public Cubic()
Cubic
public Cubic(double x1,
double y1,
double x2,
double y2,
double x3,
double y3,
double x4,
double y4)
Cubic
public Cubic(java.awt.geom.Point2D.Double p1,
java.awt.geom.Point2D.Double p2,
java.awt.geom.Point2D.Double p3,
java.awt.geom.Point2D.Double p4)
clone
public java.lang.Object clone()
- Overrides:
clone
in class java.lang.Object
reverse
public Segment reverse()
minX
public double minX()
maxX
public double maxX()
minY
public double minY()
maxY
public double maxY()
getBounds2D
public java.awt.geom.Rectangle2D getBounds2D()
findRoots
protected int findRoots(double y,
double[] roots)
- Specified by:
findRoots
in class AbstractSegment
evalDt
public java.awt.geom.Point2D.Double evalDt(double t)
eval
public java.awt.geom.Point2D.Double eval(double t)
subdivide
public void subdivide(Segment s0,
Segment s1)
- Subdivides this Cubic curve into two curves at t = 0.5.
can be done with getSegment but this is more efficent.
- Parameters:
s0
- if non-null contains portion of curve from 0->.5s1
- if non-null contains portion of curve from .5->1
subdivide
public void subdivide(double t,
Segment s0,
Segment s1)
- Subdivides this Cubic curve into two curves at given t.
- Parameters:
s0
- if non-null contains portion of curve from 0->t.s1
- if non-null contains portion of curve from t->1.
subdivide
public void subdivide(Cubic c0,
Cubic c1)
- Subdivides this Cubic curve into two curves at t = 0.5.
can be done with getSegment but this is more efficent.
- Parameters:
c0
- if non-null contains portion of curve from 0->.5c1
- if non-null contains portion of curve from .5->1
subdivide
public void subdivide(double t,
Cubic c0,
Cubic c1)
- Subdivides this Cubic curve into two curves at given t.
- Parameters:
c0
- if non-null contains portion of curve from 0->t.c1
- if non-null contains portion of curve from t->1.
getSegment
public Segment getSegment(double t0,
double t1)
subLength
protected double subLength(double leftLegLen,
double rightLegLen,
double maxErr)
getLength
public double getLength()
getLength
public double getLength(double maxErr)
toString
public java.lang.String toString()
- Overrides:
toString
in class java.lang.Object
Copyright ? 2008 Apache Software Foundation. All Rights Reserved.