HSysProjectionFlat

ostrat.prid.phex.HSysProjectionFlat
final case class HSysProjectionFlat(parent: HGridSys, panel: Panel) extends HSysProjection, TSysProjectionFlat

Projects HGridSys on to a flat surface for 2D graphics. Like all projections attempts to remove tiles that can't be seen.

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Members list

Type members

Types

type SysT = HGridSys

The type of the grid system this projects from.

The type of the grid system this projects from.

Attributes

Value members

Concrete methods

This is the method to recreate the grid system subset that should be displayed.

This is the method to recreate the grid system subset that should be displayed.

Attributes

override def hCenPtMap(f: (HCen, Pt2) => GraphicElem): GraphicElems

Maps the HCens visible in this projection with their respective projected Pt2s.

Maps the HCens visible in this projection with their respective projected Pt2s.

Attributes

Definition Classes
override def hCenSizedMap(hexScale: Double)(f: (HCen, Pt2) => GraphicElem): GraphicElems

Attributes

Definition Classes
override def ifTileScale(minScale: Double, elems: => GraphicElems): GraphicElems

Filters the GraphicElems away if the tile scale is too small to display the elements satisfactorily.

Filters the GraphicElems away if the tile scale is too small to display the elements satisfactorily.

Attributes

Definition Classes
override def innerSideLines: LineSegArr

The visible inner hex sides.

The visible inner hex sides.

Attributes

Definition Classes
override def outerSideLines: LineSegArr

The visible outer hex sides.

The visible outer hex sides.

Attributes

Definition Classes
override def pixelsPerR: Double

The number of pixels per tile grid row unit.

The number of pixels per tile grid row unit.

Attributes

Definition Classes
override def pixelsPerTile: Double

The number of pixels per tile from side to opposite side.

The number of pixels per tile from side to opposite side.

Attributes

Definition Classes
override def setView(view: Any): Unit

Set the perspective, The position of the view. the rotation and the scale.

Set the perspective, The position of the view. the rotation and the scale.

Attributes

Definition Classes
override def sideLines: LineSegArr

The visible hex sides.

The visible hex sides.

Attributes

Definition Classes
override def tileActives: RArr[PolygonActive]

Active projected Polygons of the tiles.

Active projected Polygons of the tiles.

Attributes

Definition Classes
override def tilePolygons: PolygonGenArr

Projected Polygons of the tiles.

Projected Polygons of the tiles.

Attributes

Definition Classes
override def transCoord(hc: HCoord): Pt2

Generally unsafe. Transforms an HCoord to a Pt2. Only use for HCoords that are guaranteed displayed by the projection.

Generally unsafe. Transforms an HCoord to a Pt2. Only use for HCoords that are guaranteed displayed by the projection.

Attributes

Definition Classes
override def transHSides(inp: HSepArr): LineSegArr

transforms and filters out non visible HSeps.

transforms and filters out non visible HSeps.

Attributes

Definition Classes
override def transLineSeg(seg: LineSegHC): LineSeg

Attributes

Definition Classes
override def transOptCoord(hc: HCoord): Option[Pt2]

Optionally transforms an HCoord to a Pt2. This is safe unlike transCoord.

Optionally transforms an HCoord to a Pt2. This is safe unlike transCoord.

Attributes

Definition Classes
override def transOptHVOffset(hvo: HvOffset): Option[Pt2]

Attributes

Definition Classes
override def transOptLineSeg(seg: LineSegHC): Option[LineSeg]

Attributes

Definition Classes
override def transTile(hc: HCen): Option[Polygon]

Attributes

Definition Classes

Inherited methods

def focusAdj(uniStr: String)(f: (Vec2, Double) => Vec2): PolygonCompound

Attributes

Inherited from:
TSysProjectionFlat

Attributes

Inherited from:
TSysProjectionFlat

Attributes

Inherited from:
TSysProjectionFlat

Attributes

Inherited from:
TSysProjectionFlat

Attributes

Inherited from:
TSysProjectionFlat
def hCenFlatMap[ArrB <: Arr[_]](f: HCen => ArrB)(implicit build: BuilderArrFlat[ArrB]): ArrB

FlatMaps the HCens visible in this projection.

FlatMaps the HCens visible in this projection.

Attributes

Inherited from:
HSysProjection
def hCenIfMap[B, ArrB <: Arr[B]](f1: HCen => Boolean)(f2: HCen => B)(implicit build: BuilderArrMap[B, ArrB]): ArrB

IfMaps the HCens visible in this projection. The mapping function is only applied if the first function condition is true.

IfMaps the HCens visible in this projection. The mapping function is only applied if the first function condition is true.

Attributes

Inherited from:
HSysProjection
def hCenMap[B, ArrB <: Arr[B]](f: HCen => B)(implicit build: BuilderArrMap[B, ArrB]): ArrB

Maps the HCens of this projection.

Maps the HCens of this projection.

Attributes

Inherited from:
HSysProjection
def hCenOptMap[B, ArrB <: Arr[B]](f: HCen => Option[B])(implicit build: BuilderArrMap[B, ArrB]): ArrB

OptMaps the HCens visible in this projection.

OptMaps the HCens visible in this projection.

Attributes

Inherited from:
HSysProjection

Produces the hex tile polygons modified by the HCornerLayer parameter. Polygons not visible in the projection should be excluded.

Produces the hex tile polygons modified by the HCornerLayer parameter. Polygons not visible in the projection should be excluded.

Attributes

Inherited from:
HSysProjection
def hCensIfPtFlatMap[ArrB <: Arr[_]](f1: HCen => Boolean)(f2: (HCen, Pt2) => ArrB)(implicit build: BuilderArrFlat[ArrB]): ArrB

IfFlatMaps the HCens visible in this projection with their respective projected Pt2s. The flatMapping function is only applied if the first function condition is true

IfFlatMaps the HCens visible in this projection with their respective projected Pt2s. The flatMapping function is only applied if the first function condition is true

Attributes

Inherited from:
HSysProjection
def hCensIfPtMap[B, ArrB <: Arr[B]](f1: HCen => Boolean)(f2: (HCen, Pt2) => B)(implicit build: BuilderArrMap[B, ArrB]): ArrB

IfMaps the HCens visible in this projection with their respective projected Pt2s. The mapping function is only applied if the first function condition is true.

IfMaps the HCens visible in this projection with their respective projected Pt2s. The mapping function is only applied if the first function condition is true.

Attributes

Inherited from:
HSysProjection

Produces optional data about the HCoord. for example on a world projection it can give the latitude and longitude.

Produces optional data about the HCoord. for example on a world projection it can give the latitude and longitude.

Attributes

Inherited from:
HSysProjection

Produces the side polygons from the HCornerLayer parameter. Polygons not visible in the projection should be excluded.

Produces the side polygons from the HCornerLayer parameter. Polygons not visible in the projection should be excluded.

Attributes

Inherited from:
HSysProjection
def innerSidesDraw(lineWidth: Double, colour: Colour): LinesDraw

Draws visible inner hex sides.

Draws visible inner hex sides.

Attributes

Inherited from:
TSysProjection
def lineSeg(hs: HSep): LineSeg

Attributes

Inherited from:
HSysProjection
def linkLineSegsOptMap[B, ArrB <: Arr[B]](f: (HSep, LineSeg) => Option[B])(implicit build: BuilderArrMap[B, ArrB]): ArrB

Attributes

Inherited from:
HSysProjection
def linksOptMap[B, ArrB <: Arr[B]](f: HSep => Option[B])(implicit build: BuilderArrMap[B, ArrB]): ArrB

Attributes

Inherited from:
HSysProjection
def outerSidesDraw(lineWidth: Double, colour: Colour): LinesDraw

Draws visible outer hex sides.

Draws visible outer hex sides.

Attributes

Inherited from:
TSysProjection

Attributes

Inherited from:
TSysProjection

Attributes

Inherited from:
Product

Attributes

Inherited from:
Product
def sidesDraw(lineWidth: Double, colour: Colour): LinesDraw

Draws visible hex sides.

Draws visible hex sides.

Attributes

Inherited from:
TSysProjection
def sidesOptMap[B, ArrB <: Arr[B]](f: HSep => Option[B])(implicit build: BuilderArrMap[B, ArrB]): ArrB

Attributes

Inherited from:
HSysProjection

Attributes

Inherited from:
HSysProjection
def transLineSegPairs[A2](inp: LineSegHCPairArr[A2])(implicit ct: ClassTag[A2]): LineSegPairArr[A2]

Attributes

Inherited from:
HSysProjection

Attributes

Inherited from:
HSysProjection

Attributes

Inherited from:
HSysProjection
def zoomFactor(button: MouseButton): Double

Attributes

Inherited from:
TSysProjection

Attributes

Inherited from:
TSysProjection

Attributes

Inherited from:
TSysProjection

Concrete fields

var focus: Vec2

This is child grid the subset of the grid that should actually be sent to the display to be rendered.

This is child grid the subset of the grid that should actually be sent to the display to be rendered.

Attributes

Inherited fields

final override val buttons: RArr[PolygonCompound]

Attributes

Inherited from:
TSysProjectionFlat
var getFrame: () => GraphicElems

Gives the projector access to the scenarios tile graphic creation.

Gives the projector access to the scenarios tile graphic creation.

Attributes

Inherited from:
TSysProjection

Attributes

Inherited from:
TSysProjection

Attributes

Inherited from:
TSysProjection