UNPKG

malwoden

Version:

![alt text](./coverage/badge-lines.svg) ![alt text](./coverage/badge-statements.svg) ![alt text](./coverage/badge-functions.svg) ![alt text](./coverage/badge-branches.svg)

69 lines 2.07 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getRing4 = exports.getRing8 = void 0; function getRing8(originX, originY, range) { if (range === 0) return [{ x: originX, y: originY }]; var ring = []; var maxX = originX + range; var minX = originX - range; var maxY = originY + range; var minY = originY - range; //Start at the 3 o'clock, (0 degrees), rotate all the way around // Top Right Side, no corner for (var x = maxX, y = originY; y > minY; y--) { ring.push({ x: x, y: y }); } // Top Side, right to left. Include top corners for (var x = maxX, y = minY; x >= minX; x--) { ring.push({ x: x, y: y }); } // Left side, no corners for (var x = minX, y = minY + 1; y < maxY; y++) { ring.push({ x: x, y: y }); } // Bottom side, corners for (var x = minX, y = maxY; x <= maxX; x++) { ring.push({ x: x, y: y }); } // Right side back to to 0 degrees, no corner for (var x = maxX, y = maxY - 1; y > originY; y--) { ring.push({ x: x, y: y }); } return ring; } exports.getRing8 = getRing8; function getRing4(originX, originY, range) { if (range === 0) { return [ { x: originX, y: originY, }, ]; } var ring = []; var maxX = originX + range; var minX = originX - range; var maxY = originY + range; var minY = originY - range; // Top right arc for (var x = maxX, y = originY; x > originX; x--, y--) { ring.push({ x: x, y: y }); } // Top left arc for (var x = originX, y = minY; x > minX; x--, y++) { ring.push({ x: x, y: y }); } // Bottom left arc for (var x = minX, y = originY; x < originX; x++, y++) { ring.push({ x: x, y: y }); } // Bottom right arc for (var x = originX, y = maxY; x < maxX; x++, y--) { ring.push({ x: x, y: y }); } return ring; } exports.getRing4 = getRing4; //# sourceMappingURL=get-ring.js.map