# CArc

ostrat.geom.CArc
See theCArc companion object
class CArc extends EArclign

Circular arc. Has a rotation counter to allow rotation deltas greater than 360 degrees and less than - 360 degrees. The CArc is intended to function as closely as possible to the functioning of CArcTails in a curve path. Hence the decision to store the three points as fields rather using the AngleVec of the arc which would allow less data. This is to avoid calculation /rounding errors in the start and end points, which will be used by other CurveSegs in curve paths.

## Attributes

Companion
object
Graph
Supertypes
trait EArclign
trait EArc
trait CurveSeg
trait Drawable
trait EllipseBased
trait WithCentre
trait GeomElem
class Object
trait Matchable
class Any

## Members list

### Value members

#### Concrete methods

override def axesPt1: Pt2

The end of elliptical axis 1. By default this is the right vertex of the Ellipse, so this point on the circle is given although there is no actual vertex there on this circle, which is a special case of an ellipse.

The end of elliptical axis 1. By default this is the right vertex of the Ellipse, so this point on the circle is given although there is no actual vertex there on this circle, which is a special case of an ellipse.

## Attributes

Definition Classes
override def axesPt1x: Double

The Y component of the end point of axis 1, treating this circular arc as an elliptical arc. Axis1 is specified as horizontal and point 1 is specified as the right of the circle this CArc is based on.

The Y component of the end point of axis 1, treating this circular arc as an elliptical arc. Axis1 is specified as horizontal and point 1 is specified as the right of the circle this CArc is based on.

## Attributes

Definition Classes
override def axesPt1y: Double

The Y component of the end point of axis 1, treating this circular arc as an elliptical arc. Axis1 is specified as horizontal and point 1 is specified as the right of the circle this CArc is based on.

The Y component of the end point of axis 1, treating this circular arc as an elliptical arc. Axis1 is specified as horizontal and point 1 is specified as the right of the circle this CArc is based on.

## Attributes

Definition Classes
override def axesPt2: Pt2

The start of elliptical axis 2. By default this is the bottom vertex of the Ellipse, so this point on the circle is given although there is no actual vertex there on this circle, which is a special case of an ellipse.

The start of elliptical axis 2. By default this is the bottom vertex of the Ellipse, so this point on the circle is given although there is no actual vertex there on this circle, which is a special case of an ellipse.

## Attributes

Definition Classes
override def axesPt2x: Double

The X component of the start point of axis 2. By default this is at the bottom of the Ellipse. Mathematically this can be referred to as a vertex for the major axis or a co-vertex for the minor axis..

The X component of the start point of axis 2. By default this is at the bottom of the Ellipse. Mathematically this can be referred to as a vertex for the major axis or a co-vertex for the minor axis..

## Attributes

Definition Classes
override def axesPt2y: Double

The y component of the start point of axis 2. By default this is at the bottom of the Ellipse. Mathematically this can be referred to as a vertex for the major axis or a co-vertex for the minor axis.

The y component of the start point of axis 2. By default this is at the bottom of the Ellipse. Mathematically this can be referred to as a vertex for the major axis or a co-vertex for the minor axis.

## Attributes

Definition Classes
override def axesPt3: Pt2

The start of elliptical axis 1. By default this is the left vertex of the Ellipse, so this point on the circle is given although there is no actual vertex there on this circle, which is a special case of an ellipse.

The start of elliptical axis 1. By default this is the left vertex of the Ellipse, so this point on the circle is given although there is no actual vertex there on this circle, which is a special case of an ellipse.

## Attributes

Definition Classes
override def axesPt3x: Double

The X component of the start point of elliptical axis 1. By default this is the left vertex of the Ellipse, so this point on the circle is given although there is no actual vertex there on this circle, which is a special case of an ellipse.

The X component of the start point of elliptical axis 1. By default this is the left vertex of the Ellipse, so this point on the circle is given although there is no actual vertex there on this circle, which is a special case of an ellipse.

## Attributes

Definition Classes
override def axesPt3y: Double

The Y component of the start point of axis 1. By default this is on the left of the Ellipse. Mathematically this can be referred to as a vertex for the major axis or a co-vertex for the minor axis.

The Y component of the start point of axis 1. By default this is on the left of the Ellipse. Mathematically this can be referred to as a vertex for the major axis or a co-vertex for the minor axis.

## Attributes

Definition Classes
override def axesPt4: Pt2

The end of elliptical axis 2. By default this is the bottom vertex of the Ellipse, so this point on the circle is given although there is no actual vertex there on this circle, which is a special case of an ellipse.

The end of elliptical axis 2. By default this is the bottom vertex of the Ellipse, so this point on the circle is given although there is no actual vertex there on this circle, which is a special case of an ellipse.

## Attributes

Definition Classes
override def axesPt4x: Double

The X component of the end of elliptical axis 2. By default this is the bottom vertex of the Ellipse, so this point on the circle is given although there is no actual vertex there on this circle, which is a special case of an ellipse.

The X component of the end of elliptical axis 2. By default this is the bottom vertex of the Ellipse, so this point on the circle is given although there is no actual vertex there on this circle, which is a special case of an ellipse.

## Attributes

Definition Classes
override def axesPt4y: Double

The Y component of the end of elliptical axis 2. By default this is the bottom vertex of the Ellipse, so this point on the circle is given although there is no actual vertex there on this circle, which is a special case of an ellipse.

The Y component of the end of elliptical axis 2. By default this is the bottom vertex of the Ellipse, so this point on the circle is given although there is no actual vertex there on this circle, which is a special case of an ellipse.

## Attributes

Definition Classes
override def cen: Pt2

The centre of this circular arc.

The centre of this circular arc.

## Attributes

Definition Classes
override def cenP1: Vec2

The 2D vector Vec2 from the centre point to pAxes1, the end point of axis 1, by default on the right of the Ellipse this arc is based on.

The 2D vector Vec2 from the centre point to pAxes1, the end point of axis 1, by default on the right of the Ellipse this arc is based on.

## Attributes

Definition Classes
override def cenP2: Vec2

The 2D vector Vec2 from the centre point to pAxes2, the start point of axis 2, by default at the bottom of the Ellipse this arc is based on.

The 2D vector Vec2 from the centre point to pAxes2, the start point of axis 2, by default at the bottom of the Ellipse this arc is based on.

## Attributes

Definition Classes
override def cenP3: Vec2

The 2D vector Vec2 from the centre point to pAxes3, the start point of axis 1 , by default on the left of the Ellipse this arc is based on.

The 2D vector Vec2 from the centre point to pAxes3, the start point of axis 1 , by default on the left of the Ellipse this arc is based on.

## Attributes

Definition Classes
override def cenP4: Vec2

The 2D vector Vec2 from the centre point to pAxes4, the end point of axis 2, by default at the top of the Ellipse this arc is based on.

The 2D vector Vec2 from the centre point to pAxes4, the end point of axis 2, by default at the top of the Ellipse this arc is based on.

## Attributes

Definition Classes
def chord: LineSeg

The chord of this Arc

The chord of this Arc

## Attributes

def chordCen: Pt2

The mid point of the chord of this arc.

The mid point of the chord of this arc.

## Attributes

override def draw(lineWidth: Double, lineColour: Colour): CArcDraw

Draws this geometric element to produce a CArcDraw graphical element, that can be displayed or printed.

Draws this geometric element to produce a CArcDraw graphical element, that can be displayed or printed.

## Attributes

Definition Classes
override def negX: CArc

Mirror, reflection 2D geometric transformation across the Y axis by negating Xon this CArc returns a CArc.

Mirror, reflection 2D geometric transformation across the Y axis by negating Xon this CArc returns a CArc.

## Attributes

Definition Classes
override def negY: CArc

Mirror, reflection 2D geometric transformation across the X axis by negating y on this CArc returns a CArc.

Mirror, reflection 2D geometric transformation across the X axis by negating y on this CArc returns a CArc.

## Attributes

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

2D Transformation using a ProlignMatrix.

2D Transformation using a ProlignMatrix.

## Attributes

Definition Classes

Radius of the this circular arc.

Radius of the this circular arc.

## Attributes

Radius 1 of the ellipse. By default this is the horizontal axis of the ellipse. This can be the major or minor axis.

Radius 1 of the ellipse. By default this is the horizontal axis of the ellipse. This can be the major or minor axis.

## Attributes

Definition Classes

Radius 2 of the ellipse. By default this is the vertical axis of the ellipse. This can be the major or minor axis.

Radius 2 of the ellipse. By default this is the vertical axis of the ellipse. This can be the major or minor axis.

## Attributes

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

Reflect 2D geometric transformation across a line, line segment or ray on a CArc returns a CArc.

Reflect 2D geometric transformation across a line, line segment or ray on a CArc returns a CArc.

## Attributes

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

Rotation 2D geometric transformation on a CArc returns a CArc.

Rotation 2D geometric transformation on a CArc returns a CArc.

## Attributes

Definition Classes
override def rotate180: CArc

Rotation of 180 degrees, 2D geometric transformation on a GeomElem. The return type will be narrowed in sub classes and traits.

Rotation of 180 degrees, 2D geometric transformation on a GeomElem. The return type will be narrowed in sub classes and traits.

## Attributes

Definition Classes
override def rotate270: CArc

Rotation positive or anti clockwise 270 degrees, 2D geometric transformation on a GeomElem. The return type will be narrowed in sub classes and traits.

Rotation positive or anti clockwise 270 degrees, 2D geometric transformation on a GeomElem. The return type will be narrowed in sub classes and traits.

## Attributes

Definition Classes
override def rotate90: CArc

Rotation of 90 degrees, 2D geometric transformation on a GeomElem. The return type will be narrowed in sub classes and traits.

Rotation of 90 degrees, 2D geometric transformation on a GeomElem. The return type will be narrowed in sub classes and traits.

## Attributes

Definition Classes
override def scale(operand: Double): CArc

Uniform 2D geometric scaling transformation. The scale name was chosen for this operation as it is normally the desired operation and preserves Circles and Squares. Use the xyScale method for differential scaling. The Return type will be narrowed in sub traits / classes.

Uniform 2D geometric scaling transformation. The scale name was chosen for this operation as it is normally the desired operation and preserves Circles and Squares. Use the xyScale method for differential scaling. The Return type will be narrowed in sub traits / classes.

## Attributes

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

Translate 2D geometric transformation on this CArc returns a CArc.

Translate 2D geometric transformation on this CArc returns a CArc.

## Attributes

Definition Classes

The radius of the axis of the ellipse aligned to the X axis.

The radius of the axis of the ellipse aligned to the X axis.

## Attributes

Definition Classes

The radius of the axis of the ellipse aligned to the Y axis.

The radius of the axis of the ellipse aligned to the Y axis.

## Attributes

Definition Classes

Inherited from:
EArc

Inherited from:
EArc

Inherited from:
EArc

## Attributes

Inherited from:
EArc
def cenEnd: Vec2

The vector [Vec2] from the centre of the arc to the end point of the arc.

The vector [Vec2] from the centre of the arc to the end point of the arc.

## Attributes

Inherited from:
EArc
def cenStart: Vec2

The vector [Vec2] from the centre of the arc to the start point of the arc.

The vector [Vec2] from the centre of the arc to the start point of the arc.

## Attributes

Inherited from:
EArc
final def diameter1: Double

Diameter 1 of the ellipse. By default this is the horizontal axis of the ellipse.This can be the major or minor axis.

Diameter 1 of the ellipse. By default this is the horizontal axis of the ellipse.This can be the major or minor axis.

## Attributes

Inherited from:
EllipseBased
final def diameter2: Double

Diameter 2 of this ellipse. By default this is the vertical axis of the ellipse. This can be the major or minor axis.

Diameter 2 of this ellipse. By default this is the vertical axis of the ellipse. This can be the major or minor axis.

## Attributes

Inherited from:
EllipseBased

The angle of the end point of the arc, relative to its centre.

The angle of the end point of the arc, relative to its centre.

## Attributes

Inherited from:
EArc

The angle of the end point of the arc, relative to its centre.

The angle of the end point of the arc, relative to its centre.

## Attributes

Inherited from:
EArc

The value of the angle of the end point of the arc, relative to its centre in degrees.

The value of the angle of the end point of the arc, relative to its centre in degrees.

## Attributes

Inherited from:
EArc
def fillOrDraw(lineWidth: Double, colour: Colour): GraphicElem

If this element is Fillable applies the fill method, ignoring the line width parameter, else applies the draws method.

If this element is Fillable applies the fill method, ignoring the line width parameter, else applies the draws method.

## Attributes

Inherited from:
Drawable

The line segment [LineSeg] from the centre of the arc to the end point of the arc.

The line segment [LineSeg] from the centre of the arc to the end point of the arc.

## Attributes

Inherited from:
EArc

The line segment [LineSeg] from the centre of the arc to the start point of the arc.

The line segment [LineSeg] from the centre of the arc to the start point of the arc.

## Attributes

Inherited from:
EArc
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.

## Attributes

Inherited from:
CurveSeg
final def pStart: Pt2

Start point of this curve segment, often called p1

Start point of this curve segment, often called p1

## Attributes

Inherited from:
CurveSeg
override def scaleXY(xOperand: Double, yOperand: Double): EArc

XY scaling 2D geometric transformation on this EArc returns an EArc.This allows different scaling factors across X and Y dimensions.

XY scaling 2D geometric transformation on this EArc returns an EArc.This allows different scaling factors across X and Y dimensions.

## Attributes

Definition Classes
Inherited from:
EArc
override def shearX(operand: Double): EArc

Shear 2D geometric transformation along the X Axis on this EArc returns an EArc.

Shear 2D geometric transformation along the X Axis on this EArc returns an EArc.

## Attributes

Definition Classes
Inherited from:
EArc
override def shearY(operand: Double): EArc

Shear 2D geometric transformation along the Y Axis on this EArc, returns an EArc.

Shear 2D geometric transformation along the Y Axis on this EArc, returns an EArc.

## Attributes

Definition Classes
Inherited from:
EArc

The angle of the start point of the arc, relative to its centre.

The angle of the start point of the arc, relative to its centre.

## Attributes

Inherited from:
EArc

The angle of the start point of the arc, relative to its centre for graphical systems where the Y axis points down.

The angle of the start point of the arc, relative to its centre for graphical systems where the Y axis points down.

## Attributes

Inherited from:
EArc

The value of the angle of the start point of the arc, relative to its centre in degrees.

The value of the angle of the start point of the arc, relative to its centre in degrees.

## Attributes

Inherited from:
EArc

The value of the angle of the start point of the arc, relative to its centre in degrees.

The value of the angle of the start point of the arc, relative to its centre in degrees.

## Attributes

Inherited from:
EArc

#### Concrete fields

val cenX: Double

The X component of the centre.

The X component of the centre.

## Attributes

val cenY: Double

The Y component of the centre.

The Y component of the centre.

## Attributes

val counter: Int
val 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.

## Attributes

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

## Attributes

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

## Attributes

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