123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 |
- "use strict";
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.isNodePattern = isNodePattern;
- exports.throwError = throwError;
- exports.scan = scan;
- exports.scanIterator = scanIterator;
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
- var _marked =
- /*#__PURE__*/
- _regenerator["default"].mark(scanIterator);
- function isNodePattern(cb) {
- if (typeof cb === 'undefined') {
- return false;
- }
- if (typeof cb !== 'function') {
- throw new TypeError('Callback must be a function');
- }
- return true;
- }
- function throwError(error, cb) {
- if (typeof error === 'string') {
- error = new Error(error);
- }
- if (typeof cb === 'function') {
- return cb.call(this, error);
- }
- throw error;
- }
- function scan(image, x, y, w, h, f) {
- // round input
- x = Math.round(x);
- y = Math.round(y);
- w = Math.round(w);
- h = Math.round(h);
- for (var _y = y; _y < y + h; _y++) {
- for (var _x = x; _x < x + w; _x++) {
- var idx = image.bitmap.width * _y + _x << 2;
- f.call(image, _x, _y, idx);
- }
- }
- return image;
- }
- function scanIterator(image, x, y, w, h) {
- var _y, _x, idx;
- return _regenerator["default"].wrap(function scanIterator$(_context) {
- while (1) {
- switch (_context.prev = _context.next) {
- case 0:
- // round input
- x = Math.round(x);
- y = Math.round(y);
- w = Math.round(w);
- h = Math.round(h);
- _y = y;
- case 5:
- if (!(_y < y + h)) {
- _context.next = 17;
- break;
- }
- _x = x;
- case 7:
- if (!(_x < x + w)) {
- _context.next = 14;
- break;
- }
- idx = image.bitmap.width * _y + _x << 2;
- _context.next = 11;
- return {
- x: _x,
- y: _y,
- idx: idx,
- image: image
- };
- case 11:
- _x++;
- _context.next = 7;
- break;
- case 14:
- _y++;
- _context.next = 5;
- break;
- case 17:
- case "end":
- return _context.stop();
- }
- }
- }, _marked);
- }
- //# sourceMappingURL=index.js.map
|