UNPKG

kepler.gl

Version:

kepler.gl is a webgl based application to visualize large scale location data in the browser

54 lines (48 loc) 6.87 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.computeChunkOffsets = computeChunkOffsets; exports.getPickingInfo = getPickingInfo; var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } // SPDX-License-Identifier: MIT // Copyright contributors to the kepler.gl project // deck.gl-community // SPDX-License-Identifier: MIT // Copyright (c) vis.gl contributors function getPickingInfo(_ref, table) { var info = _ref.info, sourceLayer = _ref.sourceLayer; // Geometry index as rendered var index = info.index; // if a Multi- geometry dataset, map from the rendered index back to the // feature index if (sourceLayer.props.data.invertedGeomOffsets) { index = sourceLayer.props.data.invertedGeomOffsets[index]; } var recordBatchIdx = sourceLayer.props.recordBatchIdx; var tableOffsets = sourceLayer.props.tableOffsets; var batch = table.batches[recordBatchIdx]; var row = batch.get(index); if (row === null) { return info; } var currentBatchOffset = tableOffsets[recordBatchIdx]; // Update index to be _global_ index, not within the specific record batch index += currentBatchOffset; return _objectSpread(_objectSpread({}, info), {}, { index: index, object: row }); } // This is vendored from Arrow JS because it's a private API function computeChunkOffsets(chunks) { return chunks.reduce(function (offsets, chunk, index) { offsets[index + 1] = offsets[index] + chunk.length; return offsets; }, new Uint32Array(chunks.length + 1)); } //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJnZXRQaWNraW5nSW5mbyIsIl9yZWYiLCJ0YWJsZSIsImluZm8iLCJzb3VyY2VMYXllciIsImluZGV4IiwicHJvcHMiLCJkYXRhIiwiaW52ZXJ0ZWRHZW9tT2Zmc2V0cyIsInJlY29yZEJhdGNoSWR4IiwidGFibGVPZmZzZXRzIiwiYmF0Y2giLCJiYXRjaGVzIiwicm93IiwiZ2V0IiwiY3VycmVudEJhdGNoT2Zmc2V0IiwiX29iamVjdFNwcmVhZCIsIm9iamVjdCIsImNvbXB1dGVDaHVua09mZnNldHMiLCJjaHVua3MiLCJyZWR1Y2UiLCJvZmZzZXRzIiwiY2h1bmsiLCJsZW5ndGgiLCJVaW50MzJBcnJheSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9waWNraW5nLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbi8vIGRlY2suZ2wtY29tbXVuaXR5XG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgKGMpIHZpcy5nbCBjb250cmlidXRvcnNcblxuaW1wb3J0ICogYXMgYXJyb3cgZnJvbSAnYXBhY2hlLWFycm93JztcbmltcG9ydCB7R2V0UGlja2luZ0luZm9QYXJhbXN9IGZyb20gJ0BkZWNrLmdsL2NvcmUvdHlwZWQnO1xuaW1wb3J0IHtHZW9BcnJvd1BpY2tpbmdJbmZvfSBmcm9tICcuLi90eXBlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2VvQXJyb3dFeHRyYVBpY2tpbmdQcm9wcyB7XG4gIHJlY29yZEJhdGNoSWR4OiBudW1iZXI7XG4gIHRhYmxlT2Zmc2V0czogVWludDMyQXJyYXk7XG4gIGRhdGE6IHtcbiAgICBpbnZlcnRlZEdlb21PZmZzZXRzPzogVWludDhBcnJheSB8IFVpbnQxNkFycmF5IHwgVWludDMyQXJyYXk7XG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRQaWNraW5nSW5mbyhcbiAge1xuICAgIGluZm8sXG4gICAgc291cmNlTGF5ZXJcbiAgfTogR2V0UGlja2luZ0luZm9QYXJhbXMgJiB7XG4gICAgc291cmNlTGF5ZXI6IHtwcm9wczogR2VvQXJyb3dFeHRyYVBpY2tpbmdQcm9wc307XG4gIH0sXG4gIHRhYmxlOiBhcnJvdy5UYWJsZVxuKTogR2VvQXJyb3dQaWNraW5nSW5mbyB7XG4gIC8vIEdlb21ldHJ5IGluZGV4IGFzIHJlbmRlcmVkXG4gIGxldCBpbmRleCA9IGluZm8uaW5kZXg7XG5cbiAgLy8gaWYgYSBNdWx0aS0gZ2VvbWV0cnkgZGF0YXNldCwgbWFwIGZyb20gdGhlIHJlbmRlcmVkIGluZGV4IGJhY2sgdG8gdGhlXG4gIC8vIGZlYXR1cmUgaW5kZXhcbiAgaWYgKHNvdXJjZUxheWVyLnByb3BzLmRhdGEuaW52ZXJ0ZWRHZW9tT2Zmc2V0cykge1xuICAgIGluZGV4ID0gc291cmNlTGF5ZXIucHJvcHMuZGF0YS5pbnZlcnRlZEdlb21PZmZzZXRzW2luZGV4XTtcbiAgfVxuXG4gIGNvbnN0IHJlY29yZEJhdGNoSWR4ID0gc291cmNlTGF5ZXIucHJvcHMucmVjb3JkQmF0Y2hJZHg7XG4gIGNvbnN0IHRhYmxlT2Zmc2V0cyA9IHNvdXJjZUxheWVyLnByb3BzLnRhYmxlT2Zmc2V0cztcblxuICBjb25zdCBiYXRjaCA9IHRhYmxlLmJhdGNoZXNbcmVjb3JkQmF0Y2hJZHhdO1xuICBjb25zdCByb3cgPSBiYXRjaC5nZXQoaW5kZXgpO1xuICBpZiAocm93ID09PSBudWxsKSB7XG4gICAgcmV0dXJuIGluZm87XG4gIH1cblxuICBjb25zdCBjdXJyZW50QmF0Y2hPZmZzZXQgPSB0YWJsZU9mZnNldHNbcmVjb3JkQmF0Y2hJZHhdO1xuXG4gIC8vIFVwZGF0ZSBpbmRleCB0byBiZSBfZ2xvYmFsXyBpbmRleCwgbm90IHdpdGhpbiB0aGUgc3BlY2lmaWMgcmVjb3JkIGJhdGNoXG4gIGluZGV4ICs9IGN1cnJlbnRCYXRjaE9mZnNldDtcbiAgcmV0dXJuIHtcbiAgICAuLi5pbmZvLFxuICAgIGluZGV4LFxuICAgIG9iamVjdDogcm93XG4gIH07XG59XG5cbi8vIFRoaXMgaXMgdmVuZG9yZWQgZnJvbSBBcnJvdyBKUyBiZWNhdXNlIGl0J3MgYSBwcml2YXRlIEFQSVxuZXhwb3J0IGZ1bmN0aW9uIGNvbXB1dGVDaHVua09mZnNldHM8VCBleHRlbmRzIGFycm93LkRhdGFUeXBlPihcbiAgY2h1bmtzOiBSZWFkb25seUFycmF5PGFycm93LkRhdGE8VD4+XG4pIHtcbiAgcmV0dXJuIGNodW5rcy5yZWR1Y2UoKG9mZnNldHMsIGNodW5rLCBpbmRleCkgPT4ge1xuICAgIG9mZnNldHNbaW5kZXggKyAxXSA9IG9mZnNldHNbaW5kZXhdICsgY2h1bmsubGVuZ3RoO1xuICAgIHJldHVybiBvZmZzZXRzO1xuICB9LCBuZXcgVWludDMyQXJyYXkoY2h1bmtzLmxlbmd0aCArIDEpKTtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFjTyxTQUFTQSxjQUFjQSxDQUFBQyxJQUFBLEVBTzVCQyxLQUFrQixFQUNHO0VBQUEsSUFObkJDLElBQUksR0FBQUYsSUFBQSxDQUFKRSxJQUFJO0lBQ0pDLFdBQVcsR0FBQUgsSUFBQSxDQUFYRyxXQUFXO0VBTWI7RUFDQSxJQUFJQyxLQUFLLEdBQUdGLElBQUksQ0FBQ0UsS0FBSzs7RUFFdEI7RUFDQTtFQUNBLElBQUlELFdBQVcsQ0FBQ0UsS0FBSyxDQUFDQyxJQUFJLENBQUNDLG1CQUFtQixFQUFFO0lBQzlDSCxLQUFLLEdBQUdELFdBQVcsQ0FBQ0UsS0FBSyxDQUFDQyxJQUFJLENBQUNDLG1CQUFtQixDQUFDSCxLQUFLLENBQUM7RUFDM0Q7RUFFQSxJQUFNSSxjQUFjLEdBQUdMLFdBQVcsQ0FBQ0UsS0FBSyxDQUFDRyxjQUFjO0VBQ3ZELElBQU1DLFlBQVksR0FBR04sV0FBVyxDQUFDRSxLQUFLLENBQUNJLFlBQVk7RUFFbkQsSUFBTUMsS0FBSyxHQUFHVCxLQUFLLENBQUNVLE9BQU8sQ0FBQ0gsY0FBYyxDQUFDO0VBQzNDLElBQU1JLEdBQUcsR0FBR0YsS0FBSyxDQUFDRyxHQUFHLENBQUNULEtBQUssQ0FBQztFQUM1QixJQUFJUSxHQUFHLEtBQUssSUFBSSxFQUFFO0lBQ2hCLE9BQU9WLElBQUk7RUFDYjtFQUVBLElBQU1ZLGtCQUFrQixHQUFHTCxZQUFZLENBQUNELGNBQWMsQ0FBQzs7RUFFdkQ7RUFDQUosS0FBSyxJQUFJVSxrQkFBa0I7RUFDM0IsT0FBQUMsYUFBQSxDQUFBQSxhQUFBLEtBQ0tiLElBQUk7SUFDUEUsS0FBSyxFQUFMQSxLQUFLO0lBQ0xZLE1BQU0sRUFBRUo7RUFBRztBQUVmOztBQUVBO0FBQ08sU0FBU0ssbUJBQW1CQSxDQUNqQ0MsTUFBb0MsRUFDcEM7RUFDQSxPQUFPQSxNQUFNLENBQUNDLE1BQU0sQ0FBQyxVQUFDQyxPQUFPLEVBQUVDLEtBQUssRUFBRWpCLEtBQUssRUFBSztJQUM5Q2dCLE9BQU8sQ0FBQ2hCLEtBQUssR0FBRyxDQUFDLENBQUMsR0FBR2dCLE9BQU8sQ0FBQ2hCLEtBQUssQ0FBQyxHQUFHaUIsS0FBSyxDQUFDQyxNQUFNO0lBQ2xELE9BQU9GLE9BQU87RUFDaEIsQ0FBQyxFQUFFLElBQUlHLFdBQVcsQ0FBQ0wsTUFBTSxDQUFDSSxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7QUFDeEMiLCJpZ25vcmVMaXN0IjpbXX0=