HGridMulti

ostrat.prid.phex.HGridMulti
trait HGridMulti extends HGridSys with TGridMulti

A system of multiple HGrids.

Attributes

Graph
Supertypes
trait HGridSys
trait TGridSys
class Object
trait Matchable
class Any
Known subtypes
object Grids320S0E1.type
object Grids320S0E11.type
object Grids320S0E2.type
object Grids320S10E5.type
object Grids320S11E2.type
object Grids80s0e1.type
class HGrids2
Self type

Members list

Concise view

Type members

Types

type GridT <: HGrid

The type of the tile grids within this tile grid system.

The type of the tile grids within this tile grid system.

Attributes

type ManT <: HGridMan

Value members

Abstract methods

def unsafeGetMan(r: Int, c: Int): ManT

Gets the appropriate HGridMan for the HCoord. Throws if HCoord doesn't exist.

Gets the appropriate HGridMan for the HCoord. Throws if HCoord doesn't exist.

Attributes

Concrete methods

override def adjTilesOfTile(tile: HCen): HCenArr

Attributes

Definition Classes
override def arrIndex(r: Int, c: Int): Int

Gives the index into an Arr / Array of Tile data from its tile HCen. Use sideIndex and vertIndex methods to access Side and Vertex Arr / Array SeqDef data.

Gives the index into an Arr / Array of Tile data from its tile HCen. Use sideIndex and vertIndex methods to access Side and Vertex Arr / Array SeqDef data.

Attributes

Definition Classes
override def coordCen: HCoord

Attributes

Definition Classes
override def defaultView(pxScale: Double): HGView

Attributes

Definition Classes
final override def edgesForeach(f: HSide => Unit): Unit

foreach hex edge / outer side's coordinate HSide, calls the effectual function.

foreach hex edge / outer side's coordinate HSide, calls the effectual function.

Attributes

Definition Classes
final override def findStep(startHC: HCen, endHC: HCen): Option[HDirn]

Finds step from Start HCen to target from HCen.

Finds step from Start HCen to target from HCen.

Attributes

Definition Classes
override def findStepEnd(startHC: HCen, step: HDirn): Option[HCen]

Finds step from Start HCen to target from HCen.

Finds step from Start HCen to target from HCen.

Attributes

Definition Classes
override def flatHCoordToPt2(hCoord: HCoord): Pt2

Gives a flat projection of HCoords to Pt2s. For a simple singular HGrid system this is all that is required to translate between grid coordinates and standard 2 dimensional space. For multi grids it provides a simple way to display all the tiles in the grid system, but a more complex projection may be required for fully meaningful display representation. For Example world grid systems and multi layer square tile games will require their own specialist projections.

Gives a flat projection of HCoords to Pt2s. For a simple singular HGrid system this is all that is required to translate between grid coordinates and standard 2 dimensional space. For multi grids it provides a simple way to display all the tiles in the grid system, but a more complex projection may be required for fully meaningful display representation. For Example world grid systems and multi layer square tile games will require their own specialist projections.

Attributes

Definition Classes
override def foreach(f: HCen => Unit): Unit

foreachs over each HCen hex tile centre, applying the side effecting function.

foreachs over each HCen hex tile centre, applying the side effecting function.

Attributes

Definition Classes
def gridMansFlatMap[AA <: Arr[_]](f: ManT => AA)(implicit build: ArrFlatBuilder[AA]): AA
def gridMansFold[B](initValue: B)(f: (B, ManT) => B): B
inline def gridMansFold[B](f: (B, ManT) => B)(implicit ev: DefaultValue[B]): B
def gridMansMap[A, AA <: Arr[A]](f: ManT => A)(implicit build: ArrMapBuilder[A, AA]): AA
def gridMansSum(f: ManT => Int): Int
def gridNumsFold[B](initValue: B)(f: (B, Int) => B): B
final override def hCenExists(r: Int, c: Int): Boolean

Boolean. True if the specified hex centre exists in this hex grid.

Boolean. True if the specified hex centre exists in this hex grid.

Attributes

Definition Classes
def hCenSteps(hCen: HCen): HDirnArr
override def iForeach(f: (HCen, Int) => Unit): Unit

foreachs with index over each HCen hex tile centre, apply the side effecting function.

foreachs with index over each HCen hex tile centre, apply the side effecting function.

Attributes

Definition Classes
override def iForeach(init: Int)(f: (HCen, Int) => Unit): Unit

foreachs with index over each HCen hex tile centre, apply the side effecting function.

foreachs with index over each HCen hex tile centre, apply the side effecting function.

Attributes

Definition Classes
final override def linksForeach(f: HSide => Unit): Unit

foreach hex link / inner side's coordinate HSide, calls the effectual function.

foreach hex link / inner side's coordinate HSide, calls the effectual function.

Attributes

Definition Classes
def rowCombine[A <: AnyRef](data: HCenLayer[A], indexingGrider: HGridSys): RArr[HCenRowTuple[A]]

Combine adjacent elements of data in a row.

Combine adjacent elements of data in a row.

Attributes

final override def sideArrIndex(r: Int, c: Int): Int

Temporary implementation.

Temporary implementation.

Attributes

Definition Classes
def sideBoolsFromGrids[A <: AnyRef](sideDataGrids: RArr[HSideBoolLayer]): HSideBoolLayer
final override def sidesForeach(f: HSide => Unit): Unit

foreach Hex side's coordinate HSide, calls the effectual function.

foreach Hex side's coordinate HSide, calls the effectual function.

Attributes

Definition Classes
def unsafeGetGrid(r: Int, c: Int): GridT

Gets the appropriate HGrid for the HCoord. Throws if HCoord doesn't exist.

Gets the appropriate HGrid for the HCoord. Throws if HCoord doesn't exist.

Attributes

final def unsafeGetGrid(hc: HCoord): GridT

Gets the appropriate HGrid for the HCoord. Throws if HCoord doesn't exist.

Gets the appropriate HGrid for the HCoord. Throws if HCoord doesn't exist.

Attributes

final def unsafeGetMan(hc: HCoord): ManT

Gets the appropriate HGridMan for the HCoord. Throws if HCoord doesn't exist.

Gets the appropriate HGridMan for the HCoord. Throws if HCoord doesn't exist.

Attributes

def unsafeGetManFunc[A](hc: HCoord)(f: ManT => A): A
def unsafeGetManFunc[A](r: Int, c: Int)(f: ManT => A): A
override def unsafeStepEnd(startCen: HCen, step: HDirn): HCen

Attributes

Definition Classes

Inherited methods

final def arrIndex(hc: HCen): Int

Gives the index into an Arr / Array of Tile data from its tile HCen. Use sideIndex and vertIndex methods to access Side and Vertex Arr / Array data.

Gives the index into an Arr / Array of Tile data from its tile HCen. Use sideIndex and vertIndex methods to access Side and Vertex Arr / Array data.

Attributes

Inherited from:
HGridSys

The bottom most point in the grid where the value of y is minimum.

The bottom most point in the grid where the value of y is minimum.

Attributes

Inherited from:
TGridSys

The centre point as a Vec2. Not sure why this id implemented here.

The centre point as a Vec2. Not sure why this id implemented here.

Attributes

Inherited from:
TGridSys
final def edgesMap[B, ArrT <: Arr[B]](f: HSide => B)(implicit build: ArrMapBuilder[B, ArrT]): ArrT

maps over each the grid systems outer side's coordinate HSide.

maps over each the grid systems outer side's coordinate HSide.

Attributes

Inherited from:
HGridSys
def findPath(startCen: HCen, endCen: HCen)(fTerrCost: (HCen, HCen) => OptInt): Option[HCenArr]

Attributes

Inherited from:
HGridSys
def findPathList(startCen: HCen, endCen: HCen)(fTerrCost: (HCen, HCen) => OptInt): Option[List[HCen]]

Finds path from Start hex tile centre to end tile centre given the cost function parameter.

Finds path from Start hex tile centre to end tile centre given the cost function parameter.

Attributes

Inherited from:
HGridSys
final def findStep(startR: Int, startC: Int, endR: Int, endC: Int): Option[HDirn]

Finds step from Start HCen to target from HCen.

Finds step from Start HCen to target from HCen.

Attributes

Inherited from:
HGridSys
final def flatMap[ArrT <: Arr[_]](f: HCen => ArrT)(implicit build: ArrFlatBuilder[ArrT]): ArrT

flatMaps from all hex tile centre coordinates to an Arr of type ArrT. The elements of this array can not be accessed from this grid class as the TileGrid structure is lost in the flatMap operation.

flatMaps from all hex tile centre coordinates to an Arr of type ArrT. The elements of this array can not be accessed from this grid class as the TileGrid structure is lost in the flatMap operation.

Attributes

Inherited from:
HGridSys
final def flatMapRows[ArrT <: Arr[_]](f: Int => ArrT)(implicit build: ArrFlatBuilder[ArrT]): ArrT

flatMaps over each row number.

flatMaps over each row number.

Attributes

Inherited from:
TGridSys
override def foreachRow(f: Int => Unit): Unit

For each row of tiles performs side effecting function on the r coordinate of the row.

For each row of tiles performs side effecting function on the r coordinate of the row.

Attributes

Definition Classes
Inherited from:
TGridMulti
def fullDisplayScale(dispWidth: Double, dispHeight: Double, padding: Double): Double

Attributes

Inherited from:
TGridSys
def getHCost(startCen: HCen, endCen: HCen): Int

H cost for A* path finding. To move 1 tile has a cost 2. This is because the G cost or actual cost is the sum of the terrain cost of tile of departure and the tile of arrival.

H cost for A* path finding. To move 1 tile has a cost 2. This is because the G cost or actual cost is the sum of the terrain cost of tile of departure and the tile of arrival.

Attributes

Inherited from:
HGridSys

The grids of this tile grid system.

The grids of this tile grid system.

Attributes

Inherited from:
TGridMulti
final def hCenExists(hc: HCen): Boolean

Boolean. True if the HCen hex centre exists in this hex grid.

Boolean. True if the HCen hex centre exists in this hex grid.

Attributes

Inherited from:
HGridSys
final def height: Double

Height of the tile grid system from furthest tile edge or vertex to furthest tile edge or vertex.

Height of the tile grid system from furthest tile edge or vertex to furthest tile edge or vertex.

Attributes

Inherited from:
TGridSys

The line segments of the inner sides defined in HCoord vertices.

The line segments of the inner sides defined in HCoord vertices.

Attributes

Inherited from:
HGridSys

The left most point in the grid where x is minimum.

The left most point in the grid where x is minimum.

Attributes

Inherited from:
TGridSys
final def linksFlatMap[ArrT <: Arr[_]](f: HSide => ArrT)(implicit build: ArrFlatBuilder[ArrT]): ArrT

flatMaps over each inner hex Side's coordinate HSide..

flatMaps over each inner hex Side's coordinate HSide..

Attributes

Inherited from:
HGridSys
final def linksMap[B, ArrT <: Arr[B]](f: HSide => B)(implicit build: ArrMapBuilder[B, ArrT]): ArrT

maps over each the grid systems link / inner side's coordinate HSide.

maps over each the grid systems link / inner side's coordinate HSide.

Attributes

Inherited from:
HGridSys
final def linksOptMap[B, ArrB <: Arr[B]](f: HSide => Option[B])(implicit build: ArrMapBuilder[B, ArrB]): ArrB

OptMaps over each inner hex Side's coordinate HSide.

OptMaps over each inner hex Side's coordinate HSide.

Attributes

Inherited from:
HGridSys
final def map[B, ArrB <: Arr[B]](f: HCen => B)(implicit build: ArrMapBuilder[B, ArrB]): ArrB

Maps over the HCen hex centre tile coordinates. B is used rather than A as a type parameter, as this method maps from HCen => B, corresponding to the standard Scala map function of A => B.

Maps over the HCen hex centre tile coordinates. B is used rather than A as a type parameter, as this method maps from HCen => B, corresponding to the standard Scala map function of A => B.

Attributes

Inherited from:
HGridSys
final def mapRows[B, BB <: Arr[B]](f: Int => B)(implicit build: ArrMapBuilder[B, BB]): BB

maps over each row number.

maps over each row number.

Attributes

Inherited from:
TGridSys
final def newHCenArrLayer[A <: AnyRef](implicit ct: ClassTag[A]): HCenArrLayer[A]

New hex tile data layer of RArr[A].

New hex tile data layer of RArr[A].

Attributes

Inherited from:
HGridSys
final def newHCenArrOfBuff[A <: AnyRef](implicit ct: ClassTag[A]): HCenBuffLayer[A]

Creates a new HCenBuffLayer An [[HCen] hex tile centre corresponding Arr of empty ArrayBuffers of the given or inferred type.

Creates a new HCenBuffLayer An [[HCen] hex tile centre corresponding Arr of empty ArrayBuffers of the given or inferred type.

Attributes

Inherited from:
HGridSys
final def newHCenLayer[A <: AnyRef](value: A)(implicit ct: ClassTag[A]): HCenLayer[A]

New hex tile data layer.

New hex tile data layer.

Attributes

Inherited from:
HGridSys
final def newHCenOptLayer[A <: AnyRef](implicit ct: ClassTag[A]): HCenOptLayer[A]

New hex tile data layer of optional data for this HGridSys.

New hex tile data layer of optional data for this HGridSys.

Attributes

Inherited from:
HGridSys
def newHCenSubLayer[A <: AnyRef](superGrid: HGridSys, superLayer: HCenLayer[A])(implicit ct: ClassTag[A]): HCenLayer[A]

Creates new data layer for this HGridSys from the master HGridSys's data layer.

Creates new data layer for this HGridSys from the master HGridSys's data layer.

Attributes

Inherited from:
HGridSys

Attributes

Inherited from:
HGridSys

Number of rows of tile centres. This will be different to the number of rows of sides and and will be different to the number of rows of vertices for HexGrids.

Number of rows of tile centres. This will be different to the number of rows of sides and and will be different to the number of rows of vertices for HexGrids.

Attributes

Inherited from:
TGridMulti
final def optMap[B, ArrB <: Arr[B]](f: HCen => Option[B])(implicit build: ArrMapBuilder[B, ArrB]): ArrB

Maps from all hex tile centre coordinates to an Arr of type ArrT. The elements of this array can not be accessed from this grid class as the TileGrid structure is lost in the flatMap operation.

Maps from all hex tile centre coordinates to an Arr of type ArrT. The elements of this array can not be accessed from this grid class as the TileGrid structure is lost in the flatMap operation.

Attributes

Inherited from:
HGridSys

The line segments of the outer sides defined in HCoord vertices.

The line segments of the outer sides defined in HCoord vertices.

Attributes

Inherited from:
HGridSys

Attributes

Inherited from:
HGridSys

The right most point in the grid where the value of x is maximum.

The right most point in the grid where the value of x is maximum.

Attributes

Inherited from:
TGridSys
final def sideArrIndex(hc: HSide): Int

Gives the index into an Arr / Array of Tile data from its tile HSide. Use arrIndex and vertIndex methods to access tile centre and Vertex Arr / Array data.

Gives the index into an Arr / Array of Tile data from its tile HSide. Use arrIndex and vertIndex methods to access tile centre and Vertex Arr / Array data.

Attributes

Inherited from:
HGridSys

The line segments of the sides defined in HCoord vertices.

The line segments of the sides defined in HCoord vertices.

Attributes

Inherited from:
HGridSys
final def sides: HSideArr

The HSide hex side coordinates.

The HSide hex side coordinates.

Attributes

Inherited from:
HGridSys
final def sidesFlatMap[ArrT <: Arr[_]](f: HSide => ArrT)(implicit build: ArrFlatBuilder[ArrT]): ArrT

flatMaps over each Hex Side's coordinate HSide.

flatMaps over each Hex Side's coordinate HSide.

Attributes

Inherited from:
HGridSys
final def sidesMap[B, ArrT <: Arr[B]](f: HSide => B)(implicit build: ArrMapBuilder[B, ArrT]): ArrT

maps over each Hex Side's coordinate HSide in the hex grid system.

maps over each Hex Side's coordinate HSide in the hex grid system.

Attributes

Inherited from:
HGridSys
def top: Double

The top most point in the grid where the value of y is maximum.

The top most point in the grid where the value of y is maximum.

Attributes

Inherited from:
TGridSys
def vertArrIndex(r: Int, c: Int): Int

Gives the index into an Arr / Array of side data from its tile HVert. Use arrIndex and vertIndex methods to access tile centre and side Arr / Array data.

Gives the index into an Arr / Array of side data from its tile HVert. Use arrIndex and vertIndex methods to access tile centre and side Arr / Array data.

Attributes

Inherited from:
HGridSys
final def vertArrIndex(hc: HSide): Int

Gives the index into an Arr / Array of Tile data from its tile HVert. Use arrIndex and sideArrIndex methods to access tile centre and side Arr / Array data.

Gives the index into an Arr / Array of Tile data from its tile HVert. Use arrIndex and sideArrIndex methods to access tile centre and side Arr / Array data.

Attributes

Inherited from:
HGridSys
final def width: Double

Width of the tile grid system from furthest tile edge or vertex to furthest tile edge or vertex.

Width of the tile grid system from furthest tile edge or vertex to furthest tile edge or vertex.

Attributes

Inherited from:
TGridSys

The centre of this grid in the X axis. this will be equal to the cCen Int value.

The centre of this grid in the X axis. this will be equal to the cCen Int value.

Attributes

Inherited from:
TGridSys

The centre of this grid in the y axis. For SqGrids this will be equal to the cCen Int value, but this is not the case for HGrids.

The centre of this grid in the y axis. For SqGrids this will be equal to the cCen Int value, but this is not the case for HGrids.

Attributes

Inherited from:
TGridSys
final override def yRatio: Double

The conversion factor for c column tile grid coordinates. 1.0 / sqrt(3).

The conversion factor for c column tile grid coordinates. 1.0 / sqrt(3).

Attributes

Definition Classes
Inherited from:
HGridSys

Inherited fields

final lazy val numInnerSides: Int

The number of inner sides in the hex grid system.

The number of inner sides in the hex grid system.

Attributes

Inherited from:
HGridSys
final lazy val numOuterSides: Int

The number of outer sides in the hex grid system.

The number of outer sides in the hex grid system.

Attributes

Inherited from:
HGridSys
final lazy val numSides: Int

The number of sides in the hex grid system.

The number of sides in the hex grid system.

Attributes

Inherited from:
HGridSys
final lazy override val numTiles: Int

The total number of tile centres in this tile Grid system.

The total number of tile centres in this tile Grid system.

Attributes

Inherited from:
HGridSys