CurveTail

case class CurveTail(iMatch: Double, xC1: Double, yC1: Double, xUses: Double, yUses: Double, xEnd: Double, yEnd: Double) extends Dbl7Elem with AffinePreserve

A CurveSeg can be a line segment or an arc segment or a bezier segment without its starting point, which is supplied by the previous curveTail. It takes its start point from the pEnd of the previous segment. There is no CurveSeg companion object as the LineSeg, ArcSeg and BezierSeg all have their own factory object apply methods.

trait Serializable
trait Product
trait Equals
trait GeomElem
trait Dbl7Elem
trait DblNElem
trait SpecialT
class Object
trait Matchable
class Any

Type members

Types

override type ThisT = CurveTail

Value members

Concrete methods

def arcCen: Pt2

Assuming this is Arc Segment tail.

Assuming this is Arc Segment tail.

def arcControlPt(startPt: Pt2): Pt2

Assuming this is Arc Segment

Assuming this is Arc Segment

Assuming this is Arc Segment

Assuming this is Arc Segment

def arcRadius: Double

Assuming this is Arc Segment, not sure about this.

Assuming this is Arc Segment, not sure about this.

def arcStartAngle(pStart: Pt2): Angle

Assuming this is Arc Segment

Assuming this is Arc Segment

override def canEqual(other: Any): Boolean
Definition Classes
Equals
@inline
override def dbl1: Double
Definition Classes
@inline
override def dbl2: Double
Definition Classes
@inline
override def dbl3: Double
Definition Classes
@inline
override def dbl4: Double
Definition Classes
@inline
override def dbl5: Double
Definition Classes
@inline
override def dbl6: Double
Definition Classes
@inline
override def dbl7: Double
Definition Classes
def fControlEndRadius(startPt: Pt2, f: (Double, Double, Double, Double, Double) => Unit): Unit

Assuming this is ArcSeg, calculates ControlPt and then passes controlPt.x, controlPt.y, XENd, yEnd, radius to f

Assuming this is ArcSeg, calculates ControlPt and then passes controlPt.x, controlPt.y, XENd, yEnd, radius to f

def fSeg[A](fLineSeg: Pt2 => A, fArcSeg: (Pt2, Pt2) => A, fBezierSeg: (Pt2, Pt2, Pt2) => A): A
def fSeg[A](fLineSeg: (Double, Double) => A, fArcSeg: (Double, Double, Double, Double) => A, fBezierSeg: (Double, Double, Double, Double, Double, Double) => A): A
def pC1: Pt2

This is control point 1 in a Bezier segment, it not used an arc segment, but first Double set to NaN, it is not nused in a straight Line Segment but the first Double is set to Infinity

This is control point 1 in a Bezier segment, it not used an arc segment, but first Double set to NaN, it is not nused in a straight Line Segment but the first Double is set to Infinity

def pEnd: Pt2

The end point. Often called p2 on a line or p4 on a cubic bezier.

The end point. Often called p2 on a line or p4 on a cubic bezier.

def pUses: Pt2

This is control point 2 in a Bezier segment, the centre point in an arc segment and unused in a straight Line Segment

This is control point 2 in a Bezier segment, the centre point in an arc segment and unused in a straight Line Segment

override def ptsTrans(f: Pt2 => Pt2): CurveTail
Definition Classes
def segDo(fLineSeg: CurveTail => Unit, fArcSeg: CurveTail => Unit, fBezierSeg: CurveTail => Unit): Unit

Inherited methods

override def negX: ThisT
Definition Classes
Inherited from
SimilarPreserve
override def negY: ThisT
Definition Classes
Inherited from
SimilarPreserve
def productElementNames: Iterator[String]
Inherited from
Product
def productIterator: Iterator[Any]
Inherited from
Product
override def prolign(matrix: ProlignMatrix): ThisT
Definition Classes
Inherited from
ProlignPreserve
override def reflect(lineLike: LineLike): ThisT
Definition Classes
Inherited from
SimilarPreserve
override def rotate(angle: AngleVec): ThisT
Definition Classes
Inherited from
SimilarPreserve
override def rotate180: ThisT
Definition Classes
Inherited from
SimilarPreserve
override def rotate270: ThisT
Definition Classes
Inherited from
SimilarPreserve
override def rotate90: ThisT
Definition Classes
Inherited from
SimilarPreserve
override def scale(operand: Double): ThisT
Definition Classes
Inherited from
ProlignPreserve
override def scaleXY(xOperand: Double, yOperand: Double): ThisT
Definition Classes
Inherited from
AffinePreserve
override def shearX(operand: Double): ThisT
Definition Classes
Inherited from
AffinePreserve
override def shearY(operand: Double): ThisT
Definition Classes
Inherited from
AffinePreserve
override def slateXY(xDelta: Double, yDelta: Double): ThisT
Definition Classes
Inherited from
ProlignPreserve