@kepler.gl/deckgl-layers 3.1.3 → 3.1.5
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/dist/index.d.ts +3 -0
- package/dist/index.js +25 -2
- package/dist/layer-utils/cluster-utils.js +3 -3
- package/dist/raster/images.d.ts +9 -0
- package/dist/raster/images.js +165 -0
- package/dist/raster/raster-layer/raster-layer-webgl1.fs.d.ts +2 -0
- package/dist/raster/raster-layer/raster-layer-webgl1.fs.js +10 -0
- package/dist/raster/raster-layer/raster-layer-webgl1.vs.d.ts +2 -0
- package/dist/raster/raster-layer/raster-layer-webgl1.vs.js +10 -0
- package/dist/raster/raster-layer/raster-layer-webgl2.fs.d.ts +2 -0
- package/dist/raster/raster-layer/raster-layer-webgl2.fs.js +10 -0
- package/dist/raster/raster-layer/raster-layer-webgl2.vs.d.ts +2 -0
- package/dist/raster/raster-layer/raster-layer-webgl2.vs.js +10 -0
- package/dist/raster/raster-layer/raster-layer.d.ts +21 -0
- package/dist/raster/raster-layer/raster-layer.js +235 -0
- package/dist/raster/raster-mesh-layer/matrix.d.ts +2 -0
- package/dist/raster/raster-mesh-layer/matrix.js +18 -0
- package/dist/raster/raster-mesh-layer/raster-mesh-layer-webgl1.fs.d.ts +2 -0
- package/dist/raster/raster-mesh-layer/raster-mesh-layer-webgl1.fs.js +10 -0
- package/dist/raster/raster-mesh-layer/raster-mesh-layer-webgl1.vs.d.ts +2 -0
- package/dist/raster/raster-mesh-layer/raster-mesh-layer-webgl1.vs.js +10 -0
- package/dist/raster/raster-mesh-layer/raster-mesh-layer-webgl2.fs.d.ts +2 -0
- package/dist/raster/raster-mesh-layer/raster-mesh-layer-webgl2.fs.js +10 -0
- package/dist/raster/raster-mesh-layer/raster-mesh-layer-webgl2.vs.d.ts +2 -0
- package/dist/raster/raster-mesh-layer/raster-mesh-layer-webgl2.vs.js +10 -0
- package/dist/raster/raster-mesh-layer/raster-mesh-layer.d.ts +22 -0
- package/dist/raster/raster-mesh-layer/raster-mesh-layer.js +263 -0
- package/dist/raster/types.d.ts +17 -0
- package/dist/raster/types.js +6 -0
- package/dist/raster/util.d.ts +10 -0
- package/dist/raster/util.js +29 -0
- package/dist/raster/webgl/color/colormap.d.ts +2 -0
- package/dist/raster/webgl/color/colormap.js +39 -0
- package/dist/raster/webgl/color/filter.d.ts +2 -0
- package/dist/raster/webgl/color/filter.js +48 -0
- package/dist/raster/webgl/color/gamma-contrast.d.ts +2 -0
- package/dist/raster/webgl/color/gamma-contrast.js +62 -0
- package/dist/raster/webgl/color/linear-rescale.d.ts +2 -0
- package/dist/raster/webgl/color/linear-rescale.js +31 -0
- package/dist/raster/webgl/color/saturation.d.ts +2 -0
- package/dist/raster/webgl/color/saturation.js +39 -0
- package/dist/raster/webgl/color/sigmoidal-contrast.d.ts +2 -0
- package/dist/raster/webgl/color/sigmoidal-contrast.js +64 -0
- package/dist/raster/webgl/index.d.ts +16 -0
- package/dist/raster/webgl/index.js +135 -0
- package/dist/raster/webgl/pansharpen/pansharpen-brovey.d.ts +2 -0
- package/dist/raster/webgl/pansharpen/pansharpen-brovey.js +43 -0
- package/dist/raster/webgl/spectral-indices/evi.d.ts +2 -0
- package/dist/raster/webgl/spectral-indices/evi.js +26 -0
- package/dist/raster/webgl/spectral-indices/msavi.d.ts +2 -0
- package/dist/raster/webgl/spectral-indices/msavi.js +25 -0
- package/dist/raster/webgl/spectral-indices/normalized-difference.d.ts +2 -0
- package/dist/raster/webgl/spectral-indices/normalized-difference.js +19 -0
- package/dist/raster/webgl/spectral-indices/savi.d.ts +2 -0
- package/dist/raster/webgl/spectral-indices/savi.js +21 -0
- package/dist/raster/webgl/texture/combine-bands.d.ts +4 -0
- package/dist/raster/webgl/texture/combine-bands.js +65 -0
- package/dist/raster/webgl/texture/mask.d.ts +4 -0
- package/dist/raster/webgl/texture/mask.js +58 -0
- package/dist/raster/webgl/texture/reorder-bands.d.ts +10 -0
- package/dist/raster/webgl/texture/reorder-bands.js +69 -0
- package/dist/raster/webgl/texture/rgba-image.d.ts +2 -0
- package/dist/raster/webgl/texture/rgba-image.js +34 -0
- package/dist/raster/webgl/types.d.ts +23 -0
- package/dist/raster/webgl/types.js +6 -0
- package/package.json +5 -6
package/dist/index.d.ts
CHANGED
@@ -6,6 +6,9 @@ export { default as EnhancedHexagonLayer } from './hexagon-layer/enhanced-hexago
|
|
6
6
|
export { default as EnhancedLineLayer } from './line-layer/line-layer';
|
7
7
|
export { default as SvgIconLayer } from './svg-icon-layer/svg-icon-layer';
|
8
8
|
export { default as FilterArrowExtension } from './deckgl-extensions/filter-arrow-layer';
|
9
|
+
export { default as RasterLayer } from './raster/raster-layer/raster-layer';
|
10
|
+
export { default as RasterMeshLayer } from './raster/raster-mesh-layer/raster-mesh-layer';
|
11
|
+
export * as RasterWebGL from './raster/webgl';
|
9
12
|
export * from './layer-utils/shader-utils';
|
10
13
|
export * from './3d-building-layer/types';
|
11
14
|
export * from './3d-building-layer/3d-building-utils';
|
package/dist/index.js
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
5
6
|
value: true
|
6
7
|
});
|
@@ -12,7 +13,10 @@ var _exportNames = {
|
|
12
13
|
EnhancedHexagonLayer: true,
|
13
14
|
EnhancedLineLayer: true,
|
14
15
|
SvgIconLayer: true,
|
15
|
-
FilterArrowExtension: true
|
16
|
+
FilterArrowExtension: true,
|
17
|
+
RasterLayer: true,
|
18
|
+
RasterMeshLayer: true,
|
19
|
+
RasterWebGL: true
|
16
20
|
};
|
17
21
|
Object.defineProperty(exports, "DeckGLClusterLayer", {
|
18
22
|
enumerable: true,
|
@@ -50,6 +54,19 @@ Object.defineProperty(exports, "FilterArrowExtension", {
|
|
50
54
|
return _filterArrowLayer["default"];
|
51
55
|
}
|
52
56
|
});
|
57
|
+
Object.defineProperty(exports, "RasterLayer", {
|
58
|
+
enumerable: true,
|
59
|
+
get: function get() {
|
60
|
+
return _rasterLayer["default"];
|
61
|
+
}
|
62
|
+
});
|
63
|
+
Object.defineProperty(exports, "RasterMeshLayer", {
|
64
|
+
enumerable: true,
|
65
|
+
get: function get() {
|
66
|
+
return _rasterMeshLayer["default"];
|
67
|
+
}
|
68
|
+
});
|
69
|
+
exports.RasterWebGL = void 0;
|
53
70
|
Object.defineProperty(exports, "SvgIconLayer", {
|
54
71
|
enumerable: true,
|
55
72
|
get: function get() {
|
@@ -70,6 +87,10 @@ var _enhancedHexagonLayer = _interopRequireDefault(require("./hexagon-layer/enha
|
|
70
87
|
var _lineLayer = _interopRequireDefault(require("./line-layer/line-layer"));
|
71
88
|
var _svgIconLayer = _interopRequireDefault(require("./svg-icon-layer/svg-icon-layer"));
|
72
89
|
var _filterArrowLayer = _interopRequireDefault(require("./deckgl-extensions/filter-arrow-layer"));
|
90
|
+
var _rasterLayer = _interopRequireDefault(require("./raster/raster-layer/raster-layer"));
|
91
|
+
var _rasterMeshLayer = _interopRequireDefault(require("./raster/raster-mesh-layer/raster-mesh-layer"));
|
92
|
+
var _RasterWebGL = _interopRequireWildcard(require("./raster/webgl"));
|
93
|
+
exports.RasterWebGL = _RasterWebGL;
|
73
94
|
var _shaderUtils = require("./layer-utils/shader-utils");
|
74
95
|
Object.keys(_shaderUtils).forEach(function (key) {
|
75
96
|
if (key === "default" || key === "__esModule") return;
|
@@ -106,4 +127,6 @@ Object.keys(_dBuildingUtils).forEach(function (key) {
|
|
106
127
|
}
|
107
128
|
});
|
108
129
|
});
|
109
|
-
|
130
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
131
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
132
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZEJ1aWxkaW5nTGF5ZXIiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9jbHVzdGVyTGF5ZXIiLCJfZW5oYW5jZWRDb2x1bW5MYXllciIsIl9lbmhhbmNlZENwdUdyaWRMYXllciIsIl9lbmhhbmNlZEhleGFnb25MYXllciIsIl9saW5lTGF5ZXIiLCJfc3ZnSWNvbkxheWVyIiwiX2ZpbHRlckFycm93TGF5ZXIiLCJfcmFzdGVyTGF5ZXIiLCJfcmFzdGVyTWVzaExheWVyIiwiX1Jhc3RlcldlYkdMIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJleHBvcnRzIiwiUmFzdGVyV2ViR0wiLCJfc2hhZGVyVXRpbHMiLCJPYmplY3QiLCJrZXlzIiwiZm9yRWFjaCIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsIl9leHBvcnROYW1lcyIsImRlZmluZVByb3BlcnR5IiwiZW51bWVyYWJsZSIsImdldCIsIl90eXBlcyIsIl9kQnVpbGRpbmdVdGlscyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsImUiLCJXZWFrTWFwIiwiciIsInQiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImhhcyIsIm4iLCJfX3Byb3RvX18iLCJhIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwidSIsImkiLCJzZXQiXSwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuZXhwb3J0IHtkZWZhdWx0IGFzIFRocmVlREJ1aWxkaW5nTGF5ZXJ9IGZyb20gJy4vM2QtYnVpbGRpbmctbGF5ZXIvM2QtYnVpbGRpbmctbGF5ZXInO1xuXG5leHBvcnQge2RlZmF1bHQgYXMgRGVja0dMQ2x1c3RlckxheWVyfSBmcm9tICcuL2NsdXN0ZXItbGF5ZXIvY2x1c3Rlci1sYXllcic7XG5cbmV4cG9ydCB7ZGVmYXVsdCBhcyBFbmhhbmNlZENvbHVtbkxheWVyfSBmcm9tICcuL2NvbHVtbi1sYXllci9lbmhhbmNlZC1jb2x1bW4tbGF5ZXInO1xuXG5leHBvcnQge2RlZmF1bHQgYXMgRW5oYW5jZWRHcmlkTGF5ZXJ9IGZyb20gJy4vZ3JpZC1sYXllci9lbmhhbmNlZC1jcHUtZ3JpZC1sYXllcic7XG5cbmV4cG9ydCB7ZGVmYXVsdCBhcyBFbmhhbmNlZEhleGFnb25MYXllcn0gZnJvbSAnLi9oZXhhZ29uLWxheWVyL2VuaGFuY2VkLWhleGFnb24tbGF5ZXInO1xuZXhwb3J0IHtkZWZhdWx0IGFzIEVuaGFuY2VkTGluZUxheWVyfSBmcm9tICcuL2xpbmUtbGF5ZXIvbGluZS1sYXllcic7XG5leHBvcnQge2RlZmF1bHQgYXMgU3ZnSWNvbkxheWVyfSBmcm9tICcuL3N2Zy1pY29uLWxheWVyL3N2Zy1pY29uLWxheWVyJztcbmV4cG9ydCB7ZGVmYXVsdCBhcyBGaWx0ZXJBcnJvd0V4dGVuc2lvbn0gZnJvbSAnLi9kZWNrZ2wtZXh0ZW5zaW9ucy9maWx0ZXItYXJyb3ctbGF5ZXInO1xuXG5leHBvcnQge2RlZmF1bHQgYXMgUmFzdGVyTGF5ZXJ9IGZyb20gJy4vcmFzdGVyL3Jhc3Rlci1sYXllci9yYXN0ZXItbGF5ZXInO1xuZXhwb3J0IHtkZWZhdWx0IGFzIFJhc3Rlck1lc2hMYXllcn0gZnJvbSAnLi9yYXN0ZXIvcmFzdGVyLW1lc2gtbGF5ZXIvcmFzdGVyLW1lc2gtbGF5ZXInO1xuZXhwb3J0ICogYXMgUmFzdGVyV2ViR0wgZnJvbSAnLi9yYXN0ZXIvd2ViZ2wnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xheWVyLXV0aWxzL3NoYWRlci11dGlscyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vM2QtYnVpbGRpbmctbGF5ZXIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi8zZC1idWlsZGluZy1sYXllci8zZC1idWlsZGluZy11dGlscyc7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7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
|
@@ -11,7 +11,7 @@ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/creat
|
|
11
11
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
12
12
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
13
13
|
var _supercluster = _interopRequireDefault(require("supercluster"));
|
14
|
-
var
|
14
|
+
var _memoize = _interopRequireDefault(require("lodash/memoize"));
|
15
15
|
// SPDX-License-Identifier: MIT
|
16
16
|
// Copyright contributors to the kepler.gl project
|
17
17
|
|
@@ -58,7 +58,7 @@ var ClusterBuilder = exports["default"] = /*#__PURE__*/function () {
|
|
58
58
|
function ClusterBuilder() {
|
59
59
|
(0, _classCallCheck2["default"])(this, ClusterBuilder);
|
60
60
|
(0, _defineProperty2["default"])(this, "clusterer", void 0);
|
61
|
-
this.clusterer = (0,
|
61
|
+
this.clusterer = (0, _memoize["default"])(getClusterer, clusterResolver);
|
62
62
|
}
|
63
63
|
return (0, _createClass2["default"])(ClusterBuilder, [{
|
64
64
|
key: "clustersAtZoom",
|
@@ -90,4 +90,4 @@ var ClusterBuilder = exports["default"] = /*#__PURE__*/function () {
|
|
90
90
|
}
|
91
91
|
}]);
|
92
92
|
}();
|
93
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
93
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfc3VwZXJjbHVzdGVyIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfbWVtb2l6ZSIsImdldEdlb0pTT04iLCJkYXRhIiwiZ2V0UG9zaXRpb24iLCJmaWx0ZXJEYXRhIiwicmF3IiwiZmlsdGVyIiwibWFwIiwiZCIsInR5cGUiLCJwcm9wZXJ0aWVzIiwicG9pbnRzIiwicG9pbnRfY291bnQiLCJwb2ludF9jb3VudF9hYmJyZXZpYXRlZCIsImdlb21ldHJ5IiwiY29vcmRpbmF0ZXMiLCJldmVyeSIsIk51bWJlciIsImlzRmluaXRlIiwiY2x1c3RlclJlc29sdmVyIiwiX3JlZiIsImNsdXN0ZXJSYWRpdXMiLCJjb25jYXQiLCJnZXRDbHVzdGVyZXIiLCJfcmVmMiIsImdlb0pTT04iLCJTdXBlcmNsdXN0ZXIiLCJtYXhab29tIiwicmFkaXVzIiwicmVkdWNlIiwiYWNjdW11bGF0ZWQiLCJwcm9wcyIsIl90b0NvbnN1bWFibGVBcnJheTIiLCJsb2FkIiwiQ2x1c3RlckJ1aWxkZXIiLCJleHBvcnRzIiwiX2NsYXNzQ2FsbENoZWNrMiIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJjbHVzdGVyZXIiLCJtZW1vaXplIiwiX2NyZWF0ZUNsYXNzMiIsImtleSIsInZhbHVlIiwiY2x1c3RlcnNBdFpvb20iLCJfcmVmMyIsImJib3giLCJ6b29tIiwiY2x1c3RlcnMiLCJnZXRDbHVzdGVycyIsImMiLCJpIiwicG9zaXRpb24iLCJpbmRleCIsImNsZWFyQ2x1c3RlcmVyQ2FjaGUiLCJfdGhpcyRjbHVzdGVyZXIkY2FjaGUiLCJfdGhpcyRjbHVzdGVyZXIkY2FjaGUyIiwiY2FjaGUiLCJjbGVhciIsImNhbGwiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvbGF5ZXItdXRpbHMvY2x1c3Rlci11dGlscy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQgU3VwZXJjbHVzdGVyIGZyb20gJ3N1cGVyY2x1c3Rlcic7XG5pbXBvcnQgbWVtb2l6ZSBmcm9tICdsb2Rhc2gvbWVtb2l6ZSc7XG5pbXBvcnQge01lbW9pemVkRnVuY3Rpb259IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQge0JCb3gsIFBvc2l0aW9ufSBmcm9tICdnZW9qc29uJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldEdlb0pTT04oZGF0YSwgZ2V0UG9zaXRpb24sIGZpbHRlckRhdGEpIHtcbiAgY29uc3QgcmF3ID0gdHlwZW9mIGZpbHRlckRhdGEgPT09ICdmdW5jdGlvbicgPyBkYXRhLmZpbHRlcihmaWx0ZXJEYXRhKSA6IGRhdGE7XG5cbiAgcmV0dXJuIHJhd1xuICAgIC5tYXAoZCA9PiAoe1xuICAgICAgdHlwZTogJ1BvaW50JyxcbiAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgZGF0YTogZCxcbiAgICAgICAgcG9pbnRzOiBbZF0sXG4gICAgICAgIHBvaW50X2NvdW50OiAxLFxuICAgICAgICBwb2ludF9jb3VudF9hYmJyZXZpYXRlZDogJzEnXG4gICAgICB9LFxuICAgICAgZ2VvbWV0cnk6IHtcbiAgICAgICAgY29vcmRpbmF0ZXM6IGdldFBvc2l0aW9uKGQpXG4gICAgICB9XG4gICAgfSkpXG4gICAgLmZpbHRlcihkID0+IGQuZ2VvbWV0cnkuY29vcmRpbmF0ZXMuZXZlcnkoTnVtYmVyLmlzRmluaXRlKSk7XG59XG5cbmNvbnN0IGNsdXN0ZXJSZXNvbHZlciA9ICh7Y2x1c3RlclJhZGl1c306IHtjbHVzdGVyUmFkaXVzOiBudW1iZXJ9KSA9PiBgJHtjbHVzdGVyUmFkaXVzfWA7XG5cbmNvbnN0IGdldENsdXN0ZXJlciA9ICh7Y2x1c3RlclJhZGl1cywgZ2VvSlNPTn06IHtjbHVzdGVyUmFkaXVzOiBudW1iZXI7IGdlb0pTT059KSA9PlxuICBuZXcgU3VwZXJjbHVzdGVyKHtcbiAgICBtYXhab29tOiAyMCxcbiAgICByYWRpdXM6IGNsdXN0ZXJSYWRpdXMsXG4gICAgcmVkdWNlOiAoYWNjdW11bGF0ZWQsIHByb3BzKSA9PiB7XG4gICAgICBhY2N1bXVsYXRlZC5wb2ludHMgPSBbLi4uYWNjdW11bGF0ZWQucG9pbnRzLCAuLi5wcm9wcy5wb2ludHNdO1xuICAgIH0sXG4gICAgbWFwOiBwcm9wcyA9PiAoe3BvaW50czogW3Byb3BzLmRhdGFdfSlcbiAgfSkubG9hZChnZW9KU09OKTtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ2x1c3RlckJ1aWxkZXIge1xuICBjbHVzdGVyZXI6ICgoe2NsdXN0ZXJSYWRpdXMsIGdlb0pTT059OiB7Y2x1c3RlclJhZGl1czogbnVtYmVyOyBnZW9KU09OfSkgPT4gU3VwZXJjbHVzdGVyKSAmXG4gICAgTWVtb2l6ZWRGdW5jdGlvbjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmNsdXN0ZXJlciA9IG1lbW9pemUoZ2V0Q2x1c3RlcmVyLCBjbHVzdGVyUmVzb2x2ZXIpO1xuICB9XG5cbiAgY2x1c3RlcnNBdFpvb20oe1xuICAgIGJib3gsXG4gICAgY2x1c3RlclJhZGl1cyxcbiAgICBnZW9KU09OLFxuICAgIHpvb21cbiAgfToge1xuICAgIGJib3g6IEJCb3g7XG4gICAgY2x1c3RlclJhZGl1czogbnVtYmVyO1xuICAgIGdlb0pTT047XG4gICAgem9vbTogbnVtYmVyO1xuICB9KToge1xuICAgIHBvaW50czogYW55O1xuICAgIHBvc2l0aW9uOiBQb3NpdGlvbjtcbiAgICBpbmRleDogbnVtYmVyO1xuICB9W10ge1xuICAgIGNvbnN0IGNsdXN0ZXJlciA9IHRoaXMuY2x1c3RlcmVyKHtjbHVzdGVyUmFkaXVzLCBnZW9KU09OfSk7XG5cbiAgICAvLyBtYXAgY2x1c3RlcnMgdG8gZm9ybWF0dGVkIGJpbnMgdG8gYmUgcGFzc2VkIHRvIGRlY2suZ2wgYmluLXNvcnRlclxuICAgIGNvbnN0IGNsdXN0ZXJzID0gY2x1c3RlcmVyLmdldENsdXN0ZXJzKGJib3gsIHpvb20pLm1hcCgoYywgaSkgPT4gKHtcbiAgICAgIHBvaW50czogYy5wcm9wZXJ0aWVzLnBvaW50cyxcbiAgICAgIHBvc2l0aW9uOiBjLmdlb21ldHJ5LmNvb3JkaW5hdGVzLFxuICAgICAgaW5kZXg6IGlcbiAgICB9KSk7XG5cbiAgICByZXR1cm4gY2x1c3RlcnM7XG4gIH1cblxuICBjbGVhckNsdXN0ZXJlckNhY2hlKCkge1xuICAgIHRoaXMuY2x1c3RlcmVyLmNhY2hlLmNsZWFyPy4oKTtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFHQSxJQUFBQSxhQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxRQUFBLEdBQUFGLHNCQUFBLENBQUFDLE9BQUE7QUFKQTtBQUNBOztBQU9PLFNBQVNFLFVBQVVBLENBQUNDLElBQUksRUFBRUMsV0FBVyxFQUFFQyxVQUFVLEVBQUU7RUFDeEQsSUFBTUMsR0FBRyxHQUFHLE9BQU9ELFVBQVUsS0FBSyxVQUFVLEdBQUdGLElBQUksQ0FBQ0ksTUFBTSxDQUFDRixVQUFVLENBQUMsR0FBR0YsSUFBSTtFQUU3RSxPQUFPRyxHQUFHLENBQ1BFLEdBQUcsQ0FBQyxVQUFBQyxDQUFDO0lBQUEsT0FBSztNQUNUQyxJQUFJLEVBQUUsT0FBTztNQUNiQyxVQUFVLEVBQUU7UUFDVlIsSUFBSSxFQUFFTSxDQUFDO1FBQ1BHLE1BQU0sRUFBRSxDQUFDSCxDQUFDLENBQUM7UUFDWEksV0FBVyxFQUFFLENBQUM7UUFDZEMsdUJBQXVCLEVBQUU7TUFDM0IsQ0FBQztNQUNEQyxRQUFRLEVBQUU7UUFDUkMsV0FBVyxFQUFFWixXQUFXLENBQUNLLENBQUM7TUFDNUI7SUFDRixDQUFDO0VBQUEsQ0FBQyxDQUFDLENBQ0ZGLE1BQU0sQ0FBQyxVQUFBRSxDQUFDO0lBQUEsT0FBSUEsQ0FBQyxDQUFDTSxRQUFRLENBQUNDLFdBQVcsQ0FBQ0MsS0FBSyxDQUFDQyxNQUFNLENBQUNDLFFBQVEsQ0FBQztFQUFBLEVBQUM7QUFDL0Q7QUFFQSxJQUFNQyxlQUFlLEdBQUcsU0FBbEJBLGVBQWVBLENBQUFDLElB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
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import type { ImageInput, ImageState } from './types';
|
2
|
+
declare type LoadImagesOptions = {
|
3
|
+
gl: WebGLRenderingContext | WebGL2RenderingContext;
|
4
|
+
images: ImageState;
|
5
|
+
imagesData: ImageInput;
|
6
|
+
oldImagesData: ImageInput;
|
7
|
+
};
|
8
|
+
export declare function loadImages({ gl, images, imagesData, oldImagesData }: LoadImagesOptions): ImageState | null;
|
9
|
+
export {};
|
@@ -0,0 +1,165 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
5
|
+
value: true
|
6
|
+
});
|
7
|
+
exports.loadImages = loadImages;
|
8
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
9
|
+
var _constants = _interopRequireDefault(require("@luma.gl/constants"));
|
10
|
+
var _core = require("@luma.gl/core");
|
11
|
+
var _lodash = _interopRequireDefault(require("lodash.isequal"));
|
12
|
+
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; }
|
13
|
+
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; }
|
14
|
+
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
15
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
16
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } // SPDX-License-Identifier: MIT
|
17
|
+
// Copyright contributors to the kepler.gl project
|
18
|
+
/**
|
19
|
+
* Texture parameters that should work for every texture on both WebGL1 and WebGL2
|
20
|
+
*/
|
21
|
+
var DEFAULT_UNIVERSAL_TEXTURE_PARAMETERS = (0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])({}, _constants["default"].TEXTURE_MIN_FILTER, _constants["default"].NEAREST), _constants["default"].TEXTURE_MAG_FILTER, _constants["default"].NEAREST), _constants["default"].TEXTURE_WRAP_S, _constants["default"].CLAMP_TO_EDGE), _constants["default"].TEXTURE_WRAP_T, _constants["default"].CLAMP_TO_EDGE);
|
22
|
+
/**
|
23
|
+
* Load image items to webgl context
|
24
|
+
* @param gl webgl rendering context
|
25
|
+
* @param imageItem image item, might be single texture or array of textures
|
26
|
+
* @returns loaded single webgl texture or array of webgl texture or null
|
27
|
+
*/
|
28
|
+
function loadImageItem(gl, imageItem) {
|
29
|
+
var result;
|
30
|
+
if (Array.isArray(imageItem)) {
|
31
|
+
var dirtyResult = imageItem.map(function (x) {
|
32
|
+
return loadTexture(gl, x);
|
33
|
+
});
|
34
|
+
result = [];
|
35
|
+
var _iterator = _createForOfIteratorHelper(dirtyResult),
|
36
|
+
_step;
|
37
|
+
try {
|
38
|
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
39
|
+
var texture = _step.value;
|
40
|
+
if (texture) {
|
41
|
+
result.push(texture);
|
42
|
+
}
|
43
|
+
}
|
44
|
+
} catch (err) {
|
45
|
+
_iterator.e(err);
|
46
|
+
} finally {
|
47
|
+
_iterator.f();
|
48
|
+
}
|
49
|
+
if (!result.length) {
|
50
|
+
result = null;
|
51
|
+
}
|
52
|
+
} else {
|
53
|
+
result = loadTexture(gl, imageItem);
|
54
|
+
}
|
55
|
+
return result;
|
56
|
+
}
|
57
|
+
|
58
|
+
// eslint-disable-next-line complexity
|
59
|
+
function loadImages(_ref) {
|
60
|
+
var gl = _ref.gl,
|
61
|
+
images = _ref.images,
|
62
|
+
imagesData = _ref.imagesData,
|
63
|
+
oldImagesData = _ref.oldImagesData;
|
64
|
+
// Change to `true` if we need to setState with a new `images` object
|
65
|
+
var imagesDirty = false;
|
66
|
+
|
67
|
+
// If there are any removed keys, which previously existed in oldProps and
|
68
|
+
// this.state.images but no longer exist in props, remove from the images
|
69
|
+
// object
|
70
|
+
if (oldImagesData) {
|
71
|
+
for (var key in oldImagesData) {
|
72
|
+
if (imagesData && !(key in imagesData) && key in images) {
|
73
|
+
delete images[key];
|
74
|
+
imagesDirty = true;
|
75
|
+
}
|
76
|
+
}
|
77
|
+
}
|
78
|
+
|
79
|
+
// Check if any keys of props.images have changed
|
80
|
+
var changedKeys = [];
|
81
|
+
for (var _key in imagesData) {
|
82
|
+
// If oldProps.images didn't exist or it existed and this key didn't exist
|
83
|
+
if (!oldImagesData || oldImagesData && !(_key in oldImagesData)) {
|
84
|
+
changedKeys.push(_key);
|
85
|
+
continue;
|
86
|
+
}
|
87
|
+
|
88
|
+
// Deep compare when the key previously existed to see if it changed
|
89
|
+
if (!(0, _lodash["default"])(imagesData[_key], oldImagesData[_key])) {
|
90
|
+
changedKeys.push(_key);
|
91
|
+
}
|
92
|
+
}
|
93
|
+
for (var _i = 0, _changedKeys = changedKeys; _i < _changedKeys.length; _i++) {
|
94
|
+
var _key2 = _changedKeys[_i];
|
95
|
+
var imageData = imagesData[_key2];
|
96
|
+
if (!imageData) {
|
97
|
+
continue;
|
98
|
+
}
|
99
|
+
var loadedItem = loadImageItem(gl, imageData);
|
100
|
+
if (loadedItem) {
|
101
|
+
images[_key2] = loadedItem;
|
102
|
+
}
|
103
|
+
imagesDirty = true;
|
104
|
+
}
|
105
|
+
if (imagesDirty) {
|
106
|
+
return images;
|
107
|
+
}
|
108
|
+
return null;
|
109
|
+
}
|
110
|
+
|
111
|
+
/**
|
112
|
+
* Create Texture2D object from image data
|
113
|
+
*/
|
114
|
+
function loadTexture(gl, imageData) {
|
115
|
+
if (!imageData) {
|
116
|
+
return null;
|
117
|
+
}
|
118
|
+
if (imageData instanceof _core.Texture2D) {
|
119
|
+
return imageData;
|
120
|
+
}
|
121
|
+
var textureParams = _objectSpread({
|
122
|
+
parameters: DEFAULT_UNIVERSAL_TEXTURE_PARAMETERS
|
123
|
+
}, imageData);
|
124
|
+
if (!(0, _core.isWebGL2)(gl)) {
|
125
|
+
textureParams = webgl1TextureFallbacks(textureParams);
|
126
|
+
}
|
127
|
+
return new _core.Texture2D(gl, textureParams);
|
128
|
+
}
|
129
|
+
|
130
|
+
/**
|
131
|
+
* Texture fallbacks for WebGL1
|
132
|
+
* Fallback ideas derived from viv
|
133
|
+
* https://github.com/hms-dbmi/viv/blob/5bcec429eeba55914ef3d7155a610d82048520a0/src/layers/XRLayer/XRLayer.js#L280-L302
|
134
|
+
*/
|
135
|
+
function webgl1TextureFallbacks(textureParams) {
|
136
|
+
// Set mipmaps to false
|
137
|
+
// Not sure if this is necessary?
|
138
|
+
// Might actually only be necessary for uint textures
|
139
|
+
textureParams.mipmaps = false;
|
140
|
+
|
141
|
+
// Change format to Luminance
|
142
|
+
if (textureParams.format && [_constants["default"].R8UI, _constants["default"].R16UI, _constants["default"].R32UI].includes(textureParams.format)) {
|
143
|
+
textureParams.format = _constants["default"].LUMINANCE;
|
144
|
+
}
|
145
|
+
|
146
|
+
// Change dataFormat to Luminance
|
147
|
+
if (textureParams.dataFormat === _constants["default"].RED_INTEGER) {
|
148
|
+
textureParams.dataFormat = _constants["default"].LUMINANCE;
|
149
|
+
}
|
150
|
+
|
151
|
+
// Set data type to float
|
152
|
+
if (textureParams.type && [_constants["default"].UNSIGNED_BYTE, _constants["default"].UNSIGNED_SHORT, _constants["default"].UNSIGNED_INT].includes(textureParams.type)) {
|
153
|
+
textureParams.type = _constants["default"].FLOAT;
|
154
|
+
}
|
155
|
+
|
156
|
+
// Cast data to float 32 if one of the uint types
|
157
|
+
if (textureParams.data instanceof Uint8Array || textureParams.data instanceof Uint16Array || textureParams.data instanceof Uint32Array) {
|
158
|
+
textureParams.data = new Float32Array(textureParams.data);
|
159
|
+
}
|
160
|
+
|
161
|
+
// Override texture parameters to make sure they're valid on WebGL1
|
162
|
+
textureParams.parameters = _objectSpread(_objectSpread({}, textureParams.parameters), DEFAULT_UNIVERSAL_TEXTURE_PARAMETERS);
|
163
|
+
return textureParams;
|
164
|
+
}
|
165
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29uc3RhbnRzIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfY29yZSIsIl9sb2Rhc2giLCJvd25LZXlzIiwiZSIsInIiLCJ0IiwiT2JqZWN0Iiwia2V5cyIsImdldE93blByb3BlcnR5U3ltYm9scyIsIm8iLCJmaWx0ZXIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJlbnVtZXJhYmxlIiwicHVzaCIsImFwcGx5IiwiX29iamVjdFNwcmVhZCIsImFyZ3VtZW50cyIsImxlbmd0aCIsImZvckVhY2giLCJfZGVmaW5lUHJvcGVydHkyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImRlZmluZVByb3BlcnRpZXMiLCJkZWZpbmVQcm9wZXJ0eSIsIl9jcmVhdGVGb3JPZkl0ZXJhdG9ySGVscGVyIiwiU3ltYm9sIiwiaXRlcmF0b3IiLCJBcnJheSIsImlzQXJyYXkiLCJfdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkiLCJfbiIsIkYiLCJzIiwibiIsImRvbmUiLCJ2YWx1ZSIsImYiLCJUeXBlRXJyb3IiLCJhIiwidSIsImNhbGwiLCJuZXh0IiwiX2FycmF5TGlrZVRvQXJyYXkiLCJ0b1N0cmluZyIsInNsaWNlIiwiY29uc3RydWN0b3IiLCJuYW1lIiwiZnJvbSIsInRlc3QiLCJERUZBVUxUX1VOSVZFUlNBTF9URVhUVVJFX1BBUkFNRVRFUlMiLCJHTCIsIlRFWFRVUkVfTUlOX0ZJTFRFUiIsIk5FQVJFU1QiLCJURVhUVVJFX01BR19GSUxURVIiLCJURVhUVVJFX1dSQVBfUyIsIkNMQU1QX1RPX0VER0UiLCJURVhUVVJFX1dSQVBfVCIsImxvYWRJbWFnZUl0ZW0iLCJnbCIsImltYWdlSXRlbSIsInJlc3VsdCIsImRpcnR5UmVzdWx0IiwibWFwIiwieCIsImxvYWRUZXh0dXJlIiwiX2l0ZXJhdG9yIiwiX3N0ZXAiLCJ0ZXh0dXJlIiwiZXJyIiwibG9hZEltYWdlcyIsIl9yZWYiLCJpbWFnZXMiLCJpbWFnZXNEYXRhIiwib2xkSW1hZ2VzRGF0YSIsImltYWdlc0RpcnR5Iiwia2V5IiwiY2hhbmdlZEtleXMiLCJpc0VxdWFsIiwiX2kiLCJfY2hhbmdlZEtleXMiLCJpbWFnZURhdGEiLCJsb2FkZWRJdGVtIiwiVGV4dHVyZTJEIiwidGV4dHVyZVBhcmFtcyIsInBhcmFtZXRlcnMiLCJpc1dlYkdMMiIsIndlYmdsMVRleHR1cmVGYWxsYmFja3MiLCJtaXBtYXBzIiwiZm9ybWF0IiwiUjhVSSIsIlIxNlVJIiwiUjMyVUkiLCJpbmNsdWRlcyIsIkxVTUlOQU5DRSIsImRhdGFGb3JtYXQiLCJSRURfSU5URUdFUiIsInR5cGUiLCJVTlNJR05FRF9CWVRFIiwiVU5TSUdORURfU0hPUlQiLCJVTlNJR05FRF9JTlQiLCJGTE9BVCIsImRhdGEiLCJVaW50OEFycmF5IiwiVWludDE2QXJyYXkiLCJVaW50MzJBcnJheSIsIkZsb2F0MzJBcnJheSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yYXN0ZXIvaW1hZ2VzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCBHTCBmcm9tICdAbHVtYS5nbC9jb25zdGFudHMnO1xuaW1wb3J0IHtpc1dlYkdMMiwgVGV4dHVyZTJEfSBmcm9tICdAbHVtYS5nbC9jb3JlJztcbmltcG9ydCB0eXBlIHtUZXh0dXJlMkRQcm9wc30gZnJvbSAnQGx1bWEuZ2wvd2ViZ2wnO1xuaW1wb3J0IGlzRXF1YWwgZnJvbSAnbG9kYXNoLmlzZXF1YWwnO1xuXG5pbXBvcnQgdHlwZSB7SW1hZ2VJbnB1dCwgSW1hZ2VTdGF0ZX0gZnJvbSAnLi90eXBlcyc7XG5cbi8qKlxuICogVGV4dHVyZSBwYXJhbWV0ZXJzIHRoYXQgc2hvdWxkIHdvcmsgZm9yIGV2ZXJ5IHRleHR1cmUgb24gYm90aCBXZWJHTDEgYW5kIFdlYkdMMlxuICovXG5jb25zdCBERUZBVUxUX1VOSVZFUlNBTF9URVhUVVJFX1BBUkFNRVRFUlMgPSB7XG4gIFtHTC5URVhUVVJFX01JTl9GSUxURVJdOiBHTC5ORUFSRVNULFxuICBbR0wuVEVYVFVSRV9NQUdfRklMVEVSXTogR0wuTkVBUkVTVCxcbiAgW0dMLlRFWFRVUkVfV1JBUF9TXTogR0wuQ0xBTVBfVE9fRURHRSxcbiAgW0dMLlRFWFRVUkVfV1JBUF9UXTogR0wuQ0xBTVBfVE9fRURHRVxufTtcblxudHlwZSBMb2FkSW1hZ2VzT3B0aW9ucyA9IHtcbiAgZ2w6IFdlYkdMUmVuZGVyaW5nQ29udGV4dCB8IFdlYkdMMlJlbmRlcmluZ0NvbnRleHQ7XG4gIGltYWdlczogSW1hZ2VTdGF0ZTtcbiAgaW1hZ2VzRGF0YTogSW1hZ2VJbnB1dDtcbiAgb2xkSW1hZ2VzRGF0YTogSW1hZ2VJbnB1dDtcbn07XG5cbi8qKlxuICogTG9hZCBpbWFnZSBpdGVtcyB0byB3ZWJnbCBjb250ZXh0XG4gKiBAcGFyYW0gZ2wgd2ViZ2wgcmVuZGVyaW5nIGNvbnRleHRcbiAqIEBwYXJhbSBpbWFnZUl0ZW0gaW1hZ2UgaXRlbSwgbWlnaHQgYmUgc2luZ2xlIHRleHR1cmUgb3IgYXJyYXkgb2YgdGV4dHVyZXNcbiAqIEByZXR1cm5zIGxvYWRlZCBzaW5nbGUgd2ViZ2wgdGV4dHVyZSBvciBhcnJheSBvZiB3ZWJnbCB0ZXh0dXJlIG9yIG51bGxcbiAqL1xuZnVuY3Rpb24gbG9hZEltYWdlSXRlbShcbiAgZ2w6IFdlYkdMUmVuZGVyaW5nQ29udGV4dCB8IFdlYkdMMlJlbmRlcmluZ0NvbnRleHQsXG4gIGltYWdlSXRlbTogVGV4dHVyZTJEUHJvcHMgfCBUZXh0dXJlMkQgfCAoVGV4dHVyZTJEUHJvcHMgfCBUZXh0dXJlMkQpW11cbik6IG51bGwgfCBUZXh0dXJlMkQgfCBUZXh0dXJlMkRbXSB7XG4gIGxldCByZXN1bHQ6IG51bGwgfCBUZXh0dXJlMkQgfCBUZXh0dXJlMkRbXTtcbiAgaWYgKEFycmF5LmlzQXJyYXkoaW1hZ2VJdGVtKSkge1xuICAgIGNvbnN0IGRpcnR5UmVzdWx0ID0gaW1hZ2VJdGVtLm1hcCh4ID0+IGxvYWRUZXh0dXJlKGdsLCB4KSk7XG4gICAgcmVzdWx0ID0gW107XG4gICAgZm9yIChjb25zdCB0ZXh0dXJlIG9mIGRpcnR5UmVzdWx0KSB7XG4gICAgICBpZiAodGV4dHVyZSkge1xuICAgICAgICByZXN1bHQucHVzaCh0ZXh0dXJlKTtcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKCFyZXN1bHQubGVuZ3RoKSB7XG4gICAgICByZXN1bHQgPSBudWxsO1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICByZXN1bHQgPSBsb2FkVGV4dHVyZShnbCwgaW1hZ2VJdGVtKTtcbiAgfVxuICByZXR1cm4gcmVzdWx0O1xufVxuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgY29tcGxleGl0eVxuZXhwb3J0IGZ1bmN0aW9uIGxvYWRJbWFnZXMoe1xuICBnbCxcbiAgaW1hZ2VzLFxuICBpbWFnZXNEYXRhLFxuICBvbGRJbWFnZXNEYXRhXG59OiBMb2FkSW1hZ2VzT3B0aW9ucyk6IEltYWdlU3RhdGUgfCBudWxsIHtcbiAgLy8gQ2hhbmdlIHRvIGB0cnVlYCBpZiB3ZSBuZWVkIHRvIHNldFN0YXRlIHdpdGggYSBuZXcgYGltYWdlc2Agb2JqZWN0XG4gIGxldCBpbWFnZXNEaXJ0eSA9IGZhbHNlO1xuXG4gIC8vIElmIHRoZXJlIGFyZSBhbnkgcmVtb3ZlZCBrZXlzLCB3aGljaCBwcmV2aW91c2x5IGV4aXN0ZWQgaW4gb2xkUHJvcHMgYW5kXG4gIC8vIHRoaXMuc3RhdGUuaW1hZ2VzIGJ1dCBubyBsb25nZXIgZXhpc3QgaW4gcHJvcHMsIHJlbW92ZSBmcm9tIHRoZSBpbWFnZXNcbiAgLy8gb2JqZWN0XG4gIGlmIChvbGRJbWFnZXNEYXRhKSB7XG4gICAgZm9yIChjb25zdCBrZXkgaW4gb2xkSW1hZ2VzRGF0YSkge1xuICAgICAgaWYgKGltYWdlc0RhdGEgJiYgIShrZXkgaW4gaW1hZ2VzRGF0YSkgJiYga2V5IGluIGltYWdlcykge1xuICAgICAgICBkZWxldGUgaW1hZ2VzW2tleV07XG4gICAgICAgIGltYWdlc0RpcnR5ID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBDaGVjayBpZiBhbnkga2V5cyBvZiBwcm9wcy5pbWFnZXMgaGF2ZSBjaGFuZ2VkXG4gIGNvbnN0IGNoYW5nZWRLZXlzOiBzdHJpbmdbXSA9IFtdO1xuICBmb3IgKGNvbnN0IGtleSBpbiBpbWFnZXNEYXRhKSB7XG4gICAgLy8gSWYgb2xkUHJvcHMuaW1hZ2VzIGRpZG4ndCBleGlzdCBvciBpdCBleGlzdGVkIGFuZCB0aGlzIGtleSBkaWRuJ3QgZXhpc3RcbiAgICBpZiAoIW9sZEltYWdlc0RhdGEgfHwgKG9sZEltYWdlc0RhdGEgJiYgIShrZXkgaW4gb2xkSW1hZ2VzRGF0YSkpKSB7XG4gICAgICBjaGFuZ2VkS2V5cy5wdXNoKGtleSk7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG5cbiAgICAvLyBEZWVwIGNvbXBhcmUgd2hlbiB0aGUga2V5IHByZXZpb3VzbHkgZXhpc3RlZCB0byBzZWUgaWYgaXQgY2hhbmdlZFxuICAgIGlmICghaXNFcXVhbChpbWFnZXNEYXRhW2tleV0sIG9sZEltYWdlc0RhdGFba2V5XSkpIHtcbiAgICAgIGNoYW5nZWRLZXlzLnB1c2goa2V5KTtcbiAgICB9XG4gIH1cblxuICBmb3IgKGNvbnN0IGtleSBvZiBjaGFuZ2VkS2V5cykge1xuICAgIGNvbnN0IGltYWdlRGF0YSA9IGltYWdlc0RhdGFba2V5XTtcbiAgICBpZiAoIWltYWdlRGF0YSkge1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgY29uc3QgbG9hZGVkSXRlbSA9IGxvYWRJbWFnZUl0ZW0oZ2wsIGltYWdlRGF0YSk7XG4gICAgaWYgKGxvYWRlZEl0ZW0pIHtcbiAgICAgIGltYWdlc1trZXldID0gbG9hZGVkSXRlbTtcbiAgICB9XG4gICAgaW1hZ2VzRGlydHkgPSB0cnVlO1xuICB9XG5cbiAgaWYgKGltYWdlc0RpcnR5KSB7XG4gICAgcmV0dXJuIGltYWdlcztcbiAgfVxuXG4gIHJldHVybiBudWxsO1xufVxuXG4vKipcbiAqIENyZWF0ZSBUZXh0dXJlMkQgb2JqZWN0IGZyb20gaW1hZ2UgZGF0YVxuICovXG5mdW5jdGlvbiBsb2FkVGV4dHVyZShcbiAgZ2w6IFdlYkdMUmVuZGVyaW5nQ29udGV4dCB8IFdlYkdMMlJlbmRlcmluZ0NvbnRleHQsXG4gIGltYWdlRGF0YTogVGV4dHVyZTJEIHwgVGV4dHVyZTJEUHJvcHNcbik6IFRleHR1cmUyRCB8IG51bGwge1xuICBpZiAoIWltYWdlRGF0YSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgaWYgKGltYWdlRGF0YSBpbnN0YW5jZW9mIFRleHR1cmUyRCkge1xuICAgIHJldHVybiBpbWFnZURhdGE7XG4gIH1cblxuICBsZXQgdGV4dHVyZVBhcmFtczogVGV4dHVyZTJEUHJvcHMgPSB7XG4gICAgcGFyYW1ldGVyczogREVGQVVMVF9VTklWRVJTQUxfVEVYVFVSRV9QQVJBTUVURVJTLFxuICAgIC4uLmltYWdlRGF0YVxuICB9O1xuXG4gIGlmICghaXNXZWJHTDIoZ2wpKSB7XG4gICAgdGV4dHVyZVBhcmFtcyA9IHdlYmdsMVRleHR1cmVGYWxsYmFja3ModGV4dHVyZVBhcmFtcyk7XG4gIH1cblxuICByZXR1cm4gbmV3IFRleHR1cmUyRChnbCwgdGV4dHVyZVBhcmFtcyk7XG59XG5cbi8qKlxuICogVGV4dHVyZSBmYWxsYmFja3MgZm9yIFdlYkdMMVxuICogRmFsbGJhY2sgaWRlYXMgZGVyaXZlZCBmcm9tIHZpdlxuICogaHR0cHM6Ly9naXRodWIuY29tL2htcy1kYm1pL3Zpdi9ibG9iLzViY2VjNDI5ZWViYTU1OTE0ZWYzZDcxNTVhNjEwZDgyMDQ4NTIwYTAvc3JjL2xheWVycy9YUkxheWVyL1hSTGF5ZXIuanMjTDI4MC1MMzAyXG4gKi9cbmZ1bmN0aW9uIHdlYmdsMVRleHR1cmVGYWxsYmFja3ModGV4dHVyZVBhcmFtczogVGV4dHVyZTJEUHJvcHMpOiBUZXh0dXJlMkRQcm9wcyB7XG4gIC8vIFNldCBtaXBtYXBzIHRvIGZhbHNlXG4gIC8vIE5vdCBzdXJlIGlmIHRoaXMgaXMgbmVjZXNzYXJ5P1xuICAvLyBNaWdodCBhY3R1YWxseSBvbmx5IGJlIG5lY2Vzc2FyeSBmb3IgdWludCB0ZXh0dXJlc1xuICB0ZXh0dXJlUGFyYW1zLm1pcG1hcHMgPSBmYWxzZTtcblxuICAvLyBDaGFuZ2UgZm9ybWF0IHRvIEx1bWluYW5jZVxuICBpZiAodGV4dHVyZVBhcmFtcy5mb3JtYXQgJiYgW0dMLlI4VUksIEdMLlIxNlVJLCBHTC5SMzJVSV0uaW5jbHVkZXModGV4dHVyZVBhcmFtcy5mb3JtYXQpKSB7XG4gICAgdGV4dHVyZVBhcmFtcy5mb3JtYXQgPSBHTC5MVU1JTkFOQ0U7XG4gIH1cblxuICAvLyBDaGFuZ2UgZGF0YUZvcm1hdCB0byBMdW1pbmFuY2VcbiAgaWYgKHRleHR1cmVQYXJhbXMuZGF0YUZvcm1hdCA9PT0gR0wuUkVEX0lOVEVHRVIpIHtcbiAgICB0ZXh0dXJlUGFyYW1zLmRhdGFGb3JtYXQgPSBHTC5MVU1JTkFOQ0U7XG4gIH1cblxuICAvLyBTZXQgZGF0YSB0eXBlIHRvIGZsb2F0XG4gIGlmIChcbiAgICB0ZXh0dXJlUGFyYW1zLnR5cGUgJiZcbiAgICBbR0wuVU5TSUdORURfQllURSwgR0wuVU5TSUdORURfU0hPUlQsIEdMLlVOU0lHTkVEX0lOVF0uaW5jbHVkZXModGV4dHVyZVBhcmFtcy50eXBlKVxuICApIHtcbiAgICB0ZXh0dXJlUGFyYW1zLnR5cGUgPSBHTC5GTE9BVDtcbiAgfVxuXG4gIC8vIENhc3QgZGF0YSB0byBmbG9hdCAzMiBpZiBvbmUgb2YgdGhlIHVpbnQgdHlwZXNcbiAgaWYgKFxuICAgIHRleHR1cmVQYXJhbXMuZGF0YSBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkgfHxcbiAgICB0ZXh0dXJlUGFyYW1zLmRhdGEgaW5zdGFuY2VvZiBVaW50MTZBcnJheSB8fFxuICAgIHRleHR1cmVQYXJhbXMuZGF0YSBpbnN0YW5jZW9mIFVpbnQzMkFycmF5XG4gICkge1xuICAgIHRleHR1cmVQYXJhbXMuZGF0YSA9IG5ldyBGbG9hdDMyQXJyYXkodGV4dHVyZVBhcmFtcy5kYXRhKTtcbiAgfVxuXG4gIC8vIE92ZXJyaWRlIHRleHR1cmUgcGFyYW1ldGVycyB0byBtYWtlIHN1cmUgdGhleSdyZSB2YWxpZCBvbiBXZWJHTDFcbiAgdGV4dHVyZVBhcmFtcy5wYXJhbWV0ZXJzID0gey4uLnRleHR1cmVQYXJhbXMucGFyYW1ldGVycywgLi4uREVGQVVMVF9VTklWRVJTQUxfVEVYVFVSRV9QQVJBTUVURVJTfTtcblxuICByZXR1cm4gdGV4dHVyZVBhcmFtcztcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFHQSxJQUFBQSxVQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxLQUFBLEdBQUFELE9BQUE7QUFFQSxJQUFBRSxPQUFBLEdBQUFILHNCQUFBLENBQUFDLE9BQUE7QUFBcUMsU0FBQUcsUUFBQUMsQ0FBQSxFQUFBQyxDQUFBLFFBQUFDLENBQUEsR0FBQUMsTUFBQSxDQUFBQyxJQUFBLENBQUFKLENBQUEsT0FBQUcsTUFBQSxDQUFBRSxxQkFBQSxRQUFBQyxDQUFBLEdBQUFILE1BQUEsQ0FBQUUscUJBQUEsQ0FBQUwsQ0FBQSxHQUFBQyxDQUFBLEtBQUFLLENBQUEsR0FBQUEsQ0FBQSxDQUFBQyxNQUFBLFdBQUFOLENBQUEsV0FBQUUsTUFBQSxDQUFBSyx3QkFBQSxDQUFBUixDQUFBLEVBQUFDLENBQUEsRUFBQVEsVUFBQSxPQUFBUCxDQUFBLENBQUFRLElBQUEsQ0FBQUMsS0FBQSxDQUFBVCxDQUFBLEVBQUFJLENBQUEsWUFBQUosQ0FBQTtBQUFBLFNBQUFVLGNBQUFaLENBQUEsYUFBQUMsQ0FBQSxNQUFBQSxDQUFBLEdBQUFZLFNBQUEsQ0FBQUMsTUFBQSxFQUFBYixDQUFBLFVBQUFDLENBQUEsV0FBQVcsU0FBQSxDQUFBWixDQUFBLElBQUFZLFNBQUEsQ0FBQVosQ0FBQSxRQUFBQSxDQUFBLE9BQUFGLE9BQUEsQ0FBQUksTUFBQSxDQUFBRCxDQUFBLE9BQUFhLE9BQUEsV0FBQWQsQ0FBQSxRQUFBZSxnQkFBQSxhQUFBaEIs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
|
@@ -0,0 +1,2 @@
|
|
1
|
+
declare const _default: "#define SHADER_NAME raster-layer-fragment-shader\n\n#ifdef GL_ES\nprecision highp float;\n#endif\n\nvarying vec2 vTexCoord;\nvarying vec2 vTexPos;\n\nuniform float desaturate;\nuniform vec4 transparentColor;\nuniform vec3 tintColor;\nuniform float opacity;\n\nuniform float coordinateConversion;\nuniform vec4 bounds;\n\n/* projection utils */\nconst float TILE_SIZE = 512.0;\nconst float PI = 3.1415926536;\nconst float WORLD_SCALE = TILE_SIZE / PI / 2.0;\n\n// from degrees to Web Mercator\nvec2 lnglat_to_mercator(vec2 lnglat) {\n float x = lnglat.x;\n float y = clamp(lnglat.y, -89.9, 89.9);\n return vec2(\n radians(x) + PI,\n PI + log(tan(PI * 0.25 + radians(y) * 0.5))\n ) * WORLD_SCALE;\n}\n\n// from Web Mercator to degrees\nvec2 mercator_to_lnglat(vec2 xy) {\n xy /= WORLD_SCALE;\n return degrees(vec2(\n xy.x - PI,\n atan(exp(xy.y - PI)) * 2.0 - PI * 0.5\n ));\n}\n/* End projection utils */\n\n// apply desaturation\nvec3 color_desaturate(vec3 color) {\n float luminance = (color.r + color.g + color.b) * 0.333333333;\n return mix(color, vec3(luminance), desaturate);\n}\n\n// apply tint\nvec3 color_tint(vec3 color) {\n return color * tintColor;\n}\n\n// blend with background color\nvec4 apply_opacity(vec3 color, float alpha) {\n if (transparentColor.a == 0.0) {\n return vec4(color, alpha);\n }\n float blendedAlpha = alpha + transparentColor.a * (1.0 - alpha);\n float highLightRatio = alpha / blendedAlpha;\n vec3 blendedRGB = mix(transparentColor.rgb, color, highLightRatio);\n return vec4(blendedRGB, blendedAlpha);\n}\n\nvec2 getUV(vec2 pos) {\n return vec2(\n (pos.x - bounds[0]) / (bounds[2] - bounds[0]),\n (pos.y - bounds[3]) / (bounds[1] - bounds[3])\n );\n}\n\nvoid main(void) {\n vec2 uv = vTexCoord;\n if (coordinateConversion < -0.5) {\n vec2 lnglat = mercator_to_lnglat(vTexPos);\n uv = getUV(lnglat);\n } else if (coordinateConversion > 0.5) {\n vec2 commonPos = lnglat_to_mercator(vTexPos);\n uv = getUV(commonPos);\n }\n\n vec4 image;\n DECKGL_CREATE_COLOR(image, vTexCoord);\n\n DECKGL_MUTATE_COLOR(image, vTexCoord);\n\n gl_FragColor = apply_opacity(color_tint(color_desaturate(image.rgb)), opacity);\n\n geometry.uv = uv;\n DECKGL_FILTER_COLOR(gl_FragColor, geometry);\n}\n";
|
2
|
+
export default _default;
|
@@ -0,0 +1,10 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports["default"] = void 0;
|
7
|
+
// SPDX-License-Identifier: MIT
|
8
|
+
// Copyright contributors to the kepler.gl project
|
9
|
+
var _default = exports["default"] = "#define SHADER_NAME raster-layer-fragment-shader\n\n#ifdef GL_ES\nprecision highp float;\n#endif\n\nvarying vec2 vTexCoord;\nvarying vec2 vTexPos;\n\nuniform float desaturate;\nuniform vec4 transparentColor;\nuniform vec3 tintColor;\nuniform float opacity;\n\nuniform float coordinateConversion;\nuniform vec4 bounds;\n\n/* projection utils */\nconst float TILE_SIZE = 512.0;\nconst float PI = 3.1415926536;\nconst float WORLD_SCALE = TILE_SIZE / PI / 2.0;\n\n// from degrees to Web Mercator\nvec2 lnglat_to_mercator(vec2 lnglat) {\n float x = lnglat.x;\n float y = clamp(lnglat.y, -89.9, 89.9);\n return vec2(\n radians(x) + PI,\n PI + log(tan(PI * 0.25 + radians(y) * 0.5))\n ) * WORLD_SCALE;\n}\n\n// from Web Mercator to degrees\nvec2 mercator_to_lnglat(vec2 xy) {\n xy /= WORLD_SCALE;\n return degrees(vec2(\n xy.x - PI,\n atan(exp(xy.y - PI)) * 2.0 - PI * 0.5\n ));\n}\n/* End projection utils */\n\n// apply desaturation\nvec3 color_desaturate(vec3 color) {\n float luminance = (color.r + color.g + color.b) * 0.333333333;\n return mix(color, vec3(luminance), desaturate);\n}\n\n// apply tint\nvec3 color_tint(vec3 color) {\n return color * tintColor;\n}\n\n// blend with background color\nvec4 apply_opacity(vec3 color, float alpha) {\n if (transparentColor.a == 0.0) {\n return vec4(color, alpha);\n }\n float blendedAlpha = alpha + transparentColor.a * (1.0 - alpha);\n float highLightRatio = alpha / blendedAlpha;\n vec3 blendedRGB = mix(transparentColor.rgb, color, highLightRatio);\n return vec4(blendedRGB, blendedAlpha);\n}\n\nvec2 getUV(vec2 pos) {\n return vec2(\n (pos.x - bounds[0]) / (bounds[2] - bounds[0]),\n (pos.y - bounds[3]) / (bounds[1] - bounds[3])\n );\n}\n\nvoid main(void) {\n vec2 uv = vTexCoord;\n if (coordinateConversion < -0.5) {\n vec2 lnglat = mercator_to_lnglat(vTexPos);\n uv = getUV(lnglat);\n } else if (coordinateConversion > 0.5) {\n vec2 commonPos = lnglat_to_mercator(vTexPos);\n uv = getUV(commonPos);\n }\n\n vec4 image;\n DECKGL_CREATE_COLOR(image, vTexCoord);\n\n DECKGL_MUTATE_COLOR(image, vTexCoord);\n\n gl_FragColor = apply_opacity(color_tint(color_desaturate(image.rgb)), opacity);\n\n geometry.uv = uv;\n DECKGL_FILTER_COLOR(gl_FragColor, geometry);\n}\n";
|
10
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcmFzdGVyL3Jhc3Rlci1sYXllci9yYXN0ZXItbGF5ZXItd2ViZ2wxLmZzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmV4cG9ydCBkZWZhdWx0IGBcXFxuI2RlZmluZSBTSEFERVJfTkFNRSByYXN0ZXItbGF5ZXItZnJhZ21lbnQtc2hhZGVyXG5cbiNpZmRlZiBHTF9FU1xucHJlY2lzaW9uIGhpZ2hwIGZsb2F0O1xuI2VuZGlmXG5cbnZhcnlpbmcgdmVjMiB2VGV4Q29vcmQ7XG52YXJ5aW5nIHZlYzIgdlRleFBvcztcblxudW5pZm9ybSBmbG9hdCBkZXNhdHVyYXRlO1xudW5pZm9ybSB2ZWM0IHRyYW5zcGFyZW50Q29sb3I7XG51bmlmb3JtIHZlYzMgdGludENvbG9yO1xudW5pZm9ybSBmbG9hdCBvcGFjaXR5O1xuXG51bmlmb3JtIGZsb2F0IGNvb3JkaW5hdGVDb252ZXJzaW9uO1xudW5pZm9ybSB2ZWM0IGJvdW5kcztcblxuLyogcHJvamVjdGlvbiB1dGlscyAqL1xuY29uc3QgZmxvYXQgVElMRV9TSVpFID0gNTEyLjA7XG5jb25zdCBmbG9hdCBQSSA9IDMuMTQxNTkyNjUzNjtcbmNvbnN0IGZsb2F0IFdPUkxEX1NDQUxFID0gVElMRV9TSVpFIC8gUEkgLyAyLjA7XG5cbi8vIGZyb20gZGVncmVlcyB0byBXZWIgTWVyY2F0b3JcbnZlYzIgbG5nbGF0X3RvX21lcmNhdG9yKHZlYzIgbG5nbGF0KSB7XG4gIGZsb2F0IHggPSBsbmdsYXQueDtcbiAgZmxvYXQgeSA9IGNsYW1wKGxuZ2xhdC55LCAtODkuOSwgODkuOSk7XG4gIHJldHVybiB2ZWMyKFxuICAgIHJhZGlhbnMoeCkgKyBQSSxcbiAgICBQSSArIGxvZyh0YW4oUEkgKiAwLjI1ICsgcmFkaWFucyh5KSAqIDAuNSkpXG4gICkgKiBXT1JMRF9TQ0FMRTtcbn1cblxuLy8gZnJvbSBXZWIgTWVyY2F0b3IgdG8gZGVncmVlc1xudmVjMiBtZXJjYXRvcl90b19sbmdsYXQodmVjMiB4eSkge1xuICB4eSAvPSBXT1JMRF9TQ0FMRTtcbiAgcmV0dXJuIGRlZ3JlZXModmVjMihcbiAgICB4eS54IC0gUEksXG4gICAgYXRhbihleHAoeHkueSAtIFBJKSkgKiAyLjAgLSBQSSAqIDAuNVxuICApKTtcbn1cbi8qIEVuZCBwcm9qZWN0aW9uIHV0aWxzICovXG5cbi8vIGFwcGx5IGRlc2F0dXJhdGlvblxudmVjMyBjb2xvcl9kZXNhdHVyYXRlKHZlYzMgY29sb3IpIHtcbiAgZmxvYXQgbHVtaW5hbmNlID0gKGNvbG9yLnIgKyBjb2xvci5nICsgY29sb3IuYikgKiAwLjMzMzMzMzMzMztcbiAgcmV0dXJuIG1peChjb2xvciwgdmVjMyhsdW1pbmFuY2UpLCBkZXNhdHVyYXRlKTtcbn1cblxuLy8gYXBwbHkgdGludFxudmVjMyBjb2xvcl90aW50KHZlYzMgY29sb3IpIHtcbiAgcmV0dXJuIGNvbG9yICogdGludENvbG9yO1xufVxuXG4vLyBibGVuZCB3aXRoIGJhY2tncm91bmQgY29sb3JcbnZlYzQgYXBwbHlfb3BhY2l0eSh2ZWMzIGNvbG9yLCBmbG9hdCBhbHBoYSkge1xuICBpZiAodHJhbnNwYXJlbnRDb2xvci5hID09IDAuMCkge1xuICAgIHJldHVybiB2ZWM0KGNvbG9yLCBhbHBoYSk7XG4gIH1cbiAgZmxvYXQgYmxlbmRlZEFscGhhID0gYWxwaGEgKyB0cmFuc3BhcmVudENvbG9yLmEgKiAoMS4wIC0gYWxwaGEpO1xuICBmbG9hdCBoaWdoTGlnaHRSYXRpbyA9IGFscGhhIC8gYmxlbmRlZEFscGhhO1xuICB2ZWMzIGJsZW5kZWRSR0IgPSBtaXgodHJhbnNwYXJlbnRDb2xvci5yZ2IsIGNvbG9yLCBoaWdoTGlnaHRSYXRpbyk7XG4gIHJldHVybiB2ZWM0KGJsZW5kZWRSR0IsIGJsZW5kZWRBbHBoYSk7XG59XG5cbnZlYzIgZ2V0VVYodmVjMiBwb3MpIHtcbiAgcmV0dXJuIHZlYzIoXG4gICAgKHBvcy54IC0gYm91bmRzWzBdKSAvIChib3VuZHNbMl0gLSBib3VuZHNbMF0pLFxuICAgIChwb3MueSAtIGJvdW5kc1szXSkgLyAoYm91bmRzWzFdIC0gYm91bmRzWzNdKVxuICApO1xufVxuXG52b2lkIG1haW4odm9pZCkge1xuICB2ZWMyIHV2ID0gdlRleENvb3JkO1xuICBpZiAoY29vcmRpbmF0ZUNvbnZlcnNpb24gPCAtMC41KSB7XG4gICAgdmVjMiBsbmdsYXQgPSBtZXJjYXRvcl90b19sbmdsYXQodlRleFBvcyk7XG4gICAgdXYgPSBnZXRVVihsbmdsYXQpO1xuICB9IGVsc2UgaWYgKGNvb3JkaW5hdGVDb252ZXJzaW9uID4gMC41KSB7XG4gICAgdmVjMiBjb21tb25Qb3MgPSBsbmdsYXRfdG9fbWVyY2F0b3IodlRleFBvcyk7XG4gICAgdXYgPSBnZXRVVihjb21tb25Qb3MpO1xuICB9XG5cbiAgdmVjNCBpbWFnZTtcbiAgREVDS0dMX0NSRUFURV9DT0xPUihpbWFnZSwgdlRleENvb3JkKTtcblxuICBERUNLR0xfTVVUQVRFX0NPTE9SKGltYWdlLCB2VGV4Q29vcmQpO1xuXG4gIGdsX0ZyYWdDb2xvciA9IGFwcGx5X29wYWNpdHkoY29sb3JfdGludChjb2xvcl9kZXNhdHVyYXRlKGltYWdlLnJnYikpLCBvcGFjaXR5KTtcblxuICBnZW9tZXRyeS51diA9IHV2O1xuICBERUNLR0xfRklMVEVSX0NPTE9SKGdsX0ZyYWdDb2xvciwgZ2VvbWV0cnkpO1xufVxuYDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7QUFDQTtBQUFBLElBQUFBLFFBQUEsR0FBQUMsT0FBQSIsImlnbm9yZUxpc3QiOltdfQ==
|
@@ -0,0 +1,2 @@
|
|
1
|
+
declare const _default: "#define SHADER_NAME raster-layer-vertex-shader\n\nattribute vec2 texCoords;\nattribute vec3 positions;\nattribute vec3 positions64Low;\n\nvarying vec2 vTexCoord;\nvarying vec2 vTexPos;\n\nuniform float coordinateConversion;\n\nconst vec3 pickingColor = vec3(1.0, 0.0, 0.0);\n\nvoid main(void) {\n geometry.worldPosition = positions;\n geometry.uv = texCoords;\n geometry.pickingColor = pickingColor;\n\n gl_Position = project_position_to_clipspace(positions, positions64Low, vec3(0.0), geometry.position);\n DECKGL_FILTER_GL_POSITION(gl_Position, geometry);\n\n vTexCoord = texCoords;\n\n if (coordinateConversion < -0.5) {\n vTexPos = geometry.position.xy;\n } else if (coordinateConversion > 0.5) {\n vTexPos = geometry.worldPosition.xy;\n }\n\n vec4 color = vec4(0.0);\n DECKGL_FILTER_COLOR(color, geometry);\n}\n";
|
2
|
+
export default _default;
|
@@ -0,0 +1,10 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports["default"] = void 0;
|
7
|
+
// SPDX-License-Identifier: MIT
|
8
|
+
// Copyright contributors to the kepler.gl project
|
9
|
+
var _default = exports["default"] = "#define SHADER_NAME raster-layer-vertex-shader\n\nattribute vec2 texCoords;\nattribute vec3 positions;\nattribute vec3 positions64Low;\n\nvarying vec2 vTexCoord;\nvarying vec2 vTexPos;\n\nuniform float coordinateConversion;\n\nconst vec3 pickingColor = vec3(1.0, 0.0, 0.0);\n\nvoid main(void) {\n geometry.worldPosition = positions;\n geometry.uv = texCoords;\n geometry.pickingColor = pickingColor;\n\n gl_Position = project_position_to_clipspace(positions, positions64Low, vec3(0.0), geometry.position);\n DECKGL_FILTER_GL_POSITION(gl_Position, geometry);\n\n vTexCoord = texCoords;\n\n if (coordinateConversion < -0.5) {\n vTexPos = geometry.position.xy;\n } else if (coordinateConversion > 0.5) {\n vTexPos = geometry.worldPosition.xy;\n }\n\n vec4 color = vec4(0.0);\n DECKGL_FILTER_COLOR(color, geometry);\n}\n";
|
10
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcmFzdGVyL3Jhc3Rlci1sYXllci9yYXN0ZXItbGF5ZXItd2ViZ2wxLnZzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmV4cG9ydCBkZWZhdWx0IGBcXFxuI2RlZmluZSBTSEFERVJfTkFNRSByYXN0ZXItbGF5ZXItdmVydGV4LXNoYWRlclxuXG5hdHRyaWJ1dGUgdmVjMiB0ZXhDb29yZHM7XG5hdHRyaWJ1dGUgdmVjMyBwb3NpdGlvbnM7XG5hdHRyaWJ1dGUgdmVjMyBwb3NpdGlvbnM2NExvdztcblxudmFyeWluZyB2ZWMyIHZUZXhDb29yZDtcbnZhcnlpbmcgdmVjMiB2VGV4UG9zO1xuXG51bmlmb3JtIGZsb2F0IGNvb3JkaW5hdGVDb252ZXJzaW9uO1xuXG5jb25zdCB2ZWMzIHBpY2tpbmdDb2xvciA9IHZlYzMoMS4wLCAwLjAsIDAuMCk7XG5cbnZvaWQgbWFpbih2b2lkKSB7XG4gIGdlb21ldHJ5LndvcmxkUG9zaXRpb24gPSBwb3NpdGlvbnM7XG4gIGdlb21ldHJ5LnV2ID0gdGV4Q29vcmRzO1xuICBnZW9tZXRyeS5waWNraW5nQ29sb3IgPSBwaWNraW5nQ29sb3I7XG5cbiAgZ2xfUG9zaXRpb24gPSBwcm9qZWN0X3Bvc2l0aW9uX3RvX2NsaXBzcGFjZShwb3NpdGlvbnMsIHBvc2l0aW9uczY0TG93LCB2ZWMzKDAuMCksIGdlb21ldHJ5LnBvc2l0aW9uKTtcbiAgREVDS0dMX0ZJTFRFUl9HTF9QT1NJVElPTihnbF9Qb3NpdGlvbiwgZ2VvbWV0cnkpO1xuXG4gIHZUZXhDb29yZCA9IHRleENvb3JkcztcblxuICBpZiAoY29vcmRpbmF0ZUNvbnZlcnNpb24gPCAtMC41KSB7XG4gICAgdlRleFBvcyA9IGdlb21ldHJ5LnBvc2l0aW9uLnh5O1xuICB9IGVsc2UgaWYgKGNvb3JkaW5hdGVDb252ZXJzaW9uID4gMC41KSB7XG4gICAgdlRleFBvcyA9IGdlb21ldHJ5LndvcmxkUG9zaXRpb24ueHk7XG4gIH1cblxuICB2ZWM0IGNvbG9yID0gdmVjNCgwLjApO1xuICBERUNLR0xfRklMVEVSX0NPTE9SKGNvbG9yLCBnZW9tZXRyeSk7XG59XG5gO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTtBQUNBO0FBQUEsSUFBQUEsUUFBQSxHQUFBQyxPQUFBIiwiaWdub3JlTGlzdCI6W119
|
@@ -0,0 +1,2 @@
|
|
1
|
+
declare const _default: "#version 300 es\n#define SHADER_NAME raster-layer-fragment-shader\n\n// Ref https://www.khronos.org/registry/OpenGL/specs/es/3.0/GLSL_ES_Specification_3.00.pdf#page=60\nprecision mediump float;\nprecision mediump int;\nprecision mediump usampler2D;\n\nin vec2 vTexCoord;\nin vec2 vTexPos;\n\nout vec4 color;\n\nuniform float desaturate;\nuniform vec4 transparentColor;\nuniform vec3 tintColor;\nuniform float opacity;\n\nuniform float coordinateConversion;\nuniform vec4 bounds;\n\n/* projection utils */\nconst float TILE_SIZE = 512.0;\nconst float PI = 3.1415926536;\nconst float WORLD_SCALE = TILE_SIZE / PI / 2.0;\n\n// from degrees to Web Mercator\nvec2 lnglat_to_mercator(vec2 lnglat) {\n float x = lnglat.x;\n float y = clamp(lnglat.y, -89.9, 89.9);\n return vec2(\n radians(x) + PI,\n PI + log(tan(PI * 0.25 + radians(y) * 0.5))\n ) * WORLD_SCALE;\n}\n\n// from Web Mercator to degrees\nvec2 mercator_to_lnglat(vec2 xy) {\n xy /= WORLD_SCALE;\n return degrees(vec2(\n xy.x - PI,\n atan(exp(xy.y - PI)) * 2.0 - PI * 0.5\n ));\n}\n/* End projection utils */\n\n// apply desaturation\nvec3 color_desaturate(vec3 color) {\n float luminance = (color.r + color.g + color.b) * 0.333333333;\n return mix(color, vec3(luminance), desaturate);\n}\n\n// apply tint\nvec3 color_tint(vec3 color) {\n return color * tintColor;\n}\n\n// blend with background color\nvec4 apply_opacity(vec3 color, float alpha) {\n if (transparentColor.a == 0.0) {\n return vec4(color, alpha);\n }\n float blendedAlpha = alpha + transparentColor.a * (1.0 - alpha);\n float highLightRatio = alpha / blendedAlpha;\n vec3 blendedRGB = mix(transparentColor.rgb, color, highLightRatio);\n return vec4(blendedRGB, blendedAlpha);\n}\n\nvec2 getUV(vec2 pos) {\n return vec2(\n (pos.x - bounds[0]) / (bounds[2] - bounds[0]),\n (pos.y - bounds[3]) / (bounds[1] - bounds[3])\n );\n}\n\nvoid main(void) {\n vec2 uv = vTexCoord;\n if (coordinateConversion < -0.5) {\n vec2 lnglat = mercator_to_lnglat(vTexPos);\n uv = getUV(lnglat);\n } else if (coordinateConversion > 0.5) {\n vec2 commonPos = lnglat_to_mercator(vTexPos);\n uv = getUV(commonPos);\n }\n\n vec4 image;\n DECKGL_CREATE_COLOR(image, vTexCoord);\n\n DECKGL_MUTATE_COLOR(image, vTexCoord);\n\n color = apply_opacity(color_tint(color_desaturate(image.rgb)), opacity);\n\n geometry.uv = uv;\n DECKGL_FILTER_COLOR(color, geometry);\n}\n";
|
2
|
+
export default _default;
|
@@ -0,0 +1,10 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports["default"] = void 0;
|
7
|
+
// SPDX-License-Identifier: MIT
|
8
|
+
// Copyright contributors to the kepler.gl project
|
9
|
+
var _default = exports["default"] = "#version 300 es\n#define SHADER_NAME raster-layer-fragment-shader\n\n// Ref https://www.khronos.org/registry/OpenGL/specs/es/3.0/GLSL_ES_Specification_3.00.pdf#page=60\nprecision mediump float;\nprecision mediump int;\nprecision mediump usampler2D;\n\nin vec2 vTexCoord;\nin vec2 vTexPos;\n\nout vec4 color;\n\nuniform float desaturate;\nuniform vec4 transparentColor;\nuniform vec3 tintColor;\nuniform float opacity;\n\nuniform float coordinateConversion;\nuniform vec4 bounds;\n\n/* projection utils */\nconst float TILE_SIZE = 512.0;\nconst float PI = 3.1415926536;\nconst float WORLD_SCALE = TILE_SIZE / PI / 2.0;\n\n// from degrees to Web Mercator\nvec2 lnglat_to_mercator(vec2 lnglat) {\n float x = lnglat.x;\n float y = clamp(lnglat.y, -89.9, 89.9);\n return vec2(\n radians(x) + PI,\n PI + log(tan(PI * 0.25 + radians(y) * 0.5))\n ) * WORLD_SCALE;\n}\n\n// from Web Mercator to degrees\nvec2 mercator_to_lnglat(vec2 xy) {\n xy /= WORLD_SCALE;\n return degrees(vec2(\n xy.x - PI,\n atan(exp(xy.y - PI)) * 2.0 - PI * 0.5\n ));\n}\n/* End projection utils */\n\n// apply desaturation\nvec3 color_desaturate(vec3 color) {\n float luminance = (color.r + color.g + color.b) * 0.333333333;\n return mix(color, vec3(luminance), desaturate);\n}\n\n// apply tint\nvec3 color_tint(vec3 color) {\n return color * tintColor;\n}\n\n// blend with background color\nvec4 apply_opacity(vec3 color, float alpha) {\n if (transparentColor.a == 0.0) {\n return vec4(color, alpha);\n }\n float blendedAlpha = alpha + transparentColor.a * (1.0 - alpha);\n float highLightRatio = alpha / blendedAlpha;\n vec3 blendedRGB = mix(transparentColor.rgb, color, highLightRatio);\n return vec4(blendedRGB, blendedAlpha);\n}\n\nvec2 getUV(vec2 pos) {\n return vec2(\n (pos.x - bounds[0]) / (bounds[2] - bounds[0]),\n (pos.y - bounds[3]) / (bounds[1] - bounds[3])\n );\n}\n\nvoid main(void) {\n vec2 uv = vTexCoord;\n if (coordinateConversion < -0.5) {\n vec2 lnglat = mercator_to_lnglat(vTexPos);\n uv = getUV(lnglat);\n } else if (coordinateConversion > 0.5) {\n vec2 commonPos = lnglat_to_mercator(vTexPos);\n uv = getUV(commonPos);\n }\n\n vec4 image;\n DECKGL_CREATE_COLOR(image, vTexCoord);\n\n DECKGL_MUTATE_COLOR(image, vTexCoord);\n\n color = apply_opacity(color_tint(color_desaturate(image.rgb)), opacity);\n\n geometry.uv = uv;\n DECKGL_FILTER_COLOR(color, geometry);\n}\n";
|
10
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcmFzdGVyL3Jhc3Rlci1sYXllci9yYXN0ZXItbGF5ZXItd2ViZ2wyLmZzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmV4cG9ydCBkZWZhdWx0IGBcXFxuI3ZlcnNpb24gMzAwIGVzXG4jZGVmaW5lIFNIQURFUl9OQU1FIHJhc3Rlci1sYXllci1mcmFnbWVudC1zaGFkZXJcblxuLy8gUmVmIGh0dHBzOi8vd3d3Lmtocm9ub3Mub3JnL3JlZ2lzdHJ5L09wZW5HTC9zcGVjcy9lcy8zLjAvR0xTTF9FU19TcGVjaWZpY2F0aW9uXzMuMDAucGRmI3BhZ2U9NjBcbnByZWNpc2lvbiBtZWRpdW1wIGZsb2F0O1xucHJlY2lzaW9uIG1lZGl1bXAgaW50O1xucHJlY2lzaW9uIG1lZGl1bXAgdXNhbXBsZXIyRDtcblxuaW4gdmVjMiB2VGV4Q29vcmQ7XG5pbiB2ZWMyIHZUZXhQb3M7XG5cbm91dCB2ZWM0IGNvbG9yO1xuXG51bmlmb3JtIGZsb2F0IGRlc2F0dXJhdGU7XG51bmlmb3JtIHZlYzQgdHJhbnNwYXJlbnRDb2xvcjtcbnVuaWZvcm0gdmVjMyB0aW50Q29sb3I7XG51bmlmb3JtIGZsb2F0IG9wYWNpdHk7XG5cbnVuaWZvcm0gZmxvYXQgY29vcmRpbmF0ZUNvbnZlcnNpb247XG51bmlmb3JtIHZlYzQgYm91bmRzO1xuXG4vKiBwcm9qZWN0aW9uIHV0aWxzICovXG5jb25zdCBmbG9hdCBUSUxFX1NJWkUgPSA1MTIuMDtcbmNvbnN0IGZsb2F0IFBJID0gMy4xNDE1OTI2NTM2O1xuY29uc3QgZmxvYXQgV09STERfU0NBTEUgPSBUSUxFX1NJWkUgLyBQSSAvIDIuMDtcblxuLy8gZnJvbSBkZWdyZWVzIHRvIFdlYiBNZXJjYXRvclxudmVjMiBsbmdsYXRfdG9fbWVyY2F0b3IodmVjMiBsbmdsYXQpIHtcbiAgZmxvYXQgeCA9IGxuZ2xhdC54O1xuICBmbG9hdCB5ID0gY2xhbXAobG5nbGF0LnksIC04OS45LCA4OS45KTtcbiAgcmV0dXJuIHZlYzIoXG4gICAgcmFkaWFucyh4KSArIFBJLFxuICAgIFBJICsgbG9nKHRhbihQSSAqIDAuMjUgKyByYWRpYW5zKHkpICogMC41KSlcbiAgKSAqIFdPUkxEX1NDQUxFO1xufVxuXG4vLyBmcm9tIFdlYiBNZXJjYXRvciB0byBkZWdyZWVzXG52ZWMyIG1lcmNhdG9yX3RvX2xuZ2xhdCh2ZWMyIHh5KSB7XG4gIHh5IC89IFdPUkxEX1NDQUxFO1xuICByZXR1cm4gZGVncmVlcyh2ZWMyKFxuICAgIHh5LnggLSBQSSxcbiAgICBhdGFuKGV4cCh4eS55IC0gUEkpKSAqIDIuMCAtIFBJICogMC41XG4gICkpO1xufVxuLyogRW5kIHByb2plY3Rpb24gdXRpbHMgKi9cblxuLy8gYXBwbHkgZGVzYXR1cmF0aW9uXG52ZWMzIGNvbG9yX2Rlc2F0dXJhdGUodmVjMyBjb2xvcikge1xuICBmbG9hdCBsdW1pbmFuY2UgPSAoY29sb3IuciArIGNvbG9yLmcgKyBjb2xvci5iKSAqIDAuMzMzMzMzMzMzO1xuICByZXR1cm4gbWl4KGNvbG9yLCB2ZWMzKGx1bWluYW5jZSksIGRlc2F0dXJhdGUpO1xufVxuXG4vLyBhcHBseSB0aW50XG52ZWMzIGNvbG9yX3RpbnQodmVjMyBjb2xvcikge1xuICByZXR1cm4gY29sb3IgKiB0aW50Q29sb3I7XG59XG5cbi8vIGJsZW5kIHdpdGggYmFja2dyb3VuZCBjb2xvclxudmVjNCBhcHBseV9vcGFjaXR5KHZlYzMgY29sb3IsIGZsb2F0IGFscGhhKSB7XG4gIGlmICh0cmFuc3BhcmVudENvbG9yLmEgPT0gMC4wKSB7XG4gICAgcmV0dXJuIHZlYzQoY29sb3IsIGFscGhhKTtcbiAgfVxuICBmbG9hdCBibGVuZGVkQWxwaGEgPSBhbHBoYSArIHRyYW5zcGFyZW50Q29sb3IuYSAqICgxLjAgLSBhbHBoYSk7XG4gIGZsb2F0IGhpZ2hMaWdodFJhdGlvID0gYWxwaGEgLyBibGVuZGVkQWxwaGE7XG4gIHZlYzMgYmxlbmRlZFJHQiA9IG1peCh0cmFuc3BhcmVudENvbG9yLnJnYiwgY29sb3IsIGhpZ2hMaWdodFJhdGlvKTtcbiAgcmV0dXJuIHZlYzQoYmxlbmRlZFJHQiwgYmxlbmRlZEFscGhhKTtcbn1cblxudmVjMiBnZXRVVih2ZWMyIHBvcykge1xuICByZXR1cm4gdmVjMihcbiAgICAocG9zLnggLSBib3VuZHNbMF0pIC8gKGJvdW5kc1syXSAtIGJvdW5kc1swXSksXG4gICAgKHBvcy55IC0gYm91bmRzWzNdKSAvIChib3VuZHNbMV0gLSBib3VuZHNbM10pXG4gICk7XG59XG5cbnZvaWQgbWFpbih2b2lkKSB7XG4gIHZlYzIgdXYgPSB2VGV4Q29vcmQ7XG4gIGlmIChjb29yZGluYXRlQ29udmVyc2lvbiA8IC0wLjUpIHtcbiAgICB2ZWMyIGxuZ2xhdCA9IG1lcmNhdG9yX3RvX2xuZ2xhdCh2VGV4UG9zKTtcbiAgICB1diA9IGdldFVWKGxuZ2xhdCk7XG4gIH0gZWxzZSBpZiAoY29vcmRpbmF0ZUNvbnZlcnNpb24gPiAwLjUpIHtcbiAgICB2ZWMyIGNvbW1vblBvcyA9IGxuZ2xhdF90b19tZXJjYXRvcih2VGV4UG9zKTtcbiAgICB1diA9IGdldFVWKGNvbW1vblBvcyk7XG4gIH1cblxuICB2ZWM0IGltYWdlO1xuICBERUNLR0xfQ1JFQVRFX0NPTE9SKGltYWdlLCB2VGV4Q29vcmQpO1xuXG4gIERFQ0tHTF9NVVRBVEVfQ09MT1IoaW1hZ2UsIHZUZXhDb29yZCk7XG5cbiAgY29sb3IgPSBhcHBseV9vcGFjaXR5KGNvbG9yX3RpbnQoY29sb3JfZGVzYXR1cmF0ZShpbWFnZS5yZ2IpKSwgb3BhY2l0eSk7XG5cbiAgZ2VvbWV0cnkudXYgPSB1djtcbiAgREVDS0dMX0ZJTFRFUl9DT0xPUihjb2xvciwgZ2VvbWV0cnkpO1xufVxuYDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7QUFDQTtBQUFBLElBQUFBLFFBQUEsR0FBQUMsT0FBQSIsImlnbm9yZUxpc3QiOltdfQ==
|
@@ -0,0 +1,2 @@
|
|
1
|
+
declare const _default: "#version 300 es\n#define SHADER_NAME raster-layer-vertex-shader\n\nprecision mediump float;\n\nin vec2 texCoords;\nin vec3 positions;\nin vec3 positions64Low;\n\nout vec2 vTexCoord;\nout vec2 vTexPos;\n\nuniform float coordinateConversion;\n\nconst vec3 pickingColor = vec3(1.0, 0.0, 0.0);\n\nvoid main(void) {\n geometry.worldPosition = positions;\n geometry.uv = texCoords;\n geometry.pickingColor = pickingColor;\n\n gl_Position = project_position_to_clipspace(positions, positions64Low, vec3(0.0), geometry.position);\n DECKGL_FILTER_GL_POSITION(gl_Position, geometry);\n\n vTexCoord = texCoords;\n\n if (coordinateConversion < -0.5) {\n vTexPos = geometry.position.xy;\n } else if (coordinateConversion > 0.5) {\n vTexPos = geometry.worldPosition.xy;\n }\n\n vec4 color = vec4(0.0);\n DECKGL_FILTER_COLOR(color, geometry);\n}\n";
|
2
|
+
export default _default;
|
@@ -0,0 +1,10 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports["default"] = void 0;
|
7
|
+
// SPDX-License-Identifier: MIT
|
8
|
+
// Copyright contributors to the kepler.gl project
|
9
|
+
var _default = exports["default"] = "#version 300 es\n#define SHADER_NAME raster-layer-vertex-shader\n\nprecision mediump float;\n\nin vec2 texCoords;\nin vec3 positions;\nin vec3 positions64Low;\n\nout vec2 vTexCoord;\nout vec2 vTexPos;\n\nuniform float coordinateConversion;\n\nconst vec3 pickingColor = vec3(1.0, 0.0, 0.0);\n\nvoid main(void) {\n geometry.worldPosition = positions;\n geometry.uv = texCoords;\n geometry.pickingColor = pickingColor;\n\n gl_Position = project_position_to_clipspace(positions, positions64Low, vec3(0.0), geometry.position);\n DECKGL_FILTER_GL_POSITION(gl_Position, geometry);\n\n vTexCoord = texCoords;\n\n if (coordinateConversion < -0.5) {\n vTexPos = geometry.position.xy;\n } else if (coordinateConversion > 0.5) {\n vTexPos = geometry.worldPosition.xy;\n }\n\n vec4 color = vec4(0.0);\n DECKGL_FILTER_COLOR(color, geometry);\n}\n";
|
10
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcmFzdGVyL3Jhc3Rlci1sYXllci9yYXN0ZXItbGF5ZXItd2ViZ2wyLnZzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmV4cG9ydCBkZWZhdWx0IGBcXFxuI3ZlcnNpb24gMzAwIGVzXG4jZGVmaW5lIFNIQURFUl9OQU1FIHJhc3Rlci1sYXllci12ZXJ0ZXgtc2hhZGVyXG5cbnByZWNpc2lvbiBtZWRpdW1wIGZsb2F0O1xuXG5pbiB2ZWMyIHRleENvb3JkcztcbmluIHZlYzMgcG9zaXRpb25zO1xuaW4gdmVjMyBwb3NpdGlvbnM2NExvdztcblxub3V0IHZlYzIgdlRleENvb3JkO1xub3V0IHZlYzIgdlRleFBvcztcblxudW5pZm9ybSBmbG9hdCBjb29yZGluYXRlQ29udmVyc2lvbjtcblxuY29uc3QgdmVjMyBwaWNraW5nQ29sb3IgPSB2ZWMzKDEuMCwgMC4wLCAwLjApO1xuXG52b2lkIG1haW4odm9pZCkge1xuICBnZW9tZXRyeS53b3JsZFBvc2l0aW9uID0gcG9zaXRpb25zO1xuICBnZW9tZXRyeS51diA9IHRleENvb3JkcztcbiAgZ2VvbWV0cnkucGlja2luZ0NvbG9yID0gcGlja2luZ0NvbG9yO1xuXG4gIGdsX1Bvc2l0aW9uID0gcHJvamVjdF9wb3NpdGlvbl90b19jbGlwc3BhY2UocG9zaXRpb25zLCBwb3NpdGlvbnM2NExvdywgdmVjMygwLjApLCBnZW9tZXRyeS5wb3NpdGlvbik7XG4gIERFQ0tHTF9GSUxURVJfR0xfUE9TSVRJT04oZ2xfUG9zaXRpb24sIGdlb21ldHJ5KTtcblxuICB2VGV4Q29vcmQgPSB0ZXhDb29yZHM7XG5cbiAgaWYgKGNvb3JkaW5hdGVDb252ZXJzaW9uIDwgLTAuNSkge1xuICAgIHZUZXhQb3MgPSBnZW9tZXRyeS5wb3NpdGlvbi54eTtcbiAgfSBlbHNlIGlmIChjb29yZGluYXRlQ29udmVyc2lvbiA+IDAuNSkge1xuICAgIHZUZXhQb3MgPSBnZW9tZXRyeS53b3JsZFBvc2l0aW9uLnh5O1xuICB9XG5cbiAgdmVjNCBjb2xvciA9IHZlYzQoMC4wKTtcbiAgREVDS0dMX0ZJTFRFUl9DT0xPUihjb2xvciwgZ2VvbWV0cnkpO1xufVxuYDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7QUFDQTtBQUFBLElBQUFBLFFBQUEsR0FBQUMsT0FBQSIsImlnbm9yZUxpc3QiOltdfQ==
|
@@ -0,0 +1,21 @@
|
|
1
|
+
import { UpdateParameters } from '@deck.gl/core/typed';
|
2
|
+
import { BitmapLayer } from '@deck.gl/layers/typed';
|
3
|
+
import type { RasterLayerAddedProps, ImageState } from '../types';
|
4
|
+
export default class RasterLayer extends BitmapLayer<RasterLayerAddedProps> {
|
5
|
+
state: BitmapLayer<RasterLayerAddedProps>['state'] & {
|
6
|
+
images: ImageState;
|
7
|
+
};
|
8
|
+
initializeState(): void;
|
9
|
+
draw({ uniforms }: {
|
10
|
+
uniforms: {
|
11
|
+
[key: string]: any;
|
12
|
+
};
|
13
|
+
}): void;
|
14
|
+
getShaders(): any;
|
15
|
+
updateState(params: UpdateParameters<BitmapLayer<RasterLayerAddedProps>>): void;
|
16
|
+
updateImages({ props, oldProps }: {
|
17
|
+
props: RasterLayerAddedProps;
|
18
|
+
oldProps: RasterLayerAddedProps;
|
19
|
+
}): void;
|
20
|
+
finalizeState(): void;
|
21
|
+
}
|