Packages

  • package root
    Definition Classes
    root
  • package ostrat

    This is the root package for the Openstrat project.

    This is the root package for the Openstrat project. The top of this package contains, 32 bit Int based Colours, the Multiple type class, a show and persistence library using RCON (Name may change), Rich Compact Object Notation, array based compound value collections of same length elements, an Either based errors framework and general utilities.

    Definition Classes
    root
  • package geom

    I chose the package name to not clash with "geometry" that may be use in other libraries This package contains Basic geometry.

    I chose the package name to not clash with "geometry" that may be use in other libraries This package contains Basic geometry. A number of implementation Value classes of the Int and Double product classes defined in ostrat. 2d graphical objects for generalised use. They are of particular use for the generic canvas based classes defined in pCanv but can be used in any display framework and for printing.

    Definition Classes
    ostrat
  • package pCanv

    The package attempts to encapsulate the various abstract canvas traits while the actual objects that populate a canvas go in package geom.

    The package attempts to encapsulate the various abstract canvas traits while the actual objects that populate a canvas go in package geom.

    Definition Classes
    ostrat
  • package pDev
    Definition Classes
    ostrat
  • package pEarth
    Definition Classes
    ostrat
  • package pEurope
  • package pFlat
  • package pPts
  • AfricaEast
  • AfricaMidWest
  • AfricaNorthEast
  • AfricaSouthern
  • AfricaSouthernPts
  • AfricaWest
  • AfricaWestGrid
  • Area1
  • Area2
  • AsiaEast
  • AsiaEastPts
  • AsiaWest
  • AtlanticNorth
  • Australasia
  • Biome
  • Canarias
  • Channel
  • ChannelApp
  • Coastal
  • Desert
  • E80Empty
  • EGFarNorth
  • EGNearNorth
  • EGNorth
  • EGrid
  • EGrid80km
  • EGridMaker
  • EGridOnly
  • ESide
  • ESideOnly
  • ETile
  • EarthAllGui
  • EarthAllMap
  • EarthAreas
  • EarthGui
  • EarthView
  • Forrest
  • GeographicSymbolKey
  • Hilly
  • ITile
  • IceCap
  • Iceland
  • Jungle
  • Lake
  • Land
  • Majorca
  • Mountains
  • MyGrid
  • Ocean
  • OfEElem
  • OfESide
  • OfETile
  • OldWorldMap
  • OpenTerrain
  • PacificTop
  • Peloponnese
  • Plains
  • PolarSouth
  • SaharaEast
  • SaharaWest
  • SeaIce
  • Sicily
  • SideEdge
  • SideNone
  • SideOnly
  • SideTerr
  • Straitsold
  • Taiga
  • TerrOnly
  • Terrain
  • TerrainNone
  • VertIn
  • WTile
  • Water
  • package pExt
    Definition Classes
    ostrat
  • package pFx

    This package is for JavaFx code.

    This package is for JavaFx code.

    Definition Classes
    ostrat
  • package pGames

    This pSimp contains the a number of games in varying stages of development.

    This pSimp contains the a number of games in varying stages of development.

    Definition Classes
    ostrat
  • package pGrid

    This package works with hexagonal and Square tile grids.

    This package works with hexagonal and Square tile grids. The tile objects themselves will not in the general case the contain grid coordinates, although it may be necessary to include this data for complex Tile values interacting with their wider environment. Its fundamental components are the grid data itself. This is just a linear array of tile data. Compile-time typed grid data. So for example a chess board can be represented by a 64 element Arr, its context determines that it is to be interpreted as an 8 by 8 square grid. Grid descriptions that describe the grid representation in the Array and GridFunctions which implement Cood to T. The grid and grid-gui hierarchies currently contain a mix of new and old systems.

    Definition Classes
    ostrat
  • package pParse

    This is the RSON package.

    This is the RSON package. Readable Succinct Object Notation. It could be just as accurately be described as Readable Succinct Data Notation, but that wouldn't scan as well and indicate it as a better replacement for JSON. RSON uses the standard semicolon separated statements combined with multilevel bracket hierarchy syntax familiar from C, C++, Java and JavaScript. Its main innovations over JSON and XML are allowing statements to be partitioned into comma delineated clauses, the empty statement, the empty clause and type inference. It uses a context free operator precedence hierarchy, with the exception of allowing the 4 ( - + ~ !) operator to be used as prefix operators. Beyond this it generally follows Scala syntax where this doesn't conflict with the preceding rules. Unlike Scala statements must finish with a semicolon unless it is the last statement of a file or a bracket block. Allowing statements to end with a newline introduces horrendous ambiguities unless one is willing to go completely down the significant whitespace route and I'm not sure if that could work even work for such a general purpose basic syntax.

    The above allows it to combine a high level of human readability, succinctness, non-programmer / non-expert write-ability, programmer flexibility and composability and fast-parsing. The initial motivating use case was strategy games, which require huge amounts of modable date files. XML and JSON, the current defaults are simply not fit for purpose. RSON aims to break down the walls between game player, game modder, professional game artist, professional game scripter, professional imperative programming wizards in languages such as C / C++ and Rust and professional functional programming wizards in languages such as Scala, Haskell and Idris.

    Definition Classes
    ostrat
  • package pStrat

    Package for miscellaneous game utilities and data.

    Package for miscellaneous game utilities and data.

    Definition Classes
    ostrat
  • package pWeb

    This package for the manipulation of Html, XML CSS and Javascript.

    This package for the manipulation of Html, XML CSS and Javascript. Some of the functionality could be replaced by Scalatags. As it currently stands the code and design quality of this package is not up to standard, but due to many other higher priorities, I have not been able to take the next step, which is to 1 improve and document it, rewrite it from scratch or 3 replace it with a Scala-tags dependency or some other library.

    Definition Classes
    ostrat
  • package strat
    Definition Classes
    ostrat
p

ostrat

pEarth

package pEarth

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. pEarth
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Package Members

  1. package pEurope
  2. package pFlat
  3. package pPts

Type Members

  1. abstract class Area1 extends GeographicSymbolKey
  2. abstract class Area2 extends GeographicSymbolKey

    A second level area

  3. trait Biome extends AnyRef
  4. class Coastal extends Water with HVertOffsTr
  5. class EGFarNorth[TileT <: Tile, SideT <: TileSide] extends EGrid80km[TileT, SideT]
  6. class EGNorth[TileT <: Tile, SideT <: TileSide] extends EGrid80km[TileT, SideT]
  7. class EGrid[TileT <: Tile, SideT <: TileSide] extends HexGridIrr[TileT, SideT]

    A Hex Grid for an area of the earth.

    A Hex Grid for an area of the earth. It is irregular because as you move towards the poles the row length decreases. The x dirn follows lines of longitude. The y Axis at the cenLong moves along a line of longitude.

  8. class EGrid80km[TileT <: Tile, SideT <: TileSide] extends EGrid[TileT, SideT]

    80km hexs.

    80km hexs. deltaX in HexCood 1 = 20km

  9. trait EGridMaker extends AnyRef

    Not sure whether the "fTile: (Int, Int, Terrain) => TileT" should be implicit.

    Not sure whether the "fTile: (Int, Int, Terrain) => TileT" should be implicit. Will change with multiple implicit parameter lists

  10. class EGridOnly extends EGrid[TerrOnly, SideOnly]
  11. trait ESide extends TileSide

    Not sure if this trait needs to exist anymore

  12. case class ESideOnly(x: Int, y: Int, terr: SideTerr) extends ESide with Product with Serializable
  13. trait ETile extends ColouredTile
  14. abstract class EarthAllGui extends EarthGui

    Not sure if this class is necessary.

    Not sure if this class is necessary. A class for whole earth maps as opposed to for example, Old World maps.

  15. class EarthAllMap[TileT <: Tile, SideT <: TileSide] extends OldWorldMap[TileT, SideT]

    An all world map, parametised by Tile and Tile side types.

  16. trait EarthAreas[TileT <: ETile, SideT <: TileSide] extends AnyRef
  17. abstract class EarthGui extends UnfixedMapGui
  18. case class EarthView(latLong: LatLong, scale: Dist, up: Boolean) extends Product with Serializable

    A view of the Earth.

    A view of the Earth. Currently North can only be up or down.

  19. trait GeographicSymbolKey extends AnyRef

    Not sure about this trait.

  20. abstract class ITile extends GeographicSymbolKey

    An irregular tile.

    An irregular tile. I've kept thisfile because code might be useful

  21. class Land extends WTile with HSides[Unit]
  22. case class MyGrid(tArr: Array[WTile], indArr: Array[Int]) extends HGrid[WTile] with Product with Serializable
  23. trait OfEElem[TileT <: Tile, SideT <: TileSide] extends OfGridElem[TileT, SideT, EGrid[TileT, SideT]]
  24. class OfESide[TileT <: Tile, SideT <: TileSide] extends OfHexSide[TileT, SideT, EGrid[TileT, SideT]] with OfEElem[TileT, SideT]
  25. class OfETile[TileT <: Tile, SideT <: TileSide] extends OfHex[TileT, SideT, EGrid[TileT, SideT]] with OfEElem[TileT, SideT]

    A stand OfTile maps from Grid Coordinates to map Vec2 and then to display Vec2.

    A stand OfTile maps from Grid Coordinates to map Vec2 and then to display Vec2. This maps from Grid Coordinate to Dist2 to Vec2

  26. class OldWorldMap[TileT <: Tile, SideT <: TileSide] extends AnyRef
  27. case class SideOnly(x: Int, y: Int) extends TileSide with Product with Serializable
  28. trait SideTerr extends AnyRef
  29. case class TerrOnly(x: Int, y: Int, terr: WTile) extends ETile with Product with Serializable
  30. trait Terrain extends AnyRef
  31. trait WTile extends WithColour
  32. trait Water extends WTile

Value Members

  1. def coodToLatLong0(inp: Cood, scale: Dist, yOffset: Int = 0): LatLong

    Not necessarily used

  2. val divN45: Latitude

    The North-South divide between Area1s and Grids at 45 degrees north approx.

  3. def fVec2ToLatLongReg(refLong: Longitude, scale: Dist, xOffset: Int, yOffset: Int = 0): (Vec2) => LatLong

    Returns a function for a specific EGrid to convert from gridVec to Latlong

  4. def vec2ToLatLong0(inp: Vec2, refLong: Longitude, scale: Dist, yOffset: Int = 0): LatLong

    Not necessarily used

  5. def vec2ToLatLongReg(inp: Vec2, refLong: Longitude, scale: Dist, xOffset: Int, yOffset: Int = 0): LatLong
  6. object AfricaEast extends Area1
  7. object AfricaMidWest extends Area2
  8. object AfricaNorthEast extends Area2
  9. object AfricaSouthern extends Area1
  10. object AfricaSouthernPts
  11. object AfricaWest extends Area1
  12. object AfricaWestGrid extends EGridMaker
  13. object Area2
  14. object AsiaEast extends Area1

    North of 25.4N degs East of 66.3E west of 141.6E 33.3N

  15. object AsiaEastPts
  16. object AsiaWest extends Area1

    North of 25.4N degs East of 66.3E west of 141.6E 33.3N

  17. object AtlanticNorth extends Area1
  18. object Australasia extends Area1
  19. object Canarias extends Area2
  20. object Channel
  21. object ChannelApp extends App
  22. object Coastal
  23. object Desert extends Biome with Product with Serializable
  24. object E80Empty extends EGridMaker
  25. object EGFarNorth
  26. object EGNearNorth
  27. object EGrid80km
  28. object ESide
  29. object ESideOnly extends Serializable
  30. object EarthAreas
  31. object EarthView extends Serializable
  32. object Forrest extends Biome with Product with Serializable
  33. object Hilly extends Terrain with Product with Serializable
  34. object IceCap extends Biome
  35. object Iceland extends Area2
  36. object Jungle extends Biome
  37. object Lake extends Water with Product with Serializable
  38. object Land
  39. object Majorca extends Area2
  40. object Mountains extends Terrain with Product with Serializable
  41. object Ocean extends Water with Product with Serializable
  42. object OpenTerrain extends Biome with Product with Serializable
  43. object PacificTop extends Area1
  44. object Peloponnese extends Area2
  45. object Plains extends Terrain with Product with Serializable
  46. object PolarSouth extends Area1
  47. object SaharaEast extends Area2
  48. object SaharaWest extends Area2
  49. object SeaIce extends WTile
  50. object Sicily extends Area2
  51. object SideEdge extends SideTerr
  52. object SideNone extends SideTerr
  53. object SideOnly extends Serializable
  54. object Straitsold extends SideTerr
  55. object Taiga extends Biome with Product with Serializable
  56. object TerrOnly extends Serializable
  57. object TerrainNone extends WTile
  58. object VertIn
  59. object WTile

Inherited from AnyRef

Inherited from Any

Ungrouped