UNPKG

@irysius/grid-math

Version:

Tools to assist with grid math and algorithms

42 lines (41 loc) 1.54 kB
(function (factory) { if (typeof module === "object" && typeof module.exports === "object") { var v = factory(require, exports); if (v !== undefined) module.exports = v; } else if (typeof define === "function" && define.amd) { define(["require", "exports", "./Gravity"], factory); } })(function (require, exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const Gravity_1 = require("./Gravity"); function cellOffset(cellSize, gravity) { let ns = Gravity_1.northOrSouth(gravity); let ew = Gravity_1.eastOrWest(gravity); let x = (function () { switch (ew) { case Gravity_1.default.East: return cellSize.width; case Gravity_1.default.West: return 0; case Gravity_1.default.Center: return cellSize.width / 2; } })(); let y = (function () { switch (ns) { case Gravity_1.default.North: return 0; case Gravity_1.default.South: return cellSize.height; case Gravity_1.default.Center: return cellSize.height / 2; } })(); return { x, y }; } exports.cellOffset = cellOffset; }); // an offset of 0,0 indicates original for cell is top left // an offset of 0.5,0.5 indicates cell center.