Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

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

Nested Class Summary

Nested classes/interfaces inherited from interface org.apache.batik.ext.awt.geom.Segment
`Segment.SplitResults`

Field Summary
`Point2D.Double` | `p1`
`Point2D.Double` | `p2`
`Point2D.Double` | `p3`
`Point2D.Double` | `p4`

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()`

Methods inherited from class org.apache.batik.ext.awt.geom.AbstractSegment
`matchSign, solveCubic, solveLine, solveQuad, split, splitAfter, splitBefore`

Methods inherited from class java.lang.Object
`equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### p1

    public Point2D.Double p1

### p2

    public Point2D.Double p2

### p3

    public Point2D.Double p3

### p4

    public Point2D.Double p4

Constructor Detail

### 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)

Method Detail

### 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->.5
    `s1` - 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->.5
    `c1` - 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`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2008 Apache Software Foundation. All Rights Reserved.