HexMapLibrary
Namespaces | Classes | Enumerations
Wunderwunsch.HexMapLibrary Namespace Reference

Namespaces

Classes

class  CoordinateWrapper
 
class  CoordinateWrapperRectangularHorizontalPeriodic
 
class  Corner
 non-generic base class for a tile containing positional data, either use generic version or extend from this class for your own implementation More...
 
class  CornerPositionProvider
 
class  CornersPositionsProvider
 
class  Edge
 non-generic base class for an edge containing positional data, either use generic version or extend from this class for your own implementation More...
 
class  EdgePositionProvider
 
class  EdgePositionsProvider
 
class  HexConstants
 
class  HexConverter
 Converts between cartesian coordinates and two different hexagonal-grid-coordinates (called "offset" and "cube") More...
 
class  HexGrid
 Contains many helper methods facilitating working with a hexagonal coordinate system. Assumes the grid being on the (infinite) XZ-Plane.
The methods of this class are also used by HexMap (which adds bound checks and wrapping on top of it) More...
 
class  HexMap
 
class  HexMapBuilder
 Contains methods to create differently shaped map layouts. Can be used to easily initialize a HexMap instance More...
 
class  HexMouse
 Updates every frame with the position of the mouse cursor on the XZ-Plane in different coordinate systems. More...
 
class  HexUtility
 Contains helper methods which you usually won't need to use directly, but which are used by the library More...
 
class  MapDistanceCalculatorCorners
 
class  MapDistanceCalculatorEdges
 
class  MapDistanceCalculatorTile
 
class  MapElement
 Base Class for Tile and Edge , containing index, position and normalized position of the tile or edge. More...
 
struct  MapSizeData
 
class  Tile
 non-generic base class for a tile containing positional data, either use generic version or extend from this class for your own implementation More...
 
class  TilePositionProvider
 
class  TilePositionsProvider
 
class  Vector3IntEqualityComparer
 Add this as custom IEqualityComparer to any Dictionary using Vector3Int as key, this is unfortunately necessary to prevent boxing (and therefore memory allocations) as Unity omitted to implement the IEquatable<Vector3Int> interface on Vector3Int Will be obsolete with 2018.2 :-) More...
 

Enumerations

enum  EdgeAlignment { ParallelToCubeX = 0, ParallelToCubeZ = 1, ParallelToCubeY = 2 }
 
enum  EdgeDirection {
  Top = 0, TopRight = 1, BottomRight = 2, Bottom = 3,
  BottomLeft = 4, TopLeft =5
}
 
enum  TileDirection {
  TopRight = 0, Right = 1, BottomRight = 2, BottomLeft = 3,
  Left = 4, TopLeft = 5
}
 
enum  CornerType { TopOfYParallelEdge, BottomOfYParallelEdge }
 
enum  MapElementType { Tile, Edge, Corner }