CurveSeg

trait CurveSeg extends Drawable

A segment of a curve that could be used in a closed shape or curve path. The names start and end are used in CurveSeg and its sub classes to provide consistent naming across line segments LineSegs, circular arcs CArcs, elliptical arcs EArcs and Square and cubic beziers Beziers, which require different numbers of points in their specification.

Companion
object
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
class Bezier
trait EArc
class EArcImp
trait EArclign
class CArc
class LineSeg

Value members

Abstract methods

def endX: Double

The X component of the end point of this curve segment. Often called x2 on a line or x4 on a cubic bezier in other APIs.

The X component of the end point of this curve segment. Often called x2 on a line or x4 on a cubic bezier in other APIs.

def endY: Double

The Y component of the end point of this curve segment. Often called y2 on a line or y4 on a cubic bezier in other APIs.

The Y component of the end point of this curve segment. Often called y2 on a line or y4 on a cubic bezier in other APIs.

override def negX: CurveSeg

Mirror, reflection 2D geometric transformation across the Y axis by negating X, on this CurveSeg, returns a CurveSeg. The return type will be narrowed in sub traits / classes.

Mirror, reflection 2D geometric transformation across the Y axis by negating X, on this CurveSeg, returns a CurveSeg. The return type will be narrowed in sub traits / classes.

Definition Classes
override def negY: CurveSeg

Mirror, reflection 2D geometric transformation across the X axis by negating Y, on this CurveSeg, returns a CurveSeg. The return type will be narrowed in sub traits / classes.

Mirror, reflection 2D geometric transformation across the X axis by negating Y, on this CurveSeg, returns a CurveSeg. The return type will be narrowed in sub traits / classes.

Definition Classes
override def prolign(matrix: ProlignMatrix): CurveSeg

2D Transformation using a ProlignMatrix, on this CurveSeg, returns a CurveSeg. The return type will be narrowed in sub classes / traits.

2D Transformation using a ProlignMatrix, on this CurveSeg, returns a CurveSeg. The return type will be narrowed in sub classes / traits.

Definition Classes
override def reflect(lineLike: LineLike): CurveSeg

Reflect 2D geometric transformation across a line, line segment or ray, on this CurveSeg, returns a CurveSeg. The return type will be narrowed in sub classes and traits.

Reflect 2D geometric transformation across a line, line segment or ray, on this CurveSeg, returns a CurveSeg. The return type will be narrowed in sub classes and traits.

Definition Classes
override def rotate(angle: AngleVec): CurveSeg

Rotation 2D geometric transformation on a GeomElem, on this CurveSeg, returns a CurveSeg. The return type will be narrowed in sub classes and traits.

Rotation 2D geometric transformation on a GeomElem, on this CurveSeg, returns a CurveSeg. The return type will be narrowed in sub classes and traits.

Definition Classes
override def rotate180: CurveSeg
Definition Classes
override def rotate270: CurveSeg
Definition Classes
override def rotate90: CurveSeg
Definition Classes
override def scale(operand: Double): CurveSeg

Uniform 2D geometric scaling transformation, on this CurveSeg, returns a CurveSeg. The Return type will be narrowed in sub traits / classes.

Uniform 2D geometric scaling transformation, on this CurveSeg, returns a CurveSeg. The Return type will be narrowed in sub traits / classes.

Definition Classes
override def scaleXY(xOperand: Double, yOperand: Double): CurveSeg

XY scaling 2D geometric transformation, on this CurveSeg, returns a CurveSeg. The return type will be narrowed in sub classes and traits.

XY scaling 2D geometric transformation, on this CurveSeg, returns a CurveSeg. The return type will be narrowed in sub classes and traits.

Definition Classes
override def shearX(operand: Double): CurveSeg

Shear 2D geometric transformation along the X Axis, on this CurveSeg, returns a CurveSeg. The return type will be narrowed in sub classes and traits.

Shear 2D geometric transformation along the X Axis, on this CurveSeg, returns a CurveSeg. The return type will be narrowed in sub classes and traits.

Definition Classes
override def shearY(operand: Double): CurveSeg

Shear 2D geometric transformation along the Y Axis, on this CurveSeg, returns a CurveSeg. The return type will be narrowed in sub classes and traits.

Shear 2D geometric transformation along the Y Axis, on this CurveSeg, returns a CurveSeg. The return type will be narrowed in sub classes and traits.

Definition Classes
override def slateXY(xDelta: Double, yDelta: Double): CurveSeg

Translate 2D geometric transformation, on this CurveSeg, returns a CurveSeg. The Return type will be narrowed in sub traits.

Translate 2D geometric transformation, on this CurveSeg, returns a CurveSeg. The Return type will be narrowed in sub traits.

Definition Classes
def startX: Double

The X component of the start point of this curve segment often called x1 in other APIs.

The X component of the start point of this curve segment often called x1 in other APIs.

def startY: Double

The Y component of the start point of this curve segment, often called y1 in other APIs.

The Y component of the start point of this curve segment, often called y1 in other APIs.

Concrete methods

final def pEnd: Pt2

The end point Pt2 of this curve segment. Often called p2 on a line or p4 on a cubic bezier in other APIs.

The end point Pt2 of this curve segment. Often called p2 on a line or p4 on a cubic bezier in other APIs.

final def pStart: Pt2

Start point of this curve segment, often called p1

Start point of this curve segment, often called p1

Inherited methods

def draw(lineColour: Colour, lineWidth: Double): GraphicElem

Draws this geometric element to produce a GraphElem graphical element, tht can be displayed or printed.

Draws this geometric element to produce a GraphElem graphical element, tht can be displayed or printed.

Inherited from
Drawable