PolygonImp

final class PolygonImp(val arrayUnsafe: Array[Double]) extends Polygon with Vec2sLikeProdDbl2 with AffinePreserve

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.

Companion
object
trait Dbl2sArr[Pt2]
trait DblNsArr[Pt2]
trait ArrImut[Pt2]
trait ArrayLike[Pt2]
trait Polygon
trait Approx[Double]
trait Equals
trait Shape
trait Fillable
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any

Type members

Types

override type ThisT = PolygonImp

Value members

Concrete methods

override def attribs: Arr[XANumeric]
Definition Classes
override def canEqual(that: Any): Boolean
Definition Classes
Equals -> Shape
def distScale(distRatio: Metres): PolygonM
override def draw(lineColour: Colour, lineWidth: Double): PolygonDraw
Definition Classes
def eq(obj: PolygonImp): Boolean
override def fill(fillColour: Colour): PolygonFill
Definition Classes
override def foldLeft[B](initial: B)(f: (B, Pt2) => B): B
Definition Classes
override def foreachVert[U](f: Pt2 => U): Unit
Definition Classes
@inline
override def foreachVertPairTail[U](f: (Double, Double) => U): Unit
Definition Classes
override def foreachVertTail[U](f: Pt2 => U): Unit
Definition Classes
def height: Double
override def insVert(insertionPoint: Int, newVec: Pt2): PolygonImp

Insert vertex.

Insert vertex.

Definition Classes
override def insVerts(insertionPoint: Int, newVecs: Pt2*): PolygonImp

Insert vertices

Insert vertices

Definition Classes
def maxX: Double
def maxY: Double
def minX: Double
def minY: Double
@inline
override def polygonMap(f: Pt2 => Pt2): PolygonImp
Definition Classes
@inline
override def ptsTrans(f: Pt2 => Pt2): PolygonImp

A method to perform all the ProlignPreserve transformations with a function from PT2 => PT2.

A method to perform all the ProlignPreserve transformations with a function from PT2 => PT2.

Definition Classes
override def typeStr: String
Definition Classes
override def unsafeFromArray(array: Array[Double]): PolygonImp
Definition Classes
@inline
def v1: Pt2
@inline
def v1x: Double
@inline
def v1y: Double
override def vert(index: Int): Pt2
Definition Classes
@inline
override def vertsArray: Array[Double]
Definition Classes
override def vertsArrayX: Array[Double]
Definition Classes
override def vertsArrayY: Array[Double]
Definition Classes
override def vertsNum: Int
Definition Classes
override def vertsTrans(f: Pt2 => Pt2): PolygonImp
Definition Classes
def width: Double
override def xVert(index: Int): Double
Definition Classes
override def yVert(index: Int): Double
Definition Classes

Inherited methods

def ++[N <: ValueNsArr[Pt2]](operand: N)(implicit factory: Int => N): N

Appends ProductValue collection with the same type of Elements to a new ValueProduct collection. Note the operand collection can have a different type, although it shares the same element type. In such a case, the returned collection will have the type of the operand not this collection.

Appends ProductValue collection with the same type of Elements to a new ValueProduct collection. Note the operand collection can have a different type, although it shares the same element type. In such a case, the returned collection will have the type of the operand not this collection.

Inherited from
ValueNsArr
def :+[N <: ValueNsArr[Pt2]](operand: Pt2)(implicit factory: Int => N): N

Appends an element to a new ProductValue collection of type N with the same type of Elements.

Appends an element to a new ProductValue collection of type N with the same type of Elements.

Inherited from
ValueNsArr
def active(id: Any): PolygonActive
Inherited from
Polygon
def activeChildren(id: Any, children: GraphicElems): PolygonCompound
Inherited from
Polygon
def append(op: Pt2): ThisT

Functionally appends the operand of type A. This alphanumeric method is not aliased by the ++ operator, to avoid confusion with numeric operators.

Functionally appends the operand of type A. This alphanumeric method is not aliased by the ++ operator, to avoid confusion with numeric operators.

Inherited from
Dbl2sArr
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.

Inherited from
DblNsArr
def apply(index: Int): Pt2
Inherited from
Dbl2sArr
override def approx(that: Any, precision: Double): Boolean
Definition Classes
Inherited from
Polygon
def arrLen: Int
Inherited from
DblNsArr
def arrTrans(f: Pt2 => Pt2): Array[Double]
Inherited from
Vec2sLikeProdDbl2
Inherited from
BoundedElem
@inline
final def boundCen: Pt2

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

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

Inherited from
BoundedElem
def boundingHeight: Double
Inherited from
BoundedElem

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

Definition Classes
Inherited from
Polygon
def boundingWidth: Double

The width of the BoundingRect of this object.

The width of the BoundingRect of this object.

Inherited from
BoundedElem
Inherited from
BoundedElem

If the geometric element has a defined centre then the cenDefault uses that, else it defaults to the centre of the bounding rectangle.

If the geometric element has a defined centre then the cenDefault uses that, else it defaults to the centre of the bounding rectangle.

Inherited from
BoundedElem
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.

Inherited from
Polygon
def cenVec: Vec2
Inherited from
Polygon
def collect[B, BB <: ArrImut[B]](pf: PartialFunction[Pt2, B])(implicit ev: ArrTBuilder[B, BB]): BB

Collects values of B by applying partial function to only those elements of A, for which the PartialFunction is defined.

Collects values of B by applying partial function to only those elements of A, for which the PartialFunction is defined.

Inherited from
ArrayLike
def collectList[B](pf: PartialFunction[Pt2, B]): List[B]

Collects a List values of B by applying partial function to only those elements of A, for which the PartialFunction is defined.

Collects a List values of B by applying partial function to only those elements of A, for which the PartialFunction is defined.

Inherited from
ArrayLike
def contains[A1 >: Pt2](elem: A1): Boolean
Inherited from
ArrayLike
@inline
def cycleGet(index: Int): Pt2

Applies an index to this ArrayLike collection which cycles back to element 0, when it reaches the end of the collection. Accepts even negative integers as an index value without throwing an exception.

Applies an index to this ArrayLike collection which cycles back to element 0, when it reaches the end of the collection. Accepts even negative integers as an index value without throwing an exception.

Inherited from
ArrayLike
def drawActive(lineColour: Colour, lineWidth: Double, pointerID: Any): PolygonCompound
Inherited from
Polygon
def eMap[B, ArrB <: ArrImut[B]](f: Pt2 => EMon[B])(implicit ev: ArrTBuilder[B, ArrB]): EMon[ArrB]
Inherited from
ArrayLike
def eMapList[B](f: Pt2 => EMon[B]): EMon[List[B]]
Inherited from
ArrayLike
def elem1sArray: Array[Double]
Inherited from
Dbl2sArr
def elem2sArray: Array[Double]
Inherited from
Dbl2sArr
final override def elemBuilder(d1: Double, d2: Double): Pt2
Definition Classes
Inherited from
Vec2sLikeProdDbl2
override def elemProductNum: Int
Definition Classes
Inherited from
Dbl2sArr
final def elemsLen: 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

Inherited from
ValueNsArr
final 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.

Inherited from
ArrImut
@inline
def empty: Boolean
Inherited from
ArrayLike
def existsCount(f: Pt2 => Boolean): Int

Counts the number of elements that fulfil the condition A => Boolean

Counts the number of elements that fulfil the condition A => Boolean

Inherited from
ArrayLike
override def fElemStr: Pt2 => String
Definition Classes
Inherited from
Vec2sLikeProdDbl2
def fHeadElse[B](noHead: => B)(ifHead: Pt2 => B): B
Inherited from
ArrayLike
def fMax[B](defaultValue: B)(f: Pt2 => B)(implicit cmp: Ordering[B]): B

Gives the maximum value of type B, produced by applying the function from A to B on each element of this collection, or the default value if the collection is empty.

Gives the maximum value of type B, produced by applying the function from A to B on each element of this collection, or the default value if the collection is empty.

Inherited from
ArrayLike
def fMin[B](defaultValue: B)(f: Pt2 => B)(implicit cmp: Ordering[B]): B

Gives the minimum value of type B, produced by applying the function from A to B on each element of this collection, or the default value if the collection is empty.

Gives the minimum value of type B, produced by applying the function from A to B on each element of this collection, or the default value if the collection is empty.

Inherited from
ArrayLike
def fillActive(fillColour: Colour, pointerID: Any): PolygonCompound
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.

Inherited from
Polygon
override def fillDraw(fillColour: Colour, lineColour: Colour, lineWidth: Double): PolygonCompound
Definition Classes
Inherited from
Polygon
def fillDrawActive(fillColour: Colour, pointerID: Any, lineWidth: Double, lineColour: Colour): PolygonCompound
Inherited from
Polygon
def fillDrawText(fillColour: Colour, str: String, fontSize: Int, lineColour: Colour, lineWidth: Double): PolygonCompound
Inherited from
Polygon
def fillDrawTextActive(fillColour: Colour, pointerID: Any, str: String, fontSize: Int, lineWidth: Double, lineColour: Colour, align: TextAlign): PolygonCompound
Inherited from
Polygon
override def fillInt(intValue: Int): PolygonFill
Definition Classes
Inherited from
Polygon
def fillText(fillColour: Colour, str: String, fontSize: Int, textColour: Colour, layer: Int): PolygonCompound
Inherited from
Polygon
def fillTextActive(fillColour: Colour, pointerEv: Any, str: String, fontSize: Int, fontColour: Colour, align: TextAlign): PolygonCompound
Inherited from
Polygon
def filter[ArrA <: ArrImut[Pt2]](f: Pt2 => Boolean)(implicit ev: ArrTBuilder[Pt2, ArrA]): ArrA
Inherited from
ArrayLike
def filterNot[ArrA <: ArrImut[Pt2]](f: Pt2 => Boolean)(implicit ev: ArrTBuilder[Pt2, ArrA]): ArrA
Inherited from
ArrayLike
def filterToList(f: Pt2 => Boolean): List[Pt2]
Inherited from
ArrayLike
def find(f: Pt2 => Boolean): Option[Pt2]
Inherited from
ArrImut
def flatMap[ArrB <: ArrImut[_]](f: Pt2 => ArrB)(implicit ev: ArrTFlatBuilder[ArrB]): ArrB

Specialised flatMap to an immutable Arr.

Specialised flatMap to an immutable Arr.

Inherited from
ArrayLike
def foldHeadTail[B](initial: B)(fHead: (B, Pt2) => B)(fTail: (B, Pt2) => B): B
Inherited from
ArrayLike
def foldTailLeft[B](initial: B)(f: (B, Pt2) => B): B
Inherited from
ArrayLike
def foldWithPrevious[B](initPrevious: Pt2, initAcc: B)(f: (B, Pt2, Pt2) => B): B
Inherited from
ValueNsArr
def forAll(p: Pt2 => Boolean): Boolean
Inherited from
ArrayLike
def foreach[U](f: Pt2 => U): Unit
Inherited from
ArrayLike
override def foreachArr(f: Dbls => Unit): Unit
Definition Classes
Inherited from
Dbl2sArr
def foreachInit[U](f: Pt2 => U): Unit
Inherited from
ArrayLike
def foreachPairTail[U](f: (Double, Double) => U): Unit
Inherited from
Dbl2sArr
def foreachReverse[U](f: Pt2 => U): Unit

Consider changing this name, as might not be appropriate to all sub classes.

Consider changing this name, as might not be appropriate to all sub classes.

Inherited from
ArrayLike
def foreachTail[U](f: Pt2 => U): Unit
Inherited from
ArrayLike
def getPair(index: Int): (Double, Double)
Inherited from
Dbl2sArr
@inline
def head: Pt2
Inherited from
ArrayLike
def head1: Double
Inherited from
Dbl2sArr
def head2: Double
Inherited from
Dbl2sArr
def headToStringElse(ifEmptyString: String): String
Inherited from
ArrayLike
def iFlatMap[ArrB <: ArrImut[_]](iInit: Int)(f: (Pt2, Int) => ArrB)(implicit build: ArrTFlatBuilder[ArrB]): ArrB

Specialised flatMap with index to an immutable Arr.

Specialised flatMap with index to an immutable Arr.

Inherited from
ArrayLike
def iFlatMap[ArrB <: ArrImut[_]](f: (Pt2, Int) => ArrB)(implicit build: ArrTFlatBuilder[ArrB]): ArrB

Specialised flatMap with index to an immutable Arr.

Specialised flatMap with index to an immutable Arr.

Inherited from
ArrayLike
def iForAll(p: (Pt2, Int) => Boolean): Boolean
Inherited from
ArrayLike
def iForeach[U](startIndex: Int)(f: (Pt2, Int) => U): Unit

foreach with index.

foreach with index.

Inherited from
ArrayLike
override def iForeach[U](f: (Pt2, Int) => U): Unit
Definition Classes
Inherited from
ArrayLike
def iForeachReverse[U](f: (Pt2, Int) => U): Unit
Inherited from
ArrayLike
def iMap[B, ArrB <: ArrImut[B]](f: (Pt2, Int) => B)(implicit ev: ArrTBuilder[B, ArrB]): ArrB

Specialised map with index to an immutable ArrBase of B. This method should be overridden in sub classes.

Specialised map with index to an immutable ArrBase of B. This method should be overridden in sub classes.

Inherited from
ArrayLike
def ifEmpty[B](vEmpty: => B, vNonEmpty: => B): B
Inherited from
ArrayLike
def indexOf(elem: Pt2): Int
Inherited from
ArrayLike
def indexWhere(f: Pt2 => Boolean): Int

Return the index of the first element where predicate is true, or -1 if predicate not true forall.

Return the index of the first element where predicate is true, or -1 if predicate not true forall.

Inherited from
ArrayLike
def iterFlatMap[B, ArrB <: ArrImut[B]](f: Pt2 => Iterable[B])(implicit ev: ArrTBuilder[B, ArrB]): ArrB

FlatMaps over a function from A to any Iterable.

FlatMaps over a function from A to any Iterable.

Inherited from
ArrayLike
@inline
def last: Pt2
Inherited from
ArrayLike
def lenStr: String

Just a handy short cut to give the length of this collection as a string.

Just a handy short cut to give the length of this collection as a string.

Inherited from
ArrayLikeBase
def map[B, ArrB <: ArrImut[B]](f: Pt2 => B)(implicit ev: ArrTBuilder[B, ArrB]): ArrB

Specialised map to an immutable ArrBase of B.

Specialised map to an immutable ArrBase of B.

Inherited from
ArrayLike
def map2To1[B, ArrB <: ArrImut[B]](f: (Pt2, Pt2) => B)(implicit ev: ArrTBuilder[B, ArrB]): ArrB

map 2 elements of A to 1 element of B. Ignores the last element on a collection of odd numbered length.

map 2 elements of A to 1 element of B. Ignores the last element on a collection of odd numbered length.

Inherited from
ArrayLike
def mapCollectGoods[B, BB <: ArrImut[B]](f: Pt2 => EMon[B])(implicit ev: ArrTBuilder[B, BB]): BB

maps from A to EMon[B], collects the good values.

maps from A to EMon[B], collects the good values.

Inherited from
ArrayLike
def mapList[B <: AnyRef](f: Pt2 => B): List[B]

maps ValueProduct collection to List

maps ValueProduct collection to List

Inherited from
ArrayLike
def mapWithAcc[B, ArrB <: ArrImut[B], C](initC: C)(f: (Pt2, C) => (B, C))(implicit ev: ArrTBuilder[B, ArrB]): ArrB
Inherited from
ArrayLike
def max[B >: Pt2](implicit ord: Ordering[B]): Pt2
Inherited from
ArrayLike
def min[B >: Pt2](implicit ord: Ordering[B]): Pt2
Inherited from
ArrayLike
def mkString(seperator: String): String

Not sure about this method.

Not sure about this method.

Inherited from
ArrayLike
def modifyWhere(pred: Pt2 => Boolean, fNewValue: Pt2 => Pt2): ThisT

Replaces all instances of the old value that fulfill predicate with the new value.

Replaces all instances of the old value that fulfill predicate with the new value.

Inherited from
ArrImut
override def negX: ThisT
Definition Classes
Inherited from
SimilarPreserve
override def negY: ThisT
Definition Classes
Inherited from
SimilarPreserve
@inline
def nonEmpty: Boolean
Inherited from
ArrayLike
def pMap[B <: ValueNElem, N <: ValueNsArr[B]](f: Pt2 => B)(implicit factory: Int => N): N
Inherited from
ValueNsArr
def parentFillText(pointerID: Any, fillColour: Colour, str: String, fontSize: Int, textColour: Colour, align: TextAlign): PolygonCompound
Inherited from
Polygon
def precisionDefault: Double
Inherited from
Polygon
override def prolign(matrix: ProlignMatrix): ThisT
Definition Classes
Inherited from
ProlignPreserve
def ptInside(pt: Pt2): Boolean

Determines if the parameter point lies inside this Polygon.

Determines if the parameter point lies inside this Polygon.

Inherited from
Polygon
override def reflect(lineLike: LineLike): ThisT
Definition Classes
Inherited from
SimilarPreserve
def removeFirst(f: Pt2 => Boolean): ThisT
Inherited from
ArrImut
def replace(oldValue: Pt2, newValue: Pt2): ThisT

Replaces all instances of the old value with the new value.

Replaces all instances of the old value with the new value.

Inherited from
ArrImut
def replaceWhere(pred: Pt2 => Boolean, newValue: Pt2): ThisT

Replaces all instances of the old value that fulfill predicate with the new value.

Replaces all instances of the old value that fulfill predicate with the new value.

Inherited from
ArrImut
@inline

Method for keeping the typer happy when returning this as an instance of ThisT.

Method for keeping the typer happy when returning this as an instance of ThisT.

Inherited from
ArrayLike
Inherited from
DblNsArr
override def rotate(angle: AngleVec): ThisT
Definition Classes
Inherited from
SimilarPreserve
override def rotate180: ThisT
Definition Classes
Inherited from
SimilarPreserve
override def rotate270: ThisT
Definition Classes
Inherited from
SimilarPreserve
override def rotate90: ThisT
Definition Classes
Inherited from
SimilarPreserve
override def scale(operand: Double): ThisT
Definition Classes
Inherited from
ProlignPreserve
override def scaleXY(xOperand: Double, yOperand: Double): ThisT
Definition Classes
Inherited from
AffinePreserve
override def shearX(operand: Double): ThisT
Definition Classes
Inherited from
AffinePreserve
override def shearY(operand: Double): ThisT
Definition Classes
Inherited from
AffinePreserve
@inline
def side(index: Int): LineSeg
Inherited from
Polygon
def sideForeach(f: LineSeg => Unit): Unit

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

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

Inherited from
Polygon
def sideIForeach(initCount: Int)(f: (LineSeg, Int) => Unit): Unit

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

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

Inherited from
Polygon
def sidesIFlatMap[AA <: ArrImut[_]](initCount: Int)(f: (LineSeg, Int) => AA)(implicit build: ArrTFlatBuilder[AA]): AA

maps with a integer counter over the sides or edges of the Polygon These are of type LineSeg.

maps with a integer counter over the sides or edges of the Polygon These are of type LineSeg.

Inherited from
Polygon
def sidesIMap[A, AA <: ArrImut[A]](initCount: Int)(f: (LineSeg, Int) => A)(implicit build: ArrTBuilder[A, AA]): AA

maps with a integer counter over the sides or edges of the Polygon These are of type LineSeg.

maps with a integer counter over the sides or edges of the Polygon These are of type LineSeg.

Inherited from
Polygon
def sidesMap[A, AA <: ArrImut[A]](f: LineSeg => A)(implicit build: ArrTBuilder[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.

Inherited from
Polygon
def slate(offset: Vec2Like): Polygon

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.

Inherited from
Polygon
override def slateXY(xDelta: Double, yDelta: Double): ThisT
Definition Classes
Inherited from
ProlignPreserve
def sline(index: Int): LineSeg
Inherited from
Polygon
def sum(implicit ev: Sumable[Pt2]): Pt2
Inherited from
ArrayLike
def sumBy(f: Pt2 => Int): Int
Inherited from
ArrayLike
Inherited from
BoundedElem

Converts this closed Polygon to LineSegs. The LineSegs collection is empty of there are less than 2 vertices.

Converts this closed Polygon to LineSegs. The LineSegs collection is empty of there are less than 2 vertices.

Inherited from
Polygon
def toList: List[Pt2]
Inherited from
ArrayLike
final override def toString: String
Definition Classes
ArrImut -> Any
Inherited from
ArrImut
def toStrsCommaFold(fToStr: Pt2 => String): String
Inherited from
ArrayLike
def toStrsCommaNoSpaceFold(fToStr: Pt2 => String): String
Inherited from
ArrayLike
def toStrsCommaParenth(fToStr: Pt2 => String): String
Inherited from
ArrayLike
def toStrsFold(seperator: String, f: Pt2 => String): String
Inherited from
ArrayLike
def toStrsSemiFold(fToStr: Pt2 => String): String
Inherited from
ArrayLike
def toStrsSemiParenth(fToStr: Pt2 => String): String
Inherited from
ArrayLike
Inherited from
BoundedElem
def unsafeCopyFromArray(opArray: Array[Double], offset: Int): Unit
Inherited from
DblNsArr
final override def unsafeNew(length: Int): ThisT
Definition Classes
Inherited from
DblNsArr
override def unsafeSetElem(index: Int, elem: Pt2): Unit
Definition Classes
Inherited from
Dbl2sArr
def unsafeSetElemSeq(index: Int, elems: Iterable[Pt2]): Unit
Inherited from
ArrImut
def unsafeSetElems(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.

Inherited from
ArrImut
def unsafeSetHead(value: Pt2): Unit

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

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

Inherited from
ArrImut
def unsafeSetLast(value: Pt2): Unit

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

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

Inherited from
ArrImut
def vLast: Pt2

The last vertex will throw an exception on a 0 vertices polygon.

The last vertex will throw an exception on a 0 vertices polygon.

Inherited from
Polygon
def vertsFoldLeft[B](initial: B)(f: (B, Pt2) => B): B
Inherited from
Polygon
def vertsIFlatMap[BB <: ArrImut[_]](iInit: Int)(f: (Pt2, Int) => BB)(implicit build: ArrTFlatBuilder[BB]): BB

flatMap with index to an immutable Arr.

flatMap with index to an immutable Arr.

Inherited from
Polygon
def vertsMap[A, ArrT <: ArrImut[A]](f: Pt2 => A)(implicit build: ArrTBuilder[A, ArrT]): ArrT
Inherited from
Polygon
def zipMap[B, C, ArrC <: ArrImut[C]](operator: ArrayLike[B])(f: (Pt2, B) => C)(implicit ev: ArrTBuilder[C, ArrC]): ArrC

Takes a second collection as a parameter and zips the elements of this collection and the operand collection and applies the specialised map function from type A and type B to type C.

Takes a second collection as a parameter and zips the elements of this collection and the operand collection and applies the specialised map function from type A and type B to type C.

Inherited from
ArrayLike
def zipMap2[B, C, D, ArrD <: ArrImut[D]](operator1: ArrayLike[B], operator2: ArrayLike[C])(f: (Pt2, B, C) => D)(implicit ev: ArrTBuilder[D, ArrD]): ArrD

Takes a second collection and third collections as parameters and zips the elements of this collection and the operand collections and applies the specialised map function from type A and type B and type C to type D.

Takes a second collection and third collections as parameters and zips the elements of this collection and the operand collections and applies the specialised map function from type A and type B and type C to type D.

Inherited from
ArrayLike

Concrete fields

val arrayUnsafe: Array[Double]