UNPKG

@rickosborne/hexgrid

Version:

Rick Osborne's collection of hexagonal grid-related code.

55 lines (54 loc) 1.91 kB
"use strict"; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __hasOwnProp = Object.prototype.hasOwnProperty; var __name = (target, value) => __defProp(target, "name", { value, configurable: true }); var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); var cube_heading_exports = {}; __export(cube_heading_exports, { cubeHeading: () => cubeHeading }); module.exports = __toCommonJS(cube_heading_exports); var import_cube_subtract = require("./cube-subtract.cjs"); var import_cube = require("./cube.cjs"); var import_cube2 = require("./cube.cjs"); const cubeHeading = /* @__PURE__ */ __name((from, toward) => { const { q, r, s } = (0, import_cube_subtract.cubeSubtract)(toward, from); if (q === 0 && r === 0 && s === 0) { return void 0; } const sq = Math.abs(s - q); const rs = Math.abs(r - s); const qr = Math.abs(q - r); const max = Math.max(sq, rs, qr); if (rs === max) { if (r - s < 0) { return import_cube2.CUBE_FLAT_N; } return import_cube2.CUBE_FLAT_S; } if (sq === max) { if (s - q < 0) { return import_cube2.CUBE_FLAT_SE; } return import_cube2.CUBE_FLAT_NW; } if (q - r < 0) { return import_cube.CUBE_SW; } return import_cube.CUBE_NE; }, "cubeHeading"); //# sourceMappingURL=cube-heading.cjs.map