Package com.treemap.swing.voronoi.smoothing

# Class DoubleSpline

java.lang.Object
com.treemap.swing.voronoi.smoothing.AbstractSmoothedSegment
com.treemap.swing.voronoi.smoothing.DoubleSpline

All Implemented Interfaces:
  `SmoothedSegment`

public class DoubleSpline extends AbstractSmoothedSegment

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DoubleSpline(LineSegment lineSegment, SegmentDirection direction)`
  `DoubleSpline(CubicCurve2D startToConnectingPoint, CubicCurve2D connectingPointToEnd, Vertex startVertex, Vertex endVertex, LineSegment lineSegment)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `addCurveToGeneralPath(GeneralPath generalPath, SegmentDirection direction)`
  `void`
  `addToGeneralPath(GeneralPath generalPath)`
  `Point2d`
  `getConnectingPoint()`
  `void`
  `getCurveControlPoints(Point2d[] knots, Point2d[] firstControlPoints, Point2d[] secondControlPoints)`
  Get open-ended Bezier Spline Control Points.
  `SegmentLocation`
  `getNearestSegmentLocation(Vertex vertex)`
  `CubicCurve2D`
  `getStartCurve()`
  `CubicCurve2D`
  `getSubCruveFromConnectingPoint(CurveLocation curveLocation)`
  `SmoothedSegment`
  `getSubSegment(SegmentLocation start, SegmentLocation end)`
  `SmoothedSegment`
  `reversed()`

  ### Methods inherited from class com.treemap.swing.voronoi.smoothing.AbstractSmoothedSegment

  `getEndVertex, getLineSegment, getStartVertex`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### DoubleSpline

    public DoubleSpline(LineSegment lineSegment, SegmentDirection direction)

  - ### DoubleSpline

    public DoubleSpline(CubicCurve2D startToConnectingPoint, CubicCurve2D connectingPointToEnd, Vertex startVertex, Vertex endVertex, LineSegment lineSegment)

- ## Method Details

  - ### getConnectingPoint

    public Point2d getConnectingPoint()

  - ### getStartCurve

    public CubicCurve2D getStartCurve()

  - ### getNearestSegmentLocation

    public SegmentLocation getNearestSegmentLocation(Vertex vertex)

  - ### getSubSegment

    public SmoothedSegment getSubSegment(SegmentLocation start, SegmentLocation end)

  - ### getSubCruveFromConnectingPoint

    public CubicCurve2D getSubCruveFromConnectingPoint(CurveLocation curveLocation)

  - ### addCurveToGeneralPath

    public void addCurveToGeneralPath(GeneralPath generalPath, SegmentDirection direction)

  - ### getCurveControlPoints

    public void getCurveControlPoints(Point2d[] knots, Point2d[] firstControlPoints, Point2d[] secondControlPoints)
    Get open-ended Bezier Spline Control Points. From (http://www.codeproject.com/KB/graphics/BezierSpline.aspx?msg=3396481) License (CPOL) 1.02 : Source Code and Executable Files can be used in commercial applications; Source Code and Executable Files can be redistributed; and Source Code can be modified to create derivative works.*
    Parameters:
      `knots` - Input Knot Bezier spline points.
      `firstControlPoints` - Output of First Control points
      `secondControlPoints` - Output of Second Control points

  - ### addToGeneralPath

    public void addToGeneralPath(GeneralPath generalPath)

  - ### reversed

    public SmoothedSegment reversed()