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:
- Cloneable, Segment
public class Cubic
- extends AbstractSegment
A class representing a cubic path segment.
Constructor Summary |
Cubic()
|
Cubic(double x1,
double y1,
double x2,
double y2,
double x3,
double y3,
double x4,
double y4)
|
Cubic(Point2D.Double p1,
Point2D.Double p2,
Point2D.Double p3,
Point2D.Double p4)
|
Method Summary |
Object |
clone()
|
Point2D.Double |
eval(double t)
|
Point2D.Double |
evalDt(double t)
|
protected int |
findRoots(double y,
double[] roots)
|
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)
|
String |
toString()
|
p1
public Point2D.Double p1
p2
public Point2D.Double p2
p3
public Point2D.Double p3
p4
public 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(Point2D.Double p1,
Point2D.Double p2,
Point2D.Double p3,
Point2D.Double p4)
clone
public Object clone()
- Overrides:
clone
in class Object
reverse
public Segment reverse()
minX
public double minX()
maxX
public double maxX()
minY
public double minY()
maxY
public double maxY()
getBounds2D
public Rectangle2D getBounds2D()
findRoots
protected int findRoots(double y,
double[] roots)
- Specified by:
findRoots
in class AbstractSegment
evalDt
public Point2D.Double evalDt(double t)
eval
public 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 String toString()
- Overrides:
toString
in class Object
Copyright © 2008 Apache Software Foundation. All Rights Reserved.