EllipseGen

ostrat.geom.EllipseGen
See theEllipseGen companion object
final class EllipseGen(val p0X: Double, val p0Y: Double, val p1X: Double, val p1Y: Double, val p3X: Double, val p3Y: Double) extends Ellipse, AxisFree

The implementation class for Ellipses that are not Circles. The Ellipse is encoded as 3 Pt2s or 6 scalars, although it is possible to encode an ellipse with 5 scalars. Encoding the Ellipse this way greatly helps human visualisation of transformations upon an ellipse.

Attributes

Companion
object
Graph
Supertypes
trait AxisFree
trait Ellipse
trait ShapeCentred
trait CentredElem
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait EllipseBased
trait WithCentre
trait Aff2Elem
trait Simil2Elem
trait Axlign2Elem
class Object
trait Matchable
class Any
Show all

Members list

Type members

Types

override type ThisT = EllipseGen

Value members

Concrete methods

override def alignAngle: Angle

The alignment angle of the ellipse to axis 1.

The alignment angle of the ellipse to axis 1.

Attributes

Definition Classes
override def area: Double

Attributes

Definition Classes

The bounding Rectangle provides an initial exclusion test, as to whether the pointer is inside the polygon / shape

The bounding Rectangle provides an initial exclusion test, as to whether the pointer is inside the polygon / shape

Attributes

override def e: Double

Eccentricity of ellipse.

Eccentricity of ellipse.

Attributes

Definition Classes
override def h: Double

The h value of this ellipse.

The h value of this ellipse.

Attributes

Definition Classes
override def ptInside(pt: Pt2): Boolean

Determines if the parameter point lies inside this Circle.

Determines if the parameter point lies inside this Circle.

Attributes

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

Reflect 2D geometric transformation across a line, line segment or ray on a GeomElem. The return type will be narrowed in subclasses and traits.

Reflect 2D geometric transformation across a line, line segment or ray on a GeomElem. The return type will be narrowed in subclasses and traits.

Attributes

Definition Classes
override def rotate(rotation: AngleVec): EllipseGen

Rotation 2D geometric transformation on a GeomElem. The return type will be narrowed in subclasses and traits.

Rotation 2D geometric transformation on a GeomElem. The return type will be narrowed in subclasses and traits.

Attributes

Definition Classes
def s0Angle: Angle
override def scale(operand: Double): EllipseGen

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 shearX(operand: Double): EllipseGen

Shear 2D geometric transformation along the X Axis on a GeomElem. The return type will be narrowed in subclasses and traits. This is an affine transformation, but it is not a similar transformation.

Shear 2D geometric transformation along the X Axis on a GeomElem. The return type will be narrowed in subclasses and traits. This is an affine transformation, but it is not a similar transformation.

Attributes

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

Shear 2D geometric transformation along the Y Axis on a GeomElem. The return type will be narrowed in subclasses and traits. This is an affine transformation, but it is not a similar transformation.

Shear 2D geometric transformation along the Y Axis on a GeomElem. The return type will be narrowed in subclasses and traits. This is an affine transformation, but it is not a similar transformation.

Attributes

Definition Classes
override def slate(operand: VecPt2): EllipseGen

Translate 2D geometric transformation, taking the xOffset and yOffset as parameters on this GeomElem returning a GeomElem. The Return type will be narrowed in sub traits. End users will often want to use the slate method taking a Pt2 or Vec2 as a parameter, the slateX or the slateY methods. These methods will be offered as extension methods using this method for their implementations.

Translate 2D geometric transformation, taking the xOffset and yOffset as parameters on this GeomElem returning a GeomElem. The Return type will be narrowed in sub traits. End users will often want to use the slate method taking a Pt2 or Vec2 as a parameter, the slateX or the slateY methods. These methods will be offered as extension methods using this method for their implementations.

Attributes

Definition Classes
override def slate(xOperand: Double, yOperand: Double): EllipseGen

Translate 2D geometric transformation, taking the xOffset and yOffset as parameters on this GeomElem returning a GeomElem. The Return type will be narrowed in sub traits. End users will often want to use the slate method taking a Pt2 or Vec2 as a parameter, the slateX or the slateY methods. These methods will be offered as extension methods using this method for their implementations.

Translate 2D geometric transformation, taking the xOffset and yOffset as parameters on this GeomElem returning a GeomElem. The Return type will be narrowed in sub traits. End users will often want to use the slate method taking a Pt2 or Vec2 as a parameter, the slateX or the slateY methods. These methods will be offered as extension methods using this method for their implementations.

Attributes

Definition Classes
override def slateX(xOperand: Double): EllipseGen

Translate 2D geometric transformation in the X dimension, returning a GeomElem. The Return type will be narrowed in sub traits.

Translate 2D geometric transformation in the X dimension, returning a GeomElem. The Return type will be narrowed in sub traits.

Attributes

Definition Classes
override def slateY(yOperand: Double): EllipseGen

Translate 2D geometric transformation in the Y dimension, returning a GeomElem. The Return type will be narrowed in sub traits.

Translate 2D geometric transformation in the Y dimension, returning a GeomElem. The Return type will be narrowed in sub traits.

Attributes

Definition Classes

Inherited methods

def a: Double

The major radius of this ellipse, often referred to as a in maths.

The major radius of this ellipse, often referred to as a in maths.

Attributes

Inherited from:
Ellipse
def attribs: RArr[XAtt]

Attributes

Inherited from:
Ellipse
def axes: LSeg2Arr

Attributes

Inherited from:
Ellipse
def axis1: LSeg2

Attributes

Inherited from:
Ellipse

Attributes

Inherited from:
Ellipse
def axis2: LSeg2

Attributes

Inherited from:
Ellipse
def b: Double

The major radius of this ellipse,often referred to as b in maths.

The major radius of this ellipse,often referred to as b in maths.

Attributes

Inherited from:
Ellipse

Attributes

Inherited from:
BoundedElem

Attributes

Inherited from:
BoundedElem

Attributes

Inherited from:
BoundedElem
final def boundingCen: Pt2

The centre of the bounding rectangle. consider also using cenDefault.

The centre of the bounding rectangle. consider also using cenDefault.

Attributes

Inherited from:
BoundedElem
override def boundingHeight: Double

The height of the BoundingRect of this object.

The height of the BoundingRect of this object.

Attributes

Definition Classes
Inherited from:
Ellipse
override def boundingWidth: Double

The width of the BoundingRect of this object.

The width of the BoundingRect of this object.

Attributes

Definition Classes
Inherited from:
Ellipse

Attributes

Inherited from:
BoundedElem
def c: Double

Linear eccentricity. The distance from the centre to the focus

Linear eccentricity. The distance from the centre to the focus

Attributes

Inherited from:
Ellipse
def canEqual(that: Any): Boolean

This canEqual override allow the comparison of Shapes.

This canEqual override allow the comparison of Shapes.

Attributes

Inherited from:
Shape
final override def cen: Pt2

The centre of this geometric / graphical element. The centre will not change if the object type is capable of being rotated and is rotated. The cenDefault on other bounded elements may move relative to points on the object when the object is rotated.

The centre of this geometric / graphical element. The centre will not change if the object type is capable of being rotated and is rotated. The cenDefault on other bounded elements may move relative to points on the object when the object is rotated.

Attributes

Definition Classes
Inherited from:
Ellipse
final override def cenDefault: Pt2

The default centre of this object is the centre. The centre will not change if the object type is capable of being rotated and is rotated.

The default centre of this object is the centre. The centre will not change if the object type is capable of being rotated and is rotated.

Attributes

Definition Classes
Inherited from:
CentredElem
def cenP0: 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

Inherited from:
EllipseBased
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

Inherited from:
EllipseBased
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

Inherited from:
EllipseBased
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

Inherited from:
EllipseBased
override def cenX: Double

The X component of the centre.

The X component of the centre.

Attributes

Definition Classes
Inherited from:
Ellipse
override def cenY: Double

The Y component of the centre.

The Y component of the centre.

Attributes

Definition Classes
Inherited from:
Ellipse
def cxAttrib: XAtt

Attributes

Inherited from:
Ellipse
def cyAttrib: XAtt

Attributes

Inherited from:
Ellipse
final def diameter1: Double

Diameter 1 of the ellipse. This extends from point 3 to point1 By default, this is the horizontal axis of the ellipse. This can be the major or minor axis.

Diameter 1 of the ellipse. This extends from point 3 to point1 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
override def draw(lineWidth: Double, lineColour: Colour): EllipseDraw

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

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

Attributes

Definition Classes
Inherited from:
Ellipse
def f1: Pt2

The first focus point, placed towards p1 or p0.

The first focus point, placed towards p1 or p0.

Attributes

Inherited from:
Ellipse
def f2: Pt2

The second focus point, placed towards p3 or p2.

The second focus point, placed towards p3 or p2.

Attributes

Inherited from:
Ellipse
def fTrans(f: Pt2 => Pt2): Ellipse

Attributes

Inherited from:
Ellipse
override def fill(fillfacet: FillFacet): EllipseFill

Returns a fill graphic of this geometric object.

Returns a fill graphic of this geometric object.

Attributes

Definition Classes
Inherited from:
Ellipse
override def fillActive(fillColour: Colour, pointerID: Any): EllipseCompound

Attributes

Definition Classes
Inherited from:
Ellipse
override def fillActiveText(fillColour: Colour, pointerEv: Any, str: String, fontRatio: Double, fontColour: Colour, align: TextAlign, baseLine: BaseLine, minSize: Double): EllipseCompound

ShapeCompound graphic with a FillFacet, a TextFacet and a ShapeActive child.

ShapeCompound graphic with a FillFacet, a TextFacet and a ShapeActive child.

Attributes

Definition Classes
Inherited from:
Ellipse
override def fillDraw(fillColour: Colour, lineColour: Colour, lineWidth: Double): EllipseCompound

Graphically fill and draws this object.

Graphically fill and draws this object.

Attributes

Definition Classes
Inherited from:
Ellipse
override def fillInt(intValue: Int): EllipseFill

Returns a fill graphic of this geometric object from the Int RGBA value.

Returns a fill graphic of this geometric object from the Int RGBA value.

Attributes

Definition Classes
Inherited from:
Ellipse
def fillOrDraw(lineWidth: Double, colour: Colour): Graphic2Elem

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

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

Attributes

Inherited from:
Drawable
override def negX: ThisT

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

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

Attributes

Definition Classes
Inherited from:
AxisFree
override def negY: ThisT

Mirror, reflection 2D geometric transformation across the X axis by negating y. The return type will be narrowed in sub traits / classes.

Mirror, reflection 2D geometric transformation across the X axis by negating y. The return type will be narrowed in sub traits / classes.

Attributes

Definition Classes
Inherited from:
AxisFree
final override def p0: Pt2

The end point of axis 2. By default, this is at the top 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 end point of axis 2. By default, this is at the top 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
Inherited from:
Ellipse
final override def p1: Pt2

The end point of axis 1. By default, this is on the right 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 end point of axis 1. By default, this is on the right 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
Inherited from:
Ellipse
final override def p2: Pt2

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 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
Inherited from:
Ellipse
override def p2X: 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
Inherited from:
Ellipse
override def p2Y: 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
Inherited from:
Ellipse
final override def p3: Pt2

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 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
Inherited from:
Ellipse
override def prolign(matrix: AxlignMatrix): Ellipse

2D Transformation using a AxlignMatrix. The return type will be narrowed in subclasses / traits.

2D Transformation using a AxlignMatrix. The return type will be narrowed in subclasses / traits.

Attributes

Definition Classes
Inherited from:
Ellipse
override def radius1: Double

Radius 1 of the ellipse. This extends from the centre to point 1 or point 3. By default, this is the horizontal axis of the ellipse. This can be the major or minor axis.

Radius 1 of the ellipse. This extends from the centre to point 1 or point 3. By default, this is the horizontal axis of the ellipse. This can be the major or minor axis.

Attributes

Definition Classes
Inherited from:
Ellipse
override def radius2: Double

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
Inherited from:
Ellipse
override def rotate180: ThisT

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

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

Attributes

Definition Classes
Inherited from:
AxisFree
override def rotate270: ThisT

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

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

Attributes

Definition Classes
Inherited from:
AxisFree
override def rotate90: ThisT

Rotation positive or anti-clockwise 90 degrees, 2D geometric transformation on a GeomElem, returns a GeomElem. The return type will be narrowed in subclasses and traits.

Rotation positive or anti-clockwise 90 degrees, 2D geometric transformation on a GeomElem, returns a GeomElem. The return type will be narrowed in subclasses and traits.

Attributes

Definition Classes
Inherited from:
AxisFree
def rxAttrib: XAtt

Attributes

Inherited from:
Ellipse
def ryAttrib: XAtt

Attributes

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

Scaling X and Y axes independently, 2D geometric transformation on this Aff2Elem, returns a new Aff2Elem. This allows different scaling factors across X and Y dimensions. The return type will be narrowed in subclasses and traits. This is an affine transformation, but it is not a similar transformation.

Scaling X and Y axes independently, 2D geometric transformation on this Aff2Elem, returns a new Aff2Elem. This allows different scaling factors across X and Y dimensions. The return type will be narrowed in subclasses and traits. This is an affine transformation, but it is not a similar transformation.

Attributes

Definition Classes
Inherited from:
Ellipse
def textArrows(arrowColour: Colour): RArr[GraphicSvgElem]

Attributes

Inherited from:
Ellipse

Attributes

Inherited from:
BoundedElem

Attributes

Inherited from:
Ellipse

Concrete fields

val p0X: Double

The X component of the end point of axis 2. By default, this is at the top 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 end point of axis 2. By default, this is at the top 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

val p0Y: Double

The Y component of the end point of axis 2. By default, this is at the top 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 end point of axis 2. By default, this is at the top 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

val p1X: Double

The X component of the end point of axis 1. By default, this is on the right 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 end point of axis 1. By default, this is on the right 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

val p1Y: Double

The Y component of the end point of axis 1. By default, this is on the right 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 end point of axis 1. By default, this is on the right 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

val p3X: Double

The X 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 X 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

val p3Y: 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