public interface HexagonalGrid<T extends SatelliteData>
Represents a hexagonal grid. Use HexagonalGridBuilder to generate a
ready-to-use grid. This interface contains all common functionality for dealing with
Hexagons. See HexagonalGridCalculator for more advanced features.
This HexagonalGrid uses an cube (trapezoidal) coordinate system for easier
computation. This means that apart from the X axis a diagonal axis is used instead of
the vertical Y axis.
| Modifier and Type | Method and Description |
|---|---|
boolean |
containsCubeCoordinate(CubeCoordinate coordinate)
Tells whether the given cube coordinate is on the grid or not.
|
Optional<Hexagon<T>> |
getByCubeCoordinate(CubeCoordinate coordinate)
Returns a
Hexagon by its cube coordinate. |
Optional<Hexagon<T>> |
getByPixelCoordinate(double coordinateX,
double coordinateY)
Returns a
Hexagon by a pixel coordinate. |
GridData |
getGridData()
Returns this HexagonalGrid's GridData.
|
rx.Observable<Hexagon<T>> |
getHexagons()
Returns all
Hexagons contained in this grid. |
rx.Observable<Hexagon<T>> |
getHexagonsByCubeRange(CubeCoordinate from,
CubeCoordinate to)
Returns all
Hexagons contained in the given cube coordinate range. |
rx.Observable<Hexagon<T>> |
getHexagonsByOffsetRange(int gridXFrom,
int gridXTo,
int gridYFrom,
int gridYTo)
Returns all
Hexagons contained in the given offset coordinate range. |
Optional<Hexagon<T>> |
getNeighborByIndex(Hexagon<T> hexagon,
int index)
Returns a neighbor of a Hexagon by its neighbor index.
|
Collection<Hexagon<T>> |
getNeighborsOf(Hexagon<T> hexagon)
Returns all neighbors of a
Hexagon. |
GridData getGridData()
rx.Observable<Hexagon<T>> getHexagons()
Hexagons contained in this grid.rx.Observable<Hexagon<T>> getHexagonsByCubeRange(CubeCoordinate from, CubeCoordinate to)
Hexagons contained in the given cube coordinate range.
If the range contains coordinates which are not part of the grid they will be ignored.from - fromto - toHexagons in the given range.rx.Observable<Hexagon<T>> getHexagonsByOffsetRange(int gridXFrom, int gridXTo, int gridYFrom, int gridYTo)
Hexagons contained in the given offset coordinate range.
If the range contains coordinates which are not part of the grid they will be ignored.gridXFrom - from x inclusivegridXTo - to x inclusivegridYFrom - from z inclusivegridYTo - to z inclusiveHexagons in the given range.boolean containsCubeCoordinate(CubeCoordinate coordinate)
CoordinateConverter.coordinate - coordOptional<Hexagon<T>> getByCubeCoordinate(CubeCoordinate coordinate)
Hexagon by its cube coordinate.coordinate - coordOptional<Hexagon<T>> getByPixelCoordinate(double coordinateX, double coordinateY)
Hexagon by a pixel coordinate.
Please note that all pixel coordinates are relative to
the containing HexagonalGrid.coordinateX - pixel coordinateX coordinatecoordinateY - pixel coordinateY coordinateOptional<Hexagon<T>> getNeighborByIndex(Hexagon<T> hexagon, int index)
Copyright © 2016. All rights reserved.