Hexlign

ostrat.geom.Hexlign
trait Hexlign extends HexReg

A regular Hexagon aligned to the X and Y axes.

Attributes

Graph
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

Members list

Type members

Types

type ThisT <: Hexlign

Gives the final type of this class.

Gives the final type of this class.

Attributes

Inherited types

override type SideT = LineSeg

Attributes

Inherited from:
Polygon

Value members

Abstract methods

def height: Double
def width: Double

Concrete methods

override def rotate180: Hexlign

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

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

Attributes

Definition Classes
override def rotate270: Hexlign

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

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

Attributes

Definition Classes
override def rotate90: Hexlign

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

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

Attributes

Definition Classes

Inherited methods

def active(id: AnyRef): PolygonActive

Attributes

Inherited from:
Polygon
def activeChildren(id: AnyRef, children: GraphicElems): PolygonCompound

Attributes

Inherited from:
Polygon
def apo: Double

The apothem or the radius of the inner circle of this regular hexagon. The shorter radius from the centre of the hexagon to the centre of a side.

The apothem or the radius of the inner circle of this regular hexagon. The shorter radius from the centre of the hexagon to the centre of a side.

Attributes

Inherited from:
HexReg

The diameter of the inner circle of this regular hexagon. The shorter diameter from the centre of a side to the centre of the opposite side.

The diameter of the inner circle of this regular hexagon. The shorter diameter from the centre of a side to the centre of the opposite side.

Attributes

Inherited from:
HexReg
def appendArray(appendProductsLength: Int): Array[Double]

Builder helper method that provides a longer array, with the underlying array copied into the new extended Array.

Builder helper method that provides a longer array, with the underlying array copied into the new extended Array.

Attributes

Inherited from:
SeqSpecDblN
override def approx(that: Any, precision: Double): Boolean

Attributes

Definition Classes
Inherited from:
Polygon
def area: Double

The area of this HexReg. 3 * √3 * r² / 2. Or 2 * √3 * a²

The area of this HexReg. 3 * √3 * r² / 2. Or 2 * √3 * a²

Attributes

Inherited from:
HexReg
def arrTrans(f: Pt2 => Pt2): Array[Double]

Attributes

Inherited from:
Pt2SeqLike
override protected def arrayForSides: Array[Double]

Creates the Array[Double] need to implement the sides method.

Creates the Array[Double] need to implement the sides method.

Attributes

Definition Classes
Inherited from:
PolygonLikeDbl2
final def arrayLen: Int

The total number of atomic values, Ints, Doubles, Longs etc in the backing Array.

The total number of atomic values, Ints, Doubles, Longs etc in the backing Array.

Attributes

Inherited from:
SeqLikeDblN

Attributes

Inherited from:
ArrayDblBacked
override def attribs: RArr[XmlAtt]

Attributes

Definition Classes
Inherited from:
Polygon

Attributes

Inherited from:
BoundedElem
final def boundCen: Pt2

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

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

Attributes

Inherited from:
BoundedElem

Attributes

Inherited from:
BoundedElem
override def boundingHeight: Double

The height of the BoundingRect of this object.

The height of the BoundingRect of this object.

Attributes

Definition Classes
Inherited from:
Polygon
override def boundingRect: Rect

Currently throws, not sure if that is the correct behaviour. Creates a bounding rectangle for a collection of 2d points

Currently throws, not sure if that is the correct behaviour. Creates a bounding rectangle for a collection of 2d points

Attributes

Definition Classes
Inherited from:
Polygon
override def boundingWidth: Double

The width of the BoundingRect of this object.

The width of the BoundingRect of this object.

Attributes

Definition Classes
Inherited from:
Polygon

Attributes

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

This canEqual override allow the comparison of Shapes.

This canEqual override allow the comparison of Shapes.

Attributes

Inherited from:
Shape
final override def cen: Pt2

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

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

Attributes

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

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

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

Attributes

Definition Classes
Inherited from:
CentredElem
def cenPt: Pt2

The centre point of this Polygon. The default centre for Polygons is the centre of the bounding rectangle.

The centre point of this Polygon. The default centre for Polygons is the centre of the bounding rectangle.

Attributes

Inherited from:
Polygon
def cenVec: Vec2

Attributes

Inherited from:
Polygon
final override def cenX: Double

The X component of the centre.

The X component of the centre.

Attributes

Definition Classes
Inherited from:
HexReg
final override def cenY: Double

The Y component of the centre.

The Y component of the centre.

Attributes

Definition Classes
Inherited from:
HexReg

The diameter of the outer circle of this regular hexagon. The longer diameter length from a vertex to the opposite vertex. This lenght is twice the length of the hexagon side.

The diameter of the outer circle of this regular hexagon. The longer diameter length from a vertex to the opposite vertex. This lenght is twice the length of the hexagon side.

Attributes

Inherited from:
HexReg
override def draw(lineWidth: Double, lineColour: Colour): PolygonDraw

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

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

Attributes

Definition Classes
Inherited from:
Polygon
def drawActive(lineColour: Colour, lineWidth: Double, pointerID: Any): PolygonCompound

Attributes

Inherited from:
Polygon
def dropVert(v: Int): Polygon

Attributes

Inherited from:
Polygon

Attributes

Inherited from:
SeqSpecDbl2

Attributes

Inherited from:
SeqSpecDbl2
override def elemProdSize: Int

The number of atomic values, Ints, Doubles, Longs etc that specify / construct an element of this immutable flat Array based collection class.

The number of atomic values, Ints, Doubles, Longs etc that specify / construct an element of this immutable flat Array based collection class.

Attributes

Definition Classes
Inherited from:
SeqLikeDbl2
override def elemsStr: String

The element String allows the composition of toString for the whole collection. The syntax of the output will be reworked.

The element String allows the composition of toString for the whole collection. The syntax of the output will be reworked.

Attributes

Definition Classes
Inherited from:
SeqSpec
final override def fElemStr: Pt2 => String

Attributes

Definition Classes
Inherited from:
Pt2SeqLike
override def fill(fillColour: Colour): PolygonFill

Returns a fill graphic of this geometric object.

Returns a fill graphic of this geometric object.

Attributes

Definition Classes
Inherited from:
Polygon
def fillActive(fillColour: Colour, pointerID: Any): PolygonCompound

Attributes

Inherited from:
Polygon
def fillActiveDraw(fillColour: Colour, pointerID: Any, lineColour: Colour, lineWidth: Double): PolygonCompound

Creates a PolygonCompound graphic that is active with a simple 1 colour fill and has a draw graphic for the Polygon. The default values for the draw area line width of 2 and a colour of Black.

Creates a PolygonCompound graphic that is active with a simple 1 colour fill and has a draw graphic for the Polygon. The default values for the draw area line width of 2 and a colour of Black.

Attributes

Inherited from:
Polygon
def fillActiveDrawText(fillColour: Colour, pointerID: Any, str: String, fontSize: Double, lineWidth: Double, lineColour: Colour, textColour: Colour, align: TextAlign): PolygonCompound

Attributes

Inherited from:
Polygon
override def fillActiveText(fillColour: Colour, pointerEv: Any, str: String, fontRatio: Double, fontColour: Colour, align: TextAlign, baseLine: BaseLine, minSize: Double): PolygonCompound

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

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

Attributes

Definition Classes
Inherited from:
Polygon
def fillActiveTextAbs(fillColour: Colour, pointerEv: Any, str: String, fontSize: Double, fontColour: Colour, align: TextAlign): PolygonCompound

Returns compound polygon graphic with fill, active and Text members. The element parameters being entered in name order.

Returns compound polygon graphic with fill, active and Text members. The element parameters being entered in name order.

Attributes

Inherited from:
Polygon
def fillActiveTextlign(fillColour: Colour, pointerEv: Any, str: String, fontSize: Double, fontColour: Colour, align: TextAlign): PolygonCompound

Attributes

Inherited from:
Polygon
override def fillDraw(fillColour: Colour, lineColour: Colour, lineWidth: Double): PolygonCompound

Returns a fill and draw graphic of this geometric object.

Returns a fill and draw graphic of this geometric object.

Attributes

Definition Classes
Inherited from:
Polygon
def fillDrawText(fillColour: Colour, str: String, fontSize: Double, lineColour: Colour, lineWidth: Double): PolygonCompound

Attributes

Inherited from:
Polygon
override def fillInt(intValue: Int): PolygonFill

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

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

Attributes

Definition Classes
Inherited from:
Polygon
def fillOrDraw(lineWidth: Double, colour: Colour): GraphicElem

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

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

Attributes

Inherited from:
Drawable
def fillTextAbs(fillColour: Colour, str: String, fontSize: Double, textColour: Colour, layer: Int): PolygonCompound

Returns compound polygon graphic with fill and Text members. The element parameters being entered in name order.

Returns compound polygon graphic with fill and Text members. The element parameters being entered in name order.

Attributes

Inherited from:
Polygon
def flatMap[B <: ValueNElem, BB <: PolygonLike[B]](f: Pt2 => SeqLike[B])(implicit build: PolygonLikeFlatBuilder[B, BB]): BB

FlatMaps the vertices of this PolygonLike to a new to PolygonLike class of type BB.

FlatMaps the vertices of this PolygonLike to a new to PolygonLike class of type BB.

Attributes

Inherited from:
PolygonLike
def fromArray(array: Array[Double]): ThisT

Attributes

Inherited from:
SeqLikeDblN
def inRect(ratio: Double): Rect

Attributes

Inherited from:
Polygon
def inRectFrom(startCen: Pt2, ratio: Double): Rect

Approximation for an inner rectangle given a starting centre.

Approximation for an inner rectangle given a starting centre.

Attributes

Inherited from:
Polygon
def insVert(insertionPoint: Int, newVec: Pt2): Polygon

Insert vertex.

Insert vertex.

Attributes

Inherited from:
Polygon
def insVerts(insertionPoint: Int, newPts: Pt2*): Polygon

Insert vertices before the specified insertion vertex.

Insert vertices before the specified insertion vertex.

Attributes

Inherited from:
Polygon
def map[B <: ValueNElem, BB <: PolygonLike[B]](f: Pt2 => B)(implicit build: PolygonLikeMapBuilder[B, BB]): BB

Maps the vertices of this PolygonLike to a new to PolygonLike class of type BB.

Maps the vertices of this PolygonLike to a new to PolygonLike class of type BB.

Attributes

Inherited from:
PolygonLike
def mapHexReg(f: Pt2 => Pt2): HexReg

Attributes

Inherited from:
HexReg
override def negX: HexReg

Mirror, reflection transformation of Polygon across the Y axis, returns a Polygon.

Mirror, reflection transformation of Polygon across the Y axis, returns a Polygon.

Attributes

Definition Classes
Inherited from:
HexReg
override def negY: HexReg

Mirror, reflection transformation of a Polygon across the X axis, returns a Polygon.

Mirror, reflection transformation of a Polygon across the X axis, returns a Polygon.

Attributes

Definition Classes
Inherited from:
HexReg
final override def numVerts: Int

A Hexagon has 6 vertices.

A Hexagon has 6 vertices.

Attributes

Definition Classes
Inherited from:
HexReg
def optMap[B <: ValueNElem, BB <: PolygonLike[B]](f: Pt2 => Option[B])(implicit build: PolygonLikeMapBuilder[B, BB]): Option[BB]

Optionally maps the vertices of this PolygonLike to vertices of a new to PolygonLike class of type BB. If the new PolygonLike has at least 3 vertices returns Some else returns None.

Optionally maps the vertices of this PolygonLike to vertices of a new to PolygonLike class of type BB. If the new PolygonLike has at least 3 vertices returns Some else returns None.

Attributes

Inherited from:
PolygonLike

Attributes

Inherited from:
Polygon

Attributes

Inherited from:
Polygon
override def prolign(matrix: ProlignMatrix): HexReg

Prolign 2d transformations, similar transformations that retain alignment with the axes.

Prolign 2d transformations, similar transformations that retain alignment with the axes.

Attributes

Definition Classes
Inherited from:
HexReg
def ptInside(pt: Pt2): Boolean

Determines if the parameter point lies inside this Polygon.

Determines if the parameter point lies inside this Polygon.

Attributes

Inherited from:
Polygon
def radius: Double

The radius of the outer circle of this regular hexagon. The longer radius length from the centre of the Hexagon to a vertex. Also the length of the hexagon side.

The radius of the outer circle of this regular hexagon. The longer radius length from the centre of the Hexagon to a vertex. Also the length of the hexagon side.

Attributes

Inherited from:
HexReg
override def reflect(lineLike: LineLike): HexReg

Reflect 2D geometric transformation across a line, line segment or ray on a HexReg, returns a HexReg. The Return type will be narrowed in sub traits / classes.

Reflect 2D geometric transformation across a line, line segment or ray on a HexReg, returns a HexReg. The Return type will be narrowed in sub traits / classes.

Attributes

Definition Classes
Inherited from:
HexReg
override def reverse: ThisT

Reverses the order of the elements of the specifying sequence.

Reverses the order of the elements of the specifying sequence.

Attributes

Definition Classes
Inherited from:
SeqSpecDblN
def rightX: Double

Attributes

Inherited from:
Polygon
override def rotate(angle: AngleVec): HexReg

Rotation 2D geometric transformation on a Polygon, taking the rotation as a scalar measured in radians, returns a Polygon. The Return type will be narrowed in some but not all sub traits / classes.

Rotation 2D geometric transformation on a Polygon, taking the rotation as a scalar measured in radians, returns a Polygon. The Return type will be narrowed in some but not all sub traits / classes.

Attributes

Definition Classes
Inherited from:
HexReg
override def scale(operand: Double): HexReg

Uniform scaling against both X and Y axes transformation on a polygon returning a Polygon. Use the xyScale method for differential scaling. The return type of this method will be narrowed further in descendant traits / classes.

Uniform scaling against both X and Y axes transformation on a polygon returning a Polygon. Use the xyScale method for differential scaling. The return type of this method will be narrowed further in descendant traits / classes.

Attributes

Definition Classes
Inherited from:
HexReg
override def scaleXY(xOperand: Double, yOperand: Double): Polygon

XY scaling 2D geometric transformation on a Polygon returns a Polygon. This allows different scaling factors across X and Y dimensions. The return type will be narrowed in some, but not all descendant Polygon types.

XY scaling 2D geometric transformation on a Polygon returns a Polygon. This allows different scaling factors across X and Y dimensions. The return type will be narrowed in some, but not all descendant Polygon types.

Attributes

Definition Classes
Inherited from:
Polygon
final def sd0Cen: Pt2

The centre or half way point of side 0 of this polygon. Side 0 starts at the vertex v0 and ends at the vertex v1. This can be thought of as vertex 0.5.

The centre or half way point of side 0 of this polygon. Side 0 starts at the vertex v0 and ends at the vertex v1. This can be thought of as vertex 0.5.

Attributes

Inherited from:
Polygon
final def sd0CenX: Double

The X component of the centre or half way point of side 0 of this polygon.

The X component of the centre or half way point of side 0 of this polygon.

Attributes

Inherited from:
Polygon
final def sd0CenY: Double

The Y component of the centre or half way point of side 0 of this polygon.

The Y component of the centre or half way point of side 0 of this polygon.

Attributes

Inherited from:
Polygon
final def sd1Cen: Pt2

The centre or half way point of side 1 of this polygon. Side 1 starts at the v1 vertex and ends at the v2 vertex. This can be thought of as vertex 1.5

The centre or half way point of side 1 of this polygon. Side 1 starts at the v1 vertex and ends at the v2 vertex. This can be thought of as vertex 1.5

Attributes

Inherited from:
Polygon3Plus
final def sd1CenX: Double

The X component of the centre or half way point of side 1 of this polygon. The midway point between v0 and v1.

The X component of the centre or half way point of side 1 of this polygon. The midway point between v0 and v1.

Attributes

Inherited from:
Polygon3Plus
final def sd1CenY: Double

The Y component of the centre or half way point of side 1 of this polygon. the midway point between v1 and v2.

The Y component of the centre or half way point of side 1 of this polygon. the midway point between v1 and v2.

Attributes

Inherited from:
Polygon3Plus
final def sd2Cen: Pt2

The centre or half way point of side 2 of this polygon. Side 2 starts at the v1 vertex and ends at the v2 vertex. This can be thought of as vertex 2.5.

The centre or half way point of side 2 of this polygon. Side 2 starts at the v1 vertex and ends at the v2 vertex. This can be thought of as vertex 2.5.

Attributes

Inherited from:
Polygon3Plus
final def sd2CenX: Double

The X component of the centre or half way point of side 2 of this polygon.

The X component of the centre or half way point of side 2 of this polygon.

Attributes

Inherited from:
Polygon3Plus
final def sd2CenY: Double

The Y component of the centre or half way point of side 2 of this polygon.

The Y component of the centre or half way point of side 2 of this polygon.

Attributes

Inherited from:
Polygon3Plus
final def sd3Cen: Pt2

The centre or half way point of side 3 of this polygon.

The centre or half way point of side 3 of this polygon.

Attributes

Inherited from:
Polygon4Plus
final def sd3CenX: Double

The X component of the centre or half way point of side 3 of this polygon.

The X component of the centre or half way point of side 3 of this polygon.

Attributes

Inherited from:
Polygon4Plus
final def sd3CenY: Double

The Y component of the centre or half way point of side 3 of this polygon.

The Y component of the centre or half way point of side 3 of this polygon.

Attributes

Inherited from:
Polygon4Plus
final inline def sd4Cen: Pt2

The centre or half way point of side 5 of this polygon. Side 5 starts at the v4 vertex and ends at the v5 vertex. This can be thought of as vertex 4.5.

The centre or half way point of side 5 of this polygon. Side 5 starts at the v4 vertex and ends at the v5 vertex. This can be thought of as vertex 4.5.

Attributes

Inherited from:
Polygon5Plus
final def sd4CenX: Double

The X component of the centre or half way point of side 5 of this polygon. Side 5 starts at the v4 vertex and ends at the v5 vertex. This can be thought of as vertex 4.5.

The X component of the centre or half way point of side 5 of this polygon. Side 5 starts at the v4 vertex and ends at the v5 vertex. This can be thought of as vertex 4.5.

Attributes

Inherited from:
Polygon5Plus
final def sd4CenY: Double

The Y component of the centre or half way point of side 5 of this polygon. Side 5 starts at the v4 vertex and ends at the v5 vertex. This can be thought of as vertex 4.5.

The Y component of the centre or half way point of side 5 of this polygon. Side 5 starts at the v4 vertex and ends at the v5 vertex. This can be thought of as vertex 4.5.

Attributes

Inherited from:
Polygon5Plus
final inline def sd5Cen: Pt2

The centre or half way point of side 5 of this polygon. Side 5 starts at the v5 vertex and ends at the v6 vertex. This can be thought of as vertex 5.5.

The centre or half way point of side 5 of this polygon. Side 5 starts at the v5 vertex and ends at the v6 vertex. This can be thought of as vertex 5.5.

Attributes

Inherited from:
Polygon6Plus
final def sd5CenX: Double

The X component of the centre or half way point of side 6 of this polygon.

The X component of the centre or half way point of side 6 of this polygon.

Attributes

Inherited from:
Polygon6Plus
final def sd5CenY: Double

The Y component of the centre or half way point of side 5 of this polygon.

The Y component of the centre or half way point of side 5 of this polygon.

Attributes

Inherited from:
Polygon6Plus
override def setElemUnsafe(index: Int, newElem: Pt2): Unit

Sets / mutates an element in the Arr. This method should rarely be needed by end users, but is used by the initialisation and factory methods.

Sets / mutates an element in the Arr. This method should rarely be needed by end users, but is used by the initialisation and factory methods.

Attributes

Definition Classes
Inherited from:
SeqLikeDbl2
def setElemsUnsafe(index: Int, elems: Pt2*): Unit

Sets / mutates elements in the Arr. This method should rarely be needed by end users, but is used by the initialisation and factory methods.

Sets / mutates elements in the Arr. This method should rarely be needed by end users, but is used by the initialisation and factory methods.

Attributes

Inherited from:
SeqLike
override def shearX(operand: Double): Polygon

Shear 2D geometric transformation along the X Axis on a Polygon, returns a Polygon. The return type will be narrowed in some but not all sub classes and traits.

Shear 2D geometric transformation along the X Axis on a Polygon, returns a Polygon. The return type will be narrowed in some but not all sub classes and traits.

Attributes

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

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

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

Attributes

Definition Classes
Inherited from:
Polygon
override def side(index: Int): LineSeg

Returns a side of the appropriate type for the PolygonLike from the goven index. The index cycles.

Returns a side of the appropriate type for the PolygonLike from the goven index. The index cycles.

Attributes

Definition Classes
Inherited from:
Polygon
final def side0: LineSeg

Polygon side 0 from vertex 0 to vertex 1.

Polygon side 0 from vertex 0 to vertex 1.

Attributes

Inherited from:
Polygon
final def side1: LineSeg

Polygon side 1 from vertex 0 to vertex 1.

Polygon side 1 from vertex 0 to vertex 1.

Attributes

Inherited from:
Polygon3Plus
final def side2: LineSeg

Polygon side 2 from vertex 1 to vertex 2.

Polygon side 2 from vertex 1 to vertex 2.

Attributes

Inherited from:
Polygon3Plus
override def sides: LineSegArr

Attributes

Definition Classes
Inherited from:
Polygon
def sidesFold[A](init: A)(f: (A, LineSeg) => A): A

Attributes

Inherited from:
Polygon
override def sidesForeach[U](f: LineSeg => U): Unit

Attributes

Definition Classes
Inherited from:
Polygon
def sidesMap[A, AA <: Arr[A]](f: LineSeg => A)(implicit build: BuilderArrMap[A, AA]): AA

maps over the sides or edges of the Polygon These are of type LineSeg.

maps over the sides or edges of the Polygon These are of type LineSeg.

Attributes

Inherited from:
Polygon
override def slate(delta: Vec2Like): HexReg

Translate geometric transformation on a Polygon returns a Polygon. The return type of this method will be narrowed further in most descendant traits / classes. The exceptions being those classes where the centring of the geometry at the origin is part of the type.

Translate geometric transformation on a Polygon returns a Polygon. The return type of this method will be narrowed further in most descendant traits / classes. The exceptions being those classes where the centring of the geometry at the origin is part of the type.

Attributes

Definition Classes
Inherited from:
HexReg
override def slateXY(xDelta: Double, yDelta: Double): HexReg

Translate geometric transformation on a Polygon returns a Polygon. The return type of this method will be narrowed further in most descendant traits / classes. The exceptions being those classes where the centring of the geometry at the origin is part of the type.

Translate geometric transformation on a Polygon returns a Polygon. The return type of this method will be narrowed further in most descendant traits / classes. The exceptions being those classes where the centring of the geometry at the origin is part of the type.

Attributes

Definition Classes
Inherited from:
HexReg
def sline(index: Int): LineSeg

Attributes

Inherited from:
Polygon
final override def ssElem(d1: Double, d2: Double): Pt2

Method for creating new specifying sequence elements from 2 Doubles In the case of ArrDbl2 this will be thee type of the elements of the sequence.

Method for creating new specifying sequence elements from 2 Doubles In the case of ArrDbl2 this will be thee type of the elements of the sequence.

Attributes

Definition Classes
Inherited from:
Pt2SeqSpec
override def ssElemEq(a1: Pt2, a2: Pt2): Boolean

Checks if 2 values of the specifying sequence are equal.

Checks if 2 values of the specifying sequence are equal.

Attributes

Definition Classes
Inherited from:
SeqSpecDbl2
def ssFold[B](initVal: B)(f: (B, Pt2) => B): B

specifying -sequence fold.

specifying -sequence fold.

Attributes

Inherited from:
SeqSpec
def ssForAll(f: Pt2 => Boolean): Boolean

Attributes

Inherited from:
SeqSpecValueN
def ssForeach[U](f: Pt2 => U): Unit

Performs a side effecting function on each element of the specifying sequence in order.

Performs a side effecting function on each element of the specifying sequence in order.

Attributes

Inherited from:
SeqSpec
def ssForeachPairTail[U](f: (Double, Double) => U): Unit

Attributes

Inherited from:
SeqSpecDbl2
def ssIForeach[U](initIndex: Int)(f: (Int, Pt2) => U): Unit

Index with foreach on the data elements. Performs a side effecting function on the index and each element of the data sequence. It takes a function as a parameter. The function may return Unit. If it does return a non Unit value it is discarded. The [U] type parameter is there just to avoid warnings about discarded values and can be ignored by method users. The method has 2 versions / name overloads. The default start for the index is 0 if just the function parameter is passed. The second version name overload takes an Int for the first parameter list, to set the start value of the index. Note the function signature follows the foreach based convention of putting the collection element 2nd or last as seen for example in fold methods' (accumulator, element) => B signature.

Index with foreach on the data elements. Performs a side effecting function on the index and each element of the data sequence. It takes a function as a parameter. The function may return Unit. If it does return a non Unit value it is discarded. The [U] type parameter is there just to avoid warnings about discarded values and can be ignored by method users. The method has 2 versions / name overloads. The default start for the index is 0 if just the function parameter is passed. The second version name overload takes an Int for the first parameter list, to set the start value of the index. Note the function signature follows the foreach based convention of putting the collection element 2nd or last as seen for example in fold methods' (accumulator, element) => B signature.

Attributes

Inherited from:
SeqSpec
def ssIForeach[U](f: (Int, Pt2) => Any): Unit

Index with foreach on the the specifying sequence elements. Performs a side effecting function on the index and each element of the specifying sequence. It takes a function as a parameter. The function may return Unit. If it does return a non Unit value it is discarded. The [U] type parameter is there just to avoid warnings about discarded values and can be ignored by method users. The method has 2 versions / name overloads. The default start for the index is 0 if just the function parameter is passed. The second version name overload takes an Int for the first parameter list, to set the start value of the index. Note the function signature follows the foreach based convention of putting the collection element 2nd or last as seen for example in fold methods' (accumulator, element) => B signature.

Index with foreach on the the specifying sequence elements. Performs a side effecting function on the index and each element of the specifying sequence. It takes a function as a parameter. The function may return Unit. If it does return a non Unit value it is discarded. The [U] type parameter is there just to avoid warnings about discarded values and can be ignored by method users. The method has 2 versions / name overloads. The default start for the index is 0 if just the function parameter is passed. The second version name overload takes an Int for the first parameter list, to set the start value of the index. Note the function signature follows the foreach based convention of putting the collection element 2nd or last as seen for example in fold methods' (accumulator, element) => B signature.

Attributes

Inherited from:
SeqSpec
override def ssIndex(index: Int): Pt2

Accesses the specifying sequence element by a 0 based index.

Accesses the specifying sequence element by a 0 based index.

Attributes

Definition Classes
Inherited from:
SeqSpecDbl2
def ssInnerForeach[U](f: Pt2 => U): Unit

Foreachs over the inner of the specifying sequence, excludes the first and last element. Performs a side effecting function on each element of the tail of the specifying sequence in order.

Foreachs over the inner of the specifying sequence, excludes the first and last element. Performs a side effecting function on each element of the tail of the specifying sequence in order.

Attributes

Inherited from:
SeqSpec
def ssLast: Pt2

Last element of the specifying sequence.

Last element of the specifying sequence.

Attributes

Inherited from:
SeqSpec
override def ssLength: Int

The number of product elements in this collection. For example in a [[PolygonImp], this is the number of Pt2s in the Polygon

The number of product elements in this collection. For example in a [[PolygonImp], this is the number of Pt2s in the Polygon

Attributes

Definition Classes
Inherited from:
SeqSpecValueN
def ssMap[B, ArrB <: Arr[B]](f: Pt2 => B)(implicit ev: BuilderArrMap[B, ArrB]): ArrB

Specialised map to an immutable Arr of B. For Sequ dataMap is the same as map, but for other structures it will be different, for example a PolygonLike will map to another PolygonLike.

Specialised map to an immutable Arr of B. For Sequ dataMap is the same as map, but for other structures it will be different, for example a PolygonLike will map to another PolygonLike.

Attributes

Inherited from:
SeqSpec
def ssReverseForeach[U](f: Pt2 => U): Unit

Performs a side effecting function on each element of the specifying-sequence in reverse order. The function may return Unit. If it does return a non Unit value it is discarded. The [U] type parameter is there just to avoid warnings about discarded values and can be ignored by method users.

Performs a side effecting function on each element of the specifying-sequence in reverse order. The function may return Unit. If it does return a non Unit value it is discarded. The [U] type parameter is there just to avoid warnings about discarded values and can be ignored by method users.

Attributes

Inherited from:
SeqSpec
def ssTailFold[B](initial: B)(f: (B, Pt2) => B): B

FoldLeft over the tail of the specifying sequence.

FoldLeft over the tail of the specifying sequence.

Attributes

Inherited from:
SeqSpec
def ssTailForeach[U](f: Pt2 => U): Unit

Foreachs over the tail of the specifying sequence. Performs a side effecting function on each element of the tail of the specifying sequence in order.

Foreachs over the tail of the specifying sequence. Performs a side effecting function on each element of the tail of the specifying sequence in order.

Attributes

Inherited from:
SeqSpec
def str: String

The most basic Show method, paralleling the strT method on ShowT type class instances.

The most basic Show method, paralleling the strT method on ShowT type class instances.

Attributes

Inherited from:
Tell
def str0: String

Show with decimal precision of 0 places.

Show with decimal precision of 0 places.

Attributes

Inherited from:
Tell
def str1: String

Show with decimal precision of 1 place padding with a zero if necessary.

Show with decimal precision of 1 place padding with a zero if necessary.

Attributes

Inherited from:
Tell
def str2: String

Show with decimal precision of 2 places padding with zeros if necessary.

Show with decimal precision of 2 places padding with zeros if necessary.

Attributes

Inherited from:
Tell
def str3: String

Show with decimal precision of 3 places padding with zeros if necessary.

Show with decimal precision of 3 places padding with zeros if necessary.

Attributes

Inherited from:
Tell
def tell(style: ShowStyle, maxPlaces: Int, minPlaces: Int): String

Intended to be a multiple parameter comprehensive Show method. Intended to be paralleled by show method on Show type class instances.

Intended to be a multiple parameter comprehensive Show method. Intended to be paralleled by show method on Show type class instances.

Attributes

Inherited from:
Tell
def tellDepth: Int

The syntactic depth of the tell String for this object.

The syntactic depth of the tell String for this object.

Attributes

Inherited from:
Tell

Attributes

Inherited from:
BoundedElem
override def toString: String

Returns a string representation of the object.

Returns a string representation of the object.

The default representation is platform dependent.

Attributes

Returns

a string representation of the object.

Definition Classes
Tell -> Any
Inherited from:
Tell
override def typeStr: String

The type of the object to be persisted.

The type of the object to be persisted.

Attributes

Definition Classes
Inherited from:
HexReg

Maps the 1st Double of each element to a new Array[Double], copies the 2nd elements.

Maps the 1st Double of each element to a new Array[Double], copies the 2nd elements.

Attributes

Inherited from:
SeqSpecDbl2

Maps the 2nd Double of each element with the parameter function to a new Array[Double], copies the 1st Double of each element.

Maps the 2nd Double of each element with the parameter function to a new Array[Double], copies the 1st Double of each element.

Attributes

Inherited from:
SeqSpecDbl2
def unsafeMap(f: Pt2 => Pt2): Array[Double]

Maps the 2 Doubles of each element to a new Array[Double].

Maps the 2 Doubles of each element to a new Array[Double].

Attributes

Inherited from:
SeqSpecDbl2

Attributes

Inherited from:
Polygon

Attributes

Inherited from:
Polygon

Reverses the order of the elements in a new Array[Double] which is returned.

Reverses the order of the elements in a new Array[Double] which is returned.

Attributes

Inherited from:
SeqSpecDblN
def unsafeSameSize(length: Int): ThisT

Attributes

Inherited from:
SeqLikeDblN
final def unsafeVert(index: Int): Pt2

Returns the vertex of the given index. Throws if the index is out of range, if it less than 1 or greater than the number of vertices.

Returns the vertex of the given index. Throws if the index is out of range, if it less than 1 or greater than the number of vertices.

Attributes

Inherited from:
Polygon

This property determines if the type can be used with Multiple syntax.

This property determines if the type can be used with Multiple syntax.

MyObj * 7

. for describing sequences succinctly. This is not desirable for some types such as numerical and mathematical vector types as this could be confusing 3 * 4 should resolve to an Int of value 12, not a Multiple(3, 4).

Attributes

Inherited from:
Persist
final def v0: Pt2

Vertex v0, will throw on a 0 vertices polygon. By convention the default position for this vertex is at the top or 12 o'clock position of the polygon or the vertex immediately anti clockwise if there is no vertex in this position.

Vertex v0, will throw on a 0 vertices polygon. By convention the default position for this vertex is at the top or 12 o'clock position of the polygon or the vertex immediately anti clockwise if there is no vertex in this position.

Attributes

Inherited from:
Polygon
final def v0x: Double

The X component of vertex v0, will throw on a 0 vertices polygon.

The X component of vertex v0, will throw on a 0 vertices polygon.

Attributes

Inherited from:
Polygon
final def v0y: Double

The Y component of vertex v1, will throw on a 0 vertices polygon.

The Y component of vertex v1, will throw on a 0 vertices polygon.

Attributes

Inherited from:
Polygon
final def v1: Pt2

The v1 Vertex. The default convention is for the vertices to be numbered in a clockwise direction with the 1 immediately clockwise from 12 o'clock.

The v1 Vertex. The default convention is for the vertices to be numbered in a clockwise direction with the 1 immediately clockwise from 12 o'clock.

Attributes

Inherited from:
Polygon3Plus
final def v1x: Double

The X component of the v1 vertex. The default convention is for the vertices to be numbered in a clockwise direction with the 0 vertex at or immediately clockwise from 12 o'clock.

The X component of the v1 vertex. The default convention is for the vertices to be numbered in a clockwise direction with the 0 vertex at or immediately clockwise from 12 o'clock.

Attributes

Inherited from:
Polygon3Plus
final def v1y: Double

The Y component of the v1 vertex. The default convention is for the vertices to be numbered in a clockwise direction with vertex immediately clockwise from 12 o'clock.

The Y component of the v1 vertex. The default convention is for the vertices to be numbered in a clockwise direction with vertex immediately clockwise from 12 o'clock.

Attributes

Inherited from:
Polygon3Plus
final def v2: Pt2

The v2 vertex. The default convention is for the vertices to be numbered in a clockwise direction with the 0 vertex at or immediately clockwise from 12 o'clock.

The v2 vertex. The default convention is for the vertices to be numbered in a clockwise direction with the 0 vertex at or immediately clockwise from 12 o'clock.

Attributes

Inherited from:
Polygon3Plus
final def v2x: Double

The X component of the v2 vertex. The default convention is for the vertices to be numbered in a clockwise direction with vertex 1 immediately clockwise from 12 o'clock.

The X component of the v2 vertex. The default convention is for the vertices to be numbered in a clockwise direction with vertex 1 immediately clockwise from 12 o'clock.

Attributes

Inherited from:
Polygon3Plus
final def v2y: Double

The Y component of the v2 vertex. The default convention is for the vertices to be numbered in a clockwise direction with vertex immediately clockwise from 12 o'clock.

The Y component of the v2 vertex. The default convention is for the vertices to be numbered in a clockwise direction with vertex immediately clockwise from 12 o'clock.

Attributes

Inherited from:
Polygon3Plus
final def v3: Pt2

Vertex 4. The default convention is for the vertices to be numbered in a clockwise direction with the vertex 1 immediately clockwise from 12 o'clock.

Vertex 4. The default convention is for the vertices to be numbered in a clockwise direction with the vertex 1 immediately clockwise from 12 o'clock.

Attributes

Inherited from:
Polygon4Plus
final def v3x: Double

The X component of vertex 3. The default convention is for the vertices to be numbered in a clockwise direction with vertex 1 immediately clockwise from 12 o'clock.

The X component of vertex 3. The default convention is for the vertices to be numbered in a clockwise direction with vertex 1 immediately clockwise from 12 o'clock.

Attributes

Inherited from:
Polygon4Plus
final def v3y: Double

The Y component of the 4th Vertex. The default convention is for the vertices to be numbered in a clockwise direction with vertex 1 immediately clockwise from 12 o'clock.

The Y component of the 4th Vertex. The default convention is for the vertices to be numbered in a clockwise direction with vertex 1 immediately clockwise from 12 o'clock.

Attributes

Inherited from:
Polygon4Plus
final inline def v4: Pt2

Vertex 4. The default convention is for the vertices to be numbered in a clockwise direction with the vertex 1 immediately clockwise from 12 o'clock.

Vertex 4. The default convention is for the vertices to be numbered in a clockwise direction with the vertex 1 immediately clockwise from 12 o'clock.

Attributes

Inherited from:
Polygon5Plus
final def v4x: Double

The X component of the vertex 4.

The X component of the vertex 4.

Attributes

Inherited from:
Polygon5Plus
final def v4y: Double

The Y component of the vertex 4.

The Y component of the vertex 4.

Attributes

Inherited from:
Polygon5Plus
final def v5: Pt2

Vertex 5. The default convention is for the vertices to be numbered in a clockwise direction with the vertex 1 immediately clockwise from 12 o'clock.

Vertex 5. The default convention is for the vertices to be numbered in a clockwise direction with the vertex 1 immediately clockwise from 12 o'clock.

Attributes

Inherited from:
Polygon6Plus
final def v5x: Double

The X component of the 6th Vertex.

The X component of the 6th Vertex.

Attributes

Inherited from:
Polygon6Plus
final def v5y: Double

The Y component of the 6th Vertex.

The Y component of the 6th Vertex.

Attributes

Inherited from:
Polygon6Plus
def vLast: Pt2

The last vertex. The default convention places this just anti clockwise of 12 o'clock.

The last vertex. The default convention places this just anti clockwise of 12 o'clock.

Attributes

Inherited from:
Polygon
final def vLastX: Double

Attributes

Inherited from:
Polygon
final def vLastY: Double

Attributes

Inherited from:
Polygon
def vert(index: Int): Pt2

Returns the vertex of the given index. Cycles around if the index is out of range, vert 3 retruns vert 0 on a triangle.

Returns the vertex of the given index. Cycles around if the index is out of range, vert 3 retruns vert 0 on a triangle.

Attributes

Inherited from:
PolygonLike
def vertX(index: Int): Double

Returns the X component of the vertex of the given number. Will throw an exception if the vertex index is out of range.

Returns the X component of the vertex of the given number. Will throw an exception if the vertex index is out of range.

Attributes

Inherited from:
Polygon
def vertY(index: Int): Double

Returns the Y component of the vertex of the given number. Will throw an exception if the vertex index is out of range. For maximum efficiency override the implementation in sub classes.

Returns the Y component of the vertex of the given number. Will throw an exception if the vertex index is out of range. For maximum efficiency override the implementation in sub classes.

Attributes

Inherited from:
Polygon
override def verts: Pt2Arr

Attributes

Definition Classes
Inherited from:
Polygon

This method should be overridden in final classes.

This method should be overridden in final classes.

Attributes

Inherited from:
PolygonLike
final override def vertsForeach[U](f: Pt2 => U): Unit

Performs the side effecting function on the Pt2 value of each vertex.

Performs the side effecting function on the Pt2 value of each vertex.

Attributes

Definition Classes
Inherited from:
Polygon
override def vertsMap[B, ArrB <: Arr[B]](f: Pt2 => B)(implicit build: BuilderArrMap[B, ArrB]): ArrB

Maps the vertices of this polygon to an immutable Array like sequence of type B.

Maps the vertices of this polygon to an immutable Array like sequence of type B.

Type parameters

ArrB

The type of the immutable Array like sequence of B.

B

The element type of the returned sequence.

Attributes

Returns

the immutable sequence collection by applying the supplied function to each vertex.

Definition Classes
Inherited from:
Polygon

Checks this polygon has at least 3 vertices.

Checks this polygon has at least 3 vertices.

Attributes

Inherited from:
PolygonLike

Increase the number of vertices and LineSegs by breaking up the LineSegs into parts.

Increase the number of vertices and LineSegs by breaking up the LineSegs into parts.

Attributes

Inherited from:
Polygon
def vertsPrevForEach[U](f: (Pt2, Pt2) => U): Unit

This method does nothing if the vertNum < 2. Foreach vertex applies the side effecting function to the previous vertex with each vertex. The previous vertex to the first vertex is the last vertex of the PolygonLike. Note the function signature (previous, vertex) => U follows the foreach based convention of putting the collection element 2nd or last as seen for example in fold methods'(accumulator, element) => B signature.

This method does nothing if the vertNum < 2. Foreach vertex applies the side effecting function to the previous vertex with each vertex. The previous vertex to the first vertex is the last vertex of the PolygonLike. Note the function signature (previous, vertex) => U follows the foreach based convention of putting the collection element 2nd or last as seen for example in fold methods'(accumulator, element) => B signature.

Attributes

Inherited from:
PolygonLike
def vertsTrans(f: Pt2 => Pt2): Polygon

A function that takes a 2D geometric transformation on a Pt2 as a parameter and performs the transformation on all the vertices returning a new transformed Polygon

A function that takes a 2D geometric transformation on a Pt2 as a parameter and performs the transformation on all the vertices returning a new transformed Polygon

Attributes

Inherited from:
Polygon