@kepler.gl/deckgl-layers 3.0.0 → 3.1.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +12 -11
- package/dist/3d-building-layer/3d-building-layer.d.ts +0 -16
- package/dist/3d-building-layer/3d-building-layer.js +0 -91
- package/dist/3d-building-layer/3d-building-utils.d.ts +0 -9
- package/dist/3d-building-layer/3d-building-utils.js +0 -199
- package/dist/3d-building-layer/types.d.ts +0 -51
- package/dist/3d-building-layer/types.js +0 -6
- package/dist/cluster-layer/cluster-layer.d.ts +0 -42
- package/dist/cluster-layer/cluster-layer.js +0 -329
- package/dist/column-layer/enhanced-column-layer.d.ts +0 -12
- package/dist/column-layer/enhanced-column-layer.js +0 -156
- package/dist/deckgl-extensions/filter-arrow-layer.d.ts +0 -46
- package/dist/deckgl-extensions/filter-arrow-layer.js +0 -97
- package/dist/deckgl-extensions/filter-shader-module.d.ts +0 -19
- package/dist/deckgl-extensions/filter-shader-module.js +0 -29
- package/dist/grid-layer/enhanced-cpu-grid-layer.d.ts +0 -7
- package/dist/grid-layer/enhanced-cpu-grid-layer.js +0 -85
- package/dist/hexagon-layer/enhanced-hexagon-layer.d.ts +0 -7
- package/dist/hexagon-layer/enhanced-hexagon-layer.js +0 -85
- package/dist/index.d.ts +0 -11
- package/dist/index.js +0 -124
- package/dist/layer-utils/cluster-utils.d.ts +0 -22
- package/dist/layer-utils/cluster-utils.js +0 -107
- package/dist/layer-utils/cpu-aggregator.d.ts +0 -93
- package/dist/layer-utils/cpu-aggregator.js +0 -653
- package/dist/layer-utils/shader-utils.d.ts +0 -1
- package/dist/layer-utils/shader-utils.js +0 -33
- package/dist/line-layer/line-layer.d.ts +0 -12
- package/dist/line-layer/line-layer.js +0 -112
- package/dist/svg-icon-layer/scatterplot-icon-layer.d.ts +0 -9
- package/dist/svg-icon-layer/scatterplot-icon-layer.js +0 -79
- package/dist/svg-icon-layer/svg-icon-layer.d.ts +0 -22
- package/dist/svg-icon-layer/svg-icon-layer.js +0 -127
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"name": "@kepler.gl/deckgl-layers",
|
3
3
|
"author": "Shan He <shan@uber.com>",
|
4
|
-
"version": "3.0.
|
4
|
+
"version": "3.1.0-alpha.1",
|
5
5
|
"description": "kepler.gl constants used by kepler.gl components, actions and reducers",
|
6
6
|
"license": "MIT",
|
7
7
|
"main": "dist/index.js",
|
@@ -35,15 +35,15 @@
|
|
35
35
|
"@deck.gl/core": "^8.9.27",
|
36
36
|
"@deck.gl/geo-layers": "^8.9.27",
|
37
37
|
"@deck.gl/layers": "^8.9.27",
|
38
|
-
"@kepler.gl/constants": "3.0.
|
39
|
-
"@kepler.gl/types": "3.0.
|
40
|
-
"@kepler.gl/utils": "3.0.
|
38
|
+
"@kepler.gl/constants": "3.1.0-alpha.1",
|
39
|
+
"@kepler.gl/types": "3.1.0-alpha.1",
|
40
|
+
"@kepler.gl/utils": "3.1.0-alpha.1",
|
41
41
|
"@luma.gl/constants": "^8.5.20",
|
42
42
|
"@luma.gl/core": "^8.5.20",
|
43
43
|
"@mapbox/geo-viewport": "^0.4.1",
|
44
44
|
"@mapbox/vector-tile": "^1.3.1",
|
45
|
-
"@types/d3-array": "^2.
|
46
|
-
"@types/geojson": "^7946.0.
|
45
|
+
"@types/d3-array": "^2.8.0",
|
46
|
+
"@types/geojson": "^7946.0.8",
|
47
47
|
"@types/lodash.memoize": "^4.1.7",
|
48
48
|
"@types/supercluster": "^7.1.0",
|
49
49
|
"d3-array": "^2.8.0",
|
@@ -57,15 +57,16 @@
|
|
57
57
|
"sourceMap": false,
|
58
58
|
"instrument": false
|
59
59
|
},
|
60
|
-
"engines": {
|
61
|
-
"node": ">=18.18.2"
|
62
|
-
},
|
63
60
|
"maintainers": [
|
64
61
|
"Shan He <heshan0131@gmail.com>",
|
65
62
|
"Giuseppe Macri <gmacri@uber.com>"
|
66
63
|
],
|
64
|
+
"engines": {
|
65
|
+
"node": ">=18"
|
66
|
+
},
|
67
67
|
"volta": {
|
68
68
|
"node": "18.18.2",
|
69
|
-
"yarn": "
|
70
|
-
}
|
69
|
+
"yarn": "4.4.0"
|
70
|
+
},
|
71
|
+
"packageManager": "yarn@4.4.0"
|
71
72
|
}
|
@@ -1,16 +0,0 @@
|
|
1
|
-
import { CompositeLayer } from '@deck.gl/core/typed';
|
2
|
-
import { TileLayer as DeckGLTileLayer } from '@deck.gl/geo-layers/typed';
|
3
|
-
import { SolidPolygonLayer, SolidPolygonLayerProps } from '@deck.gl/layers/typed';
|
4
|
-
import { ThreeDBuildingLayerProps, TileDataItem, TileLoadProps } from './types';
|
5
|
-
export default class ThreeDBuildingLayer extends CompositeLayer<ThreeDBuildingLayerProps> {
|
6
|
-
renderSubLayers(props: SolidPolygonLayerProps<any>): SolidPolygonLayer<TileDataItem, {}>;
|
7
|
-
renderLayers(): DeckGLTileLayer<any, {
|
8
|
-
id: string;
|
9
|
-
getTileData: (tile: TileLoadProps) => Promise<TileDataItem[]>;
|
10
|
-
minZoom: 13;
|
11
|
-
renderSubLayers: (props: SolidPolygonLayerProps<any>) => SolidPolygonLayer<TileDataItem, {}>;
|
12
|
-
updateTriggers: {
|
13
|
-
getFillColor: import("@kepler.gl/types").RGBColor;
|
14
|
-
} & Record<string, any>;
|
15
|
-
}>[];
|
16
|
-
}
|
@@ -1,91 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
|
-
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
6
|
-
value: true
|
7
|
-
});
|
8
|
-
exports["default"] = void 0;
|
9
|
-
|
10
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
11
|
-
|
12
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
13
|
-
|
14
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
15
|
-
|
16
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
17
|
-
|
18
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
19
|
-
|
20
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
21
|
-
|
22
|
-
var _constants = _interopRequireDefault(require("@luma.gl/constants"));
|
23
|
-
|
24
|
-
var _typed = require("@deck.gl/core/typed");
|
25
|
-
|
26
|
-
var _typed2 = require("@deck.gl/geo-layers/typed");
|
27
|
-
|
28
|
-
var _typed3 = require("@deck.gl/layers/typed");
|
29
|
-
|
30
|
-
var _dBuildingUtils = require("./3d-building-utils");
|
31
|
-
|
32
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
33
|
-
|
34
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
35
|
-
|
36
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
|
37
|
-
|
38
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
39
|
-
|
40
|
-
var ThreeDBuildingLayer = /*#__PURE__*/function (_CompositeLayer) {
|
41
|
-
(0, _inherits2["default"])(ThreeDBuildingLayer, _CompositeLayer);
|
42
|
-
|
43
|
-
var _super = _createSuper(ThreeDBuildingLayer);
|
44
|
-
|
45
|
-
function ThreeDBuildingLayer() {
|
46
|
-
(0, _classCallCheck2["default"])(this, ThreeDBuildingLayer);
|
47
|
-
return _super.apply(this, arguments);
|
48
|
-
}
|
49
|
-
|
50
|
-
(0, _createClass2["default"])(ThreeDBuildingLayer, [{
|
51
|
-
key: "renderSubLayers",
|
52
|
-
value: // this layer add its subLayers to the redux store, and push sample data
|
53
|
-
function renderSubLayers(props) {
|
54
|
-
return new _typed3.SolidPolygonLayer(_objectSpread(_objectSpread({}, props), {}, {
|
55
|
-
parameters: {
|
56
|
-
blendFunc: [_constants["default"].SRC_ALPHA, _constants["default"].ONE_MINUS_SRC_ALPHA, _constants["default"].ONE, _constants["default"].ONE_MINUS_SRC_ALPHA],
|
57
|
-
blendEquation: [_constants["default"].FUNC_ADD, _constants["default"].FUNC_ADD]
|
58
|
-
},
|
59
|
-
extruded: true,
|
60
|
-
opacity: 1,
|
61
|
-
filled: true,
|
62
|
-
getElevation: function getElevation(feature) {
|
63
|
-
return feature.properties.height || 0;
|
64
|
-
},
|
65
|
-
getPolygon: function getPolygon(feature) {
|
66
|
-
return feature.coordinates;
|
67
|
-
},
|
68
|
-
getFillColor: this.props.threeDBuildingColor
|
69
|
-
}));
|
70
|
-
}
|
71
|
-
}, {
|
72
|
-
key: "renderLayers",
|
73
|
-
value: function renderLayers() {
|
74
|
-
var _this = this;
|
75
|
-
|
76
|
-
return [new _typed2.TileLayer({
|
77
|
-
id: "".concat(this.id, "-deck-3d-building"),
|
78
|
-
getTileData: function getTileData(tile) {
|
79
|
-
return (0, _dBuildingUtils.getTileData)(_this.props.mapboxApiUrl, _this.props.mapboxApiAccessToken, tile);
|
80
|
-
},
|
81
|
-
minZoom: 13,
|
82
|
-
renderSubLayers: this.renderSubLayers.bind(this),
|
83
|
-
updateTriggers: this.props.updateTriggers
|
84
|
-
})];
|
85
|
-
}
|
86
|
-
}]);
|
87
|
-
return ThreeDBuildingLayer;
|
88
|
-
}(_typed.CompositeLayer);
|
89
|
-
|
90
|
-
exports["default"] = ThreeDBuildingLayer;
|
91
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy8zZC1idWlsZGluZy1sYXllci8zZC1idWlsZGluZy1sYXllci50cyJdLCJuYW1lcyI6WyJUaHJlZURCdWlsZGluZ0xheWVyIiwicHJvcHMiLCJTb2xpZFBvbHlnb25MYXllciIsInBhcmFtZXRlcnMiLCJibGVuZEZ1bmMiLCJHTCIsIlNSQ19BTFBIQSIsIk9ORV9NSU5VU19TUkNfQUxQSEEiLCJPTkUiLCJibGVuZEVxdWF0aW9uIiwiRlVOQ19BREQiLCJleHRydWRlZCIsIm9wYWNpdHkiLCJmaWxsZWQiLCJnZXRFbGV2YXRpb24iLCJmZWF0dXJlIiwicHJvcGVydGllcyIsImhlaWdodCIsImdldFBvbHlnb24iLCJjb29yZGluYXRlcyIsImdldEZpbGxDb2xvciIsInRocmVlREJ1aWxkaW5nQ29sb3IiLCJEZWNrR0xUaWxlTGF5ZXIiLCJpZCIsImdldFRpbGVEYXRhIiwidGlsZSIsIm1hcGJveEFwaVVybCIsIm1hcGJveEFwaUFjY2Vzc1Rva2VuIiwibWluWm9vbSIsInJlbmRlclN1YkxheWVycyIsImJpbmQiLCJ1cGRhdGVUcmlnZ2VycyIsIkNvbXBvc2l0ZUxheWVyIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7Ozs7Ozs7OztJQUdxQkEsbUI7Ozs7Ozs7Ozs7OztXQUNuQjtBQUVBLDZCQUFnQkMsS0FBaEIsRUFBb0Q7QUFDbEQsYUFBTyxJQUFJQyx5QkFBSixpQ0FDRkQsS0FERTtBQUVMRSxRQUFBQSxVQUFVLEVBQUU7QUFDVkMsVUFBQUEsU0FBUyxFQUFFLENBQUNDLHNCQUFHQyxTQUFKLEVBQWVELHNCQUFHRSxtQkFBbEIsRUFBdUNGLHNCQUFHRyxHQUExQyxFQUErQ0gsc0JBQUdFLG1CQUFsRCxDQUREO0FBRVZFLFVBQUFBLGFBQWEsRUFBRSxDQUFDSixzQkFBR0ssUUFBSixFQUFjTCxzQkFBR0ssUUFBakI7QUFGTCxTQUZQO0FBTUxDLFFBQUFBLFFBQVEsRUFBRSxJQU5MO0FBT0xDLFFBQUFBLE9BQU8sRUFBRSxDQVBKO0FBUUxDLFFBQUFBLE1BQU0sRUFBRSxJQVJIO0FBU0xDLFFBQUFBLFlBQVksRUFBRSxzQkFBQ0MsT0FBRDtBQUFBLGlCQUEyQkEsT0FBTyxDQUFDQyxVQUFSLENBQW1CQyxNQUFuQixJQUE2QixDQUF4RDtBQUFBLFNBVFQ7QUFVTEMsUUFBQUEsVUFBVSxFQUFFLG9CQUFDSCxPQUFEO0FBQUEsaUJBQTJCQSxPQUFPLENBQUNJLFdBQW5DO0FBQUEsU0FWUDtBQVdMQyxRQUFBQSxZQUFZLEVBQUUsS0FBS25CLEtBQUwsQ0FBV29CO0FBWHBCLFNBQVA7QUFhRDs7O1dBRUQsd0JBQWU7QUFBQTs7QUFDYixhQUFPLENBQ0wsSUFBSUMsaUJBQUosQ0FBb0I7QUFDbEJDLFFBQUFBLEVBQUUsWUFBSyxLQUFLQSxFQUFWLHNCQURnQjtBQUVsQkMsUUFBQUEsV0FBVyxFQUFFLHFCQUFDQyxJQUFEO0FBQUEsaUJBQ1gsaUNBQVksS0FBSSxDQUFDeEIsS0FBTCxDQUFXeUIsWUFBdkIsRUFBcUMsS0FBSSxDQUFDekIsS0FBTCxDQUFXMEIsb0JBQWhELEVBQXNFRixJQUF0RSxDQURXO0FBQUEsU0FGSztBQUlsQkcsUUFBQUEsT0FBTyxFQUFFLEVBSlM7QUFLbEJDLFFBQUFBLGVBQWUsRUFBRSxLQUFLQSxlQUFMLENBQXFCQyxJQUFyQixDQUEwQixJQUExQixDQUxDO0FBTWxCQyxRQUFBQSxjQUFjLEVBQUUsS0FBSzlCLEtBQUwsQ0FBVzhCO0FBTlQsT0FBcEIsQ0FESyxDQUFQO0FBVUQ7OztFQTlCOENDLHFCIiwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuaW1wb3J0IEdMIGZyb20gJ0BsdW1hLmdsL2NvbnN0YW50cyc7XG5pbXBvcnQge0NvbXBvc2l0ZUxheWVyfSBmcm9tICdAZGVjay5nbC9jb3JlL3R5cGVkJztcbmltcG9ydCB7VGlsZUxheWVyIGFzIERlY2tHTFRpbGVMYXllcn0gZnJvbSAnQGRlY2suZ2wvZ2VvLWxheWVycy90eXBlZCc7XG5pbXBvcnQge1NvbGlkUG9seWdvbkxheWVyLCBTb2xpZFBvbHlnb25MYXllclByb3BzfSBmcm9tICdAZGVjay5nbC9sYXllcnMvdHlwZWQnO1xuXG5pbXBvcnQge2dldFRpbGVEYXRhfSBmcm9tICcuLzNkLWJ1aWxkaW5nLXV0aWxzJztcbmltcG9ydCB7VGhyZWVEQnVpbGRpbmdMYXllclByb3BzLCBUaWxlRGF0YUl0ZW0sIFRpbGVMb2FkUHJvcHN9IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBUaHJlZURCdWlsZGluZ0xheWVyIGV4dGVuZHMgQ29tcG9zaXRlTGF5ZXI8VGhyZWVEQnVpbGRpbmdMYXllclByb3BzPiB7XG4gIC8vIHRoaXMgbGF5ZXIgYWRkIGl0cyBzdWJMYXllcnMgdG8gdGhlIHJlZHV4IHN0b3JlLCBhbmQgcHVzaCBzYW1wbGUgZGF0YVxuXG4gIHJlbmRlclN1YkxheWVycyhwcm9wczogU29saWRQb2x5Z29uTGF5ZXJQcm9wczxhbnk+KSB7XG4gICAgcmV0dXJuIG5ldyBTb2xpZFBvbHlnb25MYXllcjxUaWxlRGF0YUl0ZW0+KHtcbiAgICAgIC4uLnByb3BzLFxuICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICBibGVuZEZ1bmM6IFtHTC5TUkNfQUxQSEEsIEdMLk9ORV9NSU5VU19TUkNfQUxQSEEsIEdMLk9ORSwgR0wuT05FX01JTlVTX1NSQ19BTFBIQV0sXG4gICAgICAgIGJsZW5kRXF1YXRpb246IFtHTC5GVU5DX0FERCwgR0wuRlVOQ19BRERdXG4gICAgICB9LFxuICAgICAgZXh0cnVkZWQ6IHRydWUsXG4gICAgICBvcGFjaXR5OiAxLFxuICAgICAgZmlsbGVkOiB0cnVlLFxuICAgICAgZ2V0RWxldmF0aW9uOiAoZmVhdHVyZTogVGlsZURhdGFJdGVtKSA9PiBmZWF0dXJlLnByb3BlcnRpZXMuaGVpZ2h0IHx8IDAsXG4gICAgICBnZXRQb2x5Z29uOiAoZmVhdHVyZTogVGlsZURhdGFJdGVtKSA9PiBmZWF0dXJlLmNvb3JkaW5hdGVzLFxuICAgICAgZ2V0RmlsbENvbG9yOiB0aGlzLnByb3BzLnRocmVlREJ1aWxkaW5nQ29sb3JcbiAgICB9KTtcbiAgfVxuXG4gIHJlbmRlckxheWVycygpIHtcbiAgICByZXR1cm4gW1xuICAgICAgbmV3IERlY2tHTFRpbGVMYXllcih7XG4gICAgICAgIGlkOiBgJHt0aGlzLmlkfS1kZWNrLTNkLWJ1aWxkaW5nYCBhcyBzdHJpbmcsXG4gICAgICAgIGdldFRpbGVEYXRhOiAodGlsZTogVGlsZUxvYWRQcm9wcykgPT5cbiAgICAgICAgICBnZXRUaWxlRGF0YSh0aGlzLnByb3BzLm1hcGJveEFwaVVybCwgdGhpcy5wcm9wcy5tYXBib3hBcGlBY2Nlc3NUb2tlbiwgdGlsZSksXG4gICAgICAgIG1pblpvb206IDEzLFxuICAgICAgICByZW5kZXJTdWJMYXllcnM6IHRoaXMucmVuZGVyU3ViTGF5ZXJzLmJpbmQodGhpcyksXG4gICAgICAgIHVwZGF0ZVRyaWdnZXJzOiB0aGlzLnByb3BzLnVwZGF0ZVRyaWdnZXJzXG4gICAgICB9KVxuICAgIF07XG4gIH1cbn1cbiJdfQ==
|
@@ -1,9 +0,0 @@
|
|
1
|
-
import { Coordinates, FlatFigure, TileDataItem, VectorTileFeature, VectorTileFeatureProperties } from './types';
|
2
|
-
export declare function getTileData(host: string, token: string, { index: { x, y, z } }: {
|
3
|
-
index: Coordinates;
|
4
|
-
}): Promise<TileDataItem[]>;
|
5
|
-
export declare function decodeTile(x: number, y: number, z: number, arrayBuffer: ArrayBuffer): TileDataItem[];
|
6
|
-
export declare function vectorTileFeatureToProp(vectorTileFeature: VectorTileFeature, project: (r: FlatFigure, n: number) => void): {
|
7
|
-
coordinates: FlatFigure[];
|
8
|
-
properties: VectorTileFeatureProperties;
|
9
|
-
}[];
|
@@ -1,199 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
|
-
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
6
|
-
value: true
|
7
|
-
});
|
8
|
-
exports.getTileData = getTileData;
|
9
|
-
exports.decodeTile = decodeTile;
|
10
|
-
exports.vectorTileFeatureToProp = vectorTileFeatureToProp;
|
11
|
-
|
12
|
-
var _pbf = _interopRequireDefault(require("pbf"));
|
13
|
-
|
14
|
-
var _vectorTile = require("@mapbox/vector-tile");
|
15
|
-
|
16
|
-
var _viewportMercatorProject = require("viewport-mercator-project");
|
17
|
-
|
18
|
-
// SPDX-License-Identifier: MIT
|
19
|
-
// Copyright contributors to the kepler.gl project
|
20
|
-
|
21
|
-
/* global fetch */
|
22
|
-
var TILE_SIZE = 512;
|
23
|
-
var MAPBOX_HOST = 'https://a.tiles.mapbox.com';
|
24
|
-
var MAP_SOURCE = '/v4/mapbox.mapbox-streets-v7';
|
25
|
-
|
26
|
-
function getTileData(host, token, _ref) {
|
27
|
-
var _ref$index = _ref.index,
|
28
|
-
x = _ref$index.x,
|
29
|
-
y = _ref$index.y,
|
30
|
-
z = _ref$index.z;
|
31
|
-
var mapSource = "".concat(host || MAPBOX_HOST).concat(MAP_SOURCE, "/").concat(z, "/").concat(x, "/").concat(y, ".vector.pbf?access_token=").concat(token);
|
32
|
-
return fetch(mapSource).then(function (response) {
|
33
|
-
return response.arrayBuffer();
|
34
|
-
}).then(function (buffer) {
|
35
|
-
return decodeTile(x, y, z, buffer);
|
36
|
-
});
|
37
|
-
}
|
38
|
-
|
39
|
-
function decodeTile(x, y, z, arrayBuffer) {
|
40
|
-
var tile = new _vectorTile.VectorTile(new _pbf["default"](arrayBuffer));
|
41
|
-
var result = [];
|
42
|
-
var xProj = x * TILE_SIZE;
|
43
|
-
var yProj = y * TILE_SIZE;
|
44
|
-
var scale = Math.pow(2, z);
|
45
|
-
var projectFunc = project.bind(null, xProj, yProj, scale);
|
46
|
-
/* eslint-disable guard-for-in */
|
47
|
-
|
48
|
-
var layerName = 'building';
|
49
|
-
var vectorTileLayer = tile.layers[layerName];
|
50
|
-
|
51
|
-
if (!vectorTileLayer) {
|
52
|
-
return [];
|
53
|
-
}
|
54
|
-
|
55
|
-
for (var i = 0; i < vectorTileLayer.length; i++) {
|
56
|
-
var vectorTileFeature = vectorTileLayer.feature(i); // @ts-ignore
|
57
|
-
|
58
|
-
var features = vectorTileFeatureToProp(vectorTileFeature, projectFunc);
|
59
|
-
features.forEach(function (f) {
|
60
|
-
f.properties.layer = layerName;
|
61
|
-
|
62
|
-
if (f.properties.height) {
|
63
|
-
result.push(f);
|
64
|
-
}
|
65
|
-
});
|
66
|
-
}
|
67
|
-
|
68
|
-
return result;
|
69
|
-
}
|
70
|
-
|
71
|
-
function project(x, y, scale, line, extent) {
|
72
|
-
var sizeToPixel = extent / TILE_SIZE;
|
73
|
-
|
74
|
-
for (var ii = 0; ii < line.length; ii++) {
|
75
|
-
var p = line[ii]; // LNGLAT
|
76
|
-
|
77
|
-
line[ii] = (0, _viewportMercatorProject.worldToLngLat)([x + p[0] / sizeToPixel, y + p[1] / sizeToPixel], scale);
|
78
|
-
}
|
79
|
-
}
|
80
|
-
/* adapted from @mapbox/vector-tile/lib/vectortilefeature.js for better perf */
|
81
|
-
|
82
|
-
/* eslint-disable */
|
83
|
-
|
84
|
-
|
85
|
-
function vectorTileFeatureToProp(vectorTileFeature, project) {
|
86
|
-
var coords = getCoordinates(vectorTileFeature);
|
87
|
-
var extent = vectorTileFeature.extent;
|
88
|
-
var i;
|
89
|
-
var j;
|
90
|
-
coords = classifyRings(coords);
|
91
|
-
|
92
|
-
for (i = 0; i < coords.length; i++) {
|
93
|
-
for (j = 0; j < coords[i].length; j++) {
|
94
|
-
project(coords[i][j], extent);
|
95
|
-
}
|
96
|
-
}
|
97
|
-
|
98
|
-
return coords.map(function (coordinates) {
|
99
|
-
return {
|
100
|
-
coordinates: coordinates,
|
101
|
-
properties: vectorTileFeature.properties
|
102
|
-
};
|
103
|
-
});
|
104
|
-
}
|
105
|
-
|
106
|
-
function getCoordinates(vectorTileFeature) {
|
107
|
-
var pbf = vectorTileFeature._pbf;
|
108
|
-
pbf.pos = vectorTileFeature._geometry;
|
109
|
-
var end = pbf.readVarint() + pbf.pos;
|
110
|
-
var cmd = 1;
|
111
|
-
var length = 0;
|
112
|
-
var x = 0;
|
113
|
-
var y = 0;
|
114
|
-
var lines = [];
|
115
|
-
var line;
|
116
|
-
|
117
|
-
while (pbf.pos < end) {
|
118
|
-
if (length <= 0) {
|
119
|
-
var cmdLen = pbf.readVarint();
|
120
|
-
cmd = cmdLen & 0x7;
|
121
|
-
length = cmdLen >> 3;
|
122
|
-
}
|
123
|
-
|
124
|
-
length--;
|
125
|
-
|
126
|
-
if (cmd === 1 || cmd === 2) {
|
127
|
-
x += pbf.readSVarint();
|
128
|
-
y += pbf.readSVarint();
|
129
|
-
|
130
|
-
if (cmd === 1) {
|
131
|
-
// moveTo
|
132
|
-
if (line) lines.push(line);
|
133
|
-
line = [];
|
134
|
-
}
|
135
|
-
|
136
|
-
if (line) line.push([x, y]);
|
137
|
-
} else if (cmd === 7) {
|
138
|
-
// Workaround for https://github.com/mapbox/mapnik-vector-tile/issues/90
|
139
|
-
if (line) {
|
140
|
-
line.push(line[0].slice()); // closePolygon
|
141
|
-
}
|
142
|
-
} else {
|
143
|
-
throw new Error("unknown command ".concat(cmd));
|
144
|
-
}
|
145
|
-
}
|
146
|
-
|
147
|
-
if (line) lines.push(line);
|
148
|
-
return lines;
|
149
|
-
} // classifies an array of rings into polygons with outer rings and holes
|
150
|
-
|
151
|
-
|
152
|
-
function classifyRings(rings) {
|
153
|
-
var len = rings.length;
|
154
|
-
if (len <= 1) return [rings];
|
155
|
-
var polygons = [];
|
156
|
-
var polygon;
|
157
|
-
var ccw;
|
158
|
-
|
159
|
-
for (var i = 0; i < len; i++) {
|
160
|
-
var area = signedArea(rings[i]);
|
161
|
-
|
162
|
-
if (area === 0) {
|
163
|
-
continue;
|
164
|
-
}
|
165
|
-
|
166
|
-
if (ccw === undefined) {
|
167
|
-
ccw = area < 0;
|
168
|
-
}
|
169
|
-
|
170
|
-
if (ccw === area < 0) {
|
171
|
-
if (polygon) {
|
172
|
-
polygons.push(polygon);
|
173
|
-
}
|
174
|
-
|
175
|
-
polygon = [rings[i]];
|
176
|
-
} else if (polygon) {
|
177
|
-
polygon.push(rings[i]);
|
178
|
-
}
|
179
|
-
}
|
180
|
-
|
181
|
-
if (polygon) {
|
182
|
-
polygons.push(polygon);
|
183
|
-
}
|
184
|
-
|
185
|
-
return polygons;
|
186
|
-
}
|
187
|
-
|
188
|
-
function signedArea(ring) {
|
189
|
-
var sum = 0;
|
190
|
-
|
191
|
-
for (var i = 0, len = ring.length, j = len - 1, p1, p2; i < len; j = i++) {
|
192
|
-
p1 = ring[i];
|
193
|
-
p2 = ring[j];
|
194
|
-
sum += (p2[0] - p1[0]) * (p1[1] + p2[1]);
|
195
|
-
}
|
196
|
-
|
197
|
-
return sum;
|
198
|
-
}
|
199
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy8zZC1idWlsZGluZy1sYXllci8zZC1idWlsZGluZy11dGlscy50cyJdLCJuYW1lcyI6WyJUSUxFX1NJWkUiLCJNQVBCT1hfSE9TVCIsIk1BUF9TT1VSQ0UiLCJnZXRUaWxlRGF0YSIsImhvc3QiLCJ0b2tlbiIsImluZGV4IiwieCIsInkiLCJ6IiwibWFwU291cmNlIiwiZmV0Y2giLCJ0aGVuIiwicmVzcG9uc2UiLCJhcnJheUJ1ZmZlciIsImJ1ZmZlciIsImRlY29kZVRpbGUiLCJ0aWxlIiwiVmVjdG9yVGlsZSIsIlByb3RvYnVmIiwicmVzdWx0IiwieFByb2oiLCJ5UHJvaiIsInNjYWxlIiwiTWF0aCIsInBvdyIsInByb2plY3RGdW5jIiwicHJvamVjdCIsImJpbmQiLCJsYXllck5hbWUiLCJ2ZWN0b3JUaWxlTGF5ZXIiLCJsYXllcnMiLCJpIiwibGVuZ3RoIiwidmVjdG9yVGlsZUZlYXR1cmUiLCJmZWF0dXJlIiwiZmVhdHVyZXMiLCJ2ZWN0b3JUaWxlRmVhdHVyZVRvUHJvcCIsImZvckVhY2giLCJmIiwicHJvcGVydGllcyIsImxheWVyIiwiaGVpZ2h0IiwicHVzaCIsImxpbmUiLCJleHRlbnQiLCJzaXplVG9QaXhlbCIsImlpIiwicCIsImNvb3JkcyIsImdldENvb3JkaW5hdGVzIiwiaiIsImNsYXNzaWZ5UmluZ3MiLCJtYXAiLCJjb29yZGluYXRlcyIsInBiZiIsIl9wYmYiLCJwb3MiLCJfZ2VvbWV0cnkiLCJlbmQiLCJyZWFkVmFyaW50IiwiY21kIiwibGluZXMiLCJjbWRMZW4iLCJyZWFkU1ZhcmludCIsInNsaWNlIiwiRXJyb3IiLCJyaW5ncyIsImxlbiIsInBvbHlnb25zIiwicG9seWdvbiIsImNjdyIsImFyZWEiLCJzaWduZWRBcmVhIiwidW5kZWZpbmVkIiwicmluZyIsInN1bSIsInAxIiwicDIiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBR0E7O0FBQ0E7O0FBQ0E7O0FBTEE7QUFDQTs7QUFhQTtBQUNBLElBQU1BLFNB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Q0FBRCxDQUFOLENBQVY7QUFDRCxLQUxELE1BS08sSUFBSXNDLE9BQUosRUFBYTtBQUNsQkEsTUFBQUEsT0FBTyxDQUFDM0IsSUFBUixDQUFhd0IsS0FBSyxDQUFDbkMsQ0FBRCxDQUFsQjtBQUNEO0FBQ0Y7O0FBQ0QsTUFBSXNDLE9BQUosRUFBYTtBQUNYRCxJQUFBQSxRQUFRLENBQUMxQixJQUFULENBQWMyQixPQUFkO0FBQ0Q7O0FBRUQsU0FBT0QsUUFBUDtBQUNEOztBQUVELFNBQVNJLFVBQVQsQ0FBb0JFLElBQXBCLEVBQThDO0FBQzVDLE1BQUlDLEdBQUcsR0FBRyxDQUFWOztBQUNBLE9BQUssSUFBSTVDLENBQUMsR0FBRyxDQUFSLEVBQVdvQyxHQUFHLEdBQUdPLElBQUksQ0FBQzFDLE1BQXRCLEVBQThCa0IsQ0FBQyxHQUFHaUIsR0FBRyxHQUFHLENBQXhDLEVBQTJDUyxFQUEzQyxFQUF5REMsRUFBOUQsRUFBNEU5QyxDQUFDLEdBQUdvQyxHQUFoRixFQUFxRmpCLENBQUMsR0FBR25CLENBQUMsRUFBMUYsRUFBOEY7QUFDNUY2QyxJQUFBQSxFQUFFLEdBQUdGLElBQUksQ0FBQzNDLENBQUQsQ0FBVDtBQUNBOEMsSUFBQUEsRUFBRSxHQUFHSCxJQUFJLENBQUN4QixDQUFELENBQVQ7QUFDQXlCLElBQUFBLEdBQUcsSUFBSSxDQUFDRSxFQUFFLENBQUMsQ0FBRCxDQUFGLEdBQVFELEVBQUUsQ0FBQyxDQUFELENBQVgsS0FBbUJBLEVBQUUsQ0FBQyxDQUFELENBQUYsR0FBUUMsRUFBRSxDQUFDLENBQUQsQ0FBN0IsQ0FBUDtBQUNEOztBQUNELFNBQU9GLEdBQVA7QUFDRCIsInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCBQcm90b2J1ZiBmcm9tICdwYmYnO1xuaW1wb3J0IHtWZWN0b3JUaWxlfSBmcm9tICdAbWFwYm94L3ZlY3Rvci10aWxlJztcbmltcG9ydCB7d29ybGRUb0xuZ0xhdH0gZnJvbSAndmlld3BvcnQtbWVyY2F0b3ItcHJvamVjdCc7XG5pbXBvcnQge1xuICBDb29yZGluYXRlcyxcbiAgRmxhdEZpZ3VyZSxcbiAgVGlsZURhdGFJdGVtLFxuICBWZWN0b3JUaWxlRmVhdHVyZSxcbiAgVmVjdG9yVGlsZUZlYXR1cmVQcm9wZXJ0aWVzXG59IGZyb20gJy4vdHlwZXMnO1xuXG4vKiBnbG9iYWwgZmV0Y2ggKi9cbmNvbnN0IFRJTEVfU0laRSA9IDUxMjtcbmNvbnN0IE1BUEJPWF9IT1NUID0gJ2h0dHBzOi8vYS50aWxlcy5tYXBib3guY29tJztcbmNvbnN0IE1BUF9TT1VSQ0UgPSAnL3Y0L21hcGJveC5tYXBib3gtc3RyZWV0cy12Nyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRUaWxlRGF0YShcbiAgaG9zdDogc3RyaW5nLFxuICB0b2tlbjogc3RyaW5nLFxuICB7aW5kZXg6IHt4LCB5LCB6fX06IHtpbmRleDogQ29vcmRpbmF0ZXN9XG4pOiBQcm9taXNlPFRpbGVEYXRhSXRlbVtdPiB7XG4gIGNvbnN0IG1hcFNvdXJjZSA9IGAke2hvc3QgfHxcbiAgICBNQVBCT1hfSE9TVH0ke01BUF9TT1VSQ0V9LyR7en0vJHt4fS8ke3l9LnZlY3Rvci5wYmY/YWNjZXNzX3Rva2VuPSR7dG9rZW59YDtcblxuICByZXR1cm4gZmV0Y2gobWFwU291cmNlKVxuICAgIC50aGVuKHJlc3BvbnNlID0+IHJlc3BvbnNlLmFycmF5QnVmZmVyKCkpXG4gICAgLnRoZW4oYnVmZmVyID0+IGRlY29kZVRpbGUoeCwgeSwgeiwgYnVmZmVyKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkZWNvZGVUaWxlKFxuICB4OiBudW1iZXIsXG4gIHk6IG51bWJlcixcbiAgejogbnVtYmVyLFxuICBhcnJheUJ1ZmZlcjogQXJyYXlCdWZmZXJcbik6IFRpbGVEYXRhSXRlbVtdIHtcbiAgY29uc3QgdGlsZSA9IG5ldyBWZWN0b3JUaWxlKG5ldyBQcm90b2J1ZihhcnJheUJ1ZmZlcikpO1xuXG4gIGNvbnN0IHJlc3VsdDogVGlsZURhdGFJdGVtW10gPSBbXTtcbiAgY29uc3QgeFByb2ogPSB4ICogVElMRV9TSVpFO1xuICBjb25zdCB5UHJvaiA9IHkgKiBUSUxFX1NJWkU7XG4gIGNvbnN0IHNjYWxlID0gTWF0aC5wb3coMiwgeik7XG5cbiAgY29uc3QgcHJvamVjdEZ1bmMgPSBwcm9qZWN0LmJpbmQobnVsbCwgeFByb2osIHlQcm9qLCBzY2FsZSk7XG5cbiAgLyogZXNsaW50LWRpc2FibGUgZ3VhcmQtZm9yLWluICovXG4gIGNvbnN0IGxheWVyTmFtZSA9ICdidWlsZGluZyc7XG4gIGNvbnN0IHZlY3RvclRpbGVMYXllciA9IHRpbGUubGF5ZXJzW2xheWVyTmFtZV07XG4gIGlmICghdmVjdG9yVGlsZUxheWVyKSB7XG4gICAgcmV0dXJuIFtdO1xuICB9XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgdmVjdG9yVGlsZUxheWVyLmxlbmd0aDsgaSsrKSB7XG4gICAgY29uc3QgdmVjdG9yVGlsZUZlYXR1cmUgPSB2ZWN0b3JUaWxlTGF5ZXIuZmVhdHVyZShpKTtcbiAgICAvLyBAdHMtaWdub3JlXG4gICAgY29uc3QgZmVhdHVyZXMgPSB2ZWN0b3JUaWxlRmVhdHVyZVRvUHJvcCh2ZWN0b3JUaWxlRmVhdHVyZSwgcHJvamVjdEZ1bmMpO1xuICAgIGZlYXR1cmVzLmZvckVhY2goZiA9PiB7XG4gICAgICBmLnByb3BlcnRpZXMubGF5ZXIgPSBsYXllck5hbWU7XG4gICAgICBpZiAoZi5wcm9wZXJ0aWVzLmhlaWdodCkge1xuICAgICAgICByZXN1bHQucHVzaChmKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuICByZXR1cm4gcmVzdWx0O1xufVxuXG5mdW5jdGlvbiBwcm9qZWN0KHg6IG51bWJlciwgeTogbnVtYmVyLCBzY2FsZTogbnVtYmVyLCBsaW5lOiBGbGF0RmlndXJlLCBleHRlbnQ6IG51bWJlcik6IHZvaWQge1xuICBjb25zdCBzaXplVG9QaXhlbCA9IGV4dGVudCAvIFRJTEVfU0laRTtcblxuICBmb3IgKGxldCBpaSA9IDA7IGlpIDwgbGluZS5sZW5ndGg7IGlpKyspIHtcbiAgICBjb25zdCBwID0gbGluZVtpaV07XG4gICAgLy8gTE5HTEFUXG4gICAgbGluZVtpaV0gPSB3b3JsZFRvTG5nTGF0KFt4ICsgcFswXSAvIHNpemVUb1BpeGVsLCB5ICsgcFsxXSAvIHNpemVUb1BpeGVsXSwgc2NhbGUpO1xuICB9XG59XG5cbi8qIGFkYXB0ZWQgZnJvbSBAbWFwYm94L3ZlY3Rvci10aWxlL2xpYi92ZWN0b3J0aWxlZmVhdHVyZS5qcyBmb3IgYmV0dGVyIHBlcmYgKi9cbi8qIGVzbGludC1kaXNhYmxlICovXG5leHBvcnQgZnVuY3Rpb24gdmVjdG9yVGlsZUZlYXR1cmVUb1Byb3AoXG4gIHZlY3RvclRpbGVGZWF0dXJlOiBWZWN0b3JUaWxlRmVhdHVyZSxcbiAgcHJvamVjdDogKHI6IEZsYXRGaWd1cmUsIG46IG51bWJlcikgPT4gdm9pZFxuKToge2Nvb3JkaW5hdGVzOiBGbGF0RmlndXJlW107IHByb3BlcnRpZXM6IFZlY3RvclRpbGVGZWF0dXJlUHJvcGVydGllc31bXSB7XG4gIGxldCBjb29yZHM6IEZsYXRGaWd1cmVbXVtdIHwgRmxhdEZpZ3VyZVtdID0gZ2V0Q29vcmRpbmF0ZXModmVjdG9yVGlsZUZlYXR1cmUpO1xuICBjb25zdCBleHRlbnQgPSB2ZWN0b3JUaWxlRmVhdHVyZS5leHRlbnQ7XG4gIGxldCBpOiBudW1iZXI7XG4gIGxldCBqOiBudW1iZXI7XG5cbiAgY29vcmRzID0gY2xhc3NpZnlSaW5ncyhjb29yZHMpO1xuICBmb3IgKGkgPSAwOyBpIDwgY29vcmRzLmxlbmd0aDsgaSsrKSB7XG4gICAgZm9yIChqID0gMDsgaiA8IGNvb3Jkc1tpXS5sZW5ndGg7IGorKykge1xuICAgICAgcHJvamVjdChjb29yZHNbaV1bal0sIGV4dGVudCk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGNvb3Jkcy5tYXAoY29vcmRpbmF0ZXMgPT4gKHtcbiAgICBjb29yZGluYXRlcyxcbiAgICBwcm9wZXJ0aWVzOiB2ZWN0b3JUaWxlRmVhdHVyZS5wcm9wZXJ0aWVzXG4gIH0pKTtcbn1cblxuZnVuY3Rpb24gZ2V0Q29vcmRpbmF0ZXModmVjdG9yVGlsZUZlYXR1cmU6IFZlY3RvclRpbGVGZWF0dXJlKTogRmxhdEZpZ3VyZVtdIHtcbiAgY29uc3QgcGJmID0gdmVjdG9yVGlsZUZlYXR1cmUuX3BiZjtcbiAgcGJmLnBvcyA9IHZlY3RvclRpbGVGZWF0dXJlLl9nZW9tZXRyeTtcblxuICBjb25zdCBlbmQgPSBwYmYucmVhZFZhcmludCgpICsgcGJmLnBvcztcbiAgbGV0IGNtZCA9IDE7XG4gIGxldCBsZW5ndGggPSAwO1xuICBsZXQgeCA9IDA7XG4gIGxldCB5ID0gMDtcblxuICBjb25zdCBsaW5lczogRmxhdEZpZ3VyZVtdID0gW107XG4gIGxldCBsaW5lOiBGbGF0RmlndXJlIHwgdW5kZWZpbmVkO1xuXG4gIHdoaWxlIChwYmYucG9zIDwgZW5kKSB7XG4gICAgaWYgKGxlbmd0aCA8PSAwKSB7XG4gICAgICBjb25zdCBjbWRMZW4gPSBwYmYucmVhZFZhcmludCgpO1xuICAgICAgY21kID0gY21kTGVuICYgMHg3O1xuICAgICAgbGVuZ3RoID0gY21kTGVuID4+IDM7XG4gICAgfVxuXG4gICAgbGVuZ3RoLS07XG5cbiAgICBpZiAoY21kID09PSAxIHx8IGNtZCA9PT0gMikge1xuICAgICAgeCArPSBwYmYucmVhZFNWYXJpbnQoKTtcbiAgICAgIHkgKz0gcGJmLnJlYWRTVmFyaW50KCk7XG5cbiAgICAgIGlmIChjbWQgPT09IDEpIHtcbiAgICAgICAgLy8gbW92ZVRvXG4gICAgICAgIGlmIChsaW5lKSBsaW5lcy5wdXNoKGxpbmUpO1xuICAgICAgICBsaW5lID0gW107XG4gICAgICB9XG5cbiAgICAgIGlmIChsaW5lKSBsaW5lLnB1c2goW3gsIHldKTtcbiAgICB9IGVsc2UgaWYgKGNtZCA9PT0gNykge1xuICAgICAgLy8gV29ya2Fyb3VuZCBmb3IgaHR0cHM6Ly9naXRodWIuY29tL21hcGJveC9tYXBuaWstdmVjdG9yLXRpbGUvaXNzdWVzLzkwXG4gICAgICBpZiAobGluZSkge1xuICAgICAgICBsaW5lLnB1c2gobGluZVswXS5zbGljZSgpIGFzIFtudW1iZXIsIG51bWJlcl0gfCBbbnVtYmVyLCBudW1iZXIsIG51bWJlcl0pOyAvLyBjbG9zZVBvbHlnb25cbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGB1bmtub3duIGNvbW1hbmQgJHtjbWR9YCk7XG4gICAgfVxuICB9XG5cbiAgaWYgKGxpbmUpIGxpbmVzLnB1c2gobGluZSk7XG5cbiAgcmV0dXJuIGxpbmVzO1xufVxuXG4vLyBjbGFzc2lmaWVzIGFuIGFycmF5IG9mIHJpbmdzIGludG8gcG9seWdvbnMgd2l0aCBvdXRlciByaW5ncyBhbmQgaG9sZXNcblxuZnVuY3Rpb24gY2xhc3NpZnlSaW5ncyhyaW5nczogRmxhdEZpZ3VyZVtdKTogRmxhdEZpZ3VyZVtdW10ge1xuICBjb25zdCBsZW4gPSByaW5ncy5sZW5ndGg7XG5cbiAgaWYgKGxlbiA8PSAxKSByZXR1cm4gW3JpbmdzXTtcblxuICBjb25zdCBwb2x5Z29uczogRmxhdEZpZ3VyZVtdW10gPSBbXTtcbiAgbGV0IHBvbHlnb246IEZsYXRGaWd1cmVbXSB8IHVuZGVmaW5lZDtcbiAgbGV0IGNjdzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICBmb3IgKGxldCBpID0gMDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgY29uc3QgYXJlYSA9IHNpZ25lZEFyZWEocmluZ3NbaV0pO1xuICAgIGlmIChhcmVhID09PSAwKSB7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG5cbiAgICBpZiAoY2N3ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGNjdyA9IGFyZWEgPCAwO1xuICAgIH1cblxuICAgIGlmIChjY3cgPT09IGFyZWEgPCAwKSB7XG4gICAgICBpZiAocG9seWdvbikge1xuICAgICAgICBwb2x5Z29ucy5wdXNoKHBvbHlnb24pO1xuICAgICAgfVxuICAgICAgcG9seWdvbiA9IFtyaW5nc1tpXV07XG4gICAgfSBlbHNlIGlmIChwb2x5Z29uKSB7XG4gICAgICBwb2x5Z29uLnB1c2gocmluZ3NbaV0pO1xuICAgIH1cbiAgfVxuICBpZiAocG9seWdvbikge1xuICAgIHBvbHlnb25zLnB1c2gocG9seWdvbik7XG4gIH1cblxuICByZXR1cm4gcG9seWdvbnM7XG59XG5cbmZ1bmN0aW9uIHNpZ25lZEFyZWEocmluZzogRmxhdEZpZ3VyZSk6IG51bWJlciB7XG4gIGxldCBzdW0gPSAwO1xuICBmb3IgKGxldCBpID0gMCwgbGVuID0gcmluZy5sZW5ndGgsIGogPSBsZW4gLSAxLCBwMTogbnVtYmVyW10sIHAyOiBudW1iZXJbXTsgaSA8IGxlbjsgaiA9IGkrKykge1xuICAgIHAxID0gcmluZ1tpXTtcbiAgICBwMiA9IHJpbmdbal07XG4gICAgc3VtICs9IChwMlswXSAtIHAxWzBdKSAqIChwMVsxXSArIHAyWzFdKTtcbiAgfVxuICByZXR1cm4gc3VtO1xufVxuIl19
|
@@ -1,51 +0,0 @@
|
|
1
|
-
import { RGBColor } from '@kepler.gl/types';
|
2
|
-
export declare type TileIndex = {
|
3
|
-
x: number;
|
4
|
-
y: number;
|
5
|
-
z: number;
|
6
|
-
};
|
7
|
-
export declare type TileLoadProps = {
|
8
|
-
id: string;
|
9
|
-
index: TileIndex;
|
10
|
-
bbox: any;
|
11
|
-
url?: string | null;
|
12
|
-
signal?: AbortSignal;
|
13
|
-
userData?: Record<string, any>;
|
14
|
-
zoom?: number;
|
15
|
-
};
|
16
|
-
export declare type ThreeDBuildingLayerProps = {
|
17
|
-
id: string;
|
18
|
-
mapboxApiAccessToken: string;
|
19
|
-
mapboxApiUrl: string;
|
20
|
-
threeDBuildingColor: RGBColor;
|
21
|
-
updateTriggers: {
|
22
|
-
getFillColor: RGBColor;
|
23
|
-
};
|
24
|
-
};
|
25
|
-
export declare type Coordinates = {
|
26
|
-
x: number;
|
27
|
-
y: number;
|
28
|
-
z: number;
|
29
|
-
};
|
30
|
-
export declare type FlatFigure = ([number, number] | [number, number, number])[];
|
31
|
-
export declare type TileDataItem = {
|
32
|
-
coordinates: FlatFigure[];
|
33
|
-
properties: VectorTileFeatureProperties;
|
34
|
-
};
|
35
|
-
export declare type VectorTileFeatureProperties = {
|
36
|
-
layer: string;
|
37
|
-
height?: number;
|
38
|
-
};
|
39
|
-
export declare type VectorTileFeature = {
|
40
|
-
extent: number;
|
41
|
-
properties: VectorTileFeatureProperties;
|
42
|
-
_pbf: {
|
43
|
-
buf: ArrayBuffer;
|
44
|
-
pos: number;
|
45
|
-
type: number;
|
46
|
-
length: number;
|
47
|
-
readVarint: (b?: boolean) => number;
|
48
|
-
readSVarint: () => number;
|
49
|
-
};
|
50
|
-
_geometry: number;
|
51
|
-
};
|
@@ -1,42 +0,0 @@
|
|
1
|
-
/// <reference types="deck.gl" />
|
2
|
-
/// <reference types="@deck.gl/core" />
|
3
|
-
/// <reference types="@danmarshall/deckgl-typings/deck.gl__core" />
|
4
|
-
import { ScatterplotLayer } from '@deck.gl/layers';
|
5
|
-
import { _AggregationLayer as AggregationLayer } from '@deck.gl/aggregation-layers';
|
6
|
-
import { AggregationType } from '../layer-utils/cpu-aggregator';
|
7
|
-
import { AggregationLayerProps } from '@deck.gl/aggregation-layers/aggregation-layer';
|
8
|
-
export declare const clusterAggregation: AggregationType;
|
9
|
-
export default class ClusterLayer extends AggregationLayer<any, AggregationLayerProps<any> & {
|
10
|
-
radiusScale: number;
|
11
|
-
}> {
|
12
|
-
initializeState(): void;
|
13
|
-
updateState({ oldProps, props, changeFlags }: {
|
14
|
-
oldProps: any;
|
15
|
-
props: any;
|
16
|
-
changeFlags: any;
|
17
|
-
}): void;
|
18
|
-
getPickingInfo({ info }: {
|
19
|
-
info: any;
|
20
|
-
}): any;
|
21
|
-
_getSublayerUpdateTriggers(): any;
|
22
|
-
_getSubLayerAccessors(): {
|
23
|
-
getRadius: any;
|
24
|
-
getFillColor: any;
|
25
|
-
};
|
26
|
-
renderLayers(): ScatterplotLayer<unknown, {
|
27
|
-
getRadius: any;
|
28
|
-
getFillColor: any;
|
29
|
-
id: string;
|
30
|
-
data: any;
|
31
|
-
radiusScale: number;
|
32
|
-
visible: boolean | undefined;
|
33
|
-
opacity: number | undefined;
|
34
|
-
pickable: boolean | undefined;
|
35
|
-
autoHighlight: boolean | undefined;
|
36
|
-
highlightColor: import("@deck.gl/core/utils/color").RGBAColor | ((pickInfo: import("@deck.gl/core/lib/deck").PickInfo<any>) => import("@deck.gl/core/utils/color").RGBAColor) | undefined;
|
37
|
-
updateTriggers: any;
|
38
|
-
parameters: {
|
39
|
-
depthMask: boolean;
|
40
|
-
};
|
41
|
-
}>;
|
42
|
-
}
|