UNPKG

@typed-tabletop-simulator/lib

Version:
28 lines (27 loc) 941 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const hexGrid_1 = require("./hexGrid"); class FlatHexGrid extends hexGrid_1.HexGrid { positionToGrid = (point) => { const q = ((2 / 3) * point.x) / this.size; const r = ((-1 / 3) * point.x + (Math.sqrt(3) / 3) * point.y) / this.size; return { q: q, r: r }; }; gridToPosition = (coord) => { const size = this.size; const x = size * ((3 / 2) * coord.q); const y = size * ((Math.sqrt(3) / 2) * coord.q + Math.sqrt(3) * coord.r); return { x: x, y: y }; }; toOffset(coord) { const q = coord.q; const r = coord.r + (coord.q - this.oddValue(coord.q)) / 2; return { q: q, r: r }; } toAxial(coord) { const q = coord.q; const r = coord.r - (coord.q - this.oddValue(coord.q)) / 2; return { q: q, r: r }; } } exports.default = FlatHexGrid;