ostrat.geom

package ostrat.geom

The package name has been chosen to avoid clashing with "geometry" that may be use in other libraries This package contains geometry vectors and graphics. Of particular note are the Pt2, GeomElem and GraphicElem class /traits. These are the foundation of the API and the library. A number of implementation Value classes of the Int and Double product classes defined in ostrat. 2d graphical objects for generalised use. They are of particular use for the generic canvas based classes defined in pCanv but can be used in any display framework and for printing.

Attributes

Members list

Packages

This package is for global geometry.

This package is for global geometry.

Attributes

Type members

Classlikes

A class that can transform itself in 2d geometry and can preserve its type across all affine transformations. This is a key trait, the object can be transformed in 2 dimensional space. Leaf classes must implement the single method fTrans(f: Vec2 => Vec2): T. The related trait TransDistable does the same for fTrans(f: Dist2 => Dist2): T.

A class that can transform itself in 2d geometry and can preserve its type across all affine transformations. This is a key trait, the object can be transformed in 2 dimensional space. Leaf classes must implement the single method fTrans(f: Vec2 => Vec2): T. The related trait TransDistable does the same for fTrans(f: Dist2 => Dist2): T.

Attributes

Supertypes
trait GeomElem
class Any
Known subtypes
trait AffineTrans[T] extends TransSim[T]

The type class trait for transforming an object in 2d geometry. Note overrides necessary to preserve type.

The type class trait for transforming an object in 2d geometry. Note overrides necessary to preserve type.

Attributes

Companion
object
Supertypes
trait TransSim[T]
trait TransAlign[T]
class Object
trait Matchable
class Any
object AffineTrans

The companion object for the Trans[T] type class, containing instances for common classes.

The companion object for the Trans[T] type class, containing instances for common classes.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
case class AlignMatrix(xFactor: Double, yFactor: Double, xDelta: Double, yDelta: Double)

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
final class Angle extends AnyVal, AngleLike, Ordered[Angle], Dbl1Elem

Angle of inclination. Its particularly important not to use this class to represent Latitudes as the Angle class has a normal range 0 <= a < 360 degrees, while Latitudes have a normal range +- 90 degrees. Unlike AngleVec this class has no multiply or divide, * or / methods. It has add and subtract, + and - methods, but these take AngleVecs as operands not other Angles. To Add,subtract or scale angles of inclination would make no sense.

Angle of inclination. Its particularly important not to use this class to represent Latitudes as the Angle class has a normal range 0 <= a < 360 degrees, while Latitudes have a normal range +- 90 degrees. Unlike AngleVec this class has no multiply or divide, * or / methods. It has add and subtract, + and - methods, but these take AngleVecs as operands not other Angles. To Add,subtract or scale angles of inclination would make no sense.

Attributes

Companion
object
Supertypes
trait Ordered[Angle]
trait Comparable[Angle]
class Object
trait AngleLike
trait Dbl1Elem
trait DblNElem
trait ValueNElem
trait SpecialT
trait ApproxAngle
trait Approx[AngleVec]
trait Equals
trait Tell
trait Persist
class AnyVal
trait Matchable
class Any
Show all
object Angle

Angle Companion object.

Angle Companion object.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
Angle.type

Base trait for Angle, AngleVec, Latitude and Longitude.

Base trait for Angle, AngleVec, Latitude and Longitude.

Attributes

Supertypes
trait Dbl1Elem
trait DblNElem
trait ValueNElem
trait SpecialT
trait ApproxAngle
trait Approx[AngleVec]
trait Equals
trait Tell
trait Persist
class Any
Show all
Known subtypes
class Latitude
class Longitude
class Angle
class AngleVec
class AngleVec extends AngleLike

Angle vector, an angle of rotation. Values may be greater than 360 degrees and less than -360 degrees. Negative values represent clockwise rotation. So +720 degrees represents 2 complete anti-clockwise rotations, -1080 degrees represents 3 clockwise rotations.

Angle vector, an angle of rotation. Values may be greater than 360 degrees and less than -360 degrees. Negative values represent clockwise rotation. So +720 degrees represents 2 complete anti-clockwise rotations, -1080 degrees represents 3 clockwise rotations.

Attributes

Companion
object
Supertypes
trait AngleLike
trait Dbl1Elem
trait DblNElem
trait ValueNElem
trait SpecialT
trait ApproxAngle
trait Approx[AngleVec]
trait Equals
trait Tell
trait Persist
class Object
trait Matchable
class Any
Show all
object AngleVec

Companion object for AngleVec trait contains factory methods.

Companion object for AngleVec trait contains factory methods.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
AngleVec.type
final class Angles(val arrayUnsafe: Array[Double]) extends AnyVal, ArrDbl1[Angle]

Efficient Immutable Array[Double] based collection class, with the Angle values stored as arc seconds.

Efficient Immutable Array[Double] based collection class, with the Angle values stored as arc seconds.

Attributes

Companion
object
Supertypes
trait ArrDbl1[Angle]
trait ArrDblN[Angle]
trait ArrValueN[Angle]
trait ArrNoParam[Angle]
trait Arr[Angle]
trait Sequ[Angle]
trait SpecialT
trait SeqLike[Angle]
class AnyVal
trait Matchable
class Any
Show all
object Angles

Companion object for Angles class.

Companion object for Angles class.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
Angles.type
implicit class AnyGeomImplicit(thisAny: Any)

Attributes

Supertypes
class Object
trait Matchable
class Any
trait ApproxAngle extends Approx[AngleVec]

Attributes

Supertypes
trait Approx[AngleVec]
trait Equals
class Any
Known subtypes
trait AngleLike
class Latitude
class Longitude
class Angle
class AngleVec
trait ApproxAngleT[T] extends ApproxT[AngleVec, T]

Attributes

Supertypes
trait ApproxT[AngleVec, T]
class Object
trait Matchable
class Any

To be removed.

To be removed.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
object ArcTail

This provides factory methods to create an ArcTail. There is no independent ArcTail class. This is one of 3 factory objects to CurveTail.

This provides factory methods to create an ArcTail. There is no independent ArcTail class. This is one of 3 factory objects to CurveTail.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
ArcTail.type
object Arrow

Object for producing arrow graphics to point at objects in diagrams.

Object for producing arrow graphics to point at objects in diagrams.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
Arrow.type
trait AxisFree extends GeomElem

This is a trait for geometric elements, GeomElems, that don't need special axes method implementations.

This is a trait for geometric elements, GeomElems, that don't need special axes method implementations.

Attributes

Supertypes
trait GeomElem
class Object
trait Matchable
class Any
Known subtypes
case object BackButton extends MouseButton

Indicates the back mouse button was pressed.

Indicates the back mouse button was pressed.

Attributes

Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class MouseButton
class Object
trait Matchable
class Any
Show all
Self type
BackButton.type
sealed trait BaseLine

Baseline style for text.

Baseline style for text.

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes
object Alphabetic
object Bottom
object Hanging
object Ideographic
object Middle
object Top
Show all
object BaseLine

Companion object for BaseLine trait, contains the object value instances of the trait.

Companion object for BaseLine trait, contains the object value instances of the trait.

Attributes

Companion
trait
Supertypes
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Self type
BaseLine.type
class Bezier(val startX: Double, val startY: Double, val xC1: Double, val yC1: Double, val xC2: Double, val yC2: Double, val endX: Double, val endY: Double) extends CurveSeg, AffinePreserve

Cubic bezier curve.

Cubic bezier curve.

Attributes

Companion
object
Supertypes
trait CurveSeg
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
Show all
object Bezier

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
Bezier.type
case class BezierDraw(curveSeg: Bezier, colour: Colour, lineWidth: Double) extends CurveSegDraw, GraphicAffineElem, CanvElem

Functional class for Drawing a cubic Bezier curve.

Functional class for Drawing a cubic Bezier curve.

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
trait CanvElem
trait CurveSegDraw
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
object BezierDraw

Companion object for the BezierDraw class.

Companion object for the BezierDraw class.

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
BezierDraw.type
object BezierTail

This provides factory methods to create a Bezier tail. There is no independent BezierTail class. This is one of 3 factory objects to CurveTail.

This provides factory methods to create a Bezier tail. There is no independent BezierTail class. This is one of 3 factory objects to CurveTail.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
BezierTail.type
trait BoundedElem extends GeomElem

A 2D geometric element, that has a defined bounding rectangle, BoundingRect. This trait is for layout, such as placing Graphic elements in rows and columns. It includes polygon and shape graphics but not line and curve graphics.

A 2D geometric element, that has a defined bounding rectangle, BoundingRect. This trait is for layout, such as placing Graphic elements in rows and columns. It includes polygon and shape graphics but not line and curve graphics.

Attributes

Supertypes
trait GeomElem
class Any
Known subtypes
trait CentredElem
class Circle
trait RectGraphic
trait RectCompound
object GridGraphic1
trait RectDraw
class RectDrawImp
trait RectFill
class RectFillImp
trait Rect
object NoBounds
class PhiRect
class PhiRectY
class RectImp
class Sqlign
trait ShapeCentred
trait Ellipse
class EllipseImp
trait Ellipselign
trait HexReg
class HexRegImp
trait Hexlign
class HexParrX
class HexParrY
trait Rectangle
trait PhiRectangle
class RectangleImp
trait Square
class SquareImp
class CircleActive
class CircleDraw
class CircleFill
trait EllipseDraw
trait EllipseFill
trait PolygonDraw
trait PolygonFill
class TriangleFill
trait ShapeGraphic
trait ShapeDraw
trait ShapeFill
class LineSeg
class LineSegArr
class LinesDraw
trait Polygon
trait Polygon3Plus
trait Polygon4Plus
trait Polygon5Plus
trait Polygon6Plus
class DoDeclign
trait Triangle
class TriangleImp
trait TriangleIsos
class TriangleEqui
class PolygonGen
trait Shape
class ShapeGen
Show all
final class BoundedExtensions[T <: BoundedElem](val thisT: T) extends AnyVal

This will be deprecated and its methods transfered to BoundingExtensions.

This will be deprecated and its methods transfered to BoundingExtensions.

Attributes

Supertypes
class AnyVal
trait Matchable
class Any
trait Bounding[A]

Type class for the production of bounding rectangles.

Type class for the production of bounding rectangles.

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
object Bounding

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
Bounding.type
class BoundingExtensions[A](val thisObj: A, evA: Bounding[A])

Attributes

Supertypes
class Object
trait Matchable
class Any
implicit class BuffDblExtensionsImplicit[A <: DblNElem](val thisBuff: BuffDblN[A])

Attributes

Supertypes
class Object
trait Matchable
class Any
implicit class BuffIntExtensionsImplicit[A <: IntNElem](val thisBuff: BuffIntN[A])

Attributes

Supertypes
class Object
trait Matchable
class Any
final class BuffPtM2(val unsafeBuffer: ArrayBuffer[Double]) extends AnyVal, BuffDbl2[PtM2]

A specialised flat ArrayBuffer[Double] based class for PtM2s collections.

A specialised flat ArrayBuffer[Double] based class for PtM2s collections.

Attributes

Companion
object
Supertypes
trait BuffDbl2[PtM2]
trait BuffDblN[PtM2]
trait BuffValueN[PtM2]
trait BuffSequ[PtM2]
trait Sequ[PtM2]
trait SeqLike[PtM2]
class AnyVal
trait Matchable
class Any
Show all
object BuffPtM2

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
BuffPtM2.type
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.

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
Supertypes
trait EArclign
trait EArc
trait CurveSeg
trait Drawable
trait EllipseBased
trait WithCentre
trait GeomElem
class Object
trait Matchable
class Any
Show all
object CArc

Companion object of CArc class, contains various factory methods for the construction of circular arcs.

Companion object of CArc class, contains various factory methods for the construction of circular arcs.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
CArc.type
case class CArcDraw(curveSeg: CArc, colour: Colour, lineWidth: Double) extends EArcDraw, AxisFree

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait AxisFree
trait EArcDraw
trait CanvElem
trait CurveSegDraw
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
class CArcTail(val xCen: Double, val yCen: Double, val xEnd: Double, val yEnd: Double, val counter: Int) extends CurveSegTail

Attributes

Supertypes
trait CurveSegTail
class Object
trait Matchable
class Any
trait CanvElem extends GraphicElem

A canvas element that can be rendered by the pgui.CanvasPlatform API. This trait is not sealed, but should not be extended outside of the library.

A canvas element that can be rendered by the pgui.CanvasPlatform API. This trait is not sealed, but should not be extended outside of the library.

Attributes

Companion
object
Supertypes
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Known subtypes
object CanvElem

Companion object for the DisplayElem trait. Contains Implicit instances for 2d geometrical transformation type-classes.

Companion object for the DisplayElem trait. Contains Implicit instances for 2d geometrical transformation type-classes.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
CanvElem.type

Attributes

Supertypes
trait CanvElem
trait ShapeDraw
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
trait PolygonDraw
trait RectDraw
class RectDrawImp
Show all

ShapeFill element that is a CanvElem

ShapeFill element that is a CanvElem

Attributes

Supertypes
trait CanvElem
trait ShapeFill
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
trait PolygonFill
trait RectFill
class RectFillImp
class TriangleFill
Show all
case object CenAlign extends TextAlign

Attributes

Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
trait TextAlign
class Object
trait Matchable
class Any
Show all
Self type
CenAlign.type

A 2D geometric element with a defined centre.

A 2D geometric element with a defined centre.

Attributes

Supertypes
trait WithCentre
trait BoundedElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
final case class Circle(diameter: Double, cenX: Double, cenY: Double) extends Ellipselign, OrdinaledElem, AxisFree

Circle class is defined by its centre and radius. It fulfills the interface for an Ellipse.

Circle class is defined by its centre and radius. It fulfills the interface for an Ellipse.

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
trait AxisFree
trait Ellipselign
trait Ellipse
trait ShapeCentred
trait CentredElem
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait EllipseBased
trait WithCentre
trait GeomElem
class Object
trait Matchable
class Any
Show all
object Circle extends ShapeIcon

This is the companion object for the Circle case class. It provides factory methods for creating Circles.

This is the companion object for the Circle case class. It provides factory methods for creating Circles.

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait ShapeIcon
class Object
trait Matchable
class Any
Show all
Self type
Circle.type
case class CircleActive(shape: Circle, pointerId: Any) extends EllipseActive, CircleGraphicSimple

A pointable polygon without visual.

A pointable polygon without visual.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait CentredElem
trait WithCentre
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
case class CircleCompound(shape: Circle, facets: RArr[GraphicFacet], children: RArr[GraphicElem]) extends EllipseCompound, CircleGraphic, AxisFree

Compound Circle Graphic class.

Compound Circle Graphic class.

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
trait AxisFree
trait CentredElem
trait WithCentre
trait NoCanvElem
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
final case class CircleDraw(shape: Circle, lineWidth: Double, lineColour: Colour) extends CircleGraphicSimple, EllipseDraw

A simple draw of a circle graphic.

A simple draw of a circle graphic.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait EllipseDraw
trait CanvElem
trait ShapeDraw
trait CentredElem
trait WithCentre
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
final case class CircleFill(shape: Circle, fill: FillFacet) extends CircleGraphicSimple, EllipseFill, CanvElem

A simple single colour fill of a circle graphic.

A simple single colour fill of a circle graphic.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait EllipseFill
trait CanvElem
trait ShapeFill
trait CentredElem
trait WithCentre
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
case class CircleFillIcon(fillColour: Colour) extends ShapeFillIcon

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

A circle based Graphic, may be simple or compound.

A circle based Graphic, may be simple or compound.

Attributes

Supertypes
trait CentredElem
trait WithCentre
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes

A Simple circle based graphic.

A Simple circle based graphic.

Attributes

Supertypes
trait CentredElem
trait WithCentre
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
class CircleActive
class CircleDraw
class CircleFill
object Cross

Utility object, contains various methods for creating crosses.

Utility object, contains various methods for creating crosses.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
Cross.type
trait CurveFacet extends GraphicFacet

Attributes

Supertypes
trait GraphicFacet
class Object
trait Matchable
class Any
Known subtypes
class DrawFacet
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.

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.

Attributes

Companion
object
Supertypes
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
Known subtypes
class Bezier
trait EArc
class EArcImp
trait EArclign
class CArc
class EArclignImp
class LineSeg
Show all
object CurveSeg

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
CurveSeg.type
final class CurveSegDists(val arrayUnsafe: Array[Double]) extends AnyVal, ArrDbl7[DistCurveTail]

This class needs replacing.

This class needs replacing.

Attributes

Companion
object
Supertypes

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Supertypes
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
class BezierDraw
trait EArcDraw
class CArcDraw
class EArcDrawImp

Graphic based on a CurveSeg.

Graphic based on a CurveSeg.

Attributes

Supertypes
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Known subtypes
trait CurveSegDraw
class BezierDraw
trait EArcDraw
class CArcDraw
class EArcDrawImp
class LineSegDraw
Show all
trait CurveSegTail

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
class CArcTail
case class CurveTail(iMatch: Double, xC1: Double, yC1: Double, xUses: Double, yUses: Double, xEnd: Double, yEnd: Double) extends Dbl7Elem, 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.

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.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait GeomElem
trait Dbl7Elem
trait DblNElem
trait ValueNElem
trait SpecialT
class Object
trait Matchable
class Any
Show all
case class DashedLineDraw(curveSeg: LineSeg, lineWidth: Double, colour: Colour, dashArr: Array[Double]) extends CurveSegGraphic, AffinePreserve, CanvElem

This class will be replaced but extends CanvElem as a temporary measure.

This class will be replaced but extends CanvElem as a temporary measure.

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
trait CanvElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type

Needs removing. A base trait for DistCurveSeg and DistCurveTail and their associated GraphicElemsDist (these haven't been implemented or precisely named yet).

Needs removing. A base trait for DistCurveSeg and DistCurveTail and their associated GraphicElemsDist (these haven't been implemented or precisely named yet).

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
class DistCurveTail(val iMatch: Double, val xC1Metres: Double, val yC1Metres: Double, val xUsesMetres: Double, val yUsesMetres: Double, val xEndMetres: Double, val yEndMetres: Double) extends Dbl7Elem, DistCurveSegLike

Needs removing. A curve segment tail described in distance units rather than scalars. A DistCurveSeg without its starting point which will normally be supplied by the preceding DistCurveTail.

Needs removing. A curve segment tail described in distance units rather than scalars. A DistCurveSeg without its starting point which will normally be supplied by the preceding DistCurveTail.

Attributes

Supertypes
trait Dbl7Elem
trait DblNElem
trait ValueNElem
trait SpecialT
class Object
trait Matchable
class Any
Show all
final class DoDeclign(val arrayUnsafe: Array[Double]) extends AnyVal, Polygon6Plus

A Dodecahedron aligned with the X and Y Axis so v0 is vertically up from the centre and v6 vertically down.

A Dodecahedron aligned with the X and Y Axis so v0 is vertically up from the centre and v6 vertically down.

Attributes

Companion
object
Supertypes
trait Polygon6Plus
trait Polygon5Plus
trait Polygon4Plus
trait Polygon3Plus
trait Polygon
trait PolygonLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait Approx[Double]
trait Equals
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class AnyVal
trait Matchable
class Any
Show all
object DoDeclign

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
DoDeclign.type
class DoubleImplicitGeom(thisDouble: Double)

Extension methods class for Double, for the geom package.

Extension methods class for Double, for the geom package.

Attributes

Supertypes
class Object
trait Matchable
class Any
case class DrawFacet(colour: Colour, width: Double) extends CurveFacet

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait CurveFacet
trait GraphicFacet
class Object
trait Matchable
class Any
Show all
trait Drawable extends GeomElem

A 2D geometric element that can be drawn producing a GraphicElem.

A 2D geometric element that can be drawn producing a GraphicElem.

Attributes

Companion
object
Supertypes
trait GeomElem
class Any
Known subtypes
trait CurveSeg
class Bezier
trait EArc
class EArcImp
trait EArclign
class CArc
class EArclignImp
class LineSeg
trait Fillable
trait Shape
trait Polygon
trait Polygon3Plus
trait Polygon4Plus
trait Polygon5Plus
trait Polygon6Plus
class DoDeclign
trait HexReg
class HexRegImp
trait Hexlign
class HexParrX
class HexParrY
trait Rectangle
trait PhiRectangle
class PhiRect
class PhiRectY
trait Rect
object NoBounds
class RectImp
class Sqlign
class RectangleImp
trait Square
class SquareImp
trait Triangle
class TriangleImp
trait TriangleIsos
class TriangleEqui
class PolygonGen
trait ShapeCentred
trait Ellipse
class EllipseImp
trait Ellipselign
class Circle
class ShapeGen
class LineSegArr
Show all
object Drawable

Companion object for the Drawable trait contains implicit instances for various 2D geometric transformation type classes.

Companion object for the Drawable trait contains implicit instances for various 2D geometric transformation type classes.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
Drawable.type
trait EArc extends EllipseBased, CurveSeg

Elliptical Arc. the trait has 2 implementations CArc and EArc.EArcImp.

Elliptical Arc. the trait has 2 implementations CArc and EArc.EArcImp.

Attributes

Companion
object
Supertypes
trait CurveSeg
trait Drawable
trait EllipseBased
trait WithCentre
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
class EArcImp
trait EArclign
class CArc
class EArclignImp
object EArc

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
EArc.type
trait EArcDraw extends CurveSegDraw, CanvElem

2D graphic that draws an arc of an ellipse. The trait has 2 implementations, CArcdraw, a cirular arc draw and the general case is implemented with EArcDraw.EArcDrawImp.

2D graphic that draws an arc of an ellipse. The trait has 2 implementations, CArcdraw, a cirular arc draw and the general case is implemented with EArcDraw.EArcDrawImp.

Attributes

Companion
object
Supertypes
trait CanvElem
trait CurveSegDraw
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
class CArcDraw
class EArcDrawImp
object EArcDraw

Companion object ofr the EArcDraw trait, contins the general implementation class EArcDrawImp and an apply factor method that delegates to EArcDrawImp.

Companion object ofr the EArcDraw trait, contins the general implementation class EArcDrawImp and an apply factor method that delegates to EArcDrawImp.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
EArcDraw.type
trait EArclign extends EArc

An arc based on an ellipse whose axes are aligned to the X and Y axes. This is a trait as the EArclign.EArclignImp and CArc classes both fulfill this interface.

An arc based on an ellipse whose axes are aligned to the X and Y axes. This is a trait as the EArclign.EArclignImp and CArc classes both fulfill this interface.

Attributes

Companion
object
Supertypes
trait EArc
trait CurveSeg
trait Drawable
trait EllipseBased
trait WithCentre
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
class CArc
class EArclignImp
object EArclign

Companion object for EArclign trait, an arc that is based on Ellipse aligned to the X and Y axes.

Companion object for EArclign trait, an arc that is based on Ellipse aligned to the X and Y axes.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
EArclign.type

The Ellipse trait can either be implemented as an Ellipse class or as a Circle. Which also fulfills the Ellipse interface. The factory methods in the Ellipse companion object return [Ellipse]].

The Ellipse trait can either be implemented as an Ellipse class or as a Circle. Which also fulfills the Ellipse interface. The factory methods in the Ellipse companion object return [Ellipse]].

Attributes

Companion
object
Supertypes
trait ShapeCentred
trait CentredElem
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait EllipseBased
trait WithCentre
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
class EllipseImp
trait Ellipselign
class Circle
object Ellipse

Companion object for the Ellipse trait contains the EllipseImp implementation class and factory methods for Ellipse that delegate to EllipseImp.

Companion object for the Ellipse trait contains the EllipseImp implementation class and factory methods for Ellipse that delegate to EllipseImp.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
Ellipse.type

Attributes

Companion
object
Supertypes
trait CentredElem
trait WithCentre
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
object EllipseActive

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

Common trait for Ellipse and EArc. The main purpose of this trait is not to share code, but to establish naming conventions for elliptical properties.

Common trait for Ellipse and EArc. The main purpose of this trait is not to share code, but to establish naming conventions for elliptical properties.

Attributes

Supertypes
trait WithCentre
trait GeomElem
class Object
trait Matchable
class Any
Known subtypes
trait EArc
class EArcImp
trait EArclign
class CArc
class EArclignImp
trait Ellipse
class EllipseImp
trait Ellipselign
class Circle
Show all

Compound graphic trait for an ellipse. Note CircleCompound is a sub class of this trait.

Compound graphic trait for an ellipse. Note CircleCompound is a sub class of this trait.

Attributes

Companion
object
Supertypes
trait CentredElem
trait WithCentre
trait NoCanvElem
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes

Companion object for the EllipseCompound trait contains factory apply method and implicit instances for the 2D geometric transformations.

Companion object for the EllipseCompound trait contains factory apply method and implicit instances for the 2D geometric transformations.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Companion
object
Supertypes
trait CanvElem
trait ShapeDraw
trait CentredElem
trait WithCentre
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
object EllipseDraw

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

A simple single colour fill of a circle graphic.

A simple single colour fill of a circle graphic.

Attributes

Companion
object
Supertypes
trait CanvElem
trait ShapeFill
trait CentredElem
trait WithCentre
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
object EllipseFill

Companion object for the EllipseFill class.

Companion object for the EllipseFill class.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

An Ellipse based Graphic. The Ellipse can be defined as a circle.

An Ellipse based Graphic. The Ellipse can be defined as a circle.

Attributes

Supertypes
trait CentredElem
trait WithCentre
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes

A Simple circle based graphic. Not sure if this trait is useful.

A Simple circle based graphic. Not sure if this trait is useful.

Attributes

Supertypes
trait CentredElem
trait WithCentre
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
trait Ellipselign extends Ellipse

An ellipse whose axes are aligned to the X and Y axes. This is a trait as both Circle and Ellipselign.EllipselignImp classes implement this interface.

An ellipse whose axes are aligned to the X and Y axes. This is a trait as both Circle and Ellipselign.EllipselignImp classes implement this interface.

Attributes

Companion
object
Supertypes
trait Ellipse
trait ShapeCentred
trait CentredElem
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait EllipseBased
trait WithCentre
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
class Circle
object Ellipselign

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
trait FillFacet extends GraphicFacet

Attributes

Supertypes
trait GraphicFacet
class Any
Known subtypes
class FillRadial
class Colour
case class FillRadial(cenColour: Colour, outerColour: Colour) extends FillFacet

Starting off with simplified. Radial Gradient. Will expand later.

Starting off with simplified. Radial Gradient. Will expand later.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait FillFacet
trait GraphicFacet
class Object
trait Matchable
class Any
Show all
trait Fillable extends Drawable

A 2D geometric element that can be drawn and filled producing GraphicElems.

A 2D geometric element that can be drawn and filled producing GraphicElems.

Attributes

Supertypes
trait Drawable
trait GeomElem
class Any
Known subtypes
trait Shape
trait Polygon
trait Polygon3Plus
trait Polygon4Plus
trait Polygon5Plus
trait Polygon6Plus
class DoDeclign
trait HexReg
class HexRegImp
trait Hexlign
class HexParrX
class HexParrY
trait Rectangle
trait PhiRectangle
class PhiRect
class PhiRectY
trait Rect
object NoBounds
class RectImp
class Sqlign
class RectangleImp
trait Square
class SquareImp
trait Triangle
class TriangleImp
trait TriangleIsos
class TriangleEqui
class PolygonGen
trait ShapeCentred
trait Ellipse
class EllipseImp
trait Ellipselign
class Circle
class ShapeGen
Show all
case object ForwardButton extends MouseButton

Indicates the forward mouse button was pressed.

Indicates the forward mouse button was pressed.

Attributes

Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class MouseButton
class Object
trait Matchable
class Any
Show all
Self type
trait GeomElem

A 2D geometric element to which 2D geometric transformations can be applied. Not all elements preserve their full properties under all transformations. So for example a Circle is no longer a Circle after a Shear transformation, but remains an Ellipse. GraphicElem inherits from GeomElem. A Circle is not a GraphicElem but if we add a fill colour to make a CircleFill, or a line width and line colour to it, we have a GraphicElem a graphical element that can be displayed on a canvas or output to SVG. It is expected that all elements that inherit from GeomElem that are not GraphicElems will be Drawable elements, but this has not been finalised.

A 2D geometric element to which 2D geometric transformations can be applied. Not all elements preserve their full properties under all transformations. So for example a Circle is no longer a Circle after a Shear transformation, but remains an Ellipse. GraphicElem inherits from GeomElem. A Circle is not a GraphicElem but if we add a fill colour to make a CircleFill, or a line width and line colour to it, we have a GraphicElem a graphical element that can be displayed on a canvas or output to SVG. It is expected that all elements that inherit from GeomElem that are not GraphicElems will be Drawable elements, but this has not been finalised.

Attributes

Companion
object
Supertypes
class Any
Known subtypes
trait AxisFree
class CArcDraw
class Circle
class EllipseImp
class ShapeGen
class TriangleEqui
trait BoundedElem
trait CentredElem
trait RectGraphic
trait RectCompound
object GridGraphic1
trait RectDraw
class RectDrawImp
trait RectFill
class RectFillImp
trait Rect
object NoBounds
class PhiRect
class PhiRectY
class RectImp
class Sqlign
trait ShapeCentred
trait Ellipse
trait Ellipselign
trait HexReg
class HexRegImp
trait Hexlign
class HexParrX
class HexParrY
trait Rectangle
trait PhiRectangle
class RectangleImp
trait Square
class SquareImp
class CircleActive
class CircleDraw
class CircleFill
trait EllipseDraw
trait EllipseFill
trait PolygonDraw
trait PolygonFill
class TriangleFill
trait ShapeGraphic
trait ShapeDraw
trait ShapeFill
class LineSeg
class LineSegArr
class LinesDraw
trait Polygon
trait Polygon3Plus
trait Polygon4Plus
trait Polygon5Plus
trait Polygon6Plus
class DoDeclign
trait Triangle
class TriangleImp
trait TriangleIsos
class PolygonGen
trait Shape
trait Drawable
trait CurveSeg
class Bezier
trait EArc
class EArcImp
trait EArclign
class CArc
class EArclignImp
trait Fillable
trait EllipseBased
trait GraphicElem
trait CanvElem
class BezierDraw
trait EArcDraw
class EArcDrawImp
class LinePathDraw
class LineSegDraw
trait TextGraphic
class TextFixed
class Textlign
trait CurveSegDraw
class TextOutline
trait NoCanvElem
trait LineLike
trait Line
class XLine
class XParallel
object XAxis
object YAxis
trait XorYAxis
class YLine
class YParallel
class Ray
class CurveTail
class LinePath
class Pt2Arr
class ShapeGenOld
Show all
object GeomElem

Companion object for the GeomElem trait. Contains implicit instances of type GeomElem for all the 2D geometric transformation type classes.

Companion object for the GeomElem trait. Contains implicit instances of type GeomElem for all the 2D geometric transformation type classes.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
GeomElem.type
object GeomPage extends HtmlPage

Produces an HTML file documentation for the Geom module.

Produces an HTML file documentation for the Geom module.

Attributes

Supertypes
trait HtmlPage
class Object
trait Matchable
class Any
Self type
GeomPage.type
object GeomPagePolygons extends HtmlSection

Attributes

Supertypes
trait HtmlSection
trait HtmlUnvoid
trait HtmlElem
trait XmlElemLike
trait XCon
class Object
trait Matchable
class Any
Show all
Self type

Attributes

Supertypes
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes

This trait will be removed. The base trait for all objects that can have mouse / touch pad interaction.

This trait will be removed. The base trait for all objects that can have mouse / touch pad interaction.

Attributes

Supertypes
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes

The base trait for all objects that can have mouse / touch pad interaction.

The base trait for all objects that can have mouse / touch pad interaction.

Attributes

Supertypes
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes

A DisplayElem for which all leaf elements of this trait maintain their type through all affine transformation. This type is purely for the convenience of using the fTrans method to perform all the affine transformations. It is not a useful user type hence it has no type class instances associated with it.

A DisplayElem for which all leaf elements of this trait maintain their type through all affine transformation. This type is purely for the convenience of using the fTrans method to perform all the affine transformations. It is not a useful user type hence it has no type class instances associated with it.

Attributes

Supertypes
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes

This trait is for layout. For placing Display elements in rows and columns. It includes PolygonGraphic and ShapeGraphics but not Line and Curve graphics.

This trait is for layout. For placing Display elements in rows and columns. It includes PolygonGraphic and ShapeGraphics but not Line and Curve graphics.

Attributes

Companion
object
Supertypes
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
class CircleActive
trait RectCompound
object GridGraphic1
trait PolygonDraw
trait RectDraw
class RectDrawImp
trait PolygonFill
trait RectFill
class RectFillImp
class TriangleFill
trait RectGraphic
trait ShapeGraphic
class CircleDraw
class CircleFill
trait EllipseDraw
trait EllipseFill
trait ShapeDraw
trait ShapeFill
Show all

Companion object for the BoundedGraphic trait. Contains Implicit instances for 2d geometrical transformation type-classes.

Companion object for the BoundedGraphic trait. Contains Implicit instances for 2d geometrical transformation type-classes.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

This trait is for layout. For placing Display elements in rows and columns. It includes polygon and shape graphics but not line and curve graphics.

This trait is for layout. For placing Display elements in rows and columns. It includes polygon and shape graphics but not line and curve graphics.

Attributes

Supertypes
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes

This trait is for layout. For placing Display elements in rows and columns. It includes polygon and shape graphics but not line and curve graphics.

This trait is for layout. For placing Display elements in rows and columns. It includes polygon and shape graphics but not line and curve graphics.

Attributes

Supertypes
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes

This is the new active trait that will replace GraphicActive.

This is the new active trait that will replace GraphicActive.

Attributes

Supertypes
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
trait GraphicElem extends GeomElem

This will be sealed in due course. A graphic element is either an element that can be rendered to a display (or printed) or is an active element in a display or both. So I think the self type will force all GraphicElems to extend CanvElem or NoCanvElem.

This will be sealed in due course. A graphic element is either an element that can be rendered to a display (or printed) or is an active element in a display or both. So I think the self type will force all GraphicElems to extend CanvElem or NoCanvElem.

Attributes

Companion
object
Supertypes
trait GeomElem
class Object
trait Matchable
class Any
Known subtypes
trait CanvElem
class BezierDraw
trait PolygonDraw
trait RectDraw
class RectDrawImp
trait PolygonFill
trait RectFill
class RectFillImp
class TriangleFill
class CircleFill
trait EArcDraw
class CArcDraw
class EArcDrawImp
trait EllipseDraw
class CircleDraw
trait EllipseFill
class LinePathDraw
class LineSegDraw
class LinesDraw
trait TextGraphic
class TextFixed
class Textlign
trait CurveSegDraw
class CircleActive
trait RectCompound
object GridGraphic1
trait RectGraphic
trait ShapeGraphic
trait ShapeDraw
trait ShapeFill
class TextOutline
trait NoCanvElem
Show all
object GraphicElem

Companion object for the DisplayElem trait. Contains Implicit instances for 2d geometrical transformation type-classes.

Companion object for the DisplayElem trait. Contains Implicit instances for 2d geometrical transformation type-classes.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
trait GraphicFacet

Attributes

Supertypes
class Any
Known subtypes
trait CurveFacet
class DrawFacet
trait FillFacet
class FillRadial
class Colour
class ShapeActive
class TextFacet
Show all

This is an active visual canvas object. A pointable polygon / shape with visual, that also knows how much display space it needs and preferred margin space. Not sure about the name. not sure if the trait is useful.

This is an active visual canvas object. A pointable polygon / shape with visual, that also knows how much display space it needs and preferred margin space. Not sure about the name. not sure if the trait is useful.

Attributes

Supertypes
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes

A DisplayElem for which all leaf elements of this trait maintain their type through all similar transformation. This type is purely for the convenience of using the fTrans method to perform all the Similar transformations. It is not a useful user type hence it has no type class instances associated with it.

A DisplayElem for which all leaf elements of this trait maintain their type through all similar transformation. This type is purely for the convenience of using the fTrans method to perform all the Similar transformations. It is not a useful user type hence it has no type class instances associated with it.

Attributes

Supertypes
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
trait GraphicSimple extends GraphicElem

GraphicSimple is a non compound graphic element that can be rendered to a display (or printed) or is an active element in a display, but can't be both that require a GraphicCompound.

GraphicSimple is a non compound graphic element that can be rendered to a display (or printed) or is an active element in a display, but can't be both that require a GraphicCompound.

Attributes

Companion
object
Supertypes
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Known subtypes
object GraphicSimple

Companion object for the GraphicSimple trait. Contains Implicit instances for 2d geometrical transformation type-classes.

Companion object for the GraphicSimple trait. Contains Implicit instances for 2d geometrical transformation type-classes.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
trait GraphicSvgElem extends GraphicElem

Graphic element that can be described with single SvgElem

Graphic element that can be described with single SvgElem

Attributes

Supertypes
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Known subtypes
final class HexParrX(val arrayUnsafe: Array[Double]) extends Hexlign, Tell2[Double, Pt2]

Regular Hexagon where two of the sides are parallel to the X Axis

Regular Hexagon where two of the sides are parallel to the X Axis

Attributes

Companion
object
Supertypes
trait Tell2[Double, Pt2]
trait Persist2[Double, Pt2]
trait PersistN
trait TellN
trait Hexlign
trait HexReg
trait Tell
trait Persist
trait Polygon6Plus
trait Polygon5Plus
trait Polygon4Plus
trait Polygon3Plus
trait Polygon
trait PolygonLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait Approx[Double]
trait Equals
trait ShapeCentred
trait CentredElem
trait WithCentre
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
Show all
object HexParrX

Companion object for the regular hexagon aligned to the X Axis class. It has a limited set of 2D geometric transformation type class instances as the type can not be maintained through all affine transformations.

Companion object for the regular hexagon aligned to the X Axis class. It has a limited set of 2D geometric transformation type class instances as the type can not be maintained through all affine transformations.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
HexParrX.type
final class HexParrY(val arrayUnsafe: Array[Double]) extends Hexlign, Tell2[Double, Pt2]

Regular Hexagon where two of the sides are parallel to the Y Axis. This will be the standard Hex for the Tiling module.

Regular Hexagon where two of the sides are parallel to the Y Axis. This will be the standard Hex for the Tiling module.

Attributes

Companion
object
Supertypes
trait Tell2[Double, Pt2]
trait Persist2[Double, Pt2]
trait PersistN
trait TellN
trait Hexlign
trait HexReg
trait Tell
trait Persist
trait Polygon6Plus
trait Polygon5Plus
trait Polygon4Plus
trait Polygon3Plus
trait Polygon
trait PolygonLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait Approx[Double]
trait Equals
trait ShapeCentred
trait CentredElem
trait WithCentre
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
Show all
object HexParrY

Companion object for the regular hexagon aligned to the Y Axis class. It has a limited set of 2D geometric transformation type class instances as the type can not be maintained through all affine transformations.

Companion object for the regular hexagon aligned to the Y Axis class. It has a limited set of 2D geometric transformation type class instances as the type can not be maintained through all affine transformations.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
HexParrY.type

Regular Hexagon. a = √3 * r / 2. r = 2 * √3 * a.

Regular Hexagon. a = √3 * r / 2. r = 2 * √3 * a.

Attributes

Companion
object
Supertypes
trait Tell
trait Persist
trait Polygon6Plus
trait Polygon5Plus
trait Polygon4Plus
trait Polygon3Plus
trait Polygon
trait PolygonLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait Approx[Double]
trait Equals
trait ShapeCentred
trait CentredElem
trait WithCentre
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
class HexRegImp
trait Hexlign
class HexParrX
class HexParrY
object HexReg

Companion object for HegReg trait, contains HexRegImp implementation case for the general case of regular Hexagons.

Companion object for HegReg trait, contains HexRegImp implementation case for the general case of regular Hexagons.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
HexReg.type
trait Hexlign extends HexReg

A regular Hexagon aligned to the X and Y axes.

A regular Hexagon aligned to the X and Y axes.

Attributes

Supertypes
trait HexReg
trait Tell
trait Persist
trait Polygon6Plus
trait Polygon5Plus
trait Polygon4Plus
trait Polygon3Plus
trait Polygon
trait PolygonLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait Approx[Double]
trait Equals
trait ShapeCentred
trait CentredElem
trait WithCentre
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
class HexParrX
class HexParrY
class IntGeomImplicit(thisInt: Int)

Extension methods class for Int, for the geom package.

Extension methods class for Int, for the geom package.

Attributes

Supertypes
class Object
trait Matchable
class Any
final implicit class IterableExtensions[A](val thisIter: Iterable[A]) extends AnyVal

Attributes

Supertypes
class AnyVal
trait Matchable
class Any
case object LeftAlign extends TextAlign

Attributes

Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
trait TextAlign
class Object
trait Matchable
class Any
Show all
Self type
LeftAlign.type
case object LeftButton extends MouseButton

Indicates the left mouse button was pressed.

Indicates the left mouse button was pressed.

Attributes

Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class MouseButton
class Object
trait Matchable
class Any
Show all
Self type
LeftButton.type
sealed trait Line extends LineLike

An infinite length 2 dimensional straight line trait. Note this is the mathematical definition of a line. In SVG and other APIs the name line is used for a line segment, which in openstrat is called a LineSeg

An infinite length 2 dimensional straight line trait. Note this is the mathematical definition of a line. In SVG and other APIs the name line is used for a line segment, which in openstrat is called a LineSeg

Attributes

Supertypes
trait LineLike
trait GeomElem
class Object
trait Matchable
class Any
Known subtypes
class XLine
class XParallel
object XAxis
object YAxis
trait XorYAxis
class YLine
class YParallel
Show all
trait LineLike extends GeomElem

Common base trait for Line, LineSeg and Ray.

Common base trait for Line, LineSeg and Ray.

Attributes

Supertypes
trait GeomElem
class Object
trait Matchable
class Any
Known subtypes
trait Line
class XLine
class XParallel
object XAxis
object YAxis
trait XorYAxis
class YLine
class YParallel
class LineSeg
class Ray
Show all
final class LinePath(val arrayUnsafe: Array[Double]) extends AffinePreserve, Pt2SeqSpec, LinePathDbl2[Pt2]

Array[Double] based collection class for a LinePath. Conversion to and from the Vec2s class and Polygon class should not entail a runtime cost.

Array[Double] based collection class for a LinePath. Conversion to and from the Vec2s class and Polygon class should not entail a runtime cost.

Attributes

Companion
object
Supertypes
trait LinePathDbl2[Pt2]
trait LinePathDblN[Pt2]
trait LinePathLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait GeomElem
class Object
trait Matchable
class Any
Show all

Companion object for LinePath contains apply factory object and Persist type class instance.

Companion object for LinePath contains apply factory object and Persist type class instance.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
LinePath.type
trait LinePathBuilder[B, BB <: LinePathLike[B]] extends BuilderSeqLikeMap[B, BB]

A type class for the building of efficient compact Immutable Arrays. Instances for this type class for classes / traits you control should go in the companion object of B not the companion object of BB. This is different from the related ArrBinder[BB] type class where instance should go into the BB companion object. The type parameter is named B rather than A, because normally this will be found by an implicit in the context of a function from A => B or A => M[B]. The methods of this trait mutate and therefore must be used with care. Where ever possible they should not be used directly by end users.

A type class for the building of efficient compact Immutable Arrays. Instances for this type class for classes / traits you control should go in the companion object of B not the companion object of BB. This is different from the related ArrBinder[BB] type class where instance should go into the BB companion object. The type parameter is named B rather than A, because normally this will be found by an implicit in the context of a function from A => B or A => M[B]. The methods of this trait mutate and therefore must be used with care. Where ever possible they should not be used directly by end users.

Attributes

Supertypes
trait BuilderSeqLikeMap[B, BB]
trait BuilderSeqLike[BB]
trait BuilderCollMap[B, BB]
trait BuilderColl[BB]
class Object
trait Matchable
class Any
Show all
Known subtypes
trait LinePathBuilderValueN[B, BB]
trait LinePathIntNMapBuilder[B, BB]
trait LinePathInt2MapBuilder[B, BB]
trait LinePathMapBuilderDblN[B, BB]
trait LinePathDbl2Builder[B, BB]
trait LinePathDbl3MapBuilder[B, BB]
Show all

Trait for creating the line path builder instances for the LinePathBuilder type class, for classes / traits you control, should go in the companion object of B. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

Trait for creating the line path builder instances for the LinePathBuilder type class, for classes / traits you control, should go in the companion object of B. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

Attributes

Supertypes
trait LinePathBuilder[B, BB]
trait BuilderSeqLikeMap[B, BB]
trait BuilderSeqLike[BB]
trait BuilderCollMap[B, BB]
trait BuilderColl[BB]
class Object
trait Matchable
class Any
Show all
Known subtypes
trait LinePathDbl2[VT <: Dbl2Elem] extends LinePathDblN[VT], SeqSpecDbl2[VT]

Attributes

Supertypes
trait SeqSpecDbl2[VT]
trait SeqLikeDbl2[VT]
trait LinePathDblN[VT]
trait SeqSpecDblN[VT]
trait SeqSpecValueN[VT]
trait SeqLikeDblN[VT]
trait SpecialT
trait SeqLikeValueN[VT]
trait LinePathLike[VT]
trait SeqSpec[VT]
trait SeqLike[VT]
class Any
Show all
Known subtypes
class LinePathLL
class LinePath
class LinePathM2

Trait for creating the line path type class instances for LinePathDbl2 final classes. Instances for the LinePathDbl2Builder type class, for classes / traits you control, should go in the companion object of type B, which will extend Dbl2Elem. The first type parameter is called B, because it corresponds to the B in map[B](f: A => B)(implicit build: ArrTBuilder[B, ArrB]): ArrB function.

Trait for creating the line path type class instances for LinePathDbl2 final classes. Instances for the LinePathDbl2Builder type class, for classes / traits you control, should go in the companion object of type B, which will extend Dbl2Elem. The first type parameter is called B, because it corresponds to the B in map[B](f: A => B)(implicit build: ArrTBuilder[B, ArrB]): ArrB function.

Attributes

Supertypes
trait BuilderSeqLikeDbl2Map[B, BB]
trait BuilderSeqLikeDbl2[BB]
trait LinePathMapBuilderDblN[B, BB]
trait BuilderSeqLikeDblNMap[B, BB]
trait BuilderSeqLikeDblN[BB]
trait LinePathBuilderValueN[B, BB]
trait LinePathBuilder[B, BB]
trait BuilderSeqLikeMap[B, BB]
trait BuilderSeqLike[BB]
trait BuilderCollMap[B, BB]
trait BuilderColl[BB]
class Object
trait Matchable
class Any
Show all
trait LinePathDbl3[VT <: Dbl3Elem] extends LinePathDblN[VT], SeqSpecDbl3[VT]

Attributes

Supertypes
trait SeqSpecDbl3[VT]
trait SeqLikeDbl3[VT]
trait LinePathDblN[VT]
trait SeqSpecDblN[VT]
trait SeqSpecValueN[VT]
trait SeqLikeDblN[VT]
trait SpecialT
trait SeqLikeValueN[VT]
trait LinePathLike[VT]
trait SeqSpec[VT]
trait SeqLike[VT]
class Any
Show all
Known subtypes
class LinePathM3

Trait for creating the line path type class instances for LinePathDbl3 final classes. Instances for the LinePathDbl3MapBuilder type class, for classes / traits you control, should go in the companion object of type B, which will extend Dbl3Elem. The first type parameter is called B, because it corresponds to the B in map[B](f: A => B)(implicit build: ArrTBuilder[B, ArrB]): ArrB function.

Trait for creating the line path type class instances for LinePathDbl3 final classes. Instances for the LinePathDbl3MapBuilder type class, for classes / traits you control, should go in the companion object of type B, which will extend Dbl3Elem. The first type parameter is called B, because it corresponds to the B in map[B](f: A => B)(implicit build: ArrTBuilder[B, ArrB]): ArrB function.

Attributes

Supertypes
trait BuilderSeqLikeDbl3Map[B, BB]
trait BuilderSeqLikeDbl3[BB]
trait LinePathMapBuilderDblN[B, BB]
trait BuilderSeqLikeDblNMap[B, BB]
trait BuilderSeqLikeDblN[BB]
trait LinePathBuilderValueN[B, BB]
trait LinePathBuilder[B, BB]
trait BuilderSeqLikeMap[B, BB]
trait BuilderSeqLike[BB]
trait BuilderCollMap[B, BB]
trait BuilderColl[BB]
class Object
trait Matchable
class Any
Show all
trait LinePathDblN[VT <: DblNElem] extends LinePathLike[VT], SeqSpecDblN[VT]

Attributes

Supertypes
trait SeqSpecDblN[VT]
trait SeqSpecValueN[VT]
trait SeqLikeDblN[VT]
trait SpecialT
trait SeqLikeValueN[VT]
trait LinePathLike[VT]
trait SeqSpec[VT]
trait SeqLike[VT]
class Any
Show all
Known subtypes
trait LinePathDbl2[VT]
class LinePathLL
class LinePath
class LinePathM2
trait LinePathDbl3[VT]
class LinePathM3
Show all
case class LinePathDraw(path: LinePath, lineWidth: Double, colour: Colour) extends GraphicAffineElem, CanvElem

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait CanvElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
trait LinePathInt2[VT <: Int2Elem] extends LinePathIntN[VT], SeqSpecInt2[VT]

Attributes

Supertypes
trait SeqSpecInt2[VT]
trait SeqLikeInt2[VT]
trait LinePathIntN[VT]
trait SeqSpecIntN[VT]
trait SeqSpecValueN[VT]
trait SeqLikeIntN[VT]
trait SeqLikeValueN[VT]
trait LinePathLike[VT]
trait SeqSpec[VT]
trait SeqLike[VT]
class Any
Show all
Known subtypes
class LinePathHC

Trait for creating the line path type class instances for LinePathInt2 final classes. Instances for the LinePathInt2MapBuilder type class, for classes / traits you control, should go in the companion object of type B, which will extend Int2Elem. The first type parameter is called B, because it corresponds to the B in map[B](f: A => B)(implicit build: ArrTBuilder[B, ArrB]): ArrB function.

Trait for creating the line path type class instances for LinePathInt2 final classes. Instances for the LinePathInt2MapBuilder type class, for classes / traits you control, should go in the companion object of type B, which will extend Int2Elem. The first type parameter is called B, because it corresponds to the B in map[B](f: A => B)(implicit build: ArrTBuilder[B, ArrB]): ArrB function.

Attributes

Supertypes
trait BuilderSeqLikeInt2Map[B, BB]
trait BuilderSeqLikeInt2[BB]
trait LinePathIntNMapBuilder[B, BB]
trait BuilderSeqLikeIntNMap[B, BB]
trait BuilderSeqLikeIntN[BB]
trait LinePathBuilderValueN[B, BB]
trait LinePathBuilder[B, BB]
trait BuilderSeqLikeMap[B, BB]
trait BuilderSeqLike[BB]
trait BuilderCollMap[B, BB]
trait BuilderColl[BB]
class Object
trait Matchable
class Any
Show all
trait LinePathIntN[VT <: IntNElem] extends LinePathLike[VT], SeqSpecIntN[VT]

Attributes

Supertypes
trait SeqSpecIntN[VT]
trait SeqSpecValueN[VT]
trait SeqLikeIntN[VT]
trait SeqLikeValueN[VT]
trait LinePathLike[VT]
trait SeqSpec[VT]
trait SeqLike[VT]
class Any
Show all
Known subtypes
trait LinePathInt2[VT]
class LinePathHC

Trait for creating the builder type class instances for LinePathIntN final classes. Instances for the LinePathBuilder type class, for classes / traits you control, should go in the companion object of B. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

Trait for creating the builder type class instances for LinePathIntN final classes. Instances for the LinePathBuilder type class, for classes / traits you control, should go in the companion object of B. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

Attributes

Supertypes
trait BuilderSeqLikeIntNMap[B, BB]
trait BuilderSeqLikeIntN[BB]
trait LinePathBuilderValueN[B, BB]
trait LinePathBuilder[B, BB]
trait BuilderSeqLikeMap[B, BB]
trait BuilderSeqLike[BB]
trait BuilderCollMap[B, BB]
trait BuilderColl[BB]
class Object
trait Matchable
class Any
Show all
Known subtypes
trait LinePathInt2MapBuilder[B, BB]
trait LinePathLike[VT] extends SeqSpec[VT]

A generalisation of a line path where the type of the vertices is not restricted to Pt2.

A generalisation of a line path where the type of the vertices is not restricted to Pt2.

Attributes

Supertypes
trait SeqSpec[VT]
trait SeqLike[VT]
class Any
Known subtypes
trait LinePathDblN[VT]
trait LinePathDbl2[VT]
class LinePathLL
class LinePath
class LinePathM2
trait LinePathDbl3[VT]
class LinePathM3
trait LinePathIntN[VT]
trait LinePathInt2[VT]
class LinePathHC
Show all
final class LinePathM2(val arrayUnsafe: Array[Double]) extends AnyVal, LinePathDbl2[PtM2]

A quasi line path specified in 2D metre points. The points do not have to lie within the same plane. I'm not sure how useful this class will prove. It has been created for the intermediary step of converting from LinePathLLs to LinePathM2s on world maps.

A quasi line path specified in 2D metre points. The points do not have to lie within the same plane. I'm not sure how useful this class will prove. It has been created for the intermediary step of converting from LinePathLLs to LinePathM2s on world maps.

Attributes

Companion
object
Supertypes
trait SeqSpecDbl2[PtM2]
trait SeqLikeDbl2[PtM2]
trait SeqSpecDblN[PtM2]
trait SeqLikeDblN[PtM2]
trait SpecialT
trait SeqSpec[PtM2]
trait SeqLike[PtM2]
class AnyVal
trait Matchable
class Any
Show all

Companion object for LinePathM3s. Contains apply factory method fromArrayDbl and Persist Implicit.

Companion object for LinePathM3s. Contains apply factory method fromArrayDbl and Persist Implicit.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
LinePathM2.type
final class LinePathM3(val arrayUnsafe: Array[Double]) extends AnyVal, LinePathDbl3[PtM3]

A quasi line path specified in 3D metre points. The points do not have to lie within the same plane. I'm not sure how useful this class will prove. It has been created for the intermediary step of converting from LinePathLLs to LinePathM2s on world maps.

A quasi line path specified in 3D metre points. The points do not have to lie within the same plane. I'm not sure how useful this class will prove. It has been created for the intermediary step of converting from LinePathLLs to LinePathM2s on world maps.

Attributes

Companion
object
Supertypes
trait SeqSpecDbl3[PtM3]
trait SeqLikeDbl3[PtM3]
trait SeqSpecDblN[PtM3]
trait SeqLikeDblN[PtM3]
trait SpecialT
trait SeqSpec[PtM3]
trait SeqLike[PtM3]
class AnyVal
trait Matchable
class Any
Show all

Companion object for LinePathM3s. Contains apply factory method fromArrayDbl and Persist Implicit.

Companion object for LinePathM3s. Contains apply factory method fromArrayDbl and Persist Implicit.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
LinePathM3.type

Trait for creating the builder type class instances for LinePathDblN final classes. Instances for the LinePathBuilder type class, for classes / traits you control, should go in the companion object of B. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

Trait for creating the builder type class instances for LinePathDblN final classes. Instances for the LinePathBuilder type class, for classes / traits you control, should go in the companion object of B. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

Attributes

Supertypes
trait BuilderSeqLikeDblNMap[B, BB]
trait BuilderSeqLikeDblN[BB]
trait LinePathBuilderValueN[B, BB]
trait LinePathBuilder[B, BB]
trait BuilderSeqLikeMap[B, BB]
trait BuilderSeqLike[BB]
trait BuilderCollMap[B, BB]
trait BuilderColl[BB]
class Object
trait Matchable
class Any
Show all
Known subtypes
trait LinePathDbl2Builder[B, BB]
trait LinePathDbl3MapBuilder[B, BB]
final class LineSeg(val startX: Double, val startY: Double, val endX: Double, val endY: Double) extends LineSegLikeDbl4[Pt2], LineLike, CurveSeg, Tell2[Pt2, Pt2], AffinePreserve, BoundedElem

Straight line segment. A straight line in every day terminology. Mathematically: 2 dimensional directed, line segment. The name was chosen to avoid ambiguity.

Straight line segment. A straight line in every day terminology. Mathematically: 2 dimensional directed, line segment. The name was chosen to avoid ambiguity.

Attributes

Companion
object
Supertypes
trait BoundedElem
trait Tell2[Pt2, Pt2]
trait Persist2[Pt2, Pt2]
trait Tell2Plused[Pt2, Pt2]
trait Persist2Plus[Pt2, Pt2]
trait Persist1Plus[Pt2]
trait PersistN
trait TellN
trait Tell
trait Persist
trait CurveSeg
trait Drawable
trait LineLike
trait GeomElem
trait Dbl4Elem
trait DblNElem
trait LineSegLike[Pt2]
trait ValueNElem
trait SpecialT
class Object
trait Matchable
class Any
Show all
object LineSeg

Companion object for the LineSeg class. Contains factory apply methods and implicit instances for LineSegs.

Companion object for the LineSeg class. Contains factory apply methods and implicit instances for LineSegs.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
LineSeg.type
final class LineSeg3(val dbl1: Double, val dbl2: Double, val dbl3: Double, val dbl4: Double, val dbl5: Double, val dbl6: Double) extends LineSegLikeDbl6[Pt3]

A 3 dimensional line segment. A straight line between two points in a 3d space.

A 3 dimensional line segment. A straight line between two points in a 3d space.

Attributes

Companion
object
Supertypes
trait Dbl6Elem
trait DblNElem
trait LineSegLike[Pt3]
trait ValueNElem
trait SpecialT
class Object
trait Matchable
class Any
Show all
object LineSeg3

Companion object for LineSeg3 contains factory apply methods.

Companion object for LineSeg3 contains factory apply methods.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
LineSeg3.type
final class LineSegArr(val arrayUnsafe: Array[Double]) extends AnyVal, LineSegLikeDbl4Arr[Pt2, LineSeg], Dbl4Arr[LineSeg], AffinePreserve, Drawable, BoundedElem

Compact immutable Array[Double] based collection class for LineSegs. LineSeg is the library's term for a mathematical straight line segment, but what in common parlance is often just referred to as a line.

Compact immutable Array[Double] based collection class for LineSegs. LineSeg is the library's term for a mathematical straight line segment, but what in common parlance is often just referred to as a line.

Attributes

Companion
object
Supertypes
trait BoundedElem
trait Drawable
trait GeomElem
trait Dbl4Arr[LineSeg]
trait ArrDblN[LineSeg]
trait SpecialT
trait Arr[LineSeg]
trait Sequ[LineSeg]
trait SeqLike[LineSeg]
class AnyVal
trait Matchable
class Any
Show all

Companion object for the LineSegs class.

Companion object for the LineSegs class.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
LineSegArr.type

Attributes

Supertypes
class Object
trait Matchable
class Any
Show all
Known subtypes
final class LineSegBuff(val unsafeBuffer: ArrayBuffer[Double]) extends AnyVal, BuffDbl4[LineSeg]

Efficient expandable buffer for Line2s.

Efficient expandable buffer for Line2s.

Attributes

Companion
object
Supertypes
trait BuffDbl4[LineSeg]
trait BuffDblN[LineSeg]
trait BuffSequ[LineSeg]
trait Sequ[LineSeg]
trait SeqLike[LineSeg]
class AnyVal
trait Matchable
class Any
Show all
object LineSegBuff

Companion object for LineSegBuff trait, contains factory apply method.

Companion object for LineSegBuff trait, contains factory apply method.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Supertypes
class Object
trait Matchable
class Any

To be removed.

To be removed.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
case class LineSegDraw(curveSeg: LineSeg, width: Double, colour: Colour) extends CurveSegGraphic, AffinePreserve, CanvElem, GraphicSvgElem

A Graphic for a straight line. It is defined by its start and end points, the line width or thickness and the colour of the line.

A Graphic for a straight line. It is defined by its start and end points, the line width or thickness and the colour of the line.

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
trait CanvElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
object LineSegDraw

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
trait LineSegLike[VT] extends ValueNElem

A class that is like a LineSeg, includes LineSeg and LineSegM2. The trait takes the type parameter of the vertex.

A class that is like a LineSeg, includes LineSeg and LineSegM2. The trait takes the type parameter of the vertex.

Attributes

Supertypes
trait ValueNElem
trait SpecialT
class Object
trait Matchable
class Any
Known subtypes
trait LineSegLikeDblN[VT]
trait LineSegLikeDbl4[VT]
class LineSegLL
class LineSeg
class LineSegM2
trait LineSegLikeDbl6[VT]
class LineSeg3
trait LineSegLikeIntN[VT]
trait LineSegLikeInt4[VT]
class LineSegHC
class LineSegSC
trait LineSegLikeInt6[VT]
class LineSegM3
Show all
trait LineSegLikeArr[VT, A <: LineSegLike[VT]] extends Arr[A]

Attributes

Supertypes
trait Arr[A]
trait Sequ[A]
trait SeqLike[A]
class Any
Known subtypes
trait LineSegLikeDblNArr[VT, A]
trait LineSegLikeDbl4Arr[VT, A]
class LineSegLLArr
class LineSegArr
trait LineSegLikeDbl6Arr[VT, A]
trait LineSegLikeBuff[VT, B <: LineSegLike[VT]]

Attributes

Supertypes
class Any
trait LineSegLikeDbl4[VT <: Dbl2Elem] extends LineSegLikeDblN[VT], Dbl4Elem

A line segment where the start and end points are defined in Dbl2Elem vertices. Theis will be the case for the classic 2D space line segment a 2D line segment specified in metres and a line segment specified in latitude and longitude.

A line segment where the start and end points are defined in Dbl2Elem vertices. Theis will be the case for the classic 2D space line segment a 2D line segment specified in metres and a line segment specified in latitude and longitude.

Attributes

Supertypes
trait Dbl4Elem
trait LineSegLikeDblN[VT]
trait DblNElem
trait LineSegLike[VT]
trait ValueNElem
trait SpecialT
class Object
trait Matchable
class Any
Show all
Known subtypes
class LineSegLL
class LineSeg
class LineSegM2
trait LineSegLikeDbl4Arr[VT <: Dbl2Elem, A <: LineSegLikeDbl4[VT]] extends LineSegLikeDblNArr[VT, A], Dbl4Arr[A]

Attributes

Supertypes
trait Dbl4Arr[A]
trait SeqLikeDbl4[A]
trait LineSegLikeDblNArr[VT, A]
trait ArrDblN[A]
trait ArrValueN[A]
trait ArrNoParam[A]
trait SeqLikeDblN[A]
trait SpecialT
trait SeqLikeValueN[A]
trait LineSegLikeArr[VT, A]
trait Arr[A]
trait Sequ[A]
trait SeqLike[A]
class Any
Show all
Known subtypes
class LineSegLLArr
class LineSegArr
trait LineSegLikeDbl4Pair[VT <: Dbl2Elem, A1 <: LineSegLikeDbl4[VT], A2] extends LineSegLikeDblNPair[VT, A1, A2], PairDbl4Elem[A1, A2]

Attributes

Supertypes
trait PairDbl4Elem[A1, A2]
trait LineSegLikeDblNPair[VT, A1, A2]
trait PairDblNElem[A1, A2]
trait LineSegLikePair[VT, A1, A2]
trait PairFinalA1Elem[A1, A2]
trait PairElem[A1, A2]
class Object
trait Matchable
class Any
Show all
Known subtypes
class LineSegPair[A2]
trait LineSegLikeDbl4PairArr[VT <: Dbl2Elem, A1 <: LineSegLikeDbl4[VT], ArrA1 <: Dbl4Arr[A1], A2, A <: LineSegLikeDbl4Pair[VT, A1, A2]] extends LineSegLikeDblNPairArr[VT, A1, ArrA1, A2, A], ArrPairDbl4[A1, ArrA1, A2, A]

Attributes

Supertypes
trait ArrPairDbl4[A1, ArrA1, A2, A]
trait LineSegLikeDblNPairArr[VT, A1, ArrA1, A2, A]
trait ArrPairDblN[A1, ArrA1, A2, A]
trait LineSegLikePairArr[VT, A1, ArrA1, A2, A]
trait PairArrFinalA1[A1, ArrA1, A2, A]
trait ArrPair[A1, ArrA1, A2, A]
trait Arr[A]
trait Sequ[A]
trait SeqLike[A]
class Object
trait Matchable
class Any
Show all
Known subtypes
class LineSegPairArr[A2]
trait LineSegLikeDbl6[VT <: Dbl3Elem] extends LineSegLikeDblN[VT], Dbl6Elem

A line segment where the start and end points are defined in Dbl3Elem vertices. Theis will be the case for 3D space line segment and 3D line segment specified in metres.

A line segment where the start and end points are defined in Dbl3Elem vertices. Theis will be the case for 3D space line segment and 3D line segment specified in metres.

Attributes

Supertypes
trait Dbl6Elem
trait LineSegLikeDblN[VT]
trait DblNElem
trait LineSegLike[VT]
trait ValueNElem
trait SpecialT
class Object
trait Matchable
class Any
Show all
Known subtypes
class LineSeg3
trait LineSegLikeDbl6Arr[VT <: Dbl3Elem, A <: LineSegLikeDbl6[VT]] extends LineSegLikeDblNArr[VT, A], ArrDbl6[A]

Attributes

Supertypes
trait ArrDbl6[A]
trait SeqLikeDbl6[A]
trait LineSegLikeDblNArr[VT, A]
trait ArrDblN[A]
trait ArrValueN[A]
trait ArrNoParam[A]
trait SeqLikeDblN[A]
trait SpecialT
trait SeqLikeValueN[A]
trait LineSegLikeArr[VT, A]
trait Arr[A]
trait Sequ[A]
trait SeqLike[A]
class Any
Show all
trait LineSegLikeDblN[VT <: DblNElem] extends LineSegLike[VT], DblNElem

A line segment where the start and end points are defined in DblNElem vertices.

A line segment where the start and end points are defined in DblNElem vertices.

Attributes

Supertypes
trait DblNElem
trait LineSegLike[VT]
trait ValueNElem
trait SpecialT
class Object
trait Matchable
class Any
Show all
Known subtypes
trait LineSegLikeDbl4[VT]
class LineSegLL
class LineSeg
class LineSegM2
trait LineSegLikeDbl6[VT]
class LineSeg3
Show all
trait LineSegLikeDblNArr[VT <: DblNElem, A <: LineSegLikeDblN[VT]] extends LineSegLikeArr[VT, A], ArrDblN[A]

Attributes

Supertypes
trait ArrDblN[A]
trait ArrValueN[A]
trait ArrNoParam[A]
trait SeqLikeDblN[A]
trait SpecialT
trait SeqLikeValueN[A]
trait LineSegLikeArr[VT, A]
trait Arr[A]
trait Sequ[A]
trait SeqLike[A]
class Any
Show all
Known subtypes
trait LineSegLikeDbl4Arr[VT, A]
class LineSegLLArr
class LineSegArr
trait LineSegLikeDbl6Arr[VT, A]
trait LineSegLikeDblNPair[VT <: DblNElem, A1 <: LineSegLikeDblN[VT], A2] extends LineSegLikePair[VT, A1, A2], PairDblNElem[A1, A2]

Attributes

Supertypes
trait PairDblNElem[A1, A2]
trait LineSegLikePair[VT, A1, A2]
trait PairFinalA1Elem[A1, A2]
trait PairElem[A1, A2]
class Object
trait Matchable
class Any
Show all
Known subtypes
trait LineSegLikeDbl4Pair[VT, A1, A2]
class LineSegPair[A2]
trait LineSegLikeDblNPairArr[VT <: DblNElem, A1 <: LineSegLikeDblN[VT], ArrA1 <: ArrDblN[A1], A2, A <: LineSegLikeDblNPair[VT, A1, A2]] extends LineSegLikePairArr[VT, A1, ArrA1, A2, A], ArrPairDblN[A1, ArrA1, A2, A]

Attributes

Supertypes
trait ArrPairDblN[A1, ArrA1, A2, A]
trait LineSegLikePairArr[VT, A1, ArrA1, A2, A]
trait PairArrFinalA1[A1, ArrA1, A2, A]
trait ArrPair[A1, ArrA1, A2, A]
trait Arr[A]
trait Sequ[A]
trait SeqLike[A]
class Object
trait Matchable
class Any
Show all
Known subtypes
trait LineSegLikeDbl4PairArr[VT, A1, ArrA1, A2, A]
class LineSegPairArr[A2]
trait LineSegLikeInt4[VT <: Int2Elem] extends LineSegLikeIntN[VT], Int4Elem

Attributes

Supertypes
trait Int4Elem
trait LineSegLikeIntN[VT]
trait IntNElem
trait LineSegLike[VT]
trait ValueNElem
trait SpecialT
class Object
trait Matchable
class Any
Show all
Known subtypes
class LineSegHC
class LineSegSC
trait LineSegLikeInt4Pair[VT <: Int2Elem, A1 <: LineSegLikeInt4[VT], A2] extends LineSegLikeIntNPair[VT, A1, A2], PairInt4Elem[A1, A2]

Attributes

Supertypes
trait PairInt4Elem[A1, A2]
trait LineSegLikeIntNPair[VT, A1, A2]
trait PairIntNElem[A1, A2]
trait LineSegLikePair[VT, A1, A2]
trait PairFinalA1Elem[A1, A2]
trait PairElem[A1, A2]
class Object
trait Matchable
class Any
Show all
Known subtypes
class LineSegHCPair[A2]
class LineSegSCPair[A2]
trait LineSegLikeInt4PairArr[VT <: Int2Elem, A1 <: LineSegLikeInt4[VT], ArrA1 <: ArrInt4[A1], A2, A <: LineSegLikeInt4Pair[VT, A1, A2]] extends LineSegLikeIntNPairArr[VT, A1, ArrA1, A2, A], ArrPairInt4[A1, ArrA1, A2, A]

Attributes

Supertypes
trait ArrPairInt4[A1, ArrA1, A2, A]
trait LineSegLikeIntNPairArr[VT, A1, ArrA1, A2, A]
trait ArrPairIntN[A1, ArrA1, A2, A]
trait LineSegLikePairArr[VT, A1, ArrA1, A2, A]
trait PairArrFinalA1[A1, ArrA1, A2, A]
trait ArrPair[A1, ArrA1, A2, A]
trait Arr[A]
trait Sequ[A]
trait SeqLike[A]
class Object
trait Matchable
class Any
Show all
Known subtypes
class LineSegHCPairArr[A2]
class LineSegSCPairArr[A2]
trait LineSegLikeInt6[VT <: Int3Elem] extends LineSegLikeIntN[VT], Int6Elem

Attributes

Supertypes
trait Int6Elem
trait LineSegLikeIntN[VT]
trait IntNElem
trait LineSegLike[VT]
trait ValueNElem
trait SpecialT
class Object
trait Matchable
class Any
Show all
Known subtypes
trait LineSegLikeIntN[VT <: IntNElem] extends LineSegLike[VT], IntNElem

Attributes

Supertypes
trait IntNElem
trait LineSegLike[VT]
trait ValueNElem
trait SpecialT
class Object
trait Matchable
class Any
Show all
Known subtypes
trait LineSegLikeInt4[VT]
class LineSegHC
class LineSegSC
trait LineSegLikeInt6[VT]
trait LineSegLikeIntNPair[VT <: IntNElem, A1 <: LineSegLikeIntN[VT], A2] extends LineSegLikePair[VT, A1, A2], PairIntNElem[A1, A2]

Attributes

Supertypes
trait PairIntNElem[A1, A2]
trait LineSegLikePair[VT, A1, A2]
trait PairFinalA1Elem[A1, A2]
trait PairElem[A1, A2]
class Object
trait Matchable
class Any
Show all
Known subtypes
trait LineSegLikeInt4Pair[VT, A1, A2]
class LineSegHCPair[A2]
class LineSegSCPair[A2]
trait LineSegLikeIntNPairArr[VT <: IntNElem, A1 <: LineSegLikeIntN[VT], ArrA1 <: ArrIntN[A1], A2, A <: LineSegLikeIntNPair[VT, A1, A2]] extends LineSegLikePairArr[VT, A1, ArrA1, A2, A], ArrPairIntN[A1, ArrA1, A2, A]

Attributes

Supertypes
trait ArrPairIntN[A1, ArrA1, A2, A]
trait LineSegLikePairArr[VT, A1, ArrA1, A2, A]
trait PairArrFinalA1[A1, ArrA1, A2, A]
trait ArrPair[A1, ArrA1, A2, A]
trait Arr[A]
trait Sequ[A]
trait SeqLike[A]
class Object
trait Matchable
class Any
Show all
Known subtypes
trait LineSegLikeInt4PairArr[VT, A1, ArrA1, A2, A]
class LineSegHCPairArr[A2]
class LineSegSCPairArr[A2]
trait LineSegLikeMapBuilder[VT, ST <: LineSegLike[VT]]

Builder for LineSegLike map operations. Note this is a builder for LineSegLike not a LineSegLikeArr so unlike most builders it does not inherit from BuilderSeqLike.

Builder for LineSegLike map operations. Note this is a builder for LineSegLike not a LineSegLikeArr so unlike most builders it does not inherit from BuilderSeqLike.

Attributes

Supertypes
class Object
trait Matchable
class Any
trait LineSegLikePair[VT, A1 <: LineSegLike[VT], A2] extends PairFinalA1Elem[A1, A2]

A LineSegLike object paired with an object of type A2.]]

A LineSegLike object paired with an object of type A2.]]

Attributes

Supertypes
trait PairFinalA1Elem[A1, A2]
trait PairElem[A1, A2]
class Object
trait Matchable
class Any
Known subtypes
trait LineSegLikeDblNPair[VT, A1, A2]
trait LineSegLikeDbl4Pair[VT, A1, A2]
class LineSegPair[A2]
trait LineSegLikeIntNPair[VT, A1, A2]
trait LineSegLikeInt4Pair[VT, A1, A2]
class LineSegHCPair[A2]
class LineSegSCPair[A2]
Show all
trait LineSegLikePairArr[VT, A1 <: LineSegLike[VT], ArrA1 <: Arr[A1], A2, A <: LineSegLikePair[VT, A1, A2]] extends PairArrFinalA1[A1, ArrA1, A2, A]

An Arr of LineSegLikePairs stored efficiently allowing maping between different LineSegLike types while keeping the A2 values unchanged.

An Arr of LineSegLikePairs stored efficiently allowing maping between different LineSegLike types while keeping the A2 values unchanged.

Attributes

Supertypes
trait PairArrFinalA1[A1, ArrA1, A2, A]
trait ArrPair[A1, ArrA1, A2, A]
trait Arr[A]
trait Sequ[A]
trait SeqLike[A]
class Object
trait Matchable
class Any
Show all
Known subtypes
trait LineSegLikeDblNPairArr[VT, A1, ArrA1, A2, A]
trait LineSegLikeDbl4PairArr[VT, A1, ArrA1, A2, A]
class LineSegPairArr[A2]
trait LineSegLikeIntNPairArr[VT, A1, ArrA1, A2, A]
trait LineSegLikeInt4PairArr[VT, A1, ArrA1, A2, A]
class LineSegHCPairArr[A2]
class LineSegSCPairArr[A2]
Show all
trait LineSegLikePairArrBuilder[B1V, B1 <: LineSegLike[B1V], ArrB1 <: Arr[B1], B2, B <: LineSegLikePair[B1V, B1, B2], ArrB <: LineSegLikePairArr[B1V, B1, ArrB1, B2, B]] extends BuilderArrPairMap[B1, ArrB1, B2, B, ArrB]

Attributes

Supertypes
trait BuilderArrPairMap[B1, ArrB1, B2, B, ArrB]
trait BuilderArrMap[B, ArrB]
trait BuilderSeqLikeMap[B, ArrB]
trait BuilderCollMap[B, ArrB]
trait BuilderArrPair[B1, ArrB1, B2, ArrB]
trait BuilderSeqLike[ArrB]
trait BuilderColl[ArrB]
class Object
trait Matchable
class Any
Show all
trait LineSegLikePairBuff[VT, B1 <: LineSegLike[VT], B2, B <: LineSegLikePair[VT, B1, B2]] extends BuffPair[B1, B2, B]

Attributes

Supertypes
trait BuffPair[B1, B2, B]
trait BuffSequ[B]
trait Sequ[B]
trait SeqLike[B]
class Object
trait Matchable
class Any
Show all
class LineSegM2(xStartMetres: Double, yStartMetres: Double, xEndMetres: Double, yEndMetres: Double) extends LineSegLikeDbl4[PtM2], Dbl4Elem

A 2 dimensional line segment measured in metres, equivalent of the LineSeg class. A straight line between two points on a 2 dimensional flat surface.

A 2 dimensional line segment measured in metres, equivalent of the LineSeg class. A straight line between two points on a 2 dimensional flat surface.

Attributes

Companion
object
Supertypes
trait Dbl4Elem
trait DblNElem
trait LineSegLike[PtM2]
trait ValueNElem
trait SpecialT
class Object
trait Matchable
class Any
Show all
object LineSegM2

Companion object for line segments in a 2 dimensional space measured in metres. Conatains an apply method, an implicit ArrMap builder instance and an extension method.

Companion object for line segments in a 2 dimensional space measured in metres. Conatains an apply method, an implicit ArrMap builder instance and an extension method.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
LineSegM2.type
class LineSegM2Arr(val arrayUnsafe: Array[Double]) extends Dbl4Arr[LineSegM2]

Compact immutable Array[Double] based collection class for LineSegM2s. A mathematical straight line segment measured in metres.

Compact immutable Array[Double] based collection class for LineSegM2s. A mathematical straight line segment measured in metres.

Attributes

Companion
object
Supertypes
trait Arr[LineSegM2]
trait Sequ[LineSegM2]
trait SpecialT
class Object
trait Matchable
class Any
Show all

Companion object for the LineSegM2s class.

Companion object for the LineSegM2s class.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
final class LineSegM2Buff(val unsafeBuffer: ArrayBuffer[Double]) extends AnyVal, BuffDbl4[LineSegM2]

Efficient expandable buffer for LineSegM2s.

Efficient expandable buffer for LineSegM2s.

Attributes

Supertypes
trait Sequ[LineSegM2]
class AnyVal
trait Matchable
class Any
Show all
class LineSegM3(xStartMs: Double, yStartMs: Double, zStartMs: Double, xEndMs: Double, yEndMs: Double, zEndMs: Double) extends LineSegLike[PtM3], Dbl6Elem

A line segment in 3 dimensional space specified in metres. A straight line between two points in 3D.

A line segment in 3 dimensional space specified in metres. A straight line between two points in 3D.

Attributes

Companion
object
Supertypes
trait Dbl6Elem
trait DblNElem
trait LineSegLike[PtM3]
trait ValueNElem
trait SpecialT
class Object
trait Matchable
class Any
Show all
object LineSegM3

Companion object for LineSegM3 trait contains apply factory method.

Companion object for LineSegM3 trait contains apply factory method.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
LineSegM3.type
class LineSegM3Arr(val arrayUnsafe: Array[Double]) extends ArrDbl6[LineSegM3]

Compact immutable Array[Double] based collection class for LineSegs. LineSeg is the library's term for a mathematical straight line segment, but what in common parlance is often just referred to as a line.

Compact immutable Array[Double] based collection class for LineSegs. LineSeg is the library's term for a mathematical straight line segment, but what in common parlance is often just referred to as a line.

Attributes

Companion
object
Supertypes
trait Arr[LineSegM3]
trait Sequ[LineSegM3]
trait SpecialT
class Object
trait Matchable
class Any
Show all

Companion object for the LineSegM3s class.

Companion object for the LineSegM3s class.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
final class LineSegM3Buff(val unsafeBuffer: ArrayBuffer[Double]) extends AnyVal, BuffDbl6[LineSegM3]

Efficient expandable buffer for LineSegM3s.

Efficient expandable buffer for LineSegM3s.

Attributes

Supertypes
trait Sequ[LineSegM3]
class AnyVal
trait Matchable
class Any
Show all
class LineSegPair[A2](val a1Dbl1: Double, val a1Dbl2: Double, val a1Dbl3: Double, val a1Dbl4: Double, val a2: A2) extends LineSegLikeDbl4Pair[Pt2, LineSeg, A2]

Attributes

Companion
object
Supertypes
trait PairDbl4Elem[LineSeg, A2]
trait PairDblNElem[LineSeg, A2]
trait PairElem[LineSeg, A2]
class Object
trait Matchable
class Any
Show all
object LineSegPair

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
final class LineSegPairArr[A2](val a1ArrayDbl: Array[Double], val a2Array: Array[A2]) extends LineSegLikeDbl4PairArr[Pt2, LineSeg, LineSegArr, A2, LineSegPair[A2]]

Attributes

Companion
object
Supertypes
trait Arr[LineSegPair[A2]]
trait Sequ[LineSegPair[A2]]
trait SeqLike[LineSegPair[A2]]
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Supertypes
class Object
trait Matchable
class Any
Show all
Known subtypes
class LineSegPairBuff[B2](val b1DblBuffer: ArrayBuffer[Double], val b2Buffer: ArrayBuffer[B2]) extends BuffPairDbl4[LineSeg, B2, LineSegPair[B2]]

Attributes

Supertypes
trait BuffPairDbl4[LineSeg, B2, LineSegPair[B2]]
trait BuffPairDblN[LineSeg, B2, LineSegPair[B2]]
trait BuffPair[LineSeg, B2, LineSegPair[B2]]
trait BuffSequ[LineSegPair[B2]]
trait Sequ[LineSegPair[B2]]
trait SeqLike[LineSegPair[B2]]
class Object
trait Matchable
class Any
Show all
object LineTail

This provides factory methods to create a 2 dimensional headless line segment. There is no independent LineTail class. This is one of 3 factory objects to CurveTail.

This provides factory methods to create a 2 dimensional headless line segment. There is no independent LineTail class. This is one of 3 factory objects to CurveTail.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
LineTail.type
case class LinesDraw(lines: LineSegArr, lineWidth: Double, colour: Colour) extends GraphicAffineElem, CanvElem, BoundedElem

I think its to better to use the mame lineWidth consistently.

I think its to better to use the mame lineWidth consistently.

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
trait BoundedElem
trait CanvElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
object LinesDraw

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
LinesDraw.type
implicit class MetreExtensionsImplicit(thisMetres: Length)

Attributes

Supertypes
class Object
trait Matchable
class Any
case object MiddleButton extends MouseButton

Indicates the middel mouse button was pressed.

Indicates the middel mouse button was pressed.

Attributes

Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class MouseButton
class Object
trait Matchable
class Any
Show all
Self type
sealed class MouseButton

A mouse button, used to return events from a graphical user interface.

A mouse button, used to return events from a graphical user interface.

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
object BackButton
object ForwardButton
object LeftButton
object MiddleButton
object NoButton
object RightButton
object UnknownButton
Show all
case object MultipleButton extends MouseButton

MultipleButton is needed for completeness for mouse events in js when the Event is NOT instigated by a mouse button.

MultipleButton is needed for completeness for mouse events in js when the Event is NOT instigated by a mouse button.

Attributes

Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class MouseButton
class Object
trait Matchable
class Any
Show all
Self type
object NoBounds extends Rect

Attributes

Supertypes
trait Rect
trait Rectangle
trait Polygon4Plus
trait Polygon3Plus
trait Polygon
trait PolygonLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait Approx[Double]
trait Equals
trait ShapeCentred
trait CentredElem
trait WithCentre
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
Show all
Self type
NoBounds.type
case object NoButton extends MouseButton

Indicates no mouse button was pressed.

Indicates no mouse button was pressed.

Attributes

Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class MouseButton
class Object
trait Matchable
class Any
Show all
Self type
NoButton.type
trait NoCanvElem extends GraphicElem

A graphic element GraphicElem that is not one of the standard canvas elements CanvElem, it must provide a conversion into those standard elements.

A graphic element GraphicElem that is not one of the standard canvas elements CanvElem, it must provide a conversion into those standard elements.

Attributes

Supertypes
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Known subtypes

This is an object where the boundary points for top left, top right, bottom right and bottom left are defined. This trait is used by some geometric elements as well as pCanv.CanvasPlatform and pCanv.Panel.

This is an object where the boundary points for top left, top right, bottom right and bottom left are defined. This trait is used by some geometric elements as well as pCanv.CanvasPlatform and pCanv.Panel.

Attributes

Supertypes
trait WithCentre
class Object
trait Matchable
class Any
Known subtypes
class Circle
trait RectGraphic
trait RectCompound
object GridGraphic1
trait RectDraw
class RectDrawImp
trait RectFill
class RectFillImp
trait Rect
object NoBounds
class PhiRect
class PhiRectY
class RectImp
class Sqlign
trait RectCenlign
class CanvasFx
trait PanelLike
class BlackJackGui
class BattleGui
class FlagsGui
class ReactorGUI
class ColourGen
class TessGui
class CArcExs
class Canv
class HelloWorld
class LsAEllipses
class LsAText
class LsB1
class LsB2
class LsB3
class LsC1
class LsC2
class LsC3
class LsC3b
class LsC4
class LsC5
class LsC6
class LsC7
class LsC8
class LsD1
class LsD2
class LsD3
class LsD4
class LsD5
class Panel
Show all

A 2D geometric element where the Ordinal edge points, the cardinal edge points and the centre are defined.

A 2D geometric element where the Ordinal edge points, the cardinal edge points and the centre are defined.

Attributes

Supertypes
trait CentredElem
trait WithCentre
trait BoundedElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
class Circle
trait RectGraphic
trait RectCompound
object GridGraphic1
trait RectDraw
class RectDrawImp
trait RectFill
class RectFillImp
trait Rect
object NoBounds
class PhiRect
class PhiRectY
class RectImp
class Sqlign
Show all
class OrdinaledExtensions[A <: OrdinaledElem](thisA: A)(implicit ev: Slate[A])

Extension class for OrdinaledElems.

Extension class for OrdinaledElems.

Attributes

Supertypes
class Object
trait Matchable
class Any
object Pentagram

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
Pentagram.type
class PhiRect(val arrayUnsafe: Array[Double]) extends Rect, PhiRectangle

Attributes

Companion
object
Supertypes
trait PhiRectangle
trait Rect
trait Rectangle
trait Polygon4Plus
trait Polygon3Plus
trait Polygon
trait PolygonLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait Approx[Double]
trait Equals
trait ShapeCentred
trait CentredElem
trait WithCentre
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
Show all
object PhiRect

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
PhiRect.type
final class PhiRectY(val arrayUnsafe: Array[Double]) extends Rect, PhiRectangle

Not sure what this class is.

Not sure what this class is.

Attributes

Companion
object
Supertypes
trait PhiRectangle
trait Rect
trait Rectangle
trait Polygon4Plus
trait Polygon3Plus
trait Polygon
trait PolygonLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait Approx[Double]
trait Equals
trait ShapeCentred
trait CentredElem
trait WithCentre
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
Show all
object PhiRectY

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
PhiRectY.type
trait PhiRectangle extends Rectangle

Golden rectangle, a rectangle whose side lengths are in the golden ratio, 1 : 1 + 5 2 {\displaystyle 1:{\tfrac {1+{\sqrt {5 }}} {2 }}} 1:{\tfrac {1+{\sqrt {5 }}} {2}}, which is 1 : φ {\displaystyle 1:\varphi } 1:\varphi (the Greek letter phi), where φ {\displaystyle \varphi } \varphi is approximately 1.618. Golden rectangles exhibit a special form of self-similarity: All rectangles created by adding or removing a square are Golden rectangles as well. A method to construct a golden rectangle. Owing to the Pythagorean theorem,[a] the diagonal dividing one half of a square equals the radius of a circle whose outermost point is also the corner of a golden rectangle added to the square.

Golden rectangle, a rectangle whose side lengths are in the golden ratio, 1 : 1 + 5 2 {\displaystyle 1:{\tfrac {1+{\sqrt {5 }}} {2 }}} 1:{\tfrac {1+{\sqrt {5 }}} {2}}, which is 1 : φ {\displaystyle 1:\varphi } 1:\varphi (the Greek letter phi), where φ {\displaystyle \varphi } \varphi is approximately 1.618. Golden rectangles exhibit a special form of self-similarity: All rectangles created by adding or removing a square are Golden rectangles as well. A method to construct a golden rectangle. Owing to the Pythagorean theorem,[a] the diagonal dividing one half of a square equals the radius of a circle whose outermost point is also the corner of a golden rectangle added to the square.

Attributes

Companion
object
Supertypes
trait Rectangle
trait Polygon4Plus
trait Polygon3Plus
trait Polygon
trait PolygonLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait Approx[Double]
trait Equals
trait ShapeCentred
trait CentredElem
trait WithCentre
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
class PhiRect
class PhiRectY
object PhiRectangle

Companion object for the PhiRectangle trait. It contains the PhiRectangle.PhiRectangleImp implementation class an apply factory method that delegates to it.

Companion object for the PhiRectangle trait. It contains the PhiRectangle.PhiRectangleImp implementation class an apply factory method that delegates to it.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
trait Point

A point in a space. So Pt2s are points in 2D space. Pt3s are points in 3D space. LatLongs are points in a 2D curved space.

A point in a space. So Pt2s are points in 2D space. Pt3s are points in 3D space. LatLongs are points in a 2D curved space.

Attributes

Supertypes
class Any
Known subtypes
trait PointDblN
trait PointDbl2
class LatLong
class Pt2
class PtM2
trait PointDbl3
class Pt3
class PtM3
trait TCoord
trait HCoord
trait HNotVert
trait HCenOrSep
class HCen
trait HSep
class HSepA
class HSepB
class HSepC
class HCoordOther
trait HVert
class HVertHigh
class HVertLow
trait SqCoord
trait SqCenOrSep
class SqCen
class SqSep
class SqVert
trait TCenOrSep
trait TCen
trait TSep
trait TVert
Show all
trait PointDbl2 extends PointDblN, Dbl2Elem

Attributes

Supertypes
trait Dbl2Elem
trait PointDblN
trait DblNElem
trait ValueNElem
trait SpecialT
trait Point
class Any
Show all
Known subtypes
class LatLong
class Pt2
class PtM2
trait PointDbl2Pair[A1 <: PointDbl2, A2] extends PointDblNPair[A1, A2], PairDbl2Elem[A1, A2]

Attributes

Supertypes
trait PairDbl2Elem[A1, A2]
trait PointDblNPair[A1, A2]
trait PairDblNElem[A1, A2]
trait PointPair[A1, A2]
trait PairFinalA1Elem[A1, A2]
trait PairElem[A1, A2]
class Object
trait Matchable
class Any
Show all
Known subtypes
class LatLongPair[A2]
class LocationLL
class Pt2Pair[A2]
trait PointDbl2PairArr[A1 <: PointDbl2, ArrA1 <: ArrDbl2[A1], A2, A <: PointDbl2Pair[A1, A2]] extends PointDblNPairArr[A1, ArrA1, A2, A], PairArrPairDbl2[A1, ArrA1, A2, A]

Attributes

Supertypes
trait PairArrPairDbl2[A1, ArrA1, A2, A]
trait PointDblNPairArr[A1, ArrA1, A2, A]
trait ArrPairDblN[A1, ArrA1, A2, A]
trait PointPairArr[A1, ArrA1, A2, A]
trait PairArrFinalA1[A1, ArrA1, A2, A]
trait ArrPair[A1, ArrA1, A2, A]
trait Arr[A]
trait Sequ[A]
trait SeqLike[A]
class Object
trait Matchable
class Any
Show all
Known subtypes
class LatLongPairArr[A2]
class Pt2PairArr[A2]
trait PointDbl2SeqLike[PT <: PointDbl2] extends PointDblNSeqLike[PT]

Attributes

Supertypes
trait PointDblNSeqLike[PT]
trait PointSeqLike[PT]
trait SeqLike[PT]
class Any
Known subtypes
trait Pt2SeqLike
class PolygonGen
class Pt2Arr
trait Pt2SeqSpec
class LinePath
trait Polygon
trait Polygon3Plus
trait Polygon4Plus
trait Polygon5Plus
trait Polygon6Plus
class DoDeclign
trait HexReg
class HexRegImp
trait Hexlign
class HexParrX
class HexParrY
trait Rectangle
trait PhiRectangle
class PhiRect
class PhiRectY
trait Rect
object NoBounds
class RectImp
class Sqlign
class RectangleImp
trait Square
class SquareImp
trait Triangle
class TriangleImp
trait TriangleIsos
class TriangleEqui
Show all
trait PointDbl3 extends PointDblN, Dbl3Elem

Attributes

Supertypes
trait Dbl3Elem
trait PointDblN
trait DblNElem
trait ValueNElem
trait SpecialT
trait Point
class Any
Show all
Known subtypes
class Pt3
class PtM3
trait PointDbl3Pair[A1 <: PointDbl3, A2] extends PointDblNPair[A1, A2], PairDbl3Elem[A1, A2]

Attributes

Supertypes
trait PairDbl3Elem[A1, A2]
trait PointDblNPair[A1, A2]
trait PairDblNElem[A1, A2]
trait PointPair[A1, A2]
trait PairFinalA1Elem[A1, A2]
trait PairElem[A1, A2]
class Object
trait Matchable
class Any
Show all
Known subtypes
class PtM3Pair[A2]
trait PointDbl3PairArr[A1 <: PointDbl3, ArrA1 <: ArrDbl3[A1], A2, A <: PointDbl3Pair[A1, A2]] extends PointDblNPairArr[A1, ArrA1, A2, A], ArrPairDbl3[A1, ArrA1, A2, A]

Attributes

Supertypes
trait ArrPairDbl3[A1, ArrA1, A2, A]
trait PointDblNPairArr[A1, ArrA1, A2, A]
trait ArrPairDblN[A1, ArrA1, A2, A]
trait PointPairArr[A1, ArrA1, A2, A]
trait PairArrFinalA1[A1, ArrA1, A2, A]
trait ArrPair[A1, ArrA1, A2, A]
trait Arr[A]
trait Sequ[A]
trait SeqLike[A]
class Object
trait Matchable
class Any
Show all
Known subtypes
class PtM3PairArr[A2]
trait PointDblN extends Point, DblNElem

Attributes

Supertypes
trait DblNElem
trait ValueNElem
trait SpecialT
trait Point
class Any
Known subtypes
trait PointDbl2
class LatLong
class Pt2
class PtM2
trait PointDbl3
class Pt3
class PtM3
Show all
trait PointDblNPair[A1 <: PointDblN, A2] extends PointPair[A1, A2], PairDblNElem[A1, A2]

Attributes

Supertypes
trait PairDblNElem[A1, A2]
trait PointPair[A1, A2]
trait PairFinalA1Elem[A1, A2]
trait PairElem[A1, A2]
class Object
trait Matchable
class Any
Show all
Known subtypes
trait PointDbl2Pair[A1, A2]
class LatLongPair[A2]
class LocationLL
class Pt2Pair[A2]
trait PointDbl3Pair[A1, A2]
class PtM3Pair[A2]
Show all
trait PointDblNPairArr[A1 <: PointDblN, ArrA1 <: ArrDblN[A1], A2, A <: PointDblNPair[A1, A2]] extends PointPairArr[A1, ArrA1, A2, A], ArrPairDblN[A1, ArrA1, A2, A]

Attributes

Supertypes
trait ArrPairDblN[A1, ArrA1, A2, A]
trait PointPairArr[A1, ArrA1, A2, A]
trait PairArrFinalA1[A1, ArrA1, A2, A]
trait ArrPair[A1, ArrA1, A2, A]
trait Arr[A]
trait Sequ[A]
trait SeqLike[A]
class Object
trait Matchable
class Any
Show all
Known subtypes
trait PointDbl2PairArr[A1, ArrA1, A2, A]
class LatLongPairArr[A2]
class Pt2PairArr[A2]
trait PointDbl3PairArr[A1, ArrA1, A2, A]
class PtM3PairArr[A2]
Show all
trait PointDblNSeqLike[PT <: PointDblN] extends PointSeqLike[PT]

Attributes

Supertypes
trait PointSeqLike[PT]
trait SeqLike[PT]
class Any
Known subtypes
trait PointDbl2SeqLike[PT]
trait Pt2SeqLike
class PolygonGen
class Pt2Arr
trait Pt2SeqSpec
class LinePath
trait Polygon
trait Polygon3Plus
trait Polygon4Plus
trait Polygon5Plus
trait Polygon6Plus
class DoDeclign
trait HexReg
class HexRegImp
trait Hexlign
class HexParrX
class HexParrY
trait Rectangle
trait PhiRectangle
class PhiRect
class PhiRectY
trait Rect
object NoBounds
class RectImp
class Sqlign
class RectangleImp
trait Square
class SquareImp
trait Triangle
class TriangleImp
trait TriangleIsos
class TriangleEqui
Show all
trait PointPair[A1 <: Point, A2] extends PairFinalA1Elem[A1, A2]

Attributes

Supertypes
trait PairFinalA1Elem[A1, A2]
trait PairElem[A1, A2]
class Object
trait Matchable
class Any
Known subtypes
trait PointDblNPair[A1, A2]
trait PointDbl2Pair[A1, A2]
class LatLongPair[A2]
class LocationLL
class Pt2Pair[A2]
trait PointDbl3Pair[A1, A2]
class PtM3Pair[A2]
Show all
trait PointPairArr[A1 <: Point, ArrA1 <: Arr[A1], A2, A <: PointPair[A1, A2]] extends PairArrFinalA1[A1, ArrA1, A2, A]

Attributes

Supertypes
trait PairArrFinalA1[A1, ArrA1, A2, A]
trait ArrPair[A1, ArrA1, A2, A]
trait Arr[A]
trait Sequ[A]
trait SeqLike[A]
class Object
trait Matchable
class Any
Show all
Known subtypes
trait PointDblNPairArr[A1, ArrA1, A2, A]
trait PointDbl2PairArr[A1, ArrA1, A2, A]
class LatLongPairArr[A2]
class Pt2PairArr[A2]
trait PointDbl3PairArr[A1, ArrA1, A2, A]
class PtM3PairArr[A2]
Show all
trait PointSeqLike[PT <: Point] extends SeqLike[PT]

Attributes

Supertypes
trait SeqLike[PT]
class Any
Known subtypes
trait PointDblNSeqLike[PT]
trait PointDbl2SeqLike[PT]
trait Pt2SeqLike
class PolygonGen
class Pt2Arr
trait Pt2SeqSpec
class LinePath
trait Polygon
trait Polygon3Plus
trait Polygon4Plus
trait Polygon5Plus
trait Polygon6Plus
class DoDeclign
trait HexReg
class HexRegImp
trait Hexlign
class HexParrX
class HexParrY
trait Rectangle
trait PhiRectangle
class PhiRect
class PhiRectY
trait Rect
object NoBounds
class RectImp
class Sqlign
class RectangleImp
trait Square
class SquareImp
trait Triangle
class TriangleImp
trait TriangleIsos
class TriangleEqui
Show all

A pointable shape

A pointable shape

Attributes

Supertypes
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
case class PolyCurveAllOld(shape: ShapeGenOld, pointerId: AnyRef, str: String, fillColour: Colour, fontSize: Int, lineColour: Colour, lineWidth: Double) extends PolyCurveElem, PolyCurveActive

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
case class PolyCurveCentred(cen: Pt2, segs: ShapeGenOld) extends AffinePreserve

So there is a lack of clarity over whether the segs are relative to the cen, and if the cen is needed at all.

So there is a lack of clarity over whether the segs are relative to the cen, and if the cen is needed at all.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait GeomElem
class Object
trait Matchable
class Any
Show all
case class PolyCurveDraw(shape: ShapeGenOld, colour: Colour, lineWidth: Double) extends PolyCurveElem

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all

Attributes

Supertypes
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
case class PolyCurveFill(shape: ShapeGenOld, colour: Colour) extends PolyCurveElem

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
case class PolyCurveFillDraw(shape: ShapeGenOld, fillColour: Colour, lineColour: Colour, lineWidth: Double) extends PolyCurveElem

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
case class PolyCurveFillDrawText(shape: ShapeGenOld, fillColour: Colour, str: String, fontSize: Int, lineColour: Colour, lineWidth: Double) extends PolyCurveElem

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
case class PolyCurveParentFull(cen: Pt2, shape: ShapeGenOld, pointerId: AnyRef, children: RArr[GraphicAffineElem]) extends GraphicParentFull, PolyCurveActive

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type

A mathematical closed polygon. The general case can be instantiated with PolygonGen, but it provides the interface for particular sub sets of polygons such as triangles and square. Mathematically a closed polygon made up of straight line segments. The default convention is to number the vertices in a clockwise direction, with vertex 1 the first vertex that is clockwise from 12 O'Clock. Sides are numbered in a corresponding manner with then end point of side n sdn at vertex n.

A mathematical closed polygon. The general case can be instantiated with PolygonGen, but it provides the interface for particular sub sets of polygons such as triangles and square. Mathematically a closed polygon made up of straight line segments. The default convention is to number the vertices in a clockwise direction, with vertex 1 the first vertex that is clockwise from 12 O'Clock. Sides are numbered in a corresponding manner with then end point of side n sdn at vertex n.

Attributes

Companion
object
Supertypes
trait PolygonLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait Approx[Double]
trait Equals
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Any
Show all
Known subtypes
trait Polygon3Plus
trait Polygon4Plus
trait Polygon5Plus
trait Polygon6Plus
class DoDeclign
trait HexReg
class HexRegImp
trait Hexlign
class HexParrX
class HexParrY
trait Rectangle
trait PhiRectangle
class PhiRect
class PhiRectY
trait Rect
object NoBounds
class RectImp
class Sqlign
class RectangleImp
trait Square
class SquareImp
trait Triangle
class TriangleImp
trait TriangleIsos
class TriangleEqui
class PolygonGen
Show all
object Polygon

Companion object for the Polygon trait, contains factory apply methods and implicit instances for all 2D affine geometric transformations.

Companion object for the Polygon trait, contains factory apply methods and implicit instances for all 2D affine geometric transformations.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
Polygon.type
trait Polygon3Plus extends Polygon

A Polygon with at least 3 vertices. The PolygonNPlus traits include values for the vertices and the x and y components of the vertices. The X and Y components are included because Graphics implementation APIs use them.

A Polygon with at least 3 vertices. The PolygonNPlus traits include values for the vertices and the x and y components of the vertices. The X and Y components are included because Graphics implementation APIs use them.

Attributes

Supertypes
trait Polygon
trait PolygonLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait Approx[Double]
trait Equals
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Any
Show all
Known subtypes
trait Polygon4Plus
trait Polygon5Plus
trait Polygon6Plus
class DoDeclign
trait HexReg
class HexRegImp
trait Hexlign
class HexParrX
class HexParrY
trait Rectangle
trait PhiRectangle
class PhiRect
class PhiRectY
trait Rect
object NoBounds
class RectImp
class Sqlign
class RectangleImp
trait Square
class SquareImp
trait Triangle
class TriangleImp
trait TriangleIsos
class TriangleEqui
Show all

A Polygon with at least 4 vertices.

A Polygon with at least 4 vertices.

Attributes

Supertypes
trait Polygon3Plus
trait Polygon
trait PolygonLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait Approx[Double]
trait Equals
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Any
Show all
Known subtypes
trait Polygon5Plus
trait Polygon6Plus
class DoDeclign
trait HexReg
class HexRegImp
trait Hexlign
class HexParrX
class HexParrY
trait Rectangle
trait PhiRectangle
class PhiRect
class PhiRectY
trait Rect
object NoBounds
class RectImp
class Sqlign
class RectangleImp
trait Square
class SquareImp
Show all

A Polygon with at least 5 vertices.

A Polygon with at least 5 vertices.

Attributes

Supertypes
trait Polygon4Plus
trait Polygon3Plus
trait Polygon
trait PolygonLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait Approx[Double]
trait Equals
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Any
Show all
Known subtypes
trait Polygon6Plus
class DoDeclign
trait HexReg
class HexRegImp
trait Hexlign
class HexParrX
class HexParrY
Show all
trait Polygon6Plus extends Polygon5Plus

A Polygon with at least 6 vertices.

A Polygon with at least 6 vertices.

Attributes

Supertypes
trait Polygon5Plus
trait Polygon4Plus
trait Polygon3Plus
trait Polygon
trait PolygonLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait Approx[Double]
trait Equals
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Any
Show all
Known subtypes
class DoDeclign
trait HexReg
class HexRegImp
trait Hexlign
class HexParrX
class HexParrY
Show all
case class PolygonActive(shape: Polygon, pointerId: Any) extends GraphicAffineElem, GraphicClickable, PolygonGraphicSimple

A pointable polygon without visual.

A pointable polygon without visual.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all

A compound polygon based Graphic. May contain multiple facets and child graphic members.

A compound polygon based Graphic. May contain multiple facets and child graphic members.

Attributes

Companion
object
Supertypes
trait NoCanvElem
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes

Companion object for the PolygonCompound trait contains factory apply method and implicit instances for the 2D geometric transformation type classes.

Companion object for the PolygonCompound trait contains factory apply method and implicit instances for the 2D geometric transformation type classes.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

Trait for creating the line path type class instances for PolygonLikeDbl2 final classes. Instances for the PolygonDbl2MapBuilder type class, for classes / traits you control, should go in the companion object of type B, which will extend Dbl2Elem. The first type parameter is called B, because it corresponds to the B in map[B](f: A => B)(implicit build: ArrTBuilder[B, ArrB]): ArrB function.

Trait for creating the line path type class instances for PolygonLikeDbl2 final classes. Instances for the PolygonDbl2MapBuilder type class, for classes / traits you control, should go in the companion object of type B, which will extend Dbl2Elem. The first type parameter is called B, because it corresponds to the B in map[B](f: A => B)(implicit build: ArrTBuilder[B, ArrB]): ArrB function.

Attributes

Supertypes
trait BuilderSeqLikeDbl2Map[B, BB]
trait BuilderSeqLikeDblNMap[B, BB]
trait BuilderSeqLikeDbl2[BB]
trait PolygonDblNMapBuilder[B, BB]
trait BuilderSeqLikeDblN[BB]
trait PolygonLikeMapBuilder[B, BB]
trait BuilderSeqLikeMap[B, BB]
trait BuilderSeqLike[BB]
trait BuilderCollMap[B, BB]
trait BuilderColl[BB]
class Object
trait Matchable
class Any
Show all

Trait for creating the line path type class instances for PolygonLikeDbl3 final classes. Instances for the PolygonDbl3MapBuilder type class, for classes / traits you control, should go in the companion object of type B, which will extend Dbl3Elem. The first type parameter is called B, because it corresponds to the B in map[B](f: A => B)(implicit build: ArrTBuilder[B, ArrB]): ArrB function.

Trait for creating the line path type class instances for PolygonLikeDbl3 final classes. Instances for the PolygonDbl3MapBuilder type class, for classes / traits you control, should go in the companion object of type B, which will extend Dbl3Elem. The first type parameter is called B, because it corresponds to the B in map[B](f: A => B)(implicit build: ArrTBuilder[B, ArrB]): ArrB function.

Attributes

Supertypes
trait BuilderSeqLikeDbl3Map[B, BB]
trait BuilderSeqLikeDblNMap[B, BB]
trait BuilderSeqLikeDbl3[BB]
trait PolygonDblNMapBuilder[B, BB]
trait BuilderSeqLikeDblN[BB]
trait PolygonLikeMapBuilder[B, BB]
trait BuilderSeqLikeMap[B, BB]
trait BuilderSeqLike[BB]
trait BuilderCollMap[B, BB]
trait BuilderColl[BB]
class Object
trait Matchable
class Any
Show all

Trait for creating the builder type class instances for PolygonLikeDblN final classes. Instances for the PolygonLikeMapBuilder type class, for classes / traits you control, should go in the companion object of B. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

Trait for creating the builder type class instances for PolygonLikeDblN final classes. Instances for the PolygonLikeMapBuilder type class, for classes / traits you control, should go in the companion object of B. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

Attributes

Supertypes
trait BuilderSeqLikeDblN[BB]
trait PolygonLikeMapBuilder[B, BB]
trait BuilderSeqLikeMap[B, BB]
trait BuilderSeqLike[BB]
trait BuilderCollMap[B, BB]
trait BuilderColl[BB]
class Object
trait Matchable
class Any
Show all
Known subtypes
trait PolygonDbl2MapBuilder[B, BB]
trait PolygonDbl3MapBuilder[B, BB]

Immutable Graphic element that defines and draws a Polygon.

Immutable Graphic element that defines and draws a Polygon.

Attributes

Companion
object
Supertypes
trait CanvElem
trait ShapeDraw
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
object PolygonDraw

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

Immutable Graphic element that defines and fills a Polygon. This element can be trnsformed through all the Affine transformations and a PolygonFill will be returned.

Immutable Graphic element that defines and fills a Polygon. This element can be trnsformed through all the Affine transformations and a PolygonFill will be returned.

Attributes

Companion
object
Supertypes
trait CanvElem
trait ShapeFill
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
trait RectFill
class RectFillImp
class TriangleFill
Show all
object PolygonFill

Companion object for PolygonFill trait. Contains an implementation class PolygonFillImp, a factory method returning the PolygonFill type and implicit instances for the 2D geometric transformation type classes.

Companion object for PolygonFill trait. Contains an implementation class PolygonFillImp, a factory method returning the PolygonFill type and implicit instances for the 2D geometric transformation type classes.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
final class PolygonGen(val arrayUnsafe: Array[Double]) extends Polygon, Pt2SeqLike, AffinePreserve, SeqSpecDbl2[Pt2]

The implementation class for a general Polygon as opposed to a specific Polygon such as a Square or a Rectangle, is encoded as a sequence of plain 2 dimension (mathematical) vectors. Minimum length 3. Clockwise is the default. Polygon may be altered to include a centre.

The implementation class for a general Polygon as opposed to a specific Polygon such as a Square or a Rectangle, is encoded as a sequence of plain 2 dimension (mathematical) vectors. Minimum length 3. Clockwise is the default. Polygon may be altered to include a centre.

Attributes

Companion
object
Supertypes
trait Polygon
trait PolygonLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait Approx[Double]
trait Equals
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
Show all

Companion object for PolygonGen.

Companion object for PolygonGen.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
PolygonGen.type
final class PolygonGenArr(val unsafeArrayOfArrays: Array[Array[Double]]) extends AnyVal, ArrArrayDbl[PolygonGen]

Specialised Array based immutable collection class for Polygons.

Specialised Array based immutable collection class for Polygons.

Attributes

Companion
object
Supertypes
trait Arr[PolygonGen]
trait Sequ[PolygonGen]
class AnyVal
trait Matchable
class Any
Show all
object PolygonGenArr

Companion object for the PolygonGenArr class.

Companion object for the PolygonGenArr class.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
final class PolygonGenBuff(val unsafeBuffer: ArrayBuffer[Array[Double]]) extends AnyVal, BuffArrayDbl[PolygonGen]

Attributes

Companion
object
Supertypes
trait Sequ[PolygonGen]
class AnyVal
trait Matchable
class Any
Show all

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
final class PolygonGenPair[A2](val a1ArrayDbl: Array[Double], val a2: A2) extends PolygonLikeDbl2Pair[Pt2, PolygonGen, A2]

PairElem where the first component of the pair is a PolygonGen.

PairElem where the first component of the pair is a PolygonGen.

Attributes

Companion
object
Supertypes
trait SpecialT
trait PairElem[PolygonGen, A2]
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
class PolygonGenPairBuff[A2](val b1Buffer: ArrayBuffer[Array[Double]], val b2Buffer: ArrayBuffer[A2]) extends SeqLikeDblNPairBuff[Pt2, PolygonGen, A2, PolygonGenPair[A2]]

Attributes

Companion
object
Supertypes
trait Sequ[PolygonGenPair[A2]]
trait SeqLike[PolygonGenPair[A2]]
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type

A Polygon based graphic. If you just want a general polygon as opposed to specifically specified Polygons such as Rectangle, Square or Triangle use the implementation class PolygonCompound.

A Polygon based graphic. If you just want a general polygon as opposed to specifically specified Polygons such as Rectangle, Square or Triangle use the implementation class PolygonCompound.

Attributes

Companion
object
Supertypes
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes

Companion object for Polygon Graphic, contains implicit instances for the 2D geometric transformations.

Companion object for Polygon Graphic, contains implicit instances for the 2D geometric transformations.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

This trait may be removed.

This trait may be removed.

Attributes

Companion
object
Supertypes
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes

Companion object for the PolygonGraphicSimple trait, contains implicit instances for the 2D geometric transformation classes.

Companion object for the PolygonGraphicSimple trait, contains implicit instances for the 2D geometric transformation classes.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

Trait for creating the line path type class instances for PolygonLikeInt2 final classes. Instances for the PolygonInt2MapBuilder type class, for classes / traits you control, should go in the companion object of type B, which will extend Int2Elem. The first type parameter is called B, because it corresponds to the B in map[B](f: A => B)(implicit build: ArrTBuilder[B, ArrB]): ArrB function.

Trait for creating the line path type class instances for PolygonLikeInt2 final classes. Instances for the PolygonInt2MapBuilder type class, for classes / traits you control, should go in the companion object of type B, which will extend Int2Elem. The first type parameter is called B, because it corresponds to the B in map[B](f: A => B)(implicit build: ArrTBuilder[B, ArrB]): ArrB function.

Attributes

Supertypes
trait BuilderSeqLikeInt2Map[B, BB]
trait BuilderSeqLikeInt2[BB]
trait PolygonIntNMapBuilder[B, BB]
trait BuilderSeqLikeIntNMap[B, BB]
trait BuilderSeqLikeIntN[BB]
trait PolygonLikeMapBuilder[B, BB]
trait BuilderSeqLikeMap[B, BB]
trait BuilderSeqLike[BB]
trait BuilderCollMap[B, BB]
trait BuilderColl[BB]
class Object
trait Matchable
class Any
Show all

Attributes

Supertypes
trait BuilderSeqLikeInt3[BB]
trait PolygonIntNFlatBuilder[VT, BB]
trait BuilderSeqLikeIntN[BB]
trait PolygonValueNFlatBuilder[VT, BB]
trait PolygonLikeFlatBuilder[VT, BB]
trait BuilderSeqLikeFlat[BB]
trait BuilderSeqLike[BB]
trait BuilderColl[BB]
class Object
trait Matchable
class Any
Show all
Known subtypes

Trait for creating the line path type class instances for PolygonLikeInt3 final classes. Instances for the PolygonInt3MapBuilder type class, for classes / traits you control, should go in the companion object of type B, which will extend Int2Elem. The first type parameter is called B, because it corresponds to the B in map[B](f: A => B)(implicit build: ArrTBuilder[B, ArrB]): ArrB function.

Trait for creating the line path type class instances for PolygonLikeInt3 final classes. Instances for the PolygonInt3MapBuilder type class, for classes / traits you control, should go in the companion object of type B, which will extend Int2Elem. The first type parameter is called B, because it corresponds to the B in map[B](f: A => B)(implicit build: ArrTBuilder[B, ArrB]): ArrB function.

Attributes

Supertypes
trait BuilderSeqLikeInt3Map[B, BB]
trait BuilderSeqLikeInt3[BB]
trait PolygonIntNMapBuilder[B, BB]
trait BuilderSeqLikeIntNMap[B, BB]
trait BuilderSeqLikeIntN[BB]
trait PolygonLikeMapBuilder[B, BB]
trait BuilderSeqLikeMap[B, BB]
trait BuilderSeqLike[BB]
trait BuilderCollMap[B, BB]
trait BuilderColl[BB]
class Object
trait Matchable
class Any
Show all
Known subtypes

Attributes

Supertypes
trait BuilderSeqLikeIntN[BB]
trait PolygonValueNFlatBuilder[VT, BB]
trait PolygonLikeFlatBuilder[VT, BB]
trait BuilderSeqLikeFlat[BB]
trait BuilderSeqLike[BB]
trait BuilderColl[BB]
class Object
trait Matchable
class Any
Show all
Known subtypes

Trait for creating the builder type class instances for PolygonLikeDblN final classes. Instances for the PolygonLikeMapBuilder type class, for classes / traits you control, should go in the companion object of B. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

Trait for creating the builder type class instances for PolygonLikeDblN final classes. Instances for the PolygonLikeMapBuilder type class, for classes / traits you control, should go in the companion object of B. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

Attributes

Supertypes
trait BuilderSeqLikeIntNMap[B, BB]
trait BuilderSeqLikeIntN[BB]
trait PolygonLikeMapBuilder[B, BB]
trait BuilderSeqLikeMap[B, BB]
trait BuilderSeqLike[BB]
trait BuilderCollMap[B, BB]
trait BuilderColl[BB]
class Object
trait Matchable
class Any
Show all
Known subtypes
trait PolygonIntsLikePairArrBuilder[B1V <: IntNElem, B1 <: PolygonLikeIntN[B1V], ArrB1 <: Arr[B1], A2, B <: PolygonLikeIntNPair[B1V, B1, A2], ArrB <: PolygonLikeIntNPairArr[B1V, B1, ArrB1, A2, B]] extends PolygonLikePairArrBuilder[B1V, B1, ArrB1, A2, B, ArrB]

Attributes

Supertypes
trait PolygonLikePairArrBuilder[B1V, B1, ArrB1, A2, B, ArrB]
trait SeqLikePairArrBuilder[B1V, B1, ArrB1, A2, B, ArrB]
trait BuilderArrPairMap[B1, ArrB1, A2, B, ArrB]
trait BuilderArrMap[B, ArrB]
trait BuilderSeqLikeMap[B, ArrB]
trait BuilderCollMap[B, ArrB]
trait BuilderArrPair[B1, ArrB1, A2, ArrB]
trait BuilderSeqLike[ArrB]
trait BuilderColl[ArrB]
class Object
trait Matchable
class Any
Show all
trait PolygonLike[VT] extends SeqSpec[VT]

A Polygon like object, where the points dimensions could be specified in 2D or 3D Length, latitude and longitude etc as well as the regular scalar values of the standard Polygon.

A Polygon like object, where the points dimensions could be specified in 2D or 3D Length, latitude and longitude etc as well as the regular scalar values of the standard Polygon.

Type parameters

VT

The type of the vertices in this polygon like trait. For a standard Polygon this will be a Pt2, but for example for a PolygonM3 it would be a PtM3.

Attributes

Supertypes
trait SeqSpec[VT]
trait SeqLike[VT]
class Any
Known subtypes
trait PolygonValueN[VT]
trait PolygonLikeDblN[VT]
trait PolygonLikeDbl2[VT]
class PolygonLL
trait Polygon
trait Polygon3Plus
trait Polygon4Plus
trait Polygon5Plus
trait Polygon6Plus
class DoDeclign
trait HexReg
class HexRegImp
trait Hexlign
class HexParrX
class HexParrY
trait Rectangle
trait PhiRectangle
class PhiRect
class PhiRectY
trait Rect
object NoBounds
class RectImp
class Sqlign
class RectangleImp
trait Square
class SquareImp
trait Triangle
class TriangleImp
trait TriangleIsos
class TriangleEqui
class PolygonGen
class PolygonM2
trait PolygonLikeDbl3[VT]
class PolygonM3
trait PolygonLikeIntN[VT]
trait PolygonLikeInt2[VT]
class PolygonHC
class PolygonSqC
trait PolygonLikeInt3[VT]
Show all
trait PolygonLikeDbl2[VT <: Dbl2Elem] extends PolygonLikeDblN[VT], SeqSpecDbl2[VT]

A polygon whose elements are defined by 2 Doubles.

A polygon whose elements are defined by 2 Doubles.

Attributes

Supertypes
trait SeqSpecDbl2[VT]
trait SeqLikeDbl2[VT]
trait PolygonLikeDblN[VT]
trait SeqSpecDblN[VT]
trait SeqLikeDblN[VT]
trait SpecialT
trait PolygonValueN[VT]
trait SeqSpecValueN[VT]
trait SeqLikeValueN[VT]
trait PolygonLike[VT]
trait SeqSpec[VT]
trait SeqLike[VT]
class Any
Show all
Known subtypes
class PolygonLL
trait Polygon
trait Polygon3Plus
trait Polygon4Plus
trait Polygon5Plus
trait Polygon6Plus
class DoDeclign
trait HexReg
class HexRegImp
trait Hexlign
class HexParrX
class HexParrY
trait Rectangle
trait PhiRectangle
class PhiRect
class PhiRectY
trait Rect
object NoBounds
class RectImp
class Sqlign
class RectangleImp
trait Square
class SquareImp
trait Triangle
class TriangleImp
trait TriangleIsos
class TriangleEqui
class PolygonGen
class PolygonM2
Show all
trait PolygonLikeDbl2Pair[A1V <: Dbl2Elem, A1 <: PolygonLikeDbl2[A1V], A2] extends PolygonLikeDblNPair[A1V, A1, A2]

Attributes

Supertypes
trait PolygonLikeDblNPair[A1V, A1, A2]
trait SeqLikeDblNPairElem[A1V, A1, A2]
trait PolygonLikePair[A1V, A1, A2]
trait SeqLikePairElem[A1V, A1, A2]
trait SpecialT
trait PairFinalA1Elem[A1, A2]
trait PairElem[A1, A2]
class Object
trait Matchable
class Any
Show all
Known subtypes
class PolygonGenPair[A2]
class PolygonM2Pair[A2]
trait PolygonLikeDbl2PairArr[A1V <: Dbl2Elem, A1 <: PolygonLikeDbl2[A1V], ArrA1 <: Arr[A1], A2, A <: PolygonLikeDbl2Pair[A1V, A1, A2]] extends PolygonLikeDblNPairArr[A1V, A1, ArrA1, A2, A]

Attributes

Supertypes
trait PolygonLikeDblNPairArr[A1V, A1, ArrA1, A2, A]
trait SeqLikeDblNPairArr[A1V, A1, ArrA1, A2, A]
trait PolygonLikePairArr[A1V, A1, ArrA1, A2, A]
trait SeqLikePairArr[A1V, A1, ArrA1, A2, A]
trait PairArrFinalA1[A1, ArrA1, A2, A]
trait ArrPair[A1, ArrA1, A2, A]
trait Arr[A]
trait Sequ[A]
trait SeqLike[A]
class Object
trait Matchable
class Any
Show all
Known subtypes
class PolygonGenPairArr[A2]
class PolygonM2PairArr[A2]
trait PolygonLikeDbl3[VT <: Dbl3Elem] extends PolygonLikeDblN[VT], SeqSpecDbl3[VT]

A polygon whose elements are defined by 3 Doubles.

A polygon whose elements are defined by 3 Doubles.

Attributes

Supertypes
trait SeqSpecDbl3[VT]
trait SeqLikeDbl3[VT]
trait PolygonLikeDblN[VT]
trait SeqSpecDblN[VT]
trait SeqLikeDblN[VT]
trait SpecialT
trait PolygonValueN[VT]
trait SeqSpecValueN[VT]
trait SeqLikeValueN[VT]
trait PolygonLike[VT]
trait SeqSpec[VT]
trait SeqLike[VT]
class Any
Show all
Known subtypes
class PolygonM3
trait PolygonLikeDblN[VT <: DblNElem] extends PolygonValueN[VT], SeqSpecDblN[VT]

A polygon whose elements are defined by Doubles.

A polygon whose elements are defined by Doubles.

Attributes

Supertypes
trait SeqSpecDblN[VT]
trait SeqLikeDblN[VT]
trait SpecialT
trait PolygonValueN[VT]
trait SeqSpecValueN[VT]
trait SeqLikeValueN[VT]
trait PolygonLike[VT]
trait SeqSpec[VT]
trait SeqLike[VT]
class Any
Show all
Known subtypes
trait PolygonLikeDbl2[VT]
class PolygonLL
trait Polygon
trait Polygon3Plus
trait Polygon4Plus
trait Polygon5Plus
trait Polygon6Plus
class DoDeclign
trait HexReg
class HexRegImp
trait Hexlign
class HexParrX
class HexParrY
trait Rectangle
trait PhiRectangle
class PhiRect
class PhiRectY
trait Rect
object NoBounds
class RectImp
class Sqlign
class RectangleImp
trait Square
class SquareImp
trait Triangle
class TriangleImp
trait TriangleIsos
class TriangleEqui
class PolygonGen
class PolygonM2
trait PolygonLikeDbl3[VT]
class PolygonM3
Show all
trait PolygonLikeDblNPair[A1V <: DblNElem, A1 <: PolygonLikeDblN[A1V], A2] extends PolygonLikePair[A1V, A1, A2], SeqLikeDblNPairElem[A1V, A1, A2]

Attributes

Supertypes
trait SeqLikeDblNPairElem[A1V, A1, A2]
trait PolygonLikePair[A1V, A1, A2]
trait SeqLikePairElem[A1V, A1, A2]
trait SpecialT
trait PairFinalA1Elem[A1, A2]
trait PairElem[A1, A2]
class Object
trait Matchable
class Any
Show all
Known subtypes
class PolygonLLPair[A2]
trait PolygonLikeDbl2Pair[A1V, A1, A2]
class PolygonGenPair[A2]
class PolygonM2Pair[A2]
class PolygonM3Pair[A2]
trait PolygonLikeDblNPairArr[A1V <: DblNElem, A1 <: PolygonLikeDblN[A1V], ArrA1 <: Arr[A1], A2, A <: PolygonLikeDblNPair[A1V, A1, A2]] extends PolygonLikePairArr[A1V, A1, ArrA1, A2, A], SeqLikeDblNPairArr[A1V, A1, ArrA1, A2, A]

Attributes

Supertypes
trait SeqLikeDblNPairArr[A1V, A1, ArrA1, A2, A]
trait PolygonLikePairArr[A1V, A1, ArrA1, A2, A]
trait SeqLikePairArr[A1V, A1, ArrA1, A2, A]
trait PairArrFinalA1[A1, ArrA1, A2, A]
trait ArrPair[A1, ArrA1, A2, A]
trait Arr[A]
trait Sequ[A]
trait SeqLike[A]
class Object
trait Matchable
class Any
Show all
Known subtypes
class PolygonLLPairArr[A2]
trait PolygonLikeDbl2PairArr[A1V, A1, ArrA1, A2, A]
class PolygonGenPairArr[A2]
class PolygonM2PairArr[A2]
class PolygonM3PairArr[A2]
trait PolygonLikeDblNPairArrBuilder[B1V <: DblNElem, B1 <: PolygonLikeDblN[B1V], ArrB1 <: Arr[B1], A2, B <: PolygonLikeDblNPair[B1V, B1, A2], ArrB <: PolygonLikeDblNPairArr[B1V, B1, ArrB1, A2, B]] extends PolygonLikePairArrBuilder[B1V, B1, ArrB1, A2, B, ArrB], SeqLikeDblNPairArrBuilder[B1V, B1, ArrB1, A2, B, ArrB]

Attributes

Supertypes
trait SeqLikeDblNPairArrBuilder[B1V, B1, ArrB1, A2, B, ArrB]
trait PolygonLikePairArrBuilder[B1V, B1, ArrB1, A2, B, ArrB]
trait SeqLikePairArrBuilder[B1V, B1, ArrB1, A2, B, ArrB]
trait BuilderArrPairMap[B1, ArrB1, A2, B, ArrB]
trait BuilderArrMap[B, ArrB]
trait BuilderSeqLikeMap[B, ArrB]
trait BuilderCollMap[B, ArrB]
trait BuilderArrPair[B1, ArrB1, A2, ArrB]
trait BuilderSeqLike[ArrB]
trait BuilderColl[ArrB]
class Object
trait Matchable
class Any
Show all
Known subtypes
trait PolygonLikeFlatBuilder[VT, +BB <: PolygonLike[VT]] extends BuilderSeqLikeFlat[BB]

Attributes

Supertypes
trait BuilderSeqLikeFlat[BB]
trait BuilderSeqLike[BB]
trait BuilderColl[BB]
class Object
trait Matchable
class Any
Show all
Known subtypes
trait PolygonLikeInt2[VT <: Int2Elem] extends PolygonLikeIntN[VT], SeqSpecInt2[VT]

A polygon whose elements are defined by 2 ints.

A polygon whose elements are defined by 2 ints.

Attributes

Supertypes
trait SeqSpecInt2[VT]
trait SeqLikeInt2[VT]
trait PolygonLikeIntN[VT]
trait SeqSpecIntN[VT]
trait SeqLikeIntN[VT]
trait PolygonValueN[VT]
trait SeqSpecValueN[VT]
trait SeqLikeValueN[VT]
trait PolygonLike[VT]
trait SeqSpec[VT]
trait SeqLike[VT]
class Any
Show all
Known subtypes
class PolygonHC
class PolygonSqC
trait PolygonLikeInt3[VT <: Int3Elem] extends PolygonLikeIntN[VT], SeqSpecInt3[VT]

A polygon whose elements are defined by 3 ints.

A polygon whose elements are defined by 3 ints.

Attributes

Supertypes
trait SeqSpecInt3[VT]
trait SeqLikeInt3[VT]
trait PolygonLikeIntN[VT]
trait SeqSpecIntN[VT]
trait SeqLikeIntN[VT]
trait PolygonValueN[VT]
trait SeqSpecValueN[VT]
trait SeqLikeValueN[VT]
trait PolygonLike[VT]
trait SeqSpec[VT]
trait SeqLike[VT]
class Any
Show all
Known subtypes
trait PolygonLikeIntN[VT <: IntNElem] extends PolygonValueN[VT], SeqSpecIntN[VT]

A polygon whose elements are defined by Ints.

A polygon whose elements are defined by Ints.

Attributes

Supertypes
trait SeqSpecIntN[VT]
trait SeqLikeIntN[VT]
trait PolygonValueN[VT]
trait SeqSpecValueN[VT]
trait SeqLikeValueN[VT]
trait PolygonLike[VT]
trait SeqSpec[VT]
trait SeqLike[VT]
class Any
Show all
Known subtypes
trait PolygonLikeInt2[VT]
class PolygonHC
class PolygonSqC
trait PolygonLikeInt3[VT]
trait PolygonLikeIntNPair[A1V <: IntNElem, A1 <: PolygonLikeIntN[A1V], A2] extends PolygonLikePair[A1V, A1, A2], SeqLikeIntNPairElem[A1V, A1, A2]

Attributes

Supertypes
trait SeqLikeIntNPairElem[A1V, A1, A2]
trait ArrayIntBackedPair[A1, A2]
trait PolygonLikePair[A1V, A1, A2]
trait SeqLikePairElem[A1V, A1, A2]
trait SpecialT
trait PairFinalA1Elem[A1, A2]
trait PairElem[A1, A2]
class Object
trait Matchable
class Any
Show all
Known subtypes
class PolygonHCPair[A2]
trait PolygonLikeIntNPairArr[A1V <: IntNElem, A1 <: PolygonLikeIntN[A1V], ArrA1 <: Arr[A1], A2, A <: PolygonLikeIntNPair[A1V, A1, A2]] extends PolygonLikePairArr[A1V, A1, ArrA1, A2, A], SeqLikeIntNPairArr[A1V, A1, ArrA1, A2, A]

Attributes

Supertypes
trait SeqLikeIntNPairArr[A1V, A1, ArrA1, A2, A]
trait ArrayIntBackedPairArr[A1, ArrA1, A2, A]
trait PolygonLikePairArr[A1V, A1, ArrA1, A2, A]
trait SeqLikePairArr[A1V, A1, ArrA1, A2, A]
trait PairArrFinalA1[A1, ArrA1, A2, A]
trait ArrPair[A1, ArrA1, A2, A]
trait Arr[A]
trait Sequ[A]
trait SeqLike[A]
class Object
trait Matchable
class Any
Show all
Known subtypes
class PolygonHCPairArr[A2]
trait PolygonLikeMapBuilder[B, +BB <: PolygonLike[B]] extends BuilderSeqLikeMap[B, BB]

A type class for the building of efficient compact Immutable Arrays. Instances for this type class for classes / traits you control should go in the companion object of B not the companion object of BB. This is different from the related ArrBinder[BB] type class where instance should go into the BB companion object. The type parameter is named B rather than A, because normally this will be found by an implicit in the context of a function from A => B or A => M[B]. The methods of this trait mutate and therefore must be used with care. Where ever possible they should not be used directly by end users.

A type class for the building of efficient compact Immutable Arrays. Instances for this type class for classes / traits you control should go in the companion object of B not the companion object of BB. This is different from the related ArrBinder[BB] type class where instance should go into the BB companion object. The type parameter is named B rather than A, because normally this will be found by an implicit in the context of a function from A => B or A => M[B]. The methods of this trait mutate and therefore must be used with care. Where ever possible they should not be used directly by end users.

Attributes

Supertypes
trait BuilderSeqLikeMap[B, BB]
trait BuilderSeqLike[BB]
trait BuilderCollMap[B, BB]
trait BuilderColl[BB]
class Object
trait Matchable
class Any
Show all
Known subtypes
trait PolygonLikePair[A1V, A1 <: PolygonLike[A1V], A2] extends SeqLikePairElem[A1V, A1, A2]

A PolygonLike object paired with an object of type A2.]]

A PolygonLike object paired with an object of type A2.]]

Attributes

Supertypes
trait SeqLikePairElem[A1V, A1, A2]
trait SpecialT
trait PairFinalA1Elem[A1, A2]
trait PairElem[A1, A2]
class Object
trait Matchable
class Any
Show all
Known subtypes
trait PolygonLikeDblNPair[A1V, A1, A2]
class PolygonLLPair[A2]
trait PolygonLikeDbl2Pair[A1V, A1, A2]
class PolygonGenPair[A2]
class PolygonM2Pair[A2]
class PolygonM3Pair[A2]
trait PolygonLikeIntNPair[A1V, A1, A2]
class PolygonHCPair[A2]
Show all
trait PolygonLikePairArr[A1V, A1 <: PolygonLike[A1V], A1Arr <: Arr[A1], A2, A <: PolygonLikePair[A1V, A1, A2]] extends SeqLikePairArr[A1V, A1, A1Arr, A2, A]

An Arr of PolygonLikePairs stored efficiently allowing maping between different PolygonLike types while keeping the A2 values unchanged.

An Arr of PolygonLikePairs stored efficiently allowing maping between different PolygonLike types while keeping the A2 values unchanged.

Attributes

Supertypes
trait SeqLikePairArr[A1V, A1, A1Arr, A2, A]
trait PairArrFinalA1[A1, A1Arr, A2, A]
trait ArrPair[A1, A1Arr, A2, A]
trait Arr[A]
trait Sequ[A]
trait SeqLike[A]
class Object
trait Matchable
class Any
Show all
Known subtypes
trait PolygonLikeDblNPairArr[A1V, A1, ArrA1, A2, A]
class PolygonLLPairArr[A2]
trait PolygonLikeDbl2PairArr[A1V, A1, ArrA1, A2, A]
class PolygonGenPairArr[A2]
class PolygonM2PairArr[A2]
class PolygonM3PairArr[A2]
trait PolygonLikeIntNPairArr[A1V, A1, ArrA1, A2, A]
class PolygonHCPairArr[A2]
Show all
trait PolygonLikePairArrBuilder[B1V, B1 <: PolygonLike[B1V], ArrB1 <: Arr[B1], B2, B <: PolygonLikePair[B1V, B1, B2], ArrB <: PolygonLikePairArr[B1V, B1, ArrB1, B2, B]] extends SeqLikePairArrBuilder[B1V, B1, ArrB1, B2, B, ArrB]

Attributes

Supertypes
trait SeqLikePairArrBuilder[B1V, B1, ArrB1, B2, B, ArrB]
trait BuilderArrPairMap[B1, ArrB1, B2, B, ArrB]
trait BuilderArrMap[B, ArrB]
trait BuilderSeqLikeMap[B, ArrB]
trait BuilderCollMap[B, ArrB]
trait BuilderArrPair[B1, ArrB1, B2, ArrB]
trait BuilderSeqLike[ArrB]
trait BuilderColl[ArrB]
class Object
trait Matchable
class Any
Show all
Known subtypes
trait PolygonIntsLikePairArrBuilder[B1V, B1, ArrB1, A2, B, ArrB]
trait PolygonLikeDblNPairArrBuilder[B1V, B1, ArrB1, A2, B, ArrB]
Show all
final class PolygonM2(val arrayUnsafe: Array[Double]) extends AnyVal, PolygonLikeDbl2[PtM2]

Attributes

Companion
object
Supertypes
trait SeqSpecDbl2[PtM2]
trait SeqLikeDbl2[PtM2]
trait SeqSpecDblN[PtM2]
trait SeqLikeDblN[PtM2]
trait SpecialT
trait PolygonLike[PtM2]
trait SeqSpec[PtM2]
trait SeqLike[PtM2]
class AnyVal
trait Matchable
class Any
Show all

The companion object for PolygonDist. Provides an implicit builder.

The companion object for PolygonDist. Provides an implicit builder.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
PolygonM2.type
class PolygonM2Arr(val unsafeArrayOfArrays: Array[Array[Double]]) extends ArrArrayDbl[PolygonM2]

Arr of PolygonM2s.

Arr of PolygonM2s.

Attributes

Supertypes
trait Arr[PolygonM2]
trait Sequ[PolygonM2]
class Object
trait Matchable
class Any
Show all
final class PolygonM2Buff(val unsafeBuffer: ArrayBuffer[Array[Double]]) extends AnyVal, BuffArrayDbl[PolygonM2]

Buff of PolygonM2s.

Buff of PolygonM2s.

Attributes

Companion
object
Supertypes
trait Sequ[PolygonM2]
class AnyVal
trait Matchable
class Any
Show all
object PolygonM2Buff

Companion object of the PolygonM2Buff class, a Buff of PolygonM2s, contains factory apply method.

Companion object of the PolygonM2Buff class, a Buff of PolygonM2s, contains factory apply method.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
class PolygonM2Pair[A2](val a1ArrayDbl: Array[Double], val a2: A2) extends PolygonLikeDbl2Pair[PtM2, PolygonM2, A2]

Attributes

Companion
object
Supertypes
trait SpecialT
trait PairElem[PolygonM2, A2]
class Object
trait Matchable
class Any
Show all
object PolygonM2Pair

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
final class PolygonM2PairArr[A2](val a1ArrayDbls: Array[Array[Double]], val a2Array: Array[A2]) extends PolygonLikeDbl2PairArr[PtM2, PolygonM2, PolygonM2Arr, A2, PolygonM2Pair[A2]]
class PolygonM2PairBuff[A2](val b1Buffer: ArrayBuffer[Array[Double]], val b2Buffer: ArrayBuffer[A2]) extends SeqLikeDblNPairBuff[PtM2, PolygonM2, A2, PolygonM2Pair[A2]]

Attributes

Supertypes
trait BuffPair[PolygonM2, A2, PolygonM2Pair[A2]]
trait BuffSequ[PolygonM2Pair[A2]]
trait Sequ[PolygonM2Pair[A2]]
trait SeqLike[PolygonM2Pair[A2]]
class Object
trait Matchable
class Any
Show all
final class PolygonM3(val arrayUnsafe: Array[Double]) extends AnyVal, PolygonLikeDbl3[PtM3]

A quasi Polygon specified in 3D metre points. This is not a proper polygon as the points do not have to lie within the same plane. I'm not sure how useful this class will prove. It has been created for the intermediary step of converting from LatLongss to PolygonM2s on world maps.

A quasi Polygon specified in 3D metre points. This is not a proper polygon as the points do not have to lie within the same plane. I'm not sure how useful this class will prove. It has been created for the intermediary step of converting from LatLongss to PolygonM2s on world maps.

Attributes

Companion
object
Supertypes
trait SeqSpecDbl3[PtM3]
trait SeqLikeDbl3[PtM3]
trait SeqSpecDblN[PtM3]
trait SeqLikeDblN[PtM3]
trait SpecialT
trait PolygonLike[PtM3]
trait SeqSpec[PtM3]
trait SeqLike[PtM3]
class AnyVal
trait Matchable
class Any
Show all

Companion object for PolygonM3. Contains apply factory method fromArrayDbl and Persist Implicit.

Companion object for PolygonM3. Contains apply factory method fromArrayDbl and Persist Implicit.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
PolygonM3.type
class PolygonM3Arr(val unsafeArrayOfArrays: Array[Array[Double]]) extends ArrArrayDbl[PolygonM3]

Specialised Arr class for PolygonM3s. Polygon in a 3D space measured in metres.

Specialised Arr class for PolygonM3s. Polygon in a 3D space measured in metres.

Attributes

Supertypes
trait Arr[PolygonM3]
trait Sequ[PolygonM3]
class Object
trait Matchable
class Any
Show all
final class PolygonM3Buff(val unsafeBuffer: ArrayBuffer[Array[Double]]) extends AnyVal, BuffArrayDbl[PolygonM3]

Specialised BuffSequ class for PolygonM3s. Polygon in a 3D space measured in metres.

Specialised BuffSequ class for PolygonM3s. Polygon in a 3D space measured in metres.

Attributes

Companion
object
Supertypes
trait Sequ[PolygonM3]
class AnyVal
trait Matchable
class Any
Show all
object PolygonM3Buff

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
class PolygonM3Pair[A2](val a1ArrayDbl: Array[Double], val a2: A2) extends PolygonLikeDblNPair[PtM3, PolygonM3, A2], SpecialT

Speccialised effeicnet class for pairs where the first ocmponent of the pair is a PolygonM3, a polygon in £d space poits specified in metre scales.

Speccialised effeicnet class for pairs where the first ocmponent of the pair is a PolygonM3, a polygon in £d space poits specified in metre scales.

Attributes

Companion
object
Supertypes
trait SpecialT
trait PairElem[PolygonM3, A2]
class Object
trait Matchable
class Any
Show all
object PolygonM3Pair

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
final class PolygonM3PairArr[A2](val a1ArrayDbls: Array[Array[Double]], val a2Array: Array[A2]) extends PolygonLikeDblNPairArr[PtM3, PolygonM3, PolygonM3Arr, A2, PolygonM3Pair[A2]]

Attributes

Supertypes
class PolygonM3PairBuff[A2](val b1Buffer: ArrayBuffer[Array[Double]], val b2Buffer: ArrayBuffer[A2]) extends SeqLikeDblNPairBuff[PtM3, PolygonM3, A2, PolygonM3Pair[A2]]

Attributes

Supertypes
trait BuffPair[PolygonM3, A2, PolygonM3Pair[A2]]
trait BuffSequ[PolygonM3Pair[A2]]
trait Sequ[PolygonM3Pair[A2]]
trait SeqLike[PolygonM3Pair[A2]]
class Object
trait Matchable
class Any
Show all

This is not a Polygon but can apply or transformed to a Polygon. Not sure how useful this trait is. not sure if it is the correct approach to preserving information.

This is not a Polygon but can apply or transformed to a Polygon. Not sure how useful this trait is. not sure if it is the correct approach to preserving information.

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
trait MirrorPiece
object Bishop
object King
object Knight
object Pawn
object Queen
object Rook
trait Piece
Show all
trait PolygonValueN[VT <: ValueNElem] extends PolygonLike[VT], SeqSpecValueN[VT]

Attributes

Supertypes
trait SeqSpecValueN[VT]
trait SeqLikeValueN[VT]
trait PolygonLike[VT]
trait SeqSpec[VT]
trait SeqLike[VT]
class Any
Show all
Known subtypes
trait PolygonLikeDblN[VT]
trait PolygonLikeDbl2[VT]
class PolygonLL
trait Polygon
trait Polygon3Plus
trait Polygon4Plus
trait Polygon5Plus
trait Polygon6Plus
class DoDeclign
trait HexReg
class HexRegImp
trait Hexlign
class HexParrX
class HexParrY
trait Rectangle
trait PhiRectangle
class PhiRect
class PhiRectY
trait Rect
object NoBounds
class RectImp
class Sqlign
class RectangleImp
trait Square
class SquareImp
trait Triangle
class TriangleImp
trait TriangleIsos
class TriangleEqui
class PolygonGen
class PolygonM2
trait PolygonLikeDbl3[VT]
class PolygonM3
trait PolygonLikeIntN[VT]
trait PolygonLikeInt2[VT]
class PolygonHC
class PolygonSqC
trait PolygonLikeInt3[VT]
Show all

Attributes

Supertypes
trait PolygonLikeFlatBuilder[VT, BB]
trait BuilderSeqLikeFlat[BB]
trait BuilderSeqLike[BB]
trait BuilderColl[BB]
class Object
trait Matchable
class Any
Show all
Known subtypes

Trait for creating the line path builder instances for the PolygonLikeMapBuilder type class, for classes / traits you control, should go in the companion object of B. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

Trait for creating the line path builder instances for the PolygonLikeMapBuilder type class, for classes / traits you control, should go in the companion object of B. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

Attributes

Supertypes
trait PolygonLikeMapBuilder[B, BB]
trait BuilderSeqLikeMap[B, BB]
trait BuilderSeqLike[BB]
trait BuilderCollMap[B, BB]
trait BuilderColl[BB]
class Object
trait Matchable
class Any
Show all
Known subtypes
trait PolygonYMirror extends Polygon

Attributes

Supertypes
trait Polygon
trait PolygonLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait Approx[Double]
trait Equals
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
Show all
trait Prolign[A]

Type class for Prolign transformations. These are proportionate and aligned to X and Y axes transformations. This transformation set preserves Circles and Squares. It also preserves the alignment of Squares and Rectangle to the axes.

Type class for Prolign transformations. These are proportionate and aligned to X and Y axes transformations. This transformation set preserves Circles and Squares. It also preserves the alignment of Squares and Rectangle to the axes.

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
object Prolign

Companion object for the Prolign type class.

Companion object for the Prolign type class.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
Prolign.type
final case class ProlignMatrix(vFactor: Double, negY: Boolean, negX: Boolean, xDelta: Double, yDelta: Double)

A matrix for proportionate and aligned to X and Y axes transformations. This transformation set preserves Circles and Squares. It also preserves the alignment of Squares and Rectangle to the axes.

A matrix for proportionate and aligned to X and Y axes transformations. This transformation set preserves Circles and Squares. It also preserves the alignment of Squares and Rectangle to the axes.

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object ProlignMatrix

Companion object for Prolign Matrices.

Companion object for Prolign Matrices.

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
implicit class ProlignMatrixExtension[T](val value: T)(implicit ev: Prolign[T])

Attributes

Supertypes
class Object
trait Matchable
class Any
trait ProlignPreserve extends GeomElem

A class that can preserve its type through all the Prolign, proportionate XY axes aligned transformations, using a Pt2 => Pt2 function. These are translate Slate, Scale and negX and negY, the TransAxes, transformations.

A class that can preserve its type through all the Prolign, proportionate XY axes aligned transformations, using a Pt2 => Pt2 function. These are translate Slate, Scale and negX and negY, the TransAxes, transformations.

Attributes

Supertypes
trait GeomElem
class Any
Known subtypes
final class Pt2(val x: Double, val y: Double) extends Vec2Like, PointDbl2

A 2 dimensional point. Pt2s can be transformed through the 2D geometric transformations. If you wish to encode a relative position then use a Vec2 instead. Thanks to René Descartes for this. Vec2s can be added and subtracted from points. Points can not be added to points but they can be used to translate the point.

A 2 dimensional point. Pt2s can be transformed through the 2D geometric transformations. If you wish to encode a relative position then use a Vec2 instead. Thanks to René Descartes for this. Vec2s can be added and subtracted from points. Points can not be added to points but they can be used to translate the point.

Attributes

Companion
object
Supertypes
trait PointDbl2
trait PointDblN
trait Point
trait Vec2Like
trait ApproxDbl
trait Approx[Double]
trait Equals
trait TellElemDbl2
trait Dbl2Elem
trait DblNElem
trait ValueNElem
trait SpecialT
trait TellDbl2
trait Tell2[Double, Double]
trait PersistN
trait TellN
trait Tell
trait Persist
class Object
trait Matchable
class Any
Show all
object Pt2

Companion object for Pt2. Contains apply factory and unapply methods. Persist and EqT implicit type classes instances and instances for all the 2D geometric transformation type classes.

Companion object for Pt2. Contains apply factory and unapply methods. Persist and EqT implicit type classes instances and instances for all the 2D geometric transformation type classes.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
Pt2.type
final class Pt2Arr(val arrayUnsafe: Array[Double]) extends AffinePreserve, Pt2SeqLike, ArrDbl2[Pt2]

The default Array[Double] based collection class for Pt2s. Use Polygon or LinePath to represent those structures. Conversion to and from Polygon class and LinePath class should not entail a runtime cost.

The default Array[Double] based collection class for Pt2s. Use Polygon or LinePath to represent those structures. Conversion to and from Polygon class and LinePath class should not entail a runtime cost.

Attributes

Companion
object
Supertypes
trait ArrDbl2[Pt2]
trait ArrDblN[Pt2]
trait ArrValueN[Pt2]
trait ArrNoParam[Pt2]
trait Arr[Pt2]
trait Sequ[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait GeomElem
class Object
trait Matchable
class Any
Show all

Companion object for the Pt2Arr sequence class. Contains factory apply method and implicit instances for a number of type classes.

Companion object for the Pt2Arr sequence class. Contains factory apply method and implicit instances for a number of type classes.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
Pt2Arr.type
final class Pt2Buff(val unsafeBuffer: ArrayBuffer[Double]) extends AnyVal, BuffDbl2[Pt2]

A specialised flat ArrayBuffer[Double] based class for Pt2s collections.

A specialised flat ArrayBuffer[Double] based class for Pt2s collections.

Attributes

Companion
object
Supertypes
trait BuffDbl2[Pt2]
trait BuffDblN[Pt2]
trait BuffValueN[Pt2]
trait BuffSequ[Pt2]
trait Sequ[Pt2]
trait SeqLike[Pt2]
class AnyVal
trait Matchable
class Any
Show all

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
Pt2Buff.type
class Pt2Pair[A2](val x: Double, val y: Double, val a2: A2) extends PointDbl2Pair[Pt2, A2]

A Pt2 pair class. The main urpose of this type is to be an lement of a Pt2PairArr.

A Pt2 pair class. The main urpose of this type is to be an lement of a Pt2PairArr.

Attributes

Supertypes
trait PointDbl2Pair[Pt2, A2]
trait PairDbl2Elem[Pt2, A2]
trait PointDblNPair[Pt2, A2]
trait PairDblNElem[Pt2, A2]
trait PointPair[Pt2, A2]
trait PairFinalA1Elem[Pt2, A2]
trait PairElem[Pt2, A2]
class Object
trait Matchable
class Any
Show all
class Pt2PairArr[A2](val a1ArrayDbl: Array[Double], val a2Array: Array[A2]) extends PointDbl2PairArr[Pt2, Pt2Arr, A2, Pt2Pair[A2]]

Attributes

Companion
object
Supertypes
trait PointDbl2PairArr[Pt2, Pt2Arr, A2, Pt2Pair[A2]]
trait PairArrPairDbl2[Pt2, Pt2Arr, A2, Pt2Pair[A2]]
trait PointDblNPairArr[Pt2, Pt2Arr, A2, Pt2Pair[A2]]
trait ArrPairDblN[Pt2, Pt2Arr, A2, Pt2Pair[A2]]
trait PointPairArr[Pt2, Pt2Arr, A2, Pt2Pair[A2]]
trait PairArrFinalA1[Pt2, Pt2Arr, A2, Pt2Pair[A2]]
trait ArrPair[Pt2, Pt2Arr, A2, Pt2Pair[A2]]
trait Arr[Pt2Pair[A2]]
trait Sequ[Pt2Pair[A2]]
trait SeqLike[Pt2Pair[A2]]
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
Pt2PairArr.type
class Pt2PairArrMapBuider[A2](implicit val b2ClassTag: ClassTag[A2]) extends BuilderArrPairDbl2Map[Pt2, Pt2Arr, A2, Pt2Pair[A2], Pt2PairArr[A2]]

Builder for Pt2PairArrs.

Builder for Pt2PairArrs.

Attributes

Supertypes
trait BuilderArrMap[Pt2Pair[A2], Pt2PairArr[A2]]
trait BuilderArrPair[Pt2, Pt2Arr, A2, Pt2PairArr[A2]]
trait BuilderColl[Pt2PairArr[A2]]
class Object
trait Matchable
class Any
Show all
class Pt2PairBuff[A2](val b1DblBuffer: ArrayBuffer[Double], val b2Buffer: ArrayBuffer[A2]) extends BuffPairDbl2[Pt2, A2, Pt2Pair[A2]]

Buffer for Pt2Pairs.

Buffer for Pt2Pairs.

Attributes

Supertypes
trait BuffPairDbl2[Pt2, A2, Pt2Pair[A2]]
trait BuffPairDblN[Pt2, A2, Pt2Pair[A2]]
trait BuffPair[Pt2, A2, Pt2Pair[A2]]
trait BuffSequ[Pt2Pair[A2]]
trait Sequ[Pt2Pair[A2]]
trait SeqLike[Pt2Pair[A2]]
class Object
trait Matchable
class Any
Show all

The purpose of this trait is to provide the helper method for Vec2 transformations.

The purpose of this trait is to provide the helper method for Vec2 transformations.

Attributes

Supertypes
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
class Any
Show all
Known subtypes
class PolygonGen
class Pt2Arr
trait Pt2SeqSpec
class LinePath
trait Polygon
trait Polygon3Plus
trait Polygon4Plus
trait Polygon5Plus
trait Polygon6Plus
class DoDeclign
trait HexReg
class HexRegImp
trait Hexlign
class HexParrX
class HexParrY
trait Rectangle
trait PhiRectangle
class PhiRect
class PhiRectY
trait Rect
object NoBounds
class RectImp
class Sqlign
class RectangleImp
trait Square
class SquareImp
trait Triangle
class TriangleImp
trait TriangleIsos
class TriangleEqui
Show all

Attributes

Supertypes
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
class Any
Show all
Known subtypes
class LinePath
trait Polygon
trait Polygon3Plus
trait Polygon4Plus
trait Polygon5Plus
trait Polygon6Plus
class DoDeclign
trait HexReg
class HexRegImp
trait Hexlign
class HexParrX
class HexParrY
trait Rectangle
trait PhiRectangle
class PhiRect
class PhiRectY
trait Rect
object NoBounds
class RectImp
class Sqlign
class RectangleImp
trait Square
class SquareImp
trait Triangle
class TriangleImp
trait TriangleIsos
class TriangleEqui
class PolygonGen
Show all
final class Pt3(val x: Double, val y: Double, val z: Double) extends PointDbl3, Vec3Like

A 3 dimensional point. Right-handed coordinate system is the default.

A 3 dimensional point. Right-handed coordinate system is the default.

Attributes

Companion
object
Supertypes
trait Vec3Like
trait ApproxDbl
trait Approx[Double]
trait Equals
trait PointDbl3
trait Dbl3Elem
trait PointDblN
trait DblNElem
trait ValueNElem
trait SpecialT
trait Point
class Object
trait Matchable
class Any
Show all
object Pt3

Companion object for Pt3 class. Contains apply, unapply factory methods and Persist type class instance.

Companion object for Pt3 class. Contains apply, unapply factory methods and Persist type class instance.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
Pt3.type
final class Pt3Arr(val arrayUnsafe: Array[Double]) extends AnyVal, ArrDbl3[Pt3]

An immutable flat efficient Array backed sequence collection class of 3 dimensional points. This is the default collection class for [Pt3]s.

An immutable flat efficient Array backed sequence collection class of 3 dimensional points. This is the default collection class for [Pt3]s.

Attributes

Supertypes
trait ArrDbl3[Pt3]
trait SeqLikeDbl3[Pt3]
trait ArrDblN[Pt3]
trait ArrValueN[Pt3]
trait ArrNoParam[Pt3]
trait Arr[Pt3]
trait Sequ[Pt3]
trait SeqLikeDblN[Pt3]
trait SpecialT
trait SeqLike[Pt3]
class AnyVal
trait Matchable
class Any
Show all
final class Pt3Buff(val unsafeBuffer: ArrayBuffer[Double]) extends AnyVal, Dbl3Buff[Pt3]

A specialised flat ArrayBuffer[Double] based class for Pt3s collections.

A specialised flat ArrayBuffer[Double] based class for Pt3s collections.

Attributes

Supertypes
trait Dbl3Buff[Pt3]
trait BuffDblN[Pt3]
trait BuffValueN[Pt3]
trait BuffSequ[Pt3]
trait Sequ[Pt3]
trait SeqLike[Pt3]
class AnyVal
trait Matchable
class Any
Show all
final class Pt3Km(val xKMetres: Double, val yKMetres: Double, val zKMetres: Double) extends Pt3LengthUnit

Attributes

Supertypes
class Object
trait Matchable
class Any

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
class Pt3Km
final class PtM2(val xMetresNum: Double, val yMetresNum: Double) extends PointDbl2, TellElemDbl2

A 2 dimensional point specified in Length as units rather than pure scalar numbers.

A 2 dimensional point specified in Length as units rather than pure scalar numbers.

Attributes

Companion
object
Supertypes
trait TellElemDbl2
trait TellDbl2
trait Tell2[Double, Double]
trait PersistN
trait TellN
trait Tell
trait Persist
trait PointDbl2
trait Dbl2Elem
trait PointDblN
trait DblNElem
trait ValueNElem
trait SpecialT
trait Point
class Object
trait Matchable
class Any
Show all
object PtM2

Companion object for PtM2 class contains factory methods.

Companion object for PtM2 class contains factory methods.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
PtM2.type
final class PtM2Arr(val arrayUnsafe: Array[Double]) extends AnyVal, ArrDbl2[PtM2]

Specialised immutable Array based collection class for PtM2s.

Specialised immutable Array based collection class for PtM2s.

Attributes

Companion
object
Supertypes
trait ArrDbl2[PtM2]
trait SeqLikeDbl2[PtM2]
trait ArrDblN[PtM2]
trait ArrValueN[PtM2]
trait ArrNoParam[PtM2]
trait Arr[PtM2]
trait Sequ[PtM2]
trait SeqLikeDblN[PtM2]
trait SpecialT
trait SeqLike[PtM2]
class AnyVal
trait Matchable
class Any
Show all

Companion object for the PtM2Arr class. Contains implicit Instance for Persist type class.

Companion object for the PtM2Arr class. Contains implicit Instance for Persist type class.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
PtM2Arr.type
final class PtM3(val xMetres: Double, val yMetres: Double, val zMetres: Double) extends PointDbl3

3 dimensional point specified using metres Length as units rather than pure numbers. The Letter M was used rather L for Length to avoid confusion with the LL ending which is short for Latitude-longitude.

3 dimensional point specified using metres Length as units rather than pure numbers. The Letter M was used rather L for Length to avoid confusion with the LL ending which is short for Latitude-longitude.

Attributes

Companion
object
Supertypes
trait PointDbl3
trait Dbl3Elem
trait PointDblN
trait DblNElem
trait ValueNElem
trait SpecialT
trait Point
class Object
trait Matchable
class Any
Show all
object PtM3

Companion object for the [[PtM3] class. the 3D point measure in metres length.

Companion object for the [[PtM3] class. the 3D point measure in metres length.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
PtM3.type
final class PtM3Arr(val arrayUnsafe: Array[Double]) extends AnyVal, ArrDbl3[PtM3]

Collection class for Pt3s. Only use this if the more specific PolygonM2 andLinePathMs classes are not appropriate.

Collection class for Pt3s. Only use this if the more specific PolygonM2 andLinePathMs classes are not appropriate.

Attributes

Companion
object
Supertypes
trait ArrDbl3[PtM3]
trait SeqLikeDbl3[PtM3]
trait ArrDblN[PtM3]
trait ArrValueN[PtM3]
trait ArrNoParam[PtM3]
trait Arr[PtM3]
trait Sequ[PtM3]
trait SeqLikeDblN[PtM3]
trait SpecialT
trait SeqLike[PtM3]
class AnyVal
trait Matchable
class Any
Show all

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
PtM3Arr.type
final class PtM3Buff(val unsafeBuffer: ArrayBuffer[Double]) extends AnyVal, Dbl3Buff[PtM3]

A specialised flat ArrayBuffer[Double] based class for Pt3s collections.

A specialised flat ArrayBuffer[Double] based class for Pt3s collections.

Attributes

Companion
object
Supertypes
trait Dbl3Buff[PtM3]
trait BuffDblN[PtM3]
trait BuffValueN[PtM3]
trait BuffSequ[PtM3]
trait Sequ[PtM3]
trait SeqLike[PtM3]
class AnyVal
trait Matchable
class Any
Show all
object PtM3Buff

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
PtM3Buff.type
class PtM3Pair[A2](val a1Dbl1: Double, val a1Dbl2: Double, val a1Dbl3: Double, val a2: A2) extends PointDbl3Pair[PtM3, A2]

Attributes

Supertypes
trait PointDbl3Pair[PtM3, A2]
trait PairDbl3Elem[PtM3, A2]
trait PointDblNPair[PtM3, A2]
trait PairDblNElem[PtM3, A2]
trait PointPair[PtM3, A2]
trait PairFinalA1Elem[PtM3, A2]
trait PairElem[PtM3, A2]
class Object
trait Matchable
class Any
Show all
class PtM3PairArr[A2](val a1ArrayDbl: Array[Double], val a2Array: Array[A2]) extends PointDbl3PairArr[PtM3, PtM3Arr, A2, PtM3Pair[A2]]

Attributes

Supertypes
trait ArrPairDbl3[PtM3, PtM3Arr, A2, PtM3Pair[A2]]
trait ArrPairDblN[PtM3, PtM3Arr, A2, PtM3Pair[A2]]
trait PointPairArr[PtM3, PtM3Arr, A2, PtM3Pair[A2]]
trait PairArrFinalA1[PtM3, PtM3Arr, A2, PtM3Pair[A2]]
trait ArrPair[PtM3, PtM3Arr, A2, PtM3Pair[A2]]
trait Arr[PtM3Pair[A2]]
trait Sequ[PtM3Pair[A2]]
trait SeqLike[PtM3Pair[A2]]
class Object
trait Matchable
class Any
Show all
class PtM3PairArrMapBuilder[B2](implicit val b2ClassTag: ClassTag[B2]) extends BuilderArrPairDbl3[PtM3, PtM3Arr, B2, PtM3Pair[B2], PtM3PairArr[B2]]

Map builder for PtM3PairArrs.

Map builder for PtM3PairArrs.

Attributes

Supertypes
class Object
trait Matchable
class Any
Show all
class PtM3PairBuff[B2](val b1DblBuffer: ArrayBuffer[Double], val b2Buffer: ArrayBuffer[B2]) extends BuffPairDbl3[PtM3, B2, PtM3Pair[B2]]

Attributes

Supertypes
trait BuffPairDbl3[PtM3, B2, PtM3Pair[B2]]
trait BuffPairDblN[PtM3, B2, PtM3Pair[B2]]
trait BuffPair[PtM3, B2, PtM3Pair[B2]]
trait BuffSequ[PtM3Pair[B2]]
trait Sequ[PtM3Pair[B2]]
trait SeqLike[PtM3Pair[B2]]
class Object
trait Matchable
class Any
Show all
trait Quadrilateral extends Polygon4Plus

A 4 sided Polygon.

A 4 sided Polygon.

Attributes

Supertypes
trait Polygon4Plus
trait Polygon3Plus
trait Polygon
trait PolygonLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait Approx[Double]
trait Equals
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
trait Rectangle
trait PhiRectangle
class PhiRect
class PhiRectY
trait Rect
object NoBounds
class RectImp
class Sqlign
class RectangleImp
trait Square
class SquareImp
Show all
class Ray extends LineLike

Geometrical Ray.

Geometrical Ray.

Attributes

Companion
object
Supertypes
trait LineLike
trait GeomElem
class Object
trait Matchable
class Any
object Ray

Companion object for the Ray class, contains apply factory methods.

Companion object for the Ray class, contains apply factory methods.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
Ray.type

A Rectangle aligned to the X and Y axes.

A Rectangle aligned to the X and Y axes.

Attributes

Companion
object
Supertypes
trait Rectangle
trait Polygon4Plus
trait Polygon3Plus
trait Polygon
trait PolygonLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait Approx[Double]
trait Equals
trait ShapeCentred
trait CentredElem
trait WithCentre
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
object NoBounds
class PhiRect
class PhiRectY
class RectImp
class Sqlign
object Rect

Companion object for the Rect trait contains factory methods for the Rect trait which delegate to the RectImp class.

Companion object for the Rect trait contains factory methods for the Rect trait which delegate to the RectImp class.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
Rect.type

A rectangular object aligned with the X and Y axes and centred on x = 0, y = 0. Sub traits include Rectangle and pCanv.Panel.

A rectangular object aligned with the X and Y axes and centred on x = 0, y = 0. Sub traits include Rectangle and pCanv.Panel.

Attributes

Supertypes
trait WithCentre
class Object
trait Matchable
class Any
Show all
Known subtypes
class CanvasFx
trait PanelLike
class BlackJackGui
class BattleGui
class FlagsGui
class ReactorGUI
class ColourGen
class TessGui
class CArcExs
class Canv
class HelloWorld
class LsAEllipses
class LsAText
class LsB1
class LsB2
class LsB3
class LsC1
class LsC2
class LsC3
class LsC3b
class LsC4
class LsC5
class LsC6
class LsC7
class LsC8
class LsD1
class LsD2
class LsD3
class LsD4
class LsD5
class Panel
Show all

This is a compound graphic based on a Rect shape. A rectangle aligned to the X and Y axes.

This is a compound graphic based on a Rect shape. A rectangle aligned to the X and Y axes.

Attributes

Companion
object
Supertypes
trait NoCanvElem
trait RectGraphic
trait CentredElem
trait WithCentre
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
object RectCompound

Companion object for the RectCompound trait, contains implicit instances for 2D geometric transformation type classes.

Companion object for the RectCompound trait, contains implicit instances for 2D geometric transformation type classes.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

A rectangular Graphic aligned to the axes, filled with a single colour.

A rectangular Graphic aligned to the axes, filled with a single colour.

Attributes

Companion
object
Supertypes
Known subtypes
class RectDrawImp
object RectDraw

Companion object for the RectDraw trait, contains a RectFillImp implementation class and an apply method that delegates to it.

Companion object for the RectDraw trait, contains a RectFillImp implementation class and an apply method that delegates to it.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
RectDraw.type

A rectangular Graphic aligned to the axes, filled with a single colour.

A rectangular Graphic aligned to the axes, filled with a single colour.

Attributes

Companion
object
Supertypes
Known subtypes
class RectFillImp
object RectFill

Companion object for the RectFill trait, contains a RectFillImp implementation class and an apply method that delegates to it.

Companion object for the RectFill trait, contains a RectFillImp implementation class and an apply method that delegates to it.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
RectFill.type

A graphic based on a [[Rect], a rectangle aligned to the X and Y axes.

A graphic based on a [[Rect], a rectangle aligned to the X and Y axes.

Attributes

Supertypes
trait CentredElem
trait WithCentre
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
trait RectCompound
object GridGraphic1
trait RectDraw
class RectDrawImp
trait RectFill
class RectFillImp
Show all

A simple non-compound graphic based on a [[Rect], a rectangle aligned to the X and Y axes.

A simple non-compound graphic based on a [[Rect], a rectangle aligned to the X and Y axes.

Attributes

Supertypes
Known subtypes
trait RectDraw
class RectDrawImp
trait RectFill
class RectFillImp

The Rectangle trait defines 4 vertices v0, v1, v2 and v3. The leaf classes of this class may or may not be squares and may or may not be aligned to the X and Y Axes. You can build a Rectangle using the factory methods in the Rectangle companion object. However if your rectangle is a aligned to the X and Y axis prefer the factory methods on the companion object of the shorter named Rect trait. For SVG purposes this will be output as a polygon to avoid the transforms to rotate a rectangle.W

The Rectangle trait defines 4 vertices v0, v1, v2 and v3. The leaf classes of this class may or may not be squares and may or may not be aligned to the X and Y Axes. You can build a Rectangle using the factory methods in the Rectangle companion object. However if your rectangle is a aligned to the X and Y axis prefer the factory methods on the companion object of the shorter named Rect trait. For SVG purposes this will be output as a polygon to avoid the transforms to rotate a rectangle.W

Attributes

Companion
object
Supertypes
trait Polygon4Plus
trait Polygon3Plus
trait Polygon
trait PolygonLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait Approx[Double]
trait Equals
trait ShapeCentred
trait CentredElem
trait WithCentre
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
trait PhiRectangle
class PhiRect
class PhiRectY
trait Rect
object NoBounds
class RectImp
class Sqlign
class RectangleImp
trait Square
class SquareImp
Show all
object Rectangle

Companion object for the Rectangle trait. Contains Rectangle.RectangleImp the implementation class for non specialised rectangles. It also contains various factory methods that delegate to the Rectangle.RectangleImp class.

Companion object for the Rectangle trait. Contains Rectangle.RectangleImp the implementation class for non specialised rectangles. It also contains various factory methods that delegate to the Rectangle.RectangleImp class.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
Rectangle.type

A compound graphic for rectangles.

A compound graphic for rectangles.

Attributes

Companion
object
Supertypes
trait CentredElem
trait WithCentre
trait NoCanvElem
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes

Companion object for RectangleCompound. Conatains the RectangleCompound.RectangleCompoundImp implementatin class for the general case of Rectangles and an apply factor method that delegats to it.

Companion object for RectangleCompound. Conatains the RectangleCompound.RectangleCompoundImp implementatin class for the general case of Rectangles and an apply factor method that delegats to it.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

Graphic that draws a rectangle.

Graphic that draws a rectangle.

Attributes

Companion
object
Supertypes
trait CentredElem
trait WithCentre
trait PolygonDraw
trait CanvElem
trait ShapeDraw
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
object RectangleDraw

Companion object for RectangleDraw contains factory method and implementation class.

Companion object for RectangleDraw contains factory method and implementation class.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

Graphic to fill a Rectangle with a single colour.

Graphic to fill a Rectangle with a single colour.

Attributes

Companion
object
Supertypes
trait CentredElem
trait WithCentre
trait PolygonFill
trait CanvElem
trait ShapeFill
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
object RectangleFill

Companion object for RectangleFill, contains an Implementation class RectangleFill.RectangleFillImp and an apply factor method that delegates to it. It also contains implicit instances for 2D geometric transformations.

Companion object for RectangleFill, contains an Implementation class RectangleFill.RectangleFillImp and an apply factor method that delegates to it. It also contains implicit instances for 2D geometric transformations.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Supertypes
trait CentredElem
trait WithCentre
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes

Attributes

Supertypes
trait CentredElem
trait WithCentre
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes

A Rectangle like final class aligned to the X and Y axes. The prupose of this class is so as things like Canvas are not Rects. Not sure if this is a good idea or not

A Rectangle like final class aligned to the X and Y axes. The prupose of this class is so as things like Canvas are not Rects. Not sure if this is a good idea or not

Attributes

Supertypes
trait WithCentre
class Object
trait Matchable
class Any
Known subtypes
trait Rect
object NoBounds
class PhiRect
class PhiRectY
class RectImp
class Sqlign
trait RectCenlign
class CanvasFx
trait PanelLike
class BlackJackGui
class BattleGui
class FlagsGui
class ReactorGUI
class ColourGen
class TessGui
class CArcExs
class Canv
class HelloWorld
class LsAEllipses
class LsAText
class LsB1
class LsB2
class LsB3
class LsC1
class LsC2
class LsC3
class LsC3b
class LsC4
class LsC5
class LsC6
class LsC7
class LsC8
class LsD1
class LsD2
class LsD3
class LsD4
class LsD5
class Panel
Show all
trait Reflect[T]

Type class for reflect 2 dimensional vector transformations. Each transformation method has been given its own Type class and associated extension class. Different sets of transformations can then be combined.

Type class for reflect 2 dimensional vector transformations. Each transformation method has been given its own Type class and associated extension class. Different sets of transformations can then be combined.

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
object Reflect

Companion object for the Reflect type class. Contains instances. 2 dimensional vector transformations type class.

Companion object for the Reflect type class. Contains instances. 2 dimensional vector transformations type class.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
Reflect.type
class ReflectExtensions[T](val value: T, ev: Reflect[T])

Extension methods for the Reflect type class.

Extension methods for the Reflect type class.

Attributes

Supertypes
class Object
trait Matchable
class Any
case object RightAlign extends TextAlign

Attributes

Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
trait TextAlign
class Object
trait Matchable
class Any
Show all
Self type
RightAlign.type
case object RightButton extends MouseButton

Indicates the right mouse button was pressed.

Indicates the right mouse button was pressed.

Attributes

Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class MouseButton
class Object
trait Matchable
class Any
Show all
Self type
trait Rotate[T]

Type class for 2D geometric rotation transformations of objects of type T.

Type class for 2D geometric rotation transformations of objects of type T.

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
object Rotate

Companion object for the Rotate[T] type class, contains implicit instances for collections and other container classes.

Companion object for the Rotate[T] type class, contains implicit instances for collections and other container classes.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
Rotate.type
class RotateExtensions[T](value: T, ev: Rotate[T]) extends RotateGenExtensions[T]

Extension class for instances of the Rotate type class.

Extension class for instances of the Rotate type class.

Attributes

Supertypes
class Object
trait Matchable
class Any

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
class RotateM3Extensions[T](value: T, ev: RotateM3T[T])

Extension class for instances of the RotateM3 type class.

Extension class for instances of the RotateM3 type class.

Attributes

Supertypes
class Object
trait Matchable
class Any
trait RotateM3T[T]

Type class for 3D Length geometric rotation transformations of objects of type T.

Type class for 3D Length geometric rotation transformations of objects of type T.

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes
trait RotateM3TPtPt[T]
object RotateM3T

Companion object for the Rotate[T] type class, contains implicit instances for collections and other container classes.

Companion object for the Rotate[T] type class, contains implicit instances for collections and other container classes.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
RotateM3T.type
trait RotateM3TPtPt[T] extends RotateM3T[T]

Implementations for Type class for 3D Length geometric rotation transformations of objects of type T.

Implementations for Type class for 3D Length geometric rotation transformations of objects of type T.

Attributes

Supertypes
trait RotateM3T[T]
class Object
trait Matchable
class Any
trait Scale[T]

Type class for scale 2 dimensional vector transformations. Each transformation method has been given its own Type class and associated extension class. Different sets of transformations can then be combined.

Type class for scale 2 dimensional vector transformations. Each transformation method has been given its own Type class and associated extension class. Different sets of transformations can then be combined.

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
object Scale

Companion object for the Scale type class. Contains instances. 2 dimensional vector transformations type class.

Companion object for the Scale type class. Contains instances. 2 dimensional vector transformations type class.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
Scale.type
class ScaleExtensions[T](val value: T, ev: Scale[T])

Extension methods for the Scale type class.

Extension methods for the Scale type class.

Attributes

Supertypes
class Object
trait Matchable
class Any
trait ScaleXY[T]

Type class trait for scale transformation where the X and Y components can be scaled independently.

Type class trait for scale transformation where the X and Y components can be scaled independently.

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
object ScaleXY

Companion object for scale transformation where the X and Y components can be scaled independently. Contains instance for comon types.

Companion object for scale transformation where the X and Y components can be scaled independently. Contains instance for comon types.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
ScaleXY.type
class SeqSpecExtensions[A](val thisSeqSpec: SeqSpec[A])

Extension methods for SeqSpecs sequence specified classes.

Extension methods for SeqSpecs sequence specified classes.

Attributes

Supertypes
class Object
trait Matchable
class Any
class SequExtensions[A](val al: Sequ[A])

Attributes

Supertypes
class Object
trait Matchable
class Any
trait Shape extends Fillable, BoundedElem

A closed shape. It has vertices and the vertices are connected by straight lines or curved lines. Shape does not extend CurvePath but it does extend Fillable which extends Drawable.Not sure if Shape and Fillable should be seperate classes.

A closed shape. It has vertices and the vertices are connected by straight lines or curved lines. Shape does not extend CurvePath but it does extend Fillable which extends Drawable.Not sure if Shape and Fillable should be seperate classes.

Attributes

Companion
object
Supertypes
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Any
Known subtypes
trait Polygon
trait Polygon3Plus
trait Polygon4Plus
trait Polygon5Plus
trait Polygon6Plus
class DoDeclign
trait HexReg
class HexRegImp
trait Hexlign
class HexParrX
class HexParrY
trait Rectangle
trait PhiRectangle
class PhiRect
class PhiRectY
trait Rect
object NoBounds
class RectImp
class Sqlign
class RectangleImp
trait Square
class SquareImp
trait Triangle
class TriangleImp
trait TriangleIsos
class TriangleEqui
class PolygonGen
trait ShapeCentred
trait Ellipse
class EllipseImp
trait Ellipselign
class Circle
class ShapeGen
Show all
object Shape

Companion object for the Shape trait. Contains implicit instances of type TransElem for all the 2d geometric transformation type classes.

Companion object for the Shape trait. Contains implicit instances of type TransElem for all the 2d geometric transformation type classes.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
Shape.type
case class ShapeActive(id: Any) extends GraphicFacet

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait GraphicFacet
class Object
trait Matchable
class Any
Show all
trait ShapeCentred extends Shape, CentredElem

A Shape with a centre field.

A Shape with a centre field.

Attributes

Supertypes
trait CentredElem
trait WithCentre
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
trait Ellipse
class EllipseImp
trait Ellipselign
class Circle
trait HexReg
class HexRegImp
trait Hexlign
class HexParrX
class HexParrY
trait Rectangle
trait PhiRectangle
class PhiRect
class PhiRectY
trait Rect
object NoBounds
class RectImp
class Sqlign
class RectangleImp
trait Square
class SquareImp
Show all

A shape based compound graphic. The return types of methods will be narrowed in sub classes.

A shape based compound graphic. The return types of methods will be narrowed in sub classes.

Attributes

Companion
object
Supertypes
trait NoCanvElem
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
object ShapeCompound

Companion object for the ShapeCompound trait, contains implicit instances for 2D geometric transoframtion type classes for common collection and other containner classes.

Companion object for the ShapeCompound trait, contains implicit instances for 2D geometric transoframtion type classes for common collection and other containner classes.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

A simple no compound graphic that draws a shape. The line has a single width and colour.

A simple no compound graphic that draws a shape. The line has a single width and colour.

Attributes

Companion
object
Supertypes
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
object ShapeDraw

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
ShapeDraw.type

A simple plain colour fill graphic.

A simple plain colour fill graphic.

Attributes

Companion
object
Supertypes
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
object ShapeFill

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
ShapeFill.type

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
class ShapeGen(val unsafeArray: Array[CurveSeg]) extends Shape, AxisFree

The new version of ShapeGen. Will prioritise easy and simplicity of functionality over efficiency. A generalised implementation of a Shape. A closed sequence of curve segments.

The new version of ShapeGen. Will prioritise easy and simplicity of functionality over efficiency. A generalised implementation of a Shape. A closed sequence of curve segments.

Attributes

Companion
object
Supertypes
trait AxisFree
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
Show all
object ShapeGen

Companion object of the ShapeGen class contains implicit instances for 2D geometric transformations.

Companion object of the ShapeGen class contains implicit instances for 2D geometric transformations.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
ShapeGen.type
case class ShapeGenDrawOld(shape: ShapeGenOld, lineColour: Colour, lineWidth: Double) extends CanvElem, AxisFree

To be phased out.

To be phased out.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait AxisFree
trait CanvElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
final case class ShapeGenFillOld(shape: ShapeGenOld, colour: Colour) extends CanvElem, AxisFree

To be phased out.

To be phased out.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait AxisFree
trait CanvElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
class ShapeGenOld(val arrayUnsafe: Array[Double]) extends SeqSpecDbl7[CurveTail], AffinePreserve

The generalised implementation of a Shape. A closed sequence of curve segments. An Array[Double] based collection for a sequence of CurveSegs, similar to a Polygon which is an Array[Double based collection of just LineSegs. It Uses 6 Doubles for each CurveSeg. The first Double of each curveSeg is set to Negative Infinity for a LineSeg positive infinity for an ArcSeg, but represents the x component of the first control point for a BezierSeg.

The generalised implementation of a Shape. A closed sequence of curve segments. An Array[Double] based collection for a sequence of CurveSegs, similar to a Polygon which is an Array[Double based collection of just LineSegs. It Uses 6 Doubles for each CurveSeg. The first Double of each curveSeg is set to Negative Infinity for a LineSeg positive infinity for an ArcSeg, but represents the x component of the first control point for a BezierSeg.

Attributes

Companion
object
Supertypes
trait GeomElem
trait SpecialT
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type

A shape based graphic.

object ShapeGraphic

Companion object for the ShapeGraphic class.

Companion object for the ShapeGraphic class.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

A ShapeGraphic based on a Shape with a defined centre.

A ShapeGraphic based on a Shape with a defined centre.

Attributes

Supertypes
trait CentredElem
trait WithCentre
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes

A Shape based graphic where the Ordinal edge points, the cardinal edge points and the centre are defined. This includes Rects, Circles, aligned ellipses and curved Rects. There is no type class for this capability as one s unlikely to want to move a collection of graphics to the same point.

A Shape based graphic where the Ordinal edge points, the cardinal edge points and the centre are defined. This includes Rects, Circles, aligned ellipses and curved Rects. There is no type class for this capability as one s unlikely to want to move a collection of graphics to the same point.

Attributes

Supertypes
trait CentredElem
trait WithCentre
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
trait RectGraphic
trait RectCompound
object GridGraphic1
trait RectDraw
class RectDrawImp
trait RectFill
class RectFillImp
Show all

Attributes

Supertypes
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
trait ShapeIcon

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
object Circle
object Square

A Shape where the Ordinal edge points, the cardinal edge points and the centre are defined. This includes Rects, Circles, aligned ellipses and curved Rects.

A Shape where the Ordinal edge points, the cardinal edge points and the centre are defined. This includes Rects, Circles, aligned ellipses and curved Rects.

Attributes

Supertypes
trait CentredElem
trait WithCentre
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
trait Rect
object NoBounds
class PhiRect
class PhiRectY
class RectImp
class Sqlign
Show all
trait Shear[T]

Type class for shear transformations. just starting with the basic shears, rather than a generalised shear transformation.

Type class for shear transformations. just starting with the basic shears, rather than a generalised shear transformation.

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
object Shear

Companion object for the Shear type class. Contains implicit instances for common types.

Companion object for the Shear type class. Contains implicit instances for common types.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
Shear.type
class ShearExtensions[T](obj: T, ev: Shear[T])

Extensions class for the Shear type class.

Extensions class for the Shear type class.

Attributes

Supertypes
class Object
trait Matchable
class Any

A trait that preserves one type through all the similar 2D geometrical transformations and preserves a second type ThisT2 through the other affine transformations.

A trait that preserves one type through all the similar 2D geometrical transformations and preserves a second type ThisT2 through the other affine transformations.

Attributes

Supertypes
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes

All leaf classes of this type that will preserve their types for all the Similar 2D geometrical transformations.

All leaf classes of this type that will preserve their types for all the Similar 2D geometrical transformations.

Attributes

Supertypes
trait GeomElem
class Any
Known subtypes
trait Slate[T]

Type class for translate 2 dimensional vector transformations. Each transformation method has been given its own Type class and associated extension class. Different sets of transformations can then be combined.

Type class for translate 2 dimensional vector transformations. Each transformation method has been given its own Type class and associated extension class. Different sets of transformations can then be combined.

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
object Slate

Companion object for the Slate type class. Contains implicit instances for collections and other container classes.

Companion object for the Slate type class. Contains implicit instances for collections and other container classes.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
Slate.type
class SlateExtensions[T](value: T, ev: Slate[T])

Extension class for instances of the Slate type class.

Extension class for instances of the Slate type class.

Attributes

Supertypes
class Object
trait Matchable
class Any
class SlateTransAxesExtensions[A](thisReflector: A)(implicit evS: Slate[A], evR: TransAxes[A])

An extensions class for types providing instances of the Slate translate and TransAxes geometric transformation type classes.

An extensions class for types providing instances of the Slate translate and TransAxes geometric transformation type classes.

Attributes

Supertypes
class Object
trait Matchable
class Any
final class Sqlign extends Square, Rect, Tell2[Double, Pt2]

A square aligned to the X and Y axes.

A square aligned to the X and Y axes.

Attributes

Companion
object
Supertypes
trait Tell2[Double, Pt2]
trait Persist2[Double, Pt2]
trait PersistN
trait TellN
trait Tell
trait Persist
trait Rect
trait Square
trait Rectangle
trait Polygon4Plus
trait Polygon3Plus
trait Polygon
trait PolygonLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait Approx[Double]
trait Equals
trait ShapeCentred
trait CentredElem
trait WithCentre
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
Show all
object Sqlign

Companion object for Sqlign class, a square aligned to the X and Y axes. Contains factory apply methods.

Companion object for Sqlign class, a square aligned to the X and Y axes. Contains factory apply methods.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
Sqlign.type
trait Square extends Rectangle

the Square trait can either be a Sqlign, an aligned square or a SquareImp, a general square.

the Square trait can either be a Sqlign, an aligned square or a SquareImp, a general square.

Attributes

Companion
object
Supertypes
trait Rectangle
trait Polygon4Plus
trait Polygon3Plus
trait Polygon
trait PolygonLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait Approx[Double]
trait Equals
trait ShapeCentred
trait CentredElem
trait WithCentre
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
class Sqlign
class SquareImp
object Square extends ShapeIcon

Companion object for the Square trait. However its apply methods delegate to the SquareImp implementation class.

Companion object for the Square trait. However its apply methods delegate to the SquareImp implementation class.

Attributes

Companion
trait
Supertypes
trait ShapeIcon
class Object
trait Matchable
class Any
Self type
Square.type

Attributes

Supertypes
class Object
trait Matchable
class Any
object Star3

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
Star3.type
object Star5

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
Star5.type
object Star7

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
Star7.type
implicit class StringImplictGeom(thisString: String)

Attributes

Supertypes
class Object
trait Matchable
class Any
sealed trait TextAlign

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
object CenAlign
object LeftAlign
object RightAlign
case class TextBox(textStr: String) extends TextCell

Implementation class for TextCell.

Implementation class for TextCell.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait TextCell
class Object
trait Matchable
class Any
Show all
trait TextCell

A text cell is text in box, whose scaling is determined at display time. It will normally be displayed in some kind of command bar or table structure.

A text cell is text in box, whose scaling is determined at display time. It will normally be displayed in some kind of command bar or table structure.

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class TextBox
class TextCtrl
trait TextRect
object TextCell

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
TextCell.type
case class TextCtrl(textStr: String, action: MouseButton => Unit) extends TextCell

A graphical control, whose scaling is determined at display time. It will that will normally be displayed in some kind of command bar or table structure.

A graphical control, whose scaling is determined at display time. It will that will normally be displayed in some kind of command bar or table structure.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait TextCell
class Object
trait Matchable
class Any
Show all
case class TextFacet(str: String, sizeRatio: Double, colour: Colour, textAlign: TextAlign, baseLine: BaseLine, minSize: Double) extends GraphicFacet

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait GraphicFacet
class Object
trait Matchable
class Any
Show all
final case class TextFixed(str: String, fontSize: Double, xPosn: Double, yPosn: Double, colour: Colour, textAlign: TextAlign, baseLine: BaseLine) extends TextGraphic, GraphicAffineElem, GraphicSvgElem

Text graphic fixed in font size and orientation.

Text graphic fixed in font size and orientation.

Value parameters

posn

The point to orient from. By default this Vec2 defines the centre but from right or left depending on alignment.

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
trait TextGraphic
trait CanvElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
object TextFixed

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
TextFixed.type
trait TextGraphic extends CanvElem

Attributes

Supertypes
trait CanvElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
class TextFixed
class Textlign
class TextOutline(val str: String, val fontSize: Double, val x: Double, val y: Double, val colour: Colour, val lineWidth: Double, val align: TextAlign, val baseLine: BaseLine) extends GraphicAffineElem

Attributes

Companion
object
Supertypes
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
object TextOutline

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
trait TextRect extends TextCell

Attributes

Supertypes
trait TextCell
class Object
trait Matchable
class Any
case class TextRel(str: String, fontRel: Double, xPosn: Double, yPosn: Double, colour: Colour, align: TextAlign, baseLine: BaseLine)

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object TextRel

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
TextRel.type
final case class Textlign(str: String, fontSize: Double, xPosn: Double, yPosn: Double, colour: Colour, textAlign: TextAlign, baseLine: BaseLine) extends TextGraphic

A text Graphic aligned with the X and Y axes, but with a scaled font.

A text Graphic aligned with the X and Y axes, but with a scaled font.

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
trait TextGraphic
trait CanvElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
object Textlign

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
Textlign.type
trait TransAffDist[T] extends TransSimDist[T]

AffDistine Transformation

AffDistine Transformation

Attributes

Companion
object
Supertypes
trait TransSimDist[T]
trait TransRigidDist[T]
class Object
trait Matchable
class Any
object TransAffDist

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
class TransAffDistExtension[T](value: T, ev: TransAffDist[T])

Attributes

Supertypes
class Object
trait Matchable
class Any

Attributes

Supertypes
class Any
trait TransAlign[T]

A transformation type class allowing only translations and scaling, in order to maintain the alignment of the graphical objects.

A transformation type class allowing only translations and scaling, in order to maintain the alignment of the graphical objects.

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes
trait TransSim[T]
trait AffineTrans[T]
object TransAlign

Companion object for the TransAlign type class. Contains instances for various container classes.

Companion object for the TransAlign type class. Contains instances for various container classes.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
TransAlign.type
class TransAlignDistExtension[T](value: T, ev: TransRigidDist[T])

Attributes

Supertypes
class Object
trait Matchable
class Any
trait TransAllDist[T]

The typeclass trait for transforming an object in 2d geometry.

The typeclass trait for transforming an object in 2d geometry.

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
object TransAllDist

The companion object for the TransDist typeclass, containing instances for common classes.

The companion object for the TransDist typeclass, containing instances for common classes.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

The object can be transformed in 2 dimensional Distance space. Leaf classes must implement the single method fTrans(f: Dist2 => Dist2): T The related trait TranExtension does the same for trans(f: Vec2 => Vec2): T.

The object can be transformed in 2 dimensional Distance space. Leaf classes must implement the single method fTrans(f: Dist2 => Dist2): T The related trait TranExtension does the same for trans(f: Vec2 => Vec2): T.

Attributes

Supertypes
class Any
trait TransAxes[T]

Reflect Axis type class. It has two methods to reflect across the X and the Y axes. This has been created as a separate typeclass to TransAxes, as these transformations may preserve types that ReflectAxisOffset's transformations can not.

Reflect Axis type class. It has two methods to reflect across the X and the Y axes. This has been created as a separate typeclass to TransAxes, as these transformations may preserve types that ReflectAxisOffset's transformations can not.

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
object TransAxes

Companion object for the TransAxes typeclass trait, contains instances for common container objects including Functor instances.

Companion object for the TransAxes typeclass trait, contains instances for common container objects including Functor instances.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
TransAxes.type
class TransAxesExtensions[T](thisT: T)(implicit ev: TransAxes[T])

Class to provide extension methods for TransAxes type class.

Class to provide extension methods for TransAxes type class.

Attributes

Supertypes
class Object
trait Matchable
class Any
class TransAxesSlateExtensions[T](thisT: T)(implicit evR: TransAxes[T], evS: Slate[T])

Extension class for types that fulfill the type class interface for TransAxes and Slate.

Extension class for types that fulfill the type class interface for TransAxes and Slate.

Attributes

Supertypes
class Object
trait Matchable
class Any
trait TransDister

Trait for objects that can be transformed in 2 dimensional distance space.

Trait for objects that can be transformed in 2 dimensional distance space.

Attributes

Companion
object
Supertypes
class Any
object TransDister

The companion object for Transer.

The companion object for Transer.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
trait TransM3[T]

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
object TransM3

Companion object for the TransM3[T] type class, contains implicit instances for collections and other container classes.

Companion object for the TransM3[T] type class, contains implicit instances for collections and other container classes.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
TransM3.type
class TransM3Extensions[T](value: T, ev: TransM3[T])

Attributes

Supertypes
class Object
trait Matchable
class Any
trait TransRigidDist[T]

A Rigid or Euclidean transformations type class.

A Rigid or Euclidean transformations type class.

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes
trait TransSimDist[T]
trait TransAffDist[T]

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Supertypes
class Any
Known subtypes
trait TransSim[T] extends TransAlign[T]

A Similar Transformations type class

A Similar Transformations type class

Attributes

Companion
object
Supertypes
trait TransAlign[T]
class Object
trait Matchable
class Any
Known subtypes
trait AffineTrans[T]
object TransSim

Companion object for the TranSim transformation type class trait.

Companion object for the TranSim transformation type class trait.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
TransSim.type
trait TransSimDist[T] extends TransRigidDist[T]

A Similar Transformations type class for Dist2 distance 2 dimensional vectors.

A Similar Transformations type class for Dist2 distance 2 dimensional vectors.

Attributes

Companion
object
Supertypes
trait TransRigidDist[T]
class Object
trait Matchable
class Any
Known subtypes
trait TransAffDist[T]
object TransSimDist

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
class TransSimDistExtension[T](value: T, ev: TransSimDist[T]) extends RotateGenExtensions[T]

Attributes

Supertypes
class Object
trait Matchable
class Any

Attributes

Supertypes
class Any
Known subtypes

Attributes

Supertypes
class Object
trait Matchable
class Any
class TransSimExtension[T](value: T, ev: TransSim[T])

Attributes

Supertypes
class Object
trait Matchable
class Any
object Trapezium

Probably worth keeping

Probably worth keeping

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
Trapezium.type

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
trait Triangle extends Polygon3Plus

A mathematical triangle. The Triangle trait is implemented for its general case by Triangle.TriangleImp.

A mathematical triangle. The Triangle trait is implemented for its general case by Triangle.TriangleImp.

Attributes

Companion
object
Supertypes
trait Polygon3Plus
trait Polygon
trait PolygonLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait Approx[Double]
trait Equals
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
object Triangle

Companion object for Triangle trait. Contains apply factory methods and TriangleImp implementation for non specialised triangles.

Companion object for Triangle trait. Contains apply factory methods and TriangleImp implementation for non specialised triangles.

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
Triangle.type
final class TriangleEqui(val arrayUnsafe: Array[Double]) extends TriangleIsos, AxisFree

Equilateral triangle. will become a trait.

Equilateral triangle. will become a trait.

Attributes

Supertypes
trait AxisFree
trait TriangleIsos
trait Triangle
trait Polygon3Plus
trait Polygon
trait PolygonLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait Approx[Double]
trait Equals
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
Show all
case class TriangleFill(shape: Triangle, fill: FillFacet) extends TriangleGraphicSimple, PolygonFill

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait PolygonFill
trait CanvElem
trait ShapeFill
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all

Attributes

Supertypes
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes

Attributes

Supertypes
trait ShapeGraphic
trait BoundedElem
trait GraphicElem
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
class TriangleFill
trait TriangleIsos extends Triangle

An isosceles triangle. This trait is implemented by the equilateral triangle, TriangleEqui and the general case TriangleIsos.

An isosceles triangle. This trait is implemented by the equilateral triangle, TriangleEqui and the general case TriangleIsos.

Attributes

Supertypes
trait Triangle
trait Polygon3Plus
trait Polygon
trait PolygonLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait Approx[Double]
trait Equals
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
final case class TriangleIsosGen(arrayUnsafe: Array[Double]) extends TriangleIsos, AxisFree

The general case of an isosceles triangle.

The general case of an isosceles triangle.

Attributes

Supertypes
trait Serializable
trait Product
trait AxisFree
trait TriangleIsos
trait Triangle
trait Polygon3Plus
trait Polygon
trait PolygonLike[Pt2]
trait Pt2SeqSpec
trait SeqSpecDbl2[Pt2]
trait SeqSpecDblN[Pt2]
trait SeqSpec[Pt2]
trait Pt2SeqLike
trait SeqLikeDbl2[Pt2]
trait SeqLikeDblN[Pt2]
trait SpecialT
trait PointSeqLike[Pt2]
trait SeqLike[Pt2]
trait Approx[Double]
trait Equals
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
Show all

An unscaled polygon that is symmetrical about the Y axis.

An unscaled polygon that is symmetrical about the Y axis.

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
trait MirrorPiece
object Bishop
object King
object Knight
object Pawn
object Queen
object Rook
Show all
case object UnknownButton extends MouseButton

Indicates the mouse button is unknown.

Indicates the mouse button is unknown.

Attributes

Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class MouseButton
class Object
trait Matchable
class Any
Show all
Self type
trait Val1Vec2s[Val1T] extends ValsVec2s

Attributes

Supertypes
trait ValsVec2s
class Any
trait Val2Vec2s[Val1T, Val2T] extends ValsVec2s

Attributes

Supertypes
trait ValsVec2s
class Any
trait Val3Vec2s[Val1T, Val2T, Val3T] extends ValsVec2s

Attributes

Supertypes
trait ValsVec2s
class Any
trait ValsVec2s

Not sure how useful these classes are in the immediate as when used in a collection they will box, undermining the benefits of using an Array

Not sure how useful these classes are in the immediate as when used in a collection they will box, undermining the benefits of using an Array

Attributes

Supertypes
class Any
Known subtypes
trait Val1Vec2s[Val1T]
trait Val2Vec2s[Val1T, Val2T]
trait Val3Vec2s[Val1T, Val2T, Val3T]
class Vec2(val x: Double, val y: Double) extends Vec2Like, ApproxDbl

A 2 dimensional vector. This is similar data to Pt2. The purpose of this separate type is to encode the relative nature of the Vec2 as opposed to the absolute nature of a Pt. So usually you will want and need to add the vector to an absolute point to return to the absolute realm of points. Thanks to René Descartes for this great idea.

A 2 dimensional vector. This is similar data to Pt2. The purpose of this separate type is to encode the relative nature of the Vec2 as opposed to the absolute nature of a Pt. So usually you will want and need to add the vector to an absolute point to return to the absolute realm of points. Thanks to René Descartes for this great idea.

Attributes

Companion
object
Supertypes
trait Vec2Like
trait ApproxDbl
trait Approx[Double]
trait Equals
trait TellElemDbl2
trait Dbl2Elem
trait DblNElem
trait ValueNElem
trait SpecialT
trait TellDbl2
trait Tell2[Double, Double]
trait PersistN
trait TellN
trait Tell
trait Persist
class Object
trait Matchable
class Any
Show all
object Vec2

Companion object for Vec2 contains apply factory, unapply extractor and implicit [[Persist instances.

Companion object for Vec2 contains apply factory, unapply extractor and implicit [[Persist instances.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
Vec2.type
final class Vec2Arr(val arrayUnsafe: Array[Double]) extends ArrDbl2[Vec2]

The default Array[Double] based collection class for Vec2s. Use Polygon or LinePath to represent those structures. Conversion to and from Polygon class and LinePath class should not entail a runtime cost.

The default Array[Double] based collection class for Vec2s. Use Polygon or LinePath to represent those structures. Conversion to and from Polygon class and LinePath class should not entail a runtime cost.

Attributes

Companion
object
Supertypes
trait ArrDbl2[Vec2]
trait SeqLikeDbl2[Vec2]
trait ArrDblN[Vec2]
trait ArrValueN[Vec2]
trait ArrNoParam[Vec2]
trait Arr[Vec2]
trait Sequ[Vec2]
trait SeqLikeDblN[Vec2]
trait SpecialT
trait SeqLike[Vec2]
class Object
trait Matchable
class Any
Show all

Companion object for the Vec2Arr sequence class. Contains factory apply method and implicit instances for a number of type classes.

Companion object for the Vec2Arr sequence class. Contains factory apply method and implicit instances for a number of type classes.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
Vec2Arr.type
final class Vec2Buff(val unsafeBuffer: ArrayBuffer[Double]) extends AnyVal, BuffDbl2[Vec2]

A specialised flat ArrayBuffer[Double] based class for Vec2s collections.

A specialised flat ArrayBuffer[Double] based class for Vec2s collections.

Attributes

Companion
object
Supertypes
trait BuffDbl2[Vec2]
trait BuffDblN[Vec2]
trait BuffValueN[Vec2]
trait BuffSequ[Vec2]
trait Sequ[Vec2]
trait SeqLike[Vec2]
class AnyVal
trait Matchable
class Any
Show all

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
Vec2Buff.type

A common trait for Vec2 and Pt2 it would be good if the methods on this trait could be reduced.

A common trait for Vec2 and Pt2 it would be good if the methods on this trait could be reduced.

Attributes

Supertypes
trait ApproxDbl
trait Approx[Double]
trait Equals
trait TellElemDbl2
trait Dbl2Elem
trait DblNElem
trait ValueNElem
trait SpecialT
trait TellDbl2
trait Tell2[Double, Double]
trait PersistN
trait TellN
trait Tell
trait Persist
class Any
Show all
Known subtypes
class Pt2
class Vec2
final class Vec2M(val xMetresNum: Double, val yMetresNum: Double) extends length2M

A 2 dimensional vector specified in metres as units rather than pure scalar numbers.

A 2 dimensional vector specified in metres as units rather than pure scalar numbers.

Attributes

Companion
object
Supertypes
trait length2M
trait TellElemDbl2
trait Dbl2Elem
trait DblNElem
trait ValueNElem
trait SpecialT
trait TellDbl2
trait Tell2[Double, Double]
trait PersistN
trait TellN
trait Tell
trait Persist
class Object
trait Matchable
class Any
Show all
object Vec2M

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
Vec2M.type
class Vec2MArr(val arrayUnsafe: Array[Double]) extends ArrDbl2[Vec2M]

Attributes

Supertypes
trait ArrDbl2[Vec2M]
trait ArrDblN[Vec2M]
trait ArrValueN[Vec2M]
trait ArrNoParam[Vec2M]
trait Arr[Vec2M]
trait Sequ[Vec2M]
trait SpecialT
trait SeqLike[Vec2M]
class Object
trait Matchable
class Any
Show all
final class Vec2MBuff(val unsafeBuffer: ArrayBuffer[Double]) extends AnyVal, BuffDbl2[Vec2M]

A specialised flat ArrayBuffer[Double] based class for Pt2s collections.

A specialised flat ArrayBuffer[Double] based class for Pt2s collections.

Attributes

Supertypes
trait BuffDbl2[Vec2M]
trait BuffDblN[Vec2M]
trait BuffValueN[Vec2M]
trait BuffSequ[Vec2M]
trait Sequ[Vec2M]
trait SeqLike[Vec2M]
class AnyVal
trait Matchable
class Any
Show all
final class Vec3(val x: Double, val y: Double, val z: Double) extends Vec3Like

A 3 dimensional vector. This is similar data to Pt3. The purpose of this separate type is to encode the relative nature of the Vec3 as opposed to the absolute nature of a point. So usually you will want and need to add the vector to an absolute point to return to the absolute realm of points. Thanks to René Descartes for this great idea.

A 3 dimensional vector. This is similar data to Pt3. The purpose of this separate type is to encode the relative nature of the Vec3 as opposed to the absolute nature of a point. So usually you will want and need to add the vector to an absolute point to return to the absolute realm of points. Thanks to René Descartes for this great idea.

Attributes

Companion
object
Supertypes
trait Vec3Like
trait ApproxDbl
trait Approx[Double]
trait Equals
trait Dbl3Elem
trait DblNElem
trait ValueNElem
trait SpecialT
class Object
trait Matchable
class Any
Show all
object Vec3

Companion object for 3 dimensional vector Vec3 class. Contains apply factory unapply extractor and Persist type class instance.

Companion object for 3 dimensional vector Vec3 class. Contains apply factory unapply extractor and Persist type class instance.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
Vec3.type
trait Vec3Like extends Dbl3Elem, ApproxDbl

A common trait for Vec3 and Pt3. Don't know if this will be useful after refactoring.

A common trait for Vec3 and Pt3. Don't know if this will be useful after refactoring.

Attributes

Supertypes
trait ApproxDbl
trait Approx[Double]
trait Equals
trait Dbl3Elem
trait DblNElem
trait ValueNElem
trait SpecialT
class Object
trait Matchable
class Any
Show all
Known subtypes
class Pt3
class Vec3
trait WithCentre

An object with a 2 dimensional scar centre. The centre is a Pt2. It has the Double properties cenX and CenY

An object with a 2 dimensional scar centre. The centre is a Pt2. It has the Double properties cenX and CenY

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
trait CentredElem
class Circle
trait RectGraphic
trait RectCompound
object GridGraphic1
trait RectDraw
class RectDrawImp
trait RectFill
class RectFillImp
trait Rect
object NoBounds
class PhiRect
class PhiRectY
class RectImp
class Sqlign
trait ShapeCentred
trait Ellipse
class EllipseImp
trait Ellipselign
trait HexReg
class HexRegImp
trait Hexlign
class HexParrX
class HexParrY
trait Rectangle
trait PhiRectangle
class RectangleImp
trait Square
class SquareImp
class CircleActive
class CircleDraw
class CircleFill
trait EllipseDraw
trait EllipseFill
trait EllipseBased
trait EArc
class EArcImp
trait EArclign
class CArc
class EArclignImp
trait RectCenlign
class CanvasFx
trait PanelLike
class BlackJackGui
class BattleGui
class FlagsGui
class ReactorGUI
class ColourGen
class TessGui
class CArcExs
class Canv
class HelloWorld
class LsAEllipses
class LsAText
class LsB1
class LsB2
class LsB3
class LsC1
class LsC2
class LsC3
class LsC3b
class LsC4
class LsC5
class LsC6
class LsC7
class LsC8
class LsD1
class LsD2
class LsD3
class LsD4
class LsD5
class Panel
Show all
object XAxis extends XParallel, XorYAxis

The X Axis in 2 dimensional space.

The X Axis in 2 dimensional space.

Attributes

Supertypes
trait XorYAxis
class XParallel
class XLine
trait Serializable
trait Product
trait Equals
trait Line
trait LineLike
trait GeomElem
class Object
trait Matchable
class Any
Show all
Self type
XAxis.type
sealed case class XLine(yFactor: Double, offset: Double) extends Line

An infinite length 2 dimensional straight line defined in terms of its Y value and and an offset. It is defined for all values of X, but not for all values of x if the xFactor is 0.

An infinite length 2 dimensional straight line defined in terms of its Y value and and an offset. It is defined for all values of X, but not for all values of x if the xFactor is 0.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Line
trait LineLike
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
class XParallel
object XAxis
object YAxis
sealed class XParallel(offset: Double) extends XLine

An infinite length 2 dimensional straight line that is parrael to the X Axis. It is defined for all values of X, but for only 1 value of Y.

An infinite length 2 dimensional straight line that is parrael to the X Axis. It is defined for all values of X, but for only 1 value of Y.

Attributes

Supertypes
class XLine
trait Serializable
trait Product
trait Equals
trait Line
trait LineLike
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
object XAxis
object YAxis
class XYScaleExtensions[T](val value: T, ev: ScaleXY[T])

Attributes

Supertypes
class Object
trait Matchable
class Any
sealed trait XorYAxis extends Line

Attributes

Supertypes
trait Line
trait LineLike
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
object XAxis
object YAxis
object YAxis extends XParallel, XorYAxis

The Y Axis in 2 dimensional space.

The Y Axis in 2 dimensional space.

Attributes

Supertypes
trait XorYAxis
class XParallel
class XLine
trait Serializable
trait Product
trait Equals
trait Line
trait LineLike
trait GeomElem
class Object
trait Matchable
class Any
Show all
Self type
YAxis.type
sealed case class YLine(xFactor: Double, offset: Double) extends Line

An infinite length 2 dimensional straight line defined in terms of its X value and and an offset. It is defined for all values of Y, but not for all values of x if the xFactor is 0.

An infinite length 2 dimensional straight line defined in terms of its X value and and an offset. It is defined for all values of Y, but not for all values of x if the xFactor is 0.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Line
trait LineLike
trait GeomElem
class Object
trait Matchable
class Any
Show all
Known subtypes
class YParallel
sealed class YParallel(offset: Double) extends YLine

An infinite length 2 dimensional straight line that is parallel to the X Axis. It is defined for all values of Y, but for only 1 value of X.

An infinite length 2 dimensional straight line that is parallel to the X Axis. It is defined for all values of Y, but for only 1 value of X.

Attributes

Supertypes
class YLine
trait Serializable
trait Product
trait Equals
trait Line
trait LineLike
trait GeomElem
class Object
trait Matchable
class Any
Show all
trait length2M extends TellElemDbl2

Attributes

Supertypes
trait TellElemDbl2
trait Dbl2Elem
trait DblNElem
trait ValueNElem
trait SpecialT
trait TellDbl2
trait Tell2[Double, Double]
trait PersistN
trait TellN
trait Tell
trait Persist
class Object
trait Matchable
class Any
Show all
Known subtypes
class Vec2M

Types

Value members

Concrete methods

def BuffGraphic(initialLength: Int): ArrayBuffer[GraphicElem]

Constructs a new ArrayBuffer of GraphicElem.

Constructs a new ArrayBuffer of GraphicElem.

Attributes

def displayRowGraphics(leftPt: Pt2, actives: RArr[GraphicBounded], margin: Double): RArr[GraphicBounded]
def displayRowTexts(leftPt: Pt2, textCells: RArr[TextCell], fontSize: Double, margin: Double): RArr[BoundedElem]
def iToPolygonLikeMap[A, AA <: PolygonLike[A]](iFrom: Int, iTo: Int, iStep: Int)(f: Int => A)(implicit ev: PolygonLikeMapBuilder[A, AA]): AA

Maps over a range of Ints to a PolygonLike[A]. From the iFrom parameter value to the iTo parameter value in integer steps. Default step value is 1.Throws on non termination. Method name over loaded with a first parameter list of a single iUntil parameter, where iFrom is 0 and iStep is 1.

Maps over a range of Ints to a PolygonLike[A]. From the iFrom parameter value to the iTo parameter value in integer steps. Default step value is 1.Throws on non termination. Method name over loaded with a first parameter list of a single iUntil parameter, where iFrom is 0 and iStep is 1.

Attributes

def iToPolygonLikeMap[A, AA <: PolygonLike[A]](iTo: Int)(f: Int => A)(implicit ev: PolygonLikeMapBuilder[A, AA]): AA

Maps over a range of Ints to a PolygonLike[A]. From 0 to to the iTo value in steps of 1. Throws on non termination. Method name over loaded with a range of integers from parameter 1 to parameter 2 in steps of parameter 3.

Maps over a range of Ints to a PolygonLike[A]. From 0 to to the iTo value in steps of 1. Throws on non termination. Method name over loaded with a range of integers from parameter 1 to parameter 2 in steps of parameter 3.

Attributes

def iUntilPolygonLikeMap[A, AA <: PolygonLike[A]](iUntil: Int)(f: Int => A)(implicit ev: PolygonLikeMapBuilder[A, AA]): AA

Maps a range of Ints to PolygonLike[A]. From 0 until the iUntil parameter value in steps of 1. Throws on non termination. Method name over loaded with a range of integers from parameter 1 until parameter 2 in steps of parameter 3.

Maps a range of Ints to PolygonLike[A]. From 0 until the iUntil parameter value in steps of 1. Throws on non termination. Method name over loaded with a range of integers from parameter 1 until parameter 2 in steps of parameter 3.

Attributes

def iUntilpolygonLikeMap[A, AA <: PolygonLike[A]](iFrom: Int, iUntil: Int, iStep: Int)(f: Int => A)(implicit ev: PolygonLikeMapBuilder[A, AA]): AA

Maps a range of Ints to a PolygonLike[A]. From the iFrom value until the iUntil value in steps of iStep. Default step value is 1. Throws on non termination. Method name over loaded with a first parameter list of a single iUntil parameter, where iFrom is 0 and iStep is 1.

Maps a range of Ints to a PolygonLike[A]. From the iFrom value until the iUntil value in steps of iStep. Default step value is 1. Throws on non termination. Method name over loaded with a first parameter list of a single iUntil parameter, where iFrom is 0 and iStep is 1.

Attributes

def xVec2(x: Double): Vec2

A Vec2 along the X Axis, whose Y component = 0.

A Vec2 along the X Axis, whose Y component = 0.

Attributes

def yVec2(y: Double): Vec2

A Vec2 along the Y Axis, whose X component = 0.

A Vec2 along the Y Axis, whose X component = 0.

Attributes

Concrete fields

val Ang0: Angle

An absolute angle of 0 degrees or 0 radians.

An absolute angle of 0 degrees or 0 radians.

Attributes

val Ang120: Angle

An absolute angle of 120 degrees or 2 Pi/3 radians.

An absolute angle of 120 degrees or 2 Pi/3 radians.

Attributes

val Ang150: Angle

An absolute angle of 150 degrees or 5 Pi/6 radians.

An absolute angle of 150 degrees or 5 Pi/6 radians.

Attributes

val Ang240: Angle

An absolute angle of 240 degrees or 4 Pi/3 radians.

An absolute angle of 240 degrees or 4 Pi/3 radians.

Attributes

val Ang30: Angle

An absolute angle of 30 degrees or Pi/6 radians.

An absolute angle of 30 degrees or Pi/6 radians.

Attributes

val Ang300: Angle

An absolute angle of 300 degrees or 5 Pi/3 radians.

An absolute angle of 300 degrees or 5 Pi/3 radians.

Attributes

val Ang315: Angle

An absolute angle of 315 degrees or 7 Pi/4 radians.

An absolute angle of 315 degrees or 7 Pi/4 radians.

Attributes

val Ang330: Angle

An absolute angle of 330 degrees or 11 Pi/6 radians.

An absolute angle of 330 degrees or 11 Pi/6 radians.

Attributes

val Ang45: Angle

An absolute angle of 45 degrees or Pi/4 radians.

An absolute angle of 45 degrees or Pi/4 radians.

Attributes

val Ang60: Angle

An absolute angle of 60 degrees or Pi/3 radians.

An absolute angle of 60 degrees or Pi/3 radians.

Attributes

val Ang90: Angle

90 degrees anti-clockwise or + Pi/2 radians

90 degrees anti-clockwise or + Pi/2 radians

Attributes

val Cos30: Double
val Cos60: Double
val Deg0: AngleVec

0 degrees or 0 radians

0 degrees or 0 radians

Attributes

120 degrees anti-clockwise or + 2 * Pi/3 radians

120 degrees anti-clockwise or + 2 * Pi/3 radians

Attributes

135 degrees anti-clockwise or + 3 * Pi/4 radians

135 degrees anti-clockwise or + 3 * Pi/4 radians

Attributes

15 degrees anti-clockwise or + Pi/12 radians

15 degrees anti-clockwise or + Pi/12 radians

Attributes

150 degrees anti-clockwise or + 5 * Pi/6 radians

150 degrees anti-clockwise or + 5 * Pi/6 radians

Attributes

180 degrees or Pi radians

180 degrees or Pi radians

Attributes

210 degrees or Pi radians

210 degrees or Pi radians

Attributes

240 degrees or Pi radians

240 degrees or Pi radians

Attributes

25 degrees anti-clockwise or +25 degrees.

25 degrees anti-clockwise or +25 degrees.

Attributes

270 degrees or Pi radians

270 degrees or Pi radians

Attributes

30 degrees anti-clockwise or + Pi/6 radians

30 degrees anti-clockwise or + Pi/6 radians

Attributes

300 degrees or Pi radians

300 degrees or Pi radians

Attributes

36 degrees anti-clockwise or + Pi/5 radians

36 degrees anti-clockwise or + Pi/5 radians

Attributes

45 degrees anti-clockwise or + Pi/4 radians

45 degrees anti-clockwise or + Pi/4 radians

Attributes

60 degrees anti-clockwise or + Pi/3 radians

60 degrees anti-clockwise or + Pi/3 radians

Attributes

72 degrees anti-clockwise or + Pi2/5 radians

72 degrees anti-clockwise or + Pi2/5 radians

Attributes

90 degrees anti-clockwise or + Pi/2 radians

90 degrees anti-clockwise or + Pi/2 radians

Attributes

val Dist2Z: PtM2

Dist2(0.km, 0.km) constant

Dist2(0.km, 0.km) constant

Attributes

The Earths equatorial radius 6378.137 km.

The Earths equatorial radius 6378.137 km.

Attributes

The Earths polar radius 6356.7523 km.

The Earths polar radius 6356.7523 km.

Attributes

The number of thousands of an arc second in 180 degrees = 1800000000.

The number of thousands of an arc second in 180 degrees = 1800000000.

Attributes

The number of thousands of an arc second in 270 degrees = 2700000000.

The number of thousands of an arc second in 270 degrees = 2700000000.

Attributes

The number of thousands of an arc second in 360 degrees = 3600000000.

The number of thousands of an arc second in 360 degrees = 3600000000.

Attributes

The number of thousands of an arc second in 90 degrees = 900000000.

The number of thousands of an arc second in 90 degrees = 900000000.

Attributes

The number of thousandths of an arc second in a degree = 3600000.

The number of thousandths of an arc second in a degree = 3600000.

Attributes

The number of thousands of an arc second in a radian = 2.0626480624709636E8.

The number of thousands of an arc second in a radian = 2.0626480624709636E8.

Attributes

val Phi: Double
val Pt2Z: Pt2

The origin, the intersection of the axes for 2 dimensional vectors.

The origin, the intersection of the axes for 2 dimensional vectors.

Attributes

The number arc seconds in 180 degrees = 1800000.

The number arc seconds in 180 degrees = 1800000.

Attributes

The number of arc seconds in 360 degrees = 3600000.

The number of arc seconds in 360 degrees = 3600000.

Attributes

The number arc seconds in 90 degrees = 900000.

The number arc seconds in 90 degrees = 900000.

Attributes

val SecsInDeg: Int

The number of arc seconds in a degree = 3600.

The number of arc seconds in a degree = 3600.

Attributes

The number arc seconds in a radian = 206264.80624709636.

The number arc seconds in a radian = 206264.80624709636.

Attributes

val Sin15: Double
val Sin30: Double
val Sin60: Double

Implicits

Implicits

final implicit def AnyGeomImplicit(thisAny: Any): AnyGeomImplicit
final implicit def BuffDblExtensionsImplicit[A <: DblNElem](thisBuff: BuffDblN[A]): BuffDblExtensionsImplicit[A]
final implicit def BuffIntExtensionsImplicit[A <: IntNElem](thisBuff: BuffIntN[A]): BuffIntExtensionsImplicit[A]
final implicit def IterableExtensions[A](thisIter: Iterable[A]): IterableExtensions[A]
final implicit def MetreExtensionsImplicit(thisMetres: Length): MetreExtensionsImplicit
implicit def OrdinaledElemToExtensions[T <: OrdinaledElem](value: T)(implicit ev: Slate[T]): OrdinaledExtensions[T]
final implicit def ProlignMatrixExtension[T](value: T)(implicit ev: Prolign[T]): ProlignMatrixExtension[T]
final implicit def StringImplictGeom(thisString: String): StringImplictGeom
implicit def boundedToExtensions[T <: BoundedElem](value: T): BoundedExtensions[T]
implicit def boundingExtensions[A](value: A)(implicit evA: Bounding[A]): BoundingExtensions[A]
implicit def doubleToImplicitGeom(thisDouble: Double): DoubleImplicitGeom
implicit def intToImplicitGeom(thisInt: Int): IntGeomImplicit
implicit def reflectToExtension[T](value: T)(implicit ev: Reflect[T]): ReflectExtensions[T]
implicit def rotateM3ToExtensions[T, T1 <: T](value: T1)(implicit ev: RotateM3T[T]): RotateM3Extensions[T]
implicit def rotateToExtensions[T, T1 <: T](value: T1)(implicit ev: Rotate[T]): RotateExtensions[T]
implicit def scaleToExtensions[T](value: T)(implicit ev: Scale[T]): ScaleExtensions[T]
implicit def seqDefExtension[A](value: SeqSpec[A]): SeqSpecExtensions[A]
implicit def sequExtension[A](value: Sequ[A]): SequExtensions[A]
implicit def shearToExtensions[T](value: T)(implicit ev: Shear[T]): ShearExtensions[T]
implicit def slateToExtensions[T](value: T)(implicit ev: Slate[T]): SlateExtensions[T]
implicit def slateTransAxesToExtension[T](value: T)(implicit evS: Slate[T], evR: TransAxes[T]): SlateTransAxesExtensions[T]
implicit def transAxesSlateToExtensions[T](value: T)(implicit evR: TransAxes[T], evS: Slate[T]): TransAxesSlateExtensions[T]
implicit def transAxesToExtensions[T](value: T)(implicit ev: TransAxes[T]): TransAxesExtensions[T]
implicit def transSimToExtension[T](value: T)(implicit ev: TransSim[T]): TransSimExtension[T]
implicit def xyScaleToExtensions[T](value: T)(implicit ev: ScaleXY[T]): XYScaleExtensions[T]