EllipseImp

final case
class EllipseImp(cenX: Double, cenY: Double, axesPt1x: Double, axesPt1y: Double, radius2: Double) extends Ellipse with AxisFree

The implementation class for Ellipses that are not Circles. The Ellipse is encoded as 3 Vec2s 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.

Companion
object
trait Serializable
trait Product
trait Equals
trait AxisFree
trait Ellipse
trait Shape
trait Fillable
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any

Type members

Types

override

Value members

Concrete methods

override
Definition Classes
override
def area: Double
Definition Classes
override
def axesPt2x: Double
Definition Classes
override
def axesPt2y: Double
Definition Classes
override
def axesPt3x: Double
Definition Classes
override
def axesPt3y: Double
Definition Classes
override
Definition Classes
override
def axesPt4x: Double
Definition Classes
override
def axesPt4y: Double
Definition Classes
override
def cenP1: Vec2
Definition Classes
override
def cenP2: Vec2
Definition Classes
override
def cenP3: Vec2
Definition Classes
override
def cenP4: Vec2
Definition Classes
override
def e: Double
Definition Classes
override
def h: Double
Definition Classes
override
def rMajor: Double
Definition Classes
override
def rMinor: Double
Definition Classes
override
def radius1: Double
Definition Classes
override
def reflect(lineLike: LineLike): EllipseImp
Definition Classes
override
Definition Classes
override
def scale(operand: Double): EllipseImp

Uniform scaling 2D geometric transformation, on an EllipseImp, returns an EllipseImp.

Uniform scaling 2D geometric transformation, on an EllipseImp, returns an EllipseImp.

Definition Classes
override
def shearX(operand: Double): EllipseImp
Definition Classes
override
def shearY(operand: Double): EllipseImp
Definition Classes
override
def slateXY(xDelta: Double, yDelta: Double): EllipseImp

Translate 2D geometric transformation, on an EllipseImp, returns an EllipseImp.

Translate 2D geometric transformation, on an EllipseImp, returns an EllipseImp.

Definition Classes

Inherited methods

Inherited from
Ellipse
final
Inherited from
Ellipse
final
Inherited from
Ellipse
override
Definition Classes
Inherited from
Ellipse
Inherited from
BoundedElem
@inline
final

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

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

Inherited from
BoundedElem
def boundingHeight: Double
Inherited from
BoundedElem
def boundingWidth: Double

The width of the BoundingRect of this object.

The width of the BoundingRect of this object.

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

This canEqual override allow the comparison of Shapes.

This canEqual override allow the comparison of Shapes.

Inherited from
Shape
final override
def cen: Pt2
Definition Classes
Inherited from
Ellipse
final override

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.

Definition Classes
Inherited from
CentredElem
Inherited from
Ellipse
Inherited from
Ellipse
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.

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.

Inherited from
EllipseBased
override
def draw(lineColour: Colour, lineWidth: Double): EllipseDraw
Definition Classes
Inherited from
Ellipse
def fTrans(f: Pt2 => Pt2): Ellipse
Inherited from
Ellipse
override
def fill(fillColour: Colour): EllipseFill
Definition Classes
Inherited from
Ellipse
override
def fillDraw(fillColour: Colour, lineColour: Colour, lineWidth: Double): GraphicElem
Definition Classes
Inherited from
Ellipse
override
def fillInt(intValue: Int): EllipseFill
Definition Classes
Inherited from
Ellipse
override
def negX: ThisT
Definition Classes
Inherited from
AxisFree
override
def negY: ThisT
Definition Classes
Inherited from
AxisFree
def productElementNames: Iterator[String]
Inherited from
Product
def productIterator: Iterator[Any]
Inherited from
Product
override
Definition Classes
Inherited from
Ellipse
override
Definition Classes
Inherited from
AxisFree
override
Definition Classes
Inherited from
AxisFree
override
Definition Classes
Inherited from
AxisFree
Inherited from
Ellipse
Inherited from
Ellipse
override
def scaleXY(xOperand: Double, yOperand: Double): Ellipse
Definition Classes
Inherited from
Ellipse
Inherited from
BoundedElem
Inherited from
BoundedElem