LinePathLike

ostrat.geom.LinePathLike
trait LinePathLike[VT] extends SeqSpec[VT]

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

Attributes

Graph
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

Members list

Type members

Types

type LineSegT <: LineSegLike[VT]
type PolygonT <: PolygonLike[VT]
type ThisT <: LinePathLike[VT]

Gives the final type of this class.

Gives the final type of this class.

Attributes

Value members

Abstract methods

def %:(operand: VT): ThisT

Prepends a single vertex of type VT. Returns a new extended LinePathLike.

Prepends a single vertex of type VT. Returns a new extended LinePathLike.

Attributes

def +%[AA >: VT](op: VT): ThisT

Appends a single vertex of type VT. Returns a new extended LinePathLike.

Appends a single vertex of type VT. Returns a new extended LinePathLike.

Attributes

def ++(operand: ThisT): ThisT

Appends another LinePathLike of this type. Returns a new extended LinePathLike.

Appends another LinePathLike of this type. Returns a new extended LinePathLike.

Attributes

def ++-(operand: ThisT): ThisT

Appends the init of another LinePathLike of this type. Returns a new extended LinePathLike. The ++ indicates to append a sequence. the trailing - indicates to drop the last point.

Appends the init of another LinePathLike of this type. Returns a new extended LinePathLike. The ++ indicates to append a sequence. the trailing - indicates to drop the last point.

Attributes

def ++<(operand: ThisT): ThisT

Appends the reverse vertex order of another LinePathLike of this type. Returns a new extended LinePathLike.

Appends the reverse vertex order of another LinePathLike of this type. Returns a new extended LinePathLike.

Attributes

def init: ThisT

This line path with the last vertex removed. This can be useful for borders where the end points may show up in multiple line paths and therefore sometimes need to be excluded when appending.

This line path with the last vertex removed. This can be useful for borders where the end points may show up in multiple line paths and therefore sometimes need to be excluded when appending.

Attributes

def inner: ThisT

This line path with the first and last vertex's removed. This can be useful for borders where the end points may show up in multiple line paths* and therefore sometimes need to be excluded when appending.

This line path with the first and last vertex's removed. This can be useful for borders where the end points may show up in multiple line paths* and therefore sometimes need to be excluded when appending.

Attributes

def tail: ThisT

This line path with the first vertex removed. This can be useful for borders where the end points may show up in multiple line paths and therefore sometimes need to be excluded when appending.

This line path with the first vertex removed. This can be useful for borders where the end points may show up in multiple line paths and therefore sometimes need to be excluded when appending.

Attributes

Closes this LinePathLike into a PolygonLike by adding a LineSegLike from the last vertex to the first.

Closes this LinePathLike into a PolygonLike by adding a LineSegLike from the last vertex to the first.

Attributes

def |++-|(operand: ThisT): PolygonT

Appends the init of another LinePathLike of this type. Returns a PolygonLike.

Appends the init of another LinePathLike of this type. Returns a PolygonLike.

Attributes

def |++<|(operand: ThisT): PolygonT

Appends the reverse vertex order of another LinePathLike of this type. Returns a new extended closed PolygonLike.

Appends the reverse vertex order of another LinePathLike of this type. Returns a new extended closed PolygonLike.

Attributes

def |++|(operand: ThisT): PolygonT

Appends another LinePathLike of this type. Returns a PolygonLike. ++ indicates append a sequence. The enclosing lines indicate to close the polygon.

Appends another LinePathLike of this type. Returns a PolygonLike. ++ indicates append a sequence. The enclosing lines indicate to close the polygon.

Attributes

def |+|[AA >: VT](op: VT): PolygonT

Appends a single vertex of type A. Returns a PolygonLike.

Appends a single vertex of type A. Returns a PolygonLike.

Attributes

Concrete methods

def map[B <: ValueNElem, BB <: LinePathLike[B]](f: VT => B)(implicit build: LinePathBuilder[B, BB]): BB

maps to a LinePathLike. This map operates on a single LinePathLike its not to be confused with a map on Arr of LinePathLikes.

maps to a LinePathLike. This map operates on a single LinePathLike its not to be confused with a map on Arr of LinePathLikes.

Attributes

final def numVerts: Int

Inherited methods

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
def fElemStr: (VT) => String

Attributes

Inherited from:
SeqLike
def setElemUnsafe(i: Int, newElem: VT): 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

Inherited from:
SeqLike
def setElemsUnsafe(index: Int, elems: VT*): 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
def ssFold[B](initVal: B)(f: (B, VT) => B): B

specifying -sequence fold.

specifying -sequence fold.

Attributes

Inherited from:
SeqSpec
def ssForeach[U](f: VT => 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 ssIForeach[U](initIndex: Int)(f: (Int, VT) => 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, VT) => 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
def ssIndex(index: Int): VT

Accesses the specifying sequence element by a 0 based index.

Accesses the specifying sequence element by a 0 based index.

Attributes

Inherited from:
SeqSpec
def ssInnerForeach[U](f: VT => 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: VT

Last element of the specifying sequence.

Last element of the specifying sequence.

Attributes

Inherited from:
SeqSpec
def ssLength: Int

The number of data elements in the defining sequence. These collections use underlying mutable Arrays and ArrayBuffers. The length of the underlying Array will be a multiple of this number.

The number of data elements in the defining sequence. These collections use underlying mutable Arrays and ArrayBuffers. The length of the underlying Array will be a multiple of this number.

Attributes

Inherited from:
SeqSpec
def ssMap[B, ArrB <: Arr[B]](f: VT => 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: VT => 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, VT) => 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: VT => 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
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
SeqLike -> Any
Inherited from:
SeqLike

String specifying the type of this object.

String specifying the type of this object.

Attributes

Inherited from:
SeqLike