@typed-tabletop-simulator/lib
Version:
Library with some helping modules for working with Tabletop Simulator
28 lines (27 loc) • 941 B
JavaScript
;
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;