PolygonM3

final
class PolygonM3(val arrayUnsafe: Array[Double]) extends AnyVal with PolygonDbl3s[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 PolygonMs on world maps.

Companion
object
trait DataImut[PtM3]
trait DataGen[PtM3]
class AnyVal
trait Matchable
class Any

Type members

Types

override
override

Value members

Concrete methods

override
def dataElem(d1: Double, d2: Double, d3: Double): PtM3
Definition Classes
override
def fElemStr: PtM3 => String
Definition Classes
override
def sidesForeach[U](f: LineSegMetre3 => U): Unit
Definition Classes
override
def typeStr: String
Definition Classes
override
def unsafeFromArray(array: Array[Double]): PolygonM3
Definition Classes
override
def vert(index: Int): PtM3
Definition Classes
override
def vertsFold[B](init: B)(f: (B, PtM3) => B): B
Definition Classes
override
def vertsForeach[U](f: PtM3 => U): Unit

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

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

Definition Classes
override
def vertsIForeach[U](f: (Int, PtM3) => Any): Unit
Definition Classes
override
def vertsMap[B, ArrB <: SeqImut[B]](f: PtM3 => B)(implicit builder: ArrBuilder[B, ArrB]): ArrB
Definition Classes
override
def vertsPrevForEach[U](f: (PtM3, PtM3) => U): Unit

This method does nothing if the vertNum < 2. Foreach PtM3 vertex applies the side effecting function to the previous PtM3 vertex with each vertex. The previous vertex to the first vertex is the last vertex of this PolygonM3. 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 PtM3 vertex applies the side effecting function to the previous PtM3 vertex with each vertex. The previous vertex to the first vertex is the last vertex of this PolygonM3. 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.

Definition Classes
def zNonNeg: Boolean

All vertices have a non negative Z component.

All vertices have a non negative Z component.

Inherited methods

@inline
override
def arrLen: Int
Definition Classes
Inherited from
DataDblNs
def dataForeach[U](f: PtM3 => U): Unit

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

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

Inherited from
DataGen
def dataIForeach[U](initIndex: Int)(f: (Int, PtM3) => 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.

Inherited from
DataGen
def dataIForeach[U](f: (Int, PtM3) => Any): 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.

Inherited from
DataGen
Inherited from
DataGen
def dataMap[B, ArrB <: SeqImut[B]](f: PtM3 => B)(implicit ev: ArrBuilder[B, ArrB]): ArrB

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

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

Inherited from
DataGen
def dataTailForeach[U](f: PtM3 => U): Unit

Foreachs over the tail of the data sequence.

Foreachs over the tail of the data sequence.

Inherited from
DataGen
def dataTailfold[B](initial: B)(f: (B, PtM3) => B): B

foldLeft over the tail of the data sequence.

foldLeft over the tail of the data sequence.

Inherited from
DataGen
override
def elemProdSize: Int
Definition Classes
Inherited from
DataDbl3s
def elemsLenStr: 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
DataGen
final override
def elemsNum: 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

Definition Classes
Inherited from
DataValueNs
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
DataGen
override
def indexData(index: Int): PtM3
Definition Classes
Inherited from
DataDbl3s
def map[B <: ElemValueN, BB <: PolygonLike[B]](f: PtM3 => B)(implicit build: PolygonBuilder[B, BB]): BB

Map this collection of data elements to PolygonLike class of type BB.

Map this collection of data elements to PolygonLike class of type BB.

Inherited from
PolygonLike
override
Definition Classes
Inherited from
DataDblNs
final override
def toString: String
Definition Classes
DataGen -> Any
Inherited from
DataGen
def unsafeReverseArray: Array[Double]

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.

Inherited from
DataDblNs
final override
def unsafeSameSize(length: Int): ThisT
Definition Classes
Inherited from
DataDblNs
override
def unsafeSetElem(index: Int, elem: PtM3): Unit
Definition Classes
Inherited from
DataDbl3s
def unsafeSetElems(index: Int, elems: PtM3*): 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
DataGen
def vertsForAll(f: PtM3 => Boolean): Boolean

This method should be overridden in final classes.

This method should be overridden in final classes.

Inherited from
PolygonLike
def vertsMin3: Boolean

Checks this polygon has at least 3 vertices.

Checks this polygon has at least 3 vertices.

Inherited from
PolygonLike
override
def vertsNum: Int
Definition Classes
Inherited from
PolygonValueN

Concrete fields

val arrayUnsafe: Array[Double]