@kepler.gl/deckgl-layers 3.3.0-alpha.1 → 3.3.0-alpha.10
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/cjs/3d-building-layer/3d-building-layer.js +66 -0
- package/dist/cjs/3d-building-layer/3d-building-utils.js +166 -0
- package/dist/cjs/3d-building-layer/types.js +6 -0
- package/dist/cjs/cluster-layer/cluster-layer.js +292 -0
- package/dist/cjs/column-layer/enhanced-column-layer.js +160 -0
- package/dist/{deckgl-extensions → cjs/deckgl-extensions}/filter-arrow-layer.js +1 -1
- package/dist/cjs/deckgl-extensions/filter-shader-module.js +26 -0
- package/dist/cjs/globe/atmosphere-layer.js +341 -0
- package/dist/cjs/globe/enhanced-multi-icon-layer.js +63 -0
- package/dist/cjs/globe/globe-depth-disk-layer.js +145 -0
- package/dist/cjs/globe/globe-layers.js +574 -0
- package/dist/cjs/globe/globe-stars-layer.js +99 -0
- package/dist/cjs/globe/globe-stars-layer.spec.js +42 -0
- package/dist/cjs/globe/globe-view.js +404 -0
- package/dist/cjs/globe/index.js +140 -0
- package/dist/cjs/globe/mvt-label-layer.js +190 -0
- package/dist/cjs/grid-layer/enhanced-cpu-grid-layer.js +116 -0
- package/dist/cjs/hexagon-layer/enhanced-hexagon-layer.js +134 -0
- package/dist/cjs/index.js +163 -0
- package/dist/cjs/layer-utils/aggregation-utils.js +181 -0
- package/dist/cjs/layer-utils/cluster-utils.js +95 -0
- package/dist/cjs/layer-utils/cpu-aggregator.js +798 -0
- package/dist/cjs/layer-utils/globe-cell-utils.js +203 -0
- package/dist/cjs/layer-utils/globe-cell-utils.spec.js +118 -0
- package/dist/cjs/layer-utils/shader-utils.js +38 -0
- package/dist/cjs/line-layer/line-layer.js +95 -0
- package/dist/cjs/raster/images.js +271 -0
- package/dist/cjs/raster/pipeline-validation-patch.js +101 -0
- package/dist/cjs/raster/raster-layer/raster-layer-shaders.js +163 -0
- package/dist/cjs/raster/raster-layer/raster-layer-webgl1.fs.js +10 -0
- package/dist/cjs/raster/raster-layer/raster-layer-webgl1.vs.js +10 -0
- package/dist/cjs/raster/raster-layer/raster-layer-webgl2.fs.js +10 -0
- package/dist/cjs/raster/raster-layer/raster-layer-webgl2.vs.js +10 -0
- package/dist/cjs/raster/raster-layer/raster-layer.js +287 -0
- package/dist/cjs/raster/raster-mesh-layer/raster-mesh-layer-shaders.js +38 -0
- package/dist/cjs/raster/raster-mesh-layer/raster-mesh-layer-webgl1.fs.js +10 -0
- package/dist/cjs/raster/raster-mesh-layer/raster-mesh-layer-webgl1.vs.js +10 -0
- package/dist/cjs/raster/raster-mesh-layer/raster-mesh-layer-webgl2.fs.js +10 -0
- package/dist/cjs/raster/raster-mesh-layer/raster-mesh-layer-webgl2.vs.js +10 -0
- package/dist/cjs/raster/raster-mesh-layer/raster-mesh-layer.js +321 -0
- package/dist/cjs/raster/raster-processing-uniforms.js +124 -0
- package/dist/cjs/raster/types.js +6 -0
- package/dist/cjs/raster/util.js +139 -0
- package/dist/cjs/raster/webgl/color/colormap.js +45 -0
- package/dist/cjs/raster/webgl/color/filter.js +58 -0
- package/dist/cjs/raster/webgl/color/gamma-contrast.js +68 -0
- package/dist/cjs/raster/webgl/color/linear-rescale.js +35 -0
- package/dist/cjs/raster/webgl/color/saturation.js +42 -0
- package/dist/cjs/raster/webgl/color/sigmoidal-contrast.js +68 -0
- package/dist/{raster → cjs/raster}/webgl/index.js +1 -1
- package/dist/cjs/raster/webgl/pansharpen/pansharpen-brovey.js +46 -0
- package/dist/cjs/raster/webgl/spectral-indices/evi.js +26 -0
- package/dist/cjs/raster/webgl/spectral-indices/msavi.js +25 -0
- package/dist/cjs/raster/webgl/spectral-indices/normalized-difference.js +19 -0
- package/dist/cjs/raster/webgl/spectral-indices/savi.js +21 -0
- package/dist/cjs/raster/webgl/texture/combine-bands.js +65 -0
- package/dist/cjs/raster/webgl/texture/mask.js +50 -0
- package/dist/cjs/raster/webgl/texture/reorder-bands.js +72 -0
- package/dist/cjs/raster/webgl/texture/rgba-image.js +34 -0
- package/dist/cjs/raster/webgl/types.js +6 -0
- package/dist/cjs/svg-icon-layer/scatterplot-icon-layer.js +88 -0
- package/dist/cjs/svg-icon-layer/svg-icon-layer.js +104 -0
- package/dist/cjs/wms/wms-layer.js +624 -0
- package/dist/esm/3d-building-layer/3d-building-layer.js +62 -0
- package/dist/esm/3d-building-layer/3d-building-utils.js +157 -0
- package/dist/esm/3d-building-layer/types.js +3 -0
- package/dist/esm/cluster-layer/cluster-layer.js +286 -0
- package/dist/esm/column-layer/enhanced-column-layer.js +156 -0
- package/dist/esm/deckgl-extensions/filter-arrow-layer.js +64 -0
- package/dist/esm/deckgl-extensions/filter-shader-module.js +20 -0
- package/dist/esm/globe/atmosphere-layer.js +335 -0
- package/dist/esm/globe/enhanced-multi-icon-layer.js +60 -0
- package/dist/esm/globe/globe-depth-disk-layer.js +140 -0
- package/dist/esm/globe/globe-layers.js +566 -0
- package/dist/esm/globe/globe-stars-layer.js +92 -0
- package/dist/esm/globe/globe-stars-layer.spec.js +40 -0
- package/dist/esm/globe/globe-view.js +398 -0
- package/dist/esm/globe/index.js +26 -0
- package/dist/esm/globe/mvt-label-layer.js +187 -0
- package/dist/esm/grid-layer/enhanced-cpu-grid-layer.js +112 -0
- package/dist/esm/hexagon-layer/enhanced-hexagon-layer.js +130 -0
- package/dist/esm/index.js +22 -0
- package/dist/esm/layer-utils/aggregation-utils.js +172 -0
- package/dist/esm/layer-utils/cluster-utils.js +89 -0
- package/dist/esm/layer-utils/cpu-aggregator.js +788 -0
- package/dist/esm/layer-utils/globe-cell-utils.js +197 -0
- package/dist/esm/layer-utils/globe-cell-utils.spec.js +115 -0
- package/dist/esm/layer-utils/shader-utils.js +32 -0
- package/dist/esm/line-layer/line-layer.js +91 -0
- package/dist/esm/raster/images.js +267 -0
- package/dist/esm/raster/pipeline-validation-patch.js +94 -0
- package/dist/esm/raster/raster-layer/raster-layer-shaders.js +153 -0
- package/dist/esm/raster/raster-layer/raster-layer-webgl1.fs.js +5 -0
- package/dist/esm/raster/raster-layer/raster-layer-webgl1.vs.js +5 -0
- package/dist/esm/raster/raster-layer/raster-layer-webgl2.fs.js +5 -0
- package/dist/esm/raster/raster-layer/raster-layer-webgl2.vs.js +5 -0
- package/dist/esm/raster/raster-layer/raster-layer.js +283 -0
- package/dist/esm/raster/raster-mesh-layer/raster-mesh-layer-shaders.js +30 -0
- package/dist/esm/raster/raster-mesh-layer/raster-mesh-layer-webgl1.fs.js +5 -0
- package/dist/esm/raster/raster-mesh-layer/raster-mesh-layer-webgl1.vs.js +5 -0
- package/dist/esm/raster/raster-mesh-layer/raster-mesh-layer-webgl2.fs.js +5 -0
- package/dist/esm/raster/raster-mesh-layer/raster-mesh-layer-webgl2.vs.js +5 -0
- package/dist/esm/raster/raster-mesh-layer/raster-mesh-layer.js +318 -0
- package/dist/esm/raster/raster-processing-uniforms.js +118 -0
- package/dist/esm/raster/types.js +3 -0
- package/dist/esm/raster/util.js +134 -0
- package/dist/esm/raster/webgl/color/colormap.js +39 -0
- package/dist/esm/raster/webgl/color/filter.js +52 -0
- package/dist/esm/raster/webgl/color/gamma-contrast.js +62 -0
- package/dist/esm/raster/webgl/color/linear-rescale.js +29 -0
- package/dist/esm/raster/webgl/color/saturation.js +36 -0
- package/dist/esm/raster/webgl/color/sigmoidal-contrast.js +62 -0
- package/dist/esm/raster/webgl/index.js +26 -0
- package/dist/esm/raster/webgl/pansharpen/pansharpen-brovey.js +40 -0
- package/dist/esm/raster/webgl/spectral-indices/evi.js +20 -0
- package/dist/esm/raster/webgl/spectral-indices/msavi.js +19 -0
- package/dist/esm/raster/webgl/spectral-indices/normalized-difference.js +13 -0
- package/dist/esm/raster/webgl/spectral-indices/savi.js +15 -0
- package/dist/esm/raster/webgl/texture/combine-bands.js +58 -0
- package/dist/esm/raster/webgl/texture/mask.js +44 -0
- package/dist/esm/raster/webgl/texture/reorder-bands.js +65 -0
- package/dist/esm/raster/webgl/texture/rgba-image.js +28 -0
- package/dist/esm/raster/webgl/types.js +3 -0
- package/dist/esm/svg-icon-layer/scatterplot-icon-layer.js +84 -0
- package/dist/esm/svg-icon-layer/svg-icon-layer.js +101 -0
- package/dist/esm/wms/wms-layer.js +619 -0
- package/dist/globe/atmosphere-layer.d.ts +58 -0
- package/dist/globe/enhanced-multi-icon-layer.d.ts +6 -0
- package/dist/globe/globe-depth-disk-layer.d.ts +19 -0
- package/dist/globe/globe-layers.d.ts +108 -0
- package/dist/globe/globe-stars-layer.d.ts +10 -0
- package/dist/globe/globe-stars-layer.spec.d.ts +1 -0
- package/dist/globe/globe-view.d.ts +23 -0
- package/dist/globe/index.d.ts +8 -0
- package/dist/globe/mvt-label-layer.d.ts +7928 -0
- package/dist/grid-layer/enhanced-cpu-grid-layer.d.ts +138 -56
- package/dist/hexagon-layer/enhanced-hexagon-layer.d.ts +138 -56
- package/dist/index.d.ts +1 -0
- package/dist/layer-utils/cluster-utils.d.ts +6 -1
- package/dist/layer-utils/globe-cell-utils.d.ts +30 -0
- package/dist/layer-utils/globe-cell-utils.spec.d.ts +1 -0
- package/dist/raster/images.d.ts +10 -1
- package/dist/raster/raster-layer/raster-layer.d.ts +4 -0
- package/dist/raster/raster-mesh-layer/raster-mesh-layer.d.ts +4 -0
- package/dist/svg-icon-layer/scatterplot-icon-layer.d.ts +4 -1
- package/dist/wms/wms-layer.d.ts +27 -0
- package/package.json +22 -13
- package/dist/3d-building-layer/3d-building-layer.js +0 -66
- package/dist/3d-building-layer/3d-building-utils.js +0 -166
- package/dist/3d-building-layer/types.js +0 -6
- package/dist/cluster-layer/cluster-layer.js +0 -293
- package/dist/column-layer/enhanced-column-layer.js +0 -135
- package/dist/deckgl-extensions/filter-shader-module.js +0 -26
- package/dist/grid-layer/enhanced-cpu-grid-layer.js +0 -90
- package/dist/hexagon-layer/enhanced-hexagon-layer.js +0 -108
- package/dist/index.js +0 -152
- package/dist/layer-utils/aggregation-utils.js +0 -181
- package/dist/layer-utils/cluster-utils.js +0 -93
- package/dist/layer-utils/cpu-aggregator.js +0 -798
- package/dist/layer-utils/shader-utils.js +0 -38
- package/dist/line-layer/line-layer.js +0 -95
- package/dist/raster/images.js +0 -259
- package/dist/raster/pipeline-validation-patch.js +0 -101
- package/dist/raster/raster-layer/raster-layer-shaders.js +0 -163
- package/dist/raster/raster-layer/raster-layer-webgl1.fs.js +0 -10
- package/dist/raster/raster-layer/raster-layer-webgl1.vs.js +0 -10
- package/dist/raster/raster-layer/raster-layer-webgl2.fs.js +0 -10
- package/dist/raster/raster-layer/raster-layer-webgl2.vs.js +0 -10
- package/dist/raster/raster-layer/raster-layer.js +0 -237
- package/dist/raster/raster-mesh-layer/matrix.d.ts +0 -4
- package/dist/raster/raster-mesh-layer/matrix.js +0 -18
- package/dist/raster/raster-mesh-layer/raster-mesh-layer-shaders.js +0 -38
- package/dist/raster/raster-mesh-layer/raster-mesh-layer-webgl1.fs.js +0 -10
- package/dist/raster/raster-mesh-layer/raster-mesh-layer-webgl1.vs.js +0 -10
- package/dist/raster/raster-mesh-layer/raster-mesh-layer-webgl2.fs.js +0 -10
- package/dist/raster/raster-mesh-layer/raster-mesh-layer-webgl2.vs.js +0 -10
- package/dist/raster/raster-mesh-layer/raster-mesh-layer.js +0 -271
- package/dist/raster/raster-processing-uniforms.js +0 -124
- package/dist/raster/types.js +0 -6
- package/dist/raster/util.js +0 -139
- package/dist/raster/webgl/color/colormap.js +0 -45
- package/dist/raster/webgl/color/filter.js +0 -58
- package/dist/raster/webgl/color/gamma-contrast.js +0 -68
- package/dist/raster/webgl/color/linear-rescale.js +0 -35
- package/dist/raster/webgl/color/saturation.js +0 -42
- package/dist/raster/webgl/color/sigmoidal-contrast.js +0 -68
- package/dist/raster/webgl/pansharpen/pansharpen-brovey.js +0 -46
- package/dist/raster/webgl/spectral-indices/evi.js +0 -26
- package/dist/raster/webgl/spectral-indices/msavi.js +0 -25
- package/dist/raster/webgl/spectral-indices/normalized-difference.js +0 -19
- package/dist/raster/webgl/spectral-indices/savi.js +0 -21
- package/dist/raster/webgl/texture/combine-bands.js +0 -65
- package/dist/raster/webgl/texture/mask.js +0 -50
- package/dist/raster/webgl/texture/reorder-bands.js +0 -72
- package/dist/raster/webgl/texture/rgba-image.js +0 -34
- package/dist/raster/webgl/types.js +0 -6
- package/dist/svg-icon-layer/scatterplot-icon-layer.js +0 -51
- package/dist/svg-icon-layer/svg-icon-layer.js +0 -104
- package/dist/wms/wms-layer.js +0 -424
|
@@ -1,163 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.buildRasterFragmentShader = buildRasterFragmentShader;
|
|
8
|
-
exports.buildRasterVertexShader = buildRasterVertexShader;
|
|
9
|
-
exports.ensureRasterHooksRegistered = ensureRasterHooksRegistered;
|
|
10
|
-
exports.prepareLumaModules = prepareLumaModules;
|
|
11
|
-
exports.rasterUniforms = void 0;
|
|
12
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
13
|
-
var _shadertools = require("@luma.gl/shadertools");
|
|
14
|
-
var _rasterProcessingUniforms = require("../raster-processing-uniforms");
|
|
15
|
-
// SPDX-License-Identifier: MIT
|
|
16
|
-
// Copyright contributors to the kepler.gl project
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* UBO-based shader module for raster layer uniforms.
|
|
20
|
-
* Replaces the old standalone `uniform float desaturate` etc.
|
|
21
|
-
*/
|
|
22
|
-
var rasterUniformBlock = "uniform rasterUniforms {\n vec4 bounds;\n float coordinateConversion;\n float desaturate;\n float opacity;\n vec3 tintColor;\n vec4 transparentColor;\n} raster;\n";
|
|
23
|
-
var rasterUniforms = exports.rasterUniforms = {
|
|
24
|
-
name: 'raster',
|
|
25
|
-
vs: rasterUniformBlock,
|
|
26
|
-
fs: rasterUniformBlock,
|
|
27
|
-
uniformTypes: {
|
|
28
|
-
bounds: 'vec4<f32>',
|
|
29
|
-
coordinateConversion: 'f32',
|
|
30
|
-
desaturate: 'f32',
|
|
31
|
-
opacity: 'f32',
|
|
32
|
-
tintColor: 'vec3<f32>',
|
|
33
|
-
transparentColor: 'vec4<f32>'
|
|
34
|
-
}
|
|
35
|
-
};
|
|
36
|
-
|
|
37
|
-
/**
|
|
38
|
-
* Register custom DECKGL_CREATE_COLOR and DECKGL_MUTATE_COLOR shader hooks
|
|
39
|
-
* with the default ShaderAssembler. These hooks are used by the raster layer's
|
|
40
|
-
* custom shader modules (rgbaImage, combineBands, colormap, etc.).
|
|
41
|
-
*
|
|
42
|
-
* In luma.gl 8.x these were registered via ProgramManager; in luma.gl 9.x
|
|
43
|
-
* we register them with the ShaderAssembler singleton.
|
|
44
|
-
*
|
|
45
|
-
* NOTE: We must check the assembler's hook list every time rather than using
|
|
46
|
-
* a module-level boolean guard, because deck.gl's getShaderAssembler() clears
|
|
47
|
-
* _hookFunctions when a new Deck instance is created (e.g. during image export).
|
|
48
|
-
*/
|
|
49
|
-
function ensureRasterHooksRegistered() {
|
|
50
|
-
var assembler = _shadertools.ShaderAssembler.getDefaultShaderAssembler();
|
|
51
|
-
// @ts-expect-error _hookFunctions is private in ShaderAssembler
|
|
52
|
-
var existingHooks = assembler._hookFunctions || [];
|
|
53
|
-
var hookNames = existingHooks.map(function (h) {
|
|
54
|
-
return typeof h === 'string' ? h : h.hook;
|
|
55
|
-
});
|
|
56
|
-
if (!hookNames.some(function (h) {
|
|
57
|
-
return h === null || h === void 0 ? void 0 : h.includes('DECKGL_CREATE_COLOR');
|
|
58
|
-
})) {
|
|
59
|
-
assembler.addShaderHook('fs:DECKGL_CREATE_COLOR(inout vec4 image, vec2 coord)');
|
|
60
|
-
}
|
|
61
|
-
if (!hookNames.some(function (h) {
|
|
62
|
-
return h === null || h === void 0 ? void 0 : h.includes('DECKGL_MUTATE_COLOR');
|
|
63
|
-
})) {
|
|
64
|
-
assembler.addShaderHook('fs:DECKGL_MUTATE_COLOR(inout vec4 image, vec2 coord)');
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
/**
|
|
69
|
-
* Convert kepler.gl's custom raster shader modules into luma.gl 9 compatible
|
|
70
|
-
* format. Ensures fs2 (WebGL2) shaders are used and texture2D -> texture.
|
|
71
|
-
*/
|
|
72
|
-
|
|
73
|
-
function prepareLumaModules(modules) {
|
|
74
|
-
return modules.map(function (mod) {
|
|
75
|
-
var fs = mod.fs2 || mod.fs || '';
|
|
76
|
-
// Replace texture2D with texture for GLSL 300 es
|
|
77
|
-
fs = fs.replace(/texture2D\(/g, 'texture(');
|
|
78
|
-
var nameMap = _rasterProcessingUniforms.UNIFORM_NAME_MAP[mod.name];
|
|
79
|
-
var consolidate = Boolean(nameMap && mod.uniformTypes);
|
|
80
|
-
if (mod.uniformTypes && !nameMap) {
|
|
81
|
-
console.warn("[raster] Module \"".concat(mod.name, "\" has uniformTypes but no UNIFORM_NAME_MAP entry. ") + 'Its UBO will not be consolidated and may push the fragment uniform block count over the WebGL2 limit.');
|
|
82
|
-
}
|
|
83
|
-
if (consolidate) {
|
|
84
|
-
// Strip only this module's uniform block declaration so it doesn't
|
|
85
|
-
// create its own UBO.
|
|
86
|
-
var blockPattern = new RegExp("uniform\\s+".concat(mod.name, "Uniforms\\s*\\{[^}]*\\}\\s*").concat(mod.name, "\\s*;"), 'gs');
|
|
87
|
-
fs = fs.replace(blockPattern, '');
|
|
88
|
-
|
|
89
|
-
// Rewrite moduleName.fieldName references to the shared UBO aliases
|
|
90
|
-
for (var _i = 0, _Object$entries = Object.entries(nameMap); _i < _Object$entries.length; _i++) {
|
|
91
|
-
var _Object$entries$_i = (0, _slicedToArray2["default"])(_Object$entries[_i], 2),
|
|
92
|
-
origField = _Object$entries$_i[0],
|
|
93
|
-
prefixedField = _Object$entries$_i[1];
|
|
94
|
-
var pattern = new RegExp("\\b".concat(mod.name, "\\.").concat(origField, "\\b"), 'g');
|
|
95
|
-
fs = fs.replace(pattern, "".concat(prefixedField, "_ALIAS"));
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
var result = {
|
|
99
|
-
name: mod.name,
|
|
100
|
-
fs: fs,
|
|
101
|
-
dependencies: mod.dependencies,
|
|
102
|
-
deprecations: mod.deprecations
|
|
103
|
-
};
|
|
104
|
-
if (mod.vs) {
|
|
105
|
-
result.vs = mod.vs.replace(/texture2D\(/g, 'texture(');
|
|
106
|
-
}
|
|
107
|
-
if (mod.defines) {
|
|
108
|
-
result.defines = mod.defines;
|
|
109
|
-
}
|
|
110
|
-
if (mod.getUniforms) {
|
|
111
|
-
result.getUniforms = mod.getUniforms;
|
|
112
|
-
}
|
|
113
|
-
if (mod.uniforms) {
|
|
114
|
-
result.uniforms = mod.uniforms;
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
// Only keep uniformTypes for modules NOT consolidated into the shared UBO
|
|
118
|
-
if (mod.uniformTypes && !consolidate) {
|
|
119
|
-
result.uniformTypes = mod.uniformTypes;
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
// Convert inject code, replacing texture2D -> texture and UBO references
|
|
123
|
-
if (mod.inject) {
|
|
124
|
-
result.inject = {};
|
|
125
|
-
for (var _i2 = 0, _Object$entries2 = Object.entries(mod.inject); _i2 < _Object$entries2.length; _i2++) {
|
|
126
|
-
var _Object$entries2$_i = (0, _slicedToArray2["default"])(_Object$entries2[_i2], 2),
|
|
127
|
-
hook = _Object$entries2$_i[0],
|
|
128
|
-
code = _Object$entries2$_i[1];
|
|
129
|
-
var codeStr = typeof code === 'string' ? code : code.injection || '';
|
|
130
|
-
codeStr = codeStr.replace(/texture2D\(/g, 'texture(');
|
|
131
|
-
if (consolidate && nameMap) {
|
|
132
|
-
for (var _i3 = 0, _Object$entries3 = Object.entries(nameMap); _i3 < _Object$entries3.length; _i3++) {
|
|
133
|
-
var _Object$entries3$_i = (0, _slicedToArray2["default"])(_Object$entries3[_i3], 2),
|
|
134
|
-
_origField = _Object$entries3$_i[0],
|
|
135
|
-
_prefixedField = _Object$entries3$_i[1];
|
|
136
|
-
var _pattern = new RegExp("\\b".concat(mod.name, "\\.").concat(_origField, "\\b"), 'g');
|
|
137
|
-
codeStr = codeStr.replace(_pattern, "".concat(_prefixedField, "_ALIAS"));
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
result.inject[hook] = codeStr;
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
return result;
|
|
144
|
-
});
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
/**
|
|
148
|
-
* Build the vertex shader for the raster layer.
|
|
149
|
-
* References raster.coordinateConversion from the UBO.
|
|
150
|
-
*/
|
|
151
|
-
function buildRasterVertexShader() {
|
|
152
|
-
return "#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\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 (raster.coordinateConversion < -0.5) {\n vTexPos = geometry.position.xy + project.commonOrigin.xy;\n } else if (raster.coordinateConversion > 0.5) {\n vTexPos = geometry.worldPosition.xy;\n }\n\n vec4 color = vec4(0.0);\n DECKGL_FILTER_COLOR(color, geometry);\n}\n";
|
|
153
|
-
}
|
|
154
|
-
|
|
155
|
-
/**
|
|
156
|
-
* Build the fragment shader for the raster layer.
|
|
157
|
-
* Uses DECKGL_CREATE_COLOR and DECKGL_MUTATE_COLOR hooks which are now
|
|
158
|
-
* registered with the ShaderAssembler and populated by module injections.
|
|
159
|
-
*/
|
|
160
|
-
function buildRasterFragmentShader() {
|
|
161
|
-
return "#version 300 es\n#define SHADER_NAME raster-layer-fragment-shader\n\nprecision mediump float;\nprecision mediump int;\nprecision mediump usampler2D;\n\nin vec2 vTexCoord;\nin vec2 vTexPos;\n\nout vec4 fragColor;\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\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\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\nvec3 color_desaturate(vec3 color) {\n float luminance = (color.r + color.g + color.b) * 0.333333333;\n return mix(color, vec3(luminance), raster.desaturate);\n}\n\nvec3 color_tint(vec3 color) {\n return color * raster.tintColor;\n}\n\nvec4 apply_opacity(vec3 color, float alpha) {\n if (raster.transparentColor.a == 0.0) {\n return vec4(color, alpha);\n }\n float blendedAlpha = alpha + raster.transparentColor.a * (1.0 - alpha);\n float highLightRatio = alpha / blendedAlpha;\n vec3 blendedRGB = mix(raster.transparentColor.rgb, color, highLightRatio);\n return vec4(blendedRGB, blendedAlpha);\n}\n\nvec2 getUV(vec2 pos) {\n return vec2(\n (pos.x - raster.bounds[0]) / (raster.bounds[2] - raster.bounds[0]),\n (pos.y - raster.bounds[3]) / (raster.bounds[1] - raster.bounds[3])\n );\n}\n\nvoid main(void) {\n vec2 uv = vTexCoord;\n if (raster.coordinateConversion < -0.5) {\n vec2 lnglat = mercator_to_lnglat(vTexPos);\n uv = getUV(lnglat);\n } else if (raster.coordinateConversion > 0.5) {\n vec2 commonPos = lnglat_to_mercator(vTexPos);\n uv = getUV(commonPos);\n }\n\n vec4 image = vec4(0.0);\n DECKGL_CREATE_COLOR(image, uv);\n\n DECKGL_MUTATE_COLOR(image, uv);\n\n fragColor = apply_opacity(color_tint(color_desaturate(image.rgb)), raster.opacity);\n\n geometry.uv = uv;\n DECKGL_FILTER_COLOR(fragColor, geometry);\n}\n";
|
|
162
|
-
}
|
|
163
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfc2hhZGVydG9vbHMiLCJyZXF1aXJlIiwiX3Jhc3RlclByb2Nlc3NpbmdVbmlmb3JtcyIsInJhc3RlclVuaWZvcm1CbG9jayIsInJhc3RlclVuaWZvcm1zIiwiZXhwb3J0cyIsIm5hbWUiLCJ2cyIsImZzIiwidW5pZm9ybVR5cGVzIiwiYm91bmRzIiwiY29vcmRpbmF0ZUNvbnZlcnNpb24iLCJkZXNhdHVyYXRlIiwib3BhY2l0eSIsInRpbnRDb2xvciIsInRyYW5zcGFyZW50Q29sb3IiLCJlbnN1cmVSYXN0ZXJIb29rc1JlZ2lzdGVyZWQiLCJhc3NlbWJsZXIiLCJTaGFkZXJBc3NlbWJsZXIiLCJnZXREZWZhdWx0U2hhZGVyQXNzZW1ibGVyIiwiZXhpc3RpbmdIb29rcyIsIl9ob29rRnVuY3Rpb25zIiwiaG9va05hbWVzIiwibWFwIiwiaCIsImhvb2siLCJzb21lIiwiaW5jbHVkZXMiLCJhZGRTaGFkZXJIb29rIiwicHJlcGFyZUx1bWFNb2R1bGVzIiwibW9kdWxlcyIsIm1vZCIsImZzMiIsInJlcGxhY2UiLCJuYW1lTWFwIiwiVU5JRk9STV9OQU1FX01BUCIsImNvbnNvbGlkYXRlIiwiQm9vbGVhbiIsImNvbnNvbGUiLCJ3YXJuIiwiY29uY2F0IiwiYmxvY2tQYXR0ZXJuIiwiUmVnRXhwIiwiX2kiLCJfT2JqZWN0JGVudHJpZXMiLCJPYmplY3QiLCJlbnRyaWVzIiwibGVuZ3RoIiwiX09iamVjdCRlbnRyaWVzJF9pIiwiX3NsaWNlZFRvQXJyYXkyIiwib3JpZ0ZpZWxkIiwicHJlZml4ZWRGaWVsZCIsInBhdHRlcm4iLCJyZXN1bHQiLCJkZXBlbmRlbmNpZXMiLCJkZXByZWNhdGlvbnMiLCJkZWZpbmVzIiwiZ2V0VW5pZm9ybXMiLCJ1bmlmb3JtcyIsImluamVjdCIsIl9pMiIsIl9PYmplY3QkZW50cmllczIiLCJfT2JqZWN0JGVudHJpZXMyJF9pIiwiY29kZSIsImNvZGVTdHIiLCJpbmplY3Rpb24iLCJfaTMiLCJfT2JqZWN0JGVudHJpZXMzIiwiX09iamVjdCRlbnRyaWVzMyRfaSIsImJ1aWxkUmFzdGVyVmVydGV4U2hhZGVyIiwiYnVpbGRSYXN0ZXJGcmFnbWVudFNoYWRlciJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9yYXN0ZXIvcmFzdGVyLWxheWVyL3Jhc3Rlci1sYXllci1zaGFkZXJzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCB7U2hhZGVyQXNzZW1ibGVyfSBmcm9tICdAbHVtYS5nbC9zaGFkZXJ0b29scyc7XG5pbXBvcnQgdHlwZSB7U2hhZGVyTW9kdWxlIGFzIEx1bWFTaGFkZXJNb2R1bGV9IGZyb20gJy4uL3dlYmdsL3R5cGVzJztcbmltcG9ydCB7VU5JRk9STV9OQU1FX01BUH0gZnJvbSAnLi4vcmFzdGVyLXByb2Nlc3NpbmctdW5pZm9ybXMnO1xuXG4vKipcbiAqIFVCTy1iYXNlZCBzaGFkZXIgbW9kdWxlIGZvciByYXN0ZXIgbGF5ZXIgdW5pZm9ybXMuXG4gKiBSZXBsYWNlcyB0aGUgb2xkIHN0YW5kYWxvbmUgYHVuaWZvcm0gZmxvYXQgZGVzYXR1cmF0ZWAgZXRjLlxuICovXG5jb25zdCByYXN0ZXJVbmlmb3JtQmxvY2sgPSBgXFxcbnVuaWZvcm0gcmFzdGVyVW5pZm9ybXMge1xuICB2ZWM0IGJvdW5kcztcbiAgZmxvYXQgY29vcmRpbmF0ZUNvbnZlcnNpb247XG4gIGZsb2F0IGRlc2F0dXJhdGU7XG4gIGZsb2F0IG9wYWNpdHk7XG4gIHZlYzMgdGludENvbG9yO1xuICB2ZWM0IHRyYW5zcGFyZW50Q29sb3I7XG59IHJhc3RlcjtcbmA7XG5cbmV4cG9ydCBjb25zdCByYXN0ZXJVbmlmb3JtcyA9IHtcbiAgbmFtZTogJ3Jhc3RlcicsXG4gIHZzOiByYXN0ZXJVbmlmb3JtQmxvY2ssXG4gIGZzOiByYXN0ZXJVbmlmb3JtQmxvY2ssXG4gIHVuaWZvcm1UeXBlczoge1xuICAgIGJvdW5kczogJ3ZlYzQ8ZjMyPicsXG4gICAgY29vcmRpbmF0ZUNvbnZlcnNpb246ICdmMzInLFxuICAgIGRlc2F0dXJhdGU6ICdmMzInLFxuICAgIG9wYWNpdHk6ICdmMzInLFxuICAgIHRpbnRDb2xvcjogJ3ZlYzM8ZjMyPicsXG4gICAgdHJhbnNwYXJlbnRDb2xvcjogJ3ZlYzQ8ZjMyPidcbiAgfVxufTtcblxuLyoqXG4gKiBSZWdpc3RlciBjdXN0b20gREVDS0dMX0NSRUFURV9DT0xPUiBhbmQgREVDS0dMX01VVEFURV9DT0xPUiBzaGFkZXIgaG9va3NcbiAqIHdpdGggdGhlIGRlZmF1bHQgU2hhZGVyQXNzZW1ibGVyLiBUaGVzZSBob29rcyBhcmUgdXNlZCBieSB0aGUgcmFzdGVyIGxheWVyJ3NcbiAqIGN1c3RvbSBzaGFkZXIgbW9kdWxlcyAocmdiYUltYWdlLCBjb21iaW5lQmFuZHMsIGNvbG9ybWFwLCBldGMuKS5cbiAqXG4gKiBJbiBsdW1hLmdsIDgueCB0aGVzZSB3ZXJlIHJlZ2lzdGVyZWQgdmlhIFByb2dyYW1NYW5hZ2VyOyBpbiBsdW1hLmdsIDkueFxuICogd2UgcmVnaXN0ZXIgdGhlbSB3aXRoIHRoZSBTaGFkZXJBc3NlbWJsZXIgc2luZ2xldG9uLlxuICpcbiAqIE5PVEU6IFdlIG11c3QgY2hlY2sgdGhlIGFzc2VtYmxlcidzIGhvb2sgbGlzdCBldmVyeSB0aW1lIHJhdGhlciB0aGFuIHVzaW5nXG4gKiBhIG1vZHVsZS1sZXZlbCBib29sZWFuIGd1YXJkLCBiZWNhdXNlIGRlY2suZ2wncyBnZXRTaGFkZXJBc3NlbWJsZXIoKSBjbGVhcnNcbiAqIF9ob29rRnVuY3Rpb25zIHdoZW4gYSBuZXcgRGVjayBpbnN0YW5jZSBpcyBjcmVhdGVkIChlLmcuIGR1cmluZyBpbWFnZSBleHBvcnQpLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZW5zdXJlUmFzdGVySG9va3NSZWdpc3RlcmVkKCk6IHZvaWQge1xuICBjb25zdCBhc3NlbWJsZXIgPSBTaGFkZXJBc3NlbWJsZXIuZ2V0RGVmYXVsdFNoYWRlckFzc2VtYmxlcigpO1xuICAvLyBAdHMtZXhwZWN0LWVycm9yIF9ob29rRnVuY3Rpb25zIGlzIHByaXZhdGUgaW4gU2hhZGVyQXNzZW1ibGVyXG4gIGNvbnN0IGV4aXN0aW5nSG9va3MgPSBhc3NlbWJsZXIuX2hvb2tGdW5jdGlvbnMgfHwgW107XG4gIGNvbnN0IGhvb2tOYW1lcyA9IGV4aXN0aW5nSG9va3MubWFwKGggPT4gKHR5cGVvZiBoID09PSAnc3RyaW5nJyA/IGggOiBoLmhvb2spKTtcblxuICBpZiAoIWhvb2tOYW1lcy5zb21lKGggPT4gaD8uaW5jbHVkZXMoJ0RFQ0tHTF9DUkVBVEVfQ09MT1InKSkpIHtcbiAgICBhc3NlbWJsZXIuYWRkU2hhZGVySG9vaygnZnM6REVDS0dMX0NSRUFURV9DT0xPUihpbm91dCB2ZWM0IGltYWdlLCB2ZWMyIGNvb3JkKScpO1xuICB9XG4gIGlmICghaG9va05hbWVzLnNvbWUoaCA9PiBoPy5pbmNsdWRlcygnREVDS0dMX01VVEFURV9DT0xPUicpKSkge1xuICAgIGFzc2VtYmxlci5hZGRTaGFkZXJIb29rKCdmczpERUNLR0xfTVVUQVRFX0NPTE9SKGlub3V0IHZlYzQgaW1hZ2UsIHZlYzIgY29vcmQpJyk7XG4gIH1cbn1cblxuLyoqXG4gKiBDb252ZXJ0IGtlcGxlci5nbCdzIGN1c3RvbSByYXN0ZXIgc2hhZGVyIG1vZHVsZXMgaW50byBsdW1hLmdsIDkgY29tcGF0aWJsZVxuICogZm9ybWF0LiBFbnN1cmVzIGZzMiAoV2ViR0wyKSBzaGFkZXJzIGFyZSB1c2VkIGFuZCB0ZXh0dXJlMkQgLT4gdGV4dHVyZS5cbiAqL1xuaW50ZXJmYWNlIEx1bWFNb2R1bGVPdXRwdXQge1xuICBuYW1lOiBzdHJpbmc7XG4gIGZzOiBzdHJpbmc7XG4gIHZzPzogc3RyaW5nO1xuICBkZWZpbmVzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgZ2V0VW5pZm9ybXM/OiAob3B0czogb2JqZWN0KSA9PiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB8IG51bGw7XG4gIHVuaWZvcm1zPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG4gIHVuaWZvcm1UeXBlcz86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIGluamVjdD86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIGRlcGVuZGVuY2llcz86IHVua25vd25bXTtcbiAgZGVwcmVjYXRpb25zPzogdW5rbm93bltdO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcHJlcGFyZUx1bWFNb2R1bGVzKG1vZHVsZXM6IEx1bWFTaGFkZXJNb2R1bGVbXSk6IEx1bWFNb2R1bGVPdXRwdXRbXSB7XG4gIHJldHVybiBtb2R1bGVzLm1hcChtb2QgPT4ge1xuICAgIGxldCBmcyA9IG1vZC5mczIgfHwgbW9kLmZzIHx8ICcnO1xuICAgIC8vIFJlcGxhY2UgdGV4dHVyZTJEIHdpdGggdGV4dHVyZSBmb3IgR0xTTCAzMDAgZXNcbiAgICBmcyA9IGZzLnJlcGxhY2UoL3RleHR1cmUyRFxcKC9nLCAndGV4dHVyZSgnKTtcblxuICAgIGNvbnN0IG5hbWVNYXAgPSBVTklGT1JNX05BTUVfTUFQW21vZC5uYW1lXTtcbiAgICBjb25zdCBjb25zb2xpZGF0ZSA9IEJvb2xlYW4obmFtZU1hcCAmJiBtb2QudW5pZm9ybVR5cGVzKTtcblxuICAgIGlmIChtb2QudW5pZm9ybVR5cGVzICYmICFuYW1lTWFwKSB7XG4gICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgIGBbcmFzdGVyXSBNb2R1bGUgXCIke21vZC5uYW1lfVwiIGhhcyB1bmlmb3JtVHlwZXMgYnV0IG5vIFVOSUZPUk1fTkFNRV9NQVAgZW50cnkuIGAgK1xuICAgICAgICAgICdJdHMgVUJPIHdpbGwgbm90IGJlIGNvbnNvbGlkYXRlZCBhbmQgbWF5IHB1c2ggdGhlIGZyYWdtZW50IHVuaWZvcm0gYmxvY2sgY291bnQgb3ZlciB0aGUgV2ViR0wyIGxpbWl0LidcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKGNvbnNvbGlkYXRlKSB7XG4gICAgICAvLyBTdHJpcCBvbmx5IHRoaXMgbW9kdWxlJ3MgdW5pZm9ybSBibG9jayBkZWNsYXJhdGlvbiBzbyBpdCBkb2Vzbid0XG4gICAgICAvLyBjcmVhdGUgaXRzIG93biBVQk8uXG4gICAgICBjb25zdCBibG9ja1BhdHRlcm4gPSBuZXcgUmVnRXhwKFxuICAgICAgICBgdW5pZm9ybVxcXFxzKyR7bW9kLm5hbWV9VW5pZm9ybXNcXFxccypcXFxce1tefV0qXFxcXH1cXFxccyoke21vZC5uYW1lfVxcXFxzKjtgLFxuICAgICAgICAnZ3MnXG4gICAgICApO1xuICAgICAgZnMgPSBmcy5yZXBsYWNlKGJsb2NrUGF0dGVybiwgJycpO1xuXG4gICAgICAvLyBSZXdyaXRlIG1vZHVsZU5hbWUuZmllbGROYW1lIHJlZmVyZW5jZXMgdG8gdGhlIHNoYXJlZCBVQk8gYWxpYXNlc1xuICAgICAgZm9yIChjb25zdCBbb3JpZ0ZpZWxkLCBwcmVmaXhlZEZpZWxkXSBvZiBPYmplY3QuZW50cmllcyhuYW1lTWFwKSkge1xuICAgICAgICBjb25zdCBwYXR0ZXJuID0gbmV3IFJlZ0V4cChgXFxcXGIke21vZC5uYW1lfVxcXFwuJHtvcmlnRmllbGR9XFxcXGJgLCAnZycpO1xuICAgICAgICBmcyA9IGZzLnJlcGxhY2UocGF0dGVybiwgYCR7cHJlZml4ZWRGaWVsZH1fQUxJQVNgKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCByZXN1bHQ6IEx1bWFNb2R1bGVPdXRwdXQgPSB7XG4gICAgICBuYW1lOiBtb2QubmFtZSxcbiAgICAgIGZzLFxuICAgICAgZGVwZW5kZW5jaWVzOiBtb2QuZGVwZW5kZW5jaWVzLFxuICAgICAgZGVwcmVjYXRpb25zOiBtb2QuZGVwcmVjYXRpb25zXG4gICAgfTtcblxuICAgIGlmIChtb2QudnMpIHtcbiAgICAgIHJlc3VsdC52cyA9IG1vZC52cy5yZXBsYWNlKC90ZXh0dXJlMkRcXCgvZywgJ3RleHR1cmUoJyk7XG4gICAgfVxuXG4gICAgaWYgKG1vZC5kZWZpbmVzKSB7XG4gICAgICByZXN1bHQuZGVmaW5lcyA9IG1vZC5kZWZpbmVzO1xuICAgIH1cblxuICAgIGlmIChtb2QuZ2V0VW5pZm9ybXMpIHtcbiAgICAgIHJlc3VsdC5nZXRVbmlmb3JtcyA9IG1vZC5nZXRVbmlmb3JtcztcbiAgICB9XG5cbiAgICBpZiAobW9kLnVuaWZvcm1zKSB7XG4gICAgICByZXN1bHQudW5pZm9ybXMgPSBtb2QudW5pZm9ybXM7XG4gICAgfVxuXG4gICAgLy8gT25seSBrZWVwIHVuaWZvcm1UeXBlcyBmb3IgbW9kdWxlcyBOT1QgY29uc29saWRhdGVkIGludG8gdGhlIHNoYXJlZCBVQk9cbiAgICBpZiAobW9kLnVuaWZvcm1UeXBlcyAmJiAhY29uc29saWRhdGUpIHtcbiAgICAgIHJlc3VsdC51bmlmb3JtVHlwZXMgPSBtb2QudW5pZm9ybVR5cGVzO1xuICAgIH1cblxuICAgIC8vIENvbnZlcnQgaW5qZWN0IGNvZGUsIHJlcGxhY2luZyB0ZXh0dXJlMkQgLT4gdGV4dHVyZSBhbmQgVUJPIHJlZmVyZW5jZXNcbiAgICBpZiAobW9kLmluamVjdCkge1xuICAgICAgcmVzdWx0LmluamVjdCA9IHt9O1xuICAgICAgZm9yIChjb25zdCBbaG9vaywgY29kZV0gb2YgT2JqZWN0LmVudHJpZXMobW9kLmluamVjdCkpIHtcbiAgICAgICAgbGV0IGNvZGVTdHIgPVxuICAgICAgICAgIHR5cGVvZiBjb2RlID09PSAnc3RyaW5nJyA/IGNvZGUgOiAoY29kZSBhcyB7aW5qZWN0aW9uPzogc3RyaW5nfSkuaW5qZWN0aW9uIHx8ICcnO1xuICAgICAgICBjb2RlU3RyID0gY29kZVN0ci5yZXBsYWNlKC90ZXh0dXJlMkRcXCgvZywgJ3RleHR1cmUoJyk7XG5cbiAgICAgICAgaWYgKGNvbnNvbGlkYXRlICYmIG5hbWVNYXApIHtcbiAgICAgICAgICBmb3IgKGNvbnN0IFtvcmlnRmllbGQsIHByZWZpeGVkRmllbGRdIG9mIE9iamVjdC5lbnRyaWVzKG5hbWVNYXApKSB7XG4gICAgICAgICAgICBjb25zdCBwYXR0ZXJuID0gbmV3IFJlZ0V4cChgXFxcXGIke21vZC5uYW1lfVxcXFwuJHtvcmlnRmllbGR9XFxcXGJgLCAnZycpO1xuICAgICAgICAgICAgY29kZVN0ciA9IGNvZGVTdHIucmVwbGFjZShwYXR0ZXJuLCBgJHtwcmVmaXhlZEZpZWxkfV9BTElBU2ApO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJlc3VsdC5pbmplY3RbaG9va10gPSBjb2RlU3RyO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH0pO1xufVxuXG4vKipcbiAqIEJ1aWxkIHRoZSB2ZXJ0ZXggc2hhZGVyIGZvciB0aGUgcmFzdGVyIGxheWVyLlxuICogUmVmZXJlbmNlcyByYXN0ZXIuY29vcmRpbmF0ZUNvbnZlcnNpb24gZnJvbSB0aGUgVUJPLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRSYXN0ZXJWZXJ0ZXhTaGFkZXIoKTogc3RyaW5nIHtcbiAgcmV0dXJuIGBcXFxuI3ZlcnNpb24gMzAwIGVzXG4jZGVmaW5lIFNIQURFUl9OQU1FIHJhc3Rlci1sYXllci12ZXJ0ZXgtc2hhZGVyXG5cbnByZWNpc2lvbiBtZWRpdW1wIGZsb2F0O1xuXG5pbiB2ZWMyIHRleENvb3JkcztcbmluIHZlYzMgcG9zaXRpb25zO1xuaW4gdmVjMyBwb3NpdGlvbnM2NExvdztcblxub3V0IHZlYzIgdlRleENvb3JkO1xub3V0IHZlYzIgdlRleFBvcztcblxuY29uc3QgdmVjMyBwaWNraW5nQ29sb3IgPSB2ZWMzKDEuMCwgMC4wLCAwLjApO1xuXG52b2lkIG1haW4odm9pZCkge1xuICBnZW9tZXRyeS53b3JsZFBvc2l0aW9uID0gcG9zaXRpb25zO1xuICBnZW9tZXRyeS51diA9IHRleENvb3JkcztcbiAgZ2VvbWV0cnkucGlja2luZ0NvbG9yID0gcGlja2luZ0NvbG9yO1xuXG4gIGdsX1Bvc2l0aW9uID0gcHJvamVjdF9wb3NpdGlvbl90b19jbGlwc3BhY2UocG9zaXRpb25zLCBwb3NpdGlvbnM2NExvdywgdmVjMygwLjApLCBnZW9tZXRyeS5wb3NpdGlvbik7XG4gIERFQ0tHTF9GSUxURVJfR0xfUE9TSVRJT04oZ2xfUG9zaXRpb24sIGdlb21ldHJ5KTtcblxuICB2VGV4Q29vcmQgPSB0ZXhDb29yZHM7XG5cbiAgaWYgKHJhc3Rlci5jb29yZGluYXRlQ29udmVyc2lvbiA8IC0wLjUpIHtcbiAgICB2VGV4UG9zID0gZ2VvbWV0cnkucG9zaXRpb24ueHkgKyBwcm9qZWN0LmNvbW1vbk9yaWdpbi54eTtcbiAgfSBlbHNlIGlmIChyYXN0ZXIuY29vcmRpbmF0ZUNvbnZlcnNpb24gPiAwLjUpIHtcbiAgICB2VGV4UG9zID0gZ2VvbWV0cnkud29ybGRQb3NpdGlvbi54eTtcbiAgfVxuXG4gIHZlYzQgY29sb3IgPSB2ZWM0KDAuMCk7XG4gIERFQ0tHTF9GSUxURVJfQ09MT1IoY29sb3IsIGdlb21ldHJ5KTtcbn1cbmA7XG59XG5cbi8qKlxuICogQnVpbGQgdGhlIGZyYWdtZW50IHNoYWRlciBmb3IgdGhlIHJhc3RlciBsYXllci5cbiAqIFVzZXMgREVDS0dMX0NSRUFURV9DT0xPUiBhbmQgREVDS0dMX01VVEFURV9DT0xPUiBob29rcyB3aGljaCBhcmUgbm93XG4gKiByZWdpc3RlcmVkIHdpdGggdGhlIFNoYWRlckFzc2VtYmxlciBhbmQgcG9wdWxhdGVkIGJ5IG1vZHVsZSBpbmplY3Rpb25zLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRSYXN0ZXJGcmFnbWVudFNoYWRlcigpOiBzdHJpbmcge1xuICByZXR1cm4gYFxcXG4jdmVyc2lvbiAzMDAgZXNcbiNkZWZpbmUgU0hBREVSX05BTUUgcmFzdGVyLWxheWVyLWZyYWdtZW50LXNoYWRlclxuXG5wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDtcbnByZWNpc2lvbiBtZWRpdW1wIGludDtcbnByZWNpc2lvbiBtZWRpdW1wIHVzYW1wbGVyMkQ7XG5cbmluIHZlYzIgdlRleENvb3JkO1xuaW4gdmVjMiB2VGV4UG9zO1xuXG5vdXQgdmVjNCBmcmFnQ29sb3I7XG5cbi8qIHByb2plY3Rpb24gdXRpbHMgKi9cbmNvbnN0IGZsb2F0IFRJTEVfU0laRSA9IDUxMi4wO1xuY29uc3QgZmxvYXQgUEkgPSAzLjE0MTU5MjY1MzY7XG5jb25zdCBmbG9hdCBXT1JMRF9TQ0FMRSA9IFRJTEVfU0laRSAvIFBJIC8gMi4wO1xuXG52ZWMyIGxuZ2xhdF90b19tZXJjYXRvcih2ZWMyIGxuZ2xhdCkge1xuICBmbG9hdCB4ID0gbG5nbGF0Lng7XG4gIGZsb2F0IHkgPSBjbGFtcChsbmdsYXQueSwgLTg5LjksIDg5LjkpO1xuICByZXR1cm4gdmVjMihcbiAgICByYWRpYW5zKHgpICsgUEksXG4gICAgUEkgKyBsb2codGFuKFBJICogMC4yNSArIHJhZGlhbnMoeSkgKiAwLjUpKVxuICApICogV09STERfU0NBTEU7XG59XG5cbnZlYzIgbWVyY2F0b3JfdG9fbG5nbGF0KHZlYzIgeHkpIHtcbiAgeHkgLz0gV09STERfU0NBTEU7XG4gIHJldHVybiBkZWdyZWVzKHZlYzIoXG4gICAgeHkueCAtIFBJLFxuICAgIGF0YW4oZXhwKHh5LnkgLSBQSSkpICogMi4wIC0gUEkgKiAwLjVcbiAgKSk7XG59XG5cbnZlYzMgY29sb3JfZGVzYXR1cmF0ZSh2ZWMzIGNvbG9yKSB7XG4gIGZsb2F0IGx1bWluYW5jZSA9IChjb2xvci5yICsgY29sb3IuZyArIGNvbG9yLmIpICogMC4zMzMzMzMzMzM7XG4gIHJldHVybiBtaXgoY29sb3IsIHZlYzMobHVtaW5hbmNlKSwgcmFzdGVyLmRlc2F0dXJhdGUpO1xufVxuXG52ZWMzIGNvbG9yX3RpbnQodmVjMyBjb2xvcikge1xuICByZXR1cm4gY29sb3IgKiByYXN0ZXIudGludENvbG9yO1xufVxuXG52ZWM0IGFwcGx5X29wYWNpdHkodmVjMyBjb2xvciwgZmxvYXQgYWxwaGEpIHtcbiAgaWYgKHJhc3Rlci50cmFuc3BhcmVudENvbG9yLmEgPT0gMC4wKSB7XG4gICAgcmV0dXJuIHZlYzQoY29sb3IsIGFscGhhKTtcbiAgfVxuICBmbG9hdCBibGVuZGVkQWxwaGEgPSBhbHBoYSArIHJhc3Rlci50cmFuc3BhcmVudENvbG9yLmEgKiAoMS4wIC0gYWxwaGEpO1xuICBmbG9hdCBoaWdoTGlnaHRSYXRpbyA9IGFscGhhIC8gYmxlbmRlZEFscGhhO1xuICB2ZWMzIGJsZW5kZWRSR0IgPSBtaXgocmFzdGVyLnRyYW5zcGFyZW50Q29sb3IucmdiLCBjb2xvciwgaGlnaExpZ2h0UmF0aW8pO1xuICByZXR1cm4gdmVjNChibGVuZGVkUkdCLCBibGVuZGVkQWxwaGEpO1xufVxuXG52ZWMyIGdldFVWKHZlYzIgcG9zKSB7XG4gIHJldHVybiB2ZWMyKFxuICAgIChwb3MueCAtIHJhc3Rlci5ib3VuZHNbMF0pIC8gKHJhc3Rlci5ib3VuZHNbMl0gLSByYXN0ZXIuYm91bmRzWzBdKSxcbiAgICAocG9zLnkgLSByYXN0ZXIuYm91bmRzWzNdKSAvIChyYXN0ZXIuYm91bmRzWzFdIC0gcmFzdGVyLmJvdW5kc1szXSlcbiAgKTtcbn1cblxudm9pZCBtYWluKHZvaWQpIHtcbiAgdmVjMiB1diA9IHZUZXhDb29yZDtcbiAgaWYgKHJhc3Rlci5jb29yZGluYXRlQ29udmVyc2lvbiA8IC0wLjUpIHtcbiAgICB2ZWMyIGxuZ2xhdCA9IG1lcmNhdG9yX3RvX2xuZ2xhdCh2VGV4UG9zKTtcbiAgICB1diA9IGdldFVWKGxuZ2xhdCk7XG4gIH0gZWxzZSBpZiAocmFzdGVyLmNvb3JkaW5hdGVDb252ZXJzaW9uID4gMC41KSB7XG4gICAgdmVjMiBjb21tb25Qb3MgPSBsbmdsYXRfdG9fbWVyY2F0b3IodlRleFBvcyk7XG4gICAgdXYgPSBnZXRVVihjb21tb25Qb3MpO1xuICB9XG5cbiAgdmVjNCBpbWFnZSA9IHZlYzQoMC4wKTtcbiAgREVDS0dMX0NSRUFURV9DT0xPUihpbWFnZSwgdXYpO1xuXG4gIERFQ0tHTF9NVVRBVEVfQ09MT1IoaW1hZ2UsIHV2KTtcblxuICBmcmFnQ29sb3IgPSBhcHBseV9vcGFjaXR5KGNvbG9yX3RpbnQoY29sb3JfZGVzYXR1cmF0ZShpbWFnZS5yZ2IpKSwgcmFzdGVyLm9wYWNpdHkpO1xuXG4gIGdlb21ldHJ5LnV2ID0gdXY7XG4gIERFQ0tHTF9GSUxU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
|
|
@@ -1,10 +0,0 @@
|
|
|
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==
|
|
@@ -1,10 +0,0 @@
|
|
|
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
|
|
@@ -1,10 +0,0 @@
|
|
|
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==
|
|
@@ -1,10 +0,0 @@
|
|
|
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==
|
|
@@ -1,237 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports["default"] = void 0;
|
|
8
|
-
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
9
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
10
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
11
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
12
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
13
|
-
var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
|
|
14
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
15
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
16
|
-
var _layers = require("@deck.gl/layers");
|
|
17
|
-
var _rasterLayerShaders = require("./raster-layer-shaders");
|
|
18
|
-
var _images = require("../images");
|
|
19
|
-
var _util = require("../util");
|
|
20
|
-
var _pipelineValidationPatch = require("../pipeline-validation-patch");
|
|
21
|
-
var _rasterProcessingUniforms = require("../raster-processing-uniforms");
|
|
22
|
-
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
|
|
23
|
-
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
24
|
-
function _superPropGet(t, e, r, o) { var p = (0, _get2["default"])((0, _getPrototypeOf2["default"])(1 & o ? t.prototype : t), e, r); return 2 & o ? function (t) { return p.apply(r, t); } : p; }
|
|
25
|
-
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; }
|
|
26
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } // SPDX-License-Identifier: MIT
|
|
27
|
-
// Copyright contributors to the kepler.gl project
|
|
28
|
-
var defaultProps = _objectSpread(_objectSpread({}, _layers.BitmapLayer.defaultProps), {}, {
|
|
29
|
-
modules: {
|
|
30
|
-
type: 'array',
|
|
31
|
-
value: [],
|
|
32
|
-
compare: true
|
|
33
|
-
},
|
|
34
|
-
images: {
|
|
35
|
-
type: 'object',
|
|
36
|
-
value: {},
|
|
37
|
-
compare: true
|
|
38
|
-
},
|
|
39
|
-
moduleProps: {
|
|
40
|
-
type: 'object',
|
|
41
|
-
value: {},
|
|
42
|
-
compare: true
|
|
43
|
-
},
|
|
44
|
-
onRedrawNeeded: {
|
|
45
|
-
type: 'function',
|
|
46
|
-
value: null,
|
|
47
|
-
compare: false
|
|
48
|
-
}
|
|
49
|
-
});
|
|
50
|
-
var RasterLayer = exports["default"] = /*#__PURE__*/function (_BitmapLayer) {
|
|
51
|
-
function RasterLayer() {
|
|
52
|
-
var _this;
|
|
53
|
-
(0, _classCallCheck2["default"])(this, RasterLayer);
|
|
54
|
-
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
55
|
-
args[_key] = arguments[_key];
|
|
56
|
-
}
|
|
57
|
-
_this = _callSuper(this, RasterLayer, [].concat(args));
|
|
58
|
-
(0, _defineProperty2["default"])(_this, "_redrawScheduled", false);
|
|
59
|
-
return _this;
|
|
60
|
-
}
|
|
61
|
-
(0, _inherits2["default"])(RasterLayer, _BitmapLayer);
|
|
62
|
-
return (0, _createClass2["default"])(RasterLayer, [{
|
|
63
|
-
key: "initializeState",
|
|
64
|
-
value: function initializeState() {
|
|
65
|
-
(0, _pipelineValidationPatch.patchPipelineValidation)();
|
|
66
|
-
(0, _rasterLayerShaders.ensureRasterHooksRegistered)();
|
|
67
|
-
this.setState({
|
|
68
|
-
images: {}
|
|
69
|
-
});
|
|
70
|
-
_superPropGet(RasterLayer, "initializeState", this, 3)([]);
|
|
71
|
-
}
|
|
72
|
-
}, {
|
|
73
|
-
key: "draw",
|
|
74
|
-
value: function draw(_opts) {
|
|
75
|
-
var _this$props$opacity;
|
|
76
|
-
var _this$state = this.state,
|
|
77
|
-
model = _this$state.model,
|
|
78
|
-
images = _this$state.images,
|
|
79
|
-
coordinateConversion = _this$state.coordinateConversion,
|
|
80
|
-
bounds = _this$state.bounds;
|
|
81
|
-
var _this$props = this.props,
|
|
82
|
-
desaturate = _this$props.desaturate,
|
|
83
|
-
transparentColor = _this$props.transparentColor,
|
|
84
|
-
tintColor = _this$props.tintColor,
|
|
85
|
-
moduleProps = _this$props.moduleProps;
|
|
86
|
-
if (!model || !images || Object.keys(images).length === 0 || !Object.values(images).every(function (item) {
|
|
87
|
-
return item;
|
|
88
|
-
})) {
|
|
89
|
-
return;
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
// Set UBO uniforms for the raster module
|
|
93
|
-
model.shaderInputs.setProps({
|
|
94
|
-
raster: {
|
|
95
|
-
desaturate: desaturate || 0,
|
|
96
|
-
transparentColor: (transparentColor || [0, 0, 0, 0]).map(function (x) {
|
|
97
|
-
return x ? x / 255 : 0;
|
|
98
|
-
}),
|
|
99
|
-
tintColor: (tintColor || [255, 255, 255]).slice(0, 3).map(function (x) {
|
|
100
|
-
return x / 255;
|
|
101
|
-
}),
|
|
102
|
-
coordinateConversion: coordinateConversion || 0,
|
|
103
|
-
bounds: bounds || [0, 0, 0, 0],
|
|
104
|
-
opacity: (_this$props$opacity = this.props.opacity) !== null && _this$props$opacity !== void 0 ? _this$props$opacity : 1
|
|
105
|
-
}
|
|
106
|
-
});
|
|
107
|
-
|
|
108
|
-
// Apply each custom module's uniforms/bindings to shaderInputs directly.
|
|
109
|
-
// We call getUniforms once per module and write the results into
|
|
110
|
-
// shaderInputs.moduleUniforms/moduleBindings, bypassing setProps() which
|
|
111
|
-
// would call getUniforms a second time on already-transformed values.
|
|
112
|
-
var allModuleProps = _objectSpread(_objectSpread({}, moduleProps), images);
|
|
113
|
-
var modules = this.props.modules || [];
|
|
114
|
-
(0, _util.applyModuleUniforms)(model.shaderInputs, modules, allModuleProps);
|
|
115
|
-
var drawSuccess = model.draw(this.context.renderPass);
|
|
116
|
-
if (!drawSuccess) {
|
|
117
|
-
this._scheduleRedraw();
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
}, {
|
|
121
|
-
key: "_scheduleRedraw",
|
|
122
|
-
value: function _scheduleRedraw() {
|
|
123
|
-
var _this2 = this;
|
|
124
|
-
if (this._redrawScheduled) return;
|
|
125
|
-
this._redrawScheduled = true;
|
|
126
|
-
requestAnimationFrame(function () {
|
|
127
|
-
var _this2$context$layerM;
|
|
128
|
-
_this2._redrawScheduled = false;
|
|
129
|
-
if (_this2.context.deck) {
|
|
130
|
-
// @ts-expect-error accessing private deck.gl property
|
|
131
|
-
_this2.context.deck._needsRedraw = 'RasterLayer pipeline pending';
|
|
132
|
-
}
|
|
133
|
-
(_this2$context$layerM = _this2.context.layerManager) === null || _this2$context$layerM === void 0 || _this2$context$layerM.setNeedsRedraw('RasterLayer pipeline pending');
|
|
134
|
-
if (typeof _this2.props.onRedrawNeeded === 'function') {
|
|
135
|
-
_this2.props.onRedrawNeeded();
|
|
136
|
-
}
|
|
137
|
-
});
|
|
138
|
-
}
|
|
139
|
-
}, {
|
|
140
|
-
key: "getShaders",
|
|
141
|
-
value: function getShaders() {
|
|
142
|
-
var _this$props$modules = this.props.modules,
|
|
143
|
-
modules = _this$props$modules === void 0 ? [] : _this$props$modules;
|
|
144
|
-
var lumaModules = (0, _rasterLayerShaders.prepareLumaModules)(modules);
|
|
145
|
-
var parentShaders = _superPropGet(RasterLayer, "getShaders", this, 3)([]);
|
|
146
|
-
return _objectSpread(_objectSpread({}, parentShaders), {}, {
|
|
147
|
-
vs: (0, _rasterLayerShaders.buildRasterVertexShader)(),
|
|
148
|
-
fs: (0, _rasterLayerShaders.buildRasterFragmentShader)(),
|
|
149
|
-
modules: [].concat((0, _toConsumableArray2["default"])(parentShaders.modules || []), [_rasterLayerShaders.rasterUniforms, _rasterProcessingUniforms.rasterProcessingUniforms], (0, _toConsumableArray2["default"])(lumaModules))
|
|
150
|
-
});
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
// eslint-disable-next-line complexity
|
|
154
|
-
}, {
|
|
155
|
-
key: "updateState",
|
|
156
|
-
value: function updateState(params) {
|
|
157
|
-
var props = params.props,
|
|
158
|
-
oldProps = params.oldProps,
|
|
159
|
-
changeFlags = params.changeFlags;
|
|
160
|
-
var modules = props && props.modules;
|
|
161
|
-
var oldModules = oldProps && oldProps.modules;
|
|
162
|
-
if (changeFlags.extensionsChanged || !(0, _util.modulesEqual)(modules, oldModules)) {
|
|
163
|
-
var _this$state$model, _this$state$model$des, _this$getAttributeMan;
|
|
164
|
-
(_this$state$model = this.state.model) === null || _this$state$model === void 0 || (_this$state$model$des = _this$state$model.destroy) === null || _this$state$model$des === void 0 || _this$state$model$des.call(_this$state$model);
|
|
165
|
-
// @ts-expect-error _getModel is internal to BitmapLayer
|
|
166
|
-
this.state.model = this._getModel(this.context.device || this.context.gl);
|
|
167
|
-
(_this$getAttributeMan = this.getAttributeManager()) === null || _this$getAttributeMan === void 0 || _this$getAttributeMan.invalidateAll();
|
|
168
|
-
}
|
|
169
|
-
if (props && props.images) {
|
|
170
|
-
this.updateImages({
|
|
171
|
-
props: props,
|
|
172
|
-
oldProps: oldProps
|
|
173
|
-
});
|
|
174
|
-
}
|
|
175
|
-
var attributeManager = this.getAttributeManager();
|
|
176
|
-
if (props.bounds !== oldProps.bounds) {
|
|
177
|
-
var _this$state$model2;
|
|
178
|
-
var oldMesh = this.state.mesh;
|
|
179
|
-
var mesh = this._createMesh();
|
|
180
|
-
(_this$state$model2 = this.state.model) === null || _this$state$model2 === void 0 || _this$state$model2.setVertexCount(mesh.vertexCount);
|
|
181
|
-
for (var key in mesh) {
|
|
182
|
-
if (oldMesh && oldMesh[key] !== mesh[key]) {
|
|
183
|
-
attributeManager === null || attributeManager === void 0 || attributeManager.invalidate(key);
|
|
184
|
-
}
|
|
185
|
-
}
|
|
186
|
-
this.setState(_objectSpread({
|
|
187
|
-
mesh: mesh
|
|
188
|
-
}, this._getCoordinateUniforms()));
|
|
189
|
-
} else if (props._imageCoordinateSystem !== oldProps._imageCoordinateSystem) {
|
|
190
|
-
this.setState(this._getCoordinateUniforms());
|
|
191
|
-
}
|
|
192
|
-
}
|
|
193
|
-
}, {
|
|
194
|
-
key: "updateImages",
|
|
195
|
-
value: function updateImages(_ref) {
|
|
196
|
-
var props = _ref.props,
|
|
197
|
-
oldProps = _ref.oldProps;
|
|
198
|
-
var images = this.state.images;
|
|
199
|
-
var device = this.context.device;
|
|
200
|
-
var gl = (device === null || device === void 0 ? void 0 : device.gl) || this.context.gl;
|
|
201
|
-
var newImages = (0, _images.loadImages)({
|
|
202
|
-
gl: gl,
|
|
203
|
-
device: device,
|
|
204
|
-
images: images,
|
|
205
|
-
imagesData: props.images,
|
|
206
|
-
oldImagesData: oldProps.images
|
|
207
|
-
});
|
|
208
|
-
if (newImages) {
|
|
209
|
-
this.setState({
|
|
210
|
-
images: newImages
|
|
211
|
-
});
|
|
212
|
-
}
|
|
213
|
-
}
|
|
214
|
-
}, {
|
|
215
|
-
key: "finalizeState",
|
|
216
|
-
value: function finalizeState() {
|
|
217
|
-
_superPropGet(RasterLayer, "finalizeState", this, 3)([this.context]);
|
|
218
|
-
if (this.state.images) {
|
|
219
|
-
for (var _i = 0, _Object$values = Object.values(this.state.images); _i < _Object$values.length; _i++) {
|
|
220
|
-
var image = _Object$values[_i];
|
|
221
|
-
if (Array.isArray(image)) {
|
|
222
|
-
image.map(function (x) {
|
|
223
|
-
var _x$delete;
|
|
224
|
-
return x && (x.destroy ? x.destroy() : (_x$delete = x["delete"]) === null || _x$delete === void 0 ? void 0 : _x$delete.call(x));
|
|
225
|
-
});
|
|
226
|
-
} else if (image) {
|
|
227
|
-
var _image$delete;
|
|
228
|
-
image.destroy ? image.destroy() : (_image$delete = image["delete"]) === null || _image$delete === void 0 ? void 0 : _image$delete.call(image);
|
|
229
|
-
}
|
|
230
|
-
}
|
|
231
|
-
}
|
|
232
|
-
}
|
|
233
|
-
}]);
|
|
234
|
-
}(_layers.BitmapLayer);
|
|
235
|
-
RasterLayer.defaultProps = defaultProps;
|
|
236
|
-
RasterLayer.layerName = 'RasterLayer';
|
|
237
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbGF5ZXJzIiwicmVxdWlyZSIsIl9yYXN0ZXJMYXllclNoYWRlcnMiLCJfaW1hZ2VzIiwiX3V0aWwiLCJfcGlwZWxpbmVWYWxpZGF0aW9uUGF0Y2giLCJfcmFzdGVyUHJvY2Vzc2luZ1VuaWZvcm1zIiwiX2NhbGxTdXBlciIsInQiLCJvIiwiZSIsIl9nZXRQcm90b3R5cGVPZjIiLCJfcG9zc2libGVDb25zdHJ1Y3RvclJldHVybjIiLCJfaXNOYXRpdmVSZWZsZWN0Q29uc3RydWN0IiwiUmVmbGVjdCIsImNvbnN0cnVjdCIsImNvbnN0cnVjdG9yIiwiYXBwbHkiLCJCb29sZWFuIiwicHJvdG90eXBlIiwidmFsdWVPZiIsImNhbGwiLCJfc3VwZXJQcm9wR2V0IiwiciIsInAiLCJfZ2V0MiIsIm93bktleXMiLCJPYmplY3QiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsImRlZmluZVByb3BlcnR5IiwiZGVmYXVsdFByb3BzIiwiQml0bWFwTGF5ZXIiLCJtb2R1bGVzIiwidHlwZSIsInZhbHVlIiwiY29tcGFyZSIsImltYWdlcyIsIm1vZHVsZVByb3BzIiwib25SZWRyYXdOZWVkZWQiLCJSYXN0ZXJMYXllciIsImV4cG9ydHMiLCJfQml0bWFwTGF5ZXIiLCJfdGhpcyIsIl9jbGFzc0NhbGxDaGVjazIiLCJfbGVuIiwiYXJncyIsIkFycmF5IiwiX2tleSIsImNvbmNhdCIsIl9pbmhlcml0czIiLCJfY3JlYXRlQ2xhc3MyIiwia2V5IiwiaW5pdGlhbGl6ZVN0YXRlIiwicGF0Y2hQaXBlbGluZVZhbGlkYXRpb24iLCJlbnN1cmVSYXN0ZXJIb29rc1JlZ2lzdGVyZWQiLCJzZXRTdGF0ZSIsImRyYXciLCJfb3B0cyIsIl90aGlzJHByb3BzJG9wYWNpdHkiLCJfdGhpcyRzdGF0ZSIsInN0YXRlIiwibW9kZWwiLCJjb29yZGluYXRlQ29udmVyc2lvbiIsImJvdW5kcyIsIl90aGlzJHByb3BzIiwicHJvcHMiLCJkZXNhdHVyYXRlIiwidHJhbnNwYXJlbnRDb2xvciIsInRpbnRDb2xvciIsInZhbHVlcyIsImV2ZXJ5IiwiaXRlbSIsInNoYWRlcklucHV0cyIsInNldFByb3BzIiwicmFzdGVyIiwibWFwIiwieCIsInNsaWNlIiwib3BhY2l0eSIsImFsbE1vZHVsZVByb3BzIiwiYXBwbHlNb2R1bGVVbmlmb3JtcyIsImRyYXdTdWNjZXNzIiwiY29udGV4dCIsInJlbmRlclBhc3MiLCJfc2NoZWR1bGVSZWRyYXciLCJfdGhpczIiLCJfcmVkcmF3U2NoZWR1bGVkIiwicmVxdWVzdEFuaW1hdGlvbkZyYW1lIiwiX3RoaXMyJGNvbnRleHQkbGF5ZXJNIiwiZGVjayIsIl9uZWVkc1JlZHJhdyIsImxheWVyTWFuYWdlciIsInNldE5lZWRzUmVkcmF3IiwiZ2V0U2hhZGVycyIsIl90aGlzJHByb3BzJG1vZHVsZXMiLCJsdW1hTW9kdWxlcyIsInByZXBhcmVMdW1hTW9kdWxlcyIsInBhcmVudFNoYWRlcnMiLCJ2cyIsImJ1aWxkUmFzdGVyVmVydGV4U2hhZGVyIiwiZnMiLCJidWlsZFJhc3RlckZyYWdtZW50U2hhZGVyIiwiX3RvQ29uc3VtYWJsZUFycmF5MiIsInJhc3RlclVuaWZvcm1zIiwicmFzdGVyUHJvY2Vzc2luZ1VuaWZvcm1zIiwidXBkYXRlU3RhdGUiLCJwYXJhbXMiLCJvbGRQcm9wcyIsImNoYW5nZUZsYWdzIiwib2xkTW9kdWxlcyIsImV4dGVuc2lvbnNDaGFuZ2VkIiwibW9kdWxlc0VxdWFsIiwiX3RoaXMkc3RhdGUkbW9kZWwiLCJfdGhpcyRzdGF0ZSRtb2RlbCRkZXMiLCJfdGhpcyRnZXRBdHRyaWJ1dGVNYW4iLCJkZXN0cm95IiwiX2dldE1vZGVsIiwiZGV2aWNlIiwiZ2wiLCJnZXRBdHRyaWJ1dGVNYW5hZ2VyIiwiaW52YWxpZGF0ZUFsbCIsInVwZGF0ZUltYWdlcyIsImF0dHJpYnV0ZU1hbmFnZXIiLCJfdGhpcyRzdGF0ZSRtb2RlbDIiLCJvbGRNZXNoIiwibWVzaCIsIl9jcmVhdGVNZXNoIiwic2V0VmVydGV4Q291bnQiLCJ2ZXJ0ZXhDb3VudCIsImludmFsaWRhdGUiLCJfZ2V0Q29vcmRpbmF0ZVVuaWZvcm1zIiwiX2ltYWdlQ29vcmRpbmF0ZVN5c3RlbSIsIl9yZWYiLCJuZXdJbWFnZXMiLCJsb2FkSW1hZ2VzIiwiaW1hZ2VzRGF0YSIsIm9sZEltYWdlc0RhdGEiLCJmaW5hbGl6ZVN0YXRlIiwiX2kiLCJfT2JqZWN0JHZhbHVlcyIsImltYWdlIiwiaXNBcnJheSIsIl94JGRlbGV0ZSIsIl9pbWFnZSRkZWxldGUiLCJsYXllck5hbWUiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcmFzdGVyL3Jhc3Rlci1sYXllci9yYXN0ZXItbGF5ZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuaW1wb3J0IHtVcGRhdGVQYXJhbWV0ZXJzfSBmcm9tICdAZGVjay5nbC9jb3JlJztcbmltcG9ydCB7Qml0bWFwTGF5ZXJ9IGZyb20gJ0BkZWNrLmdsL2xheWVycyc7XG5cbmltcG9ydCB7XG4gIGJ1aWxkUmFzdGVyRnJhZ21lbnRTaGFkZXIsXG4gIGJ1aWxkUmFzdGVyVmVydGV4U2hhZGVyLFxuICByYXN0ZXJVbmlmb3JtcyxcbiAgZW5zdXJlUmFzdGVySG9va3NSZWdpc3RlcmVkLFxuICBwcmVwYXJlTHVtYU1vZHVsZXNcbn0gZnJvbSAnLi9yYXN0ZXItbGF5ZXItc2hhZGVycyc7XG5pbXBvcnQge2xvYWRJbWFnZXN9IGZyb20gJy4uL2ltYWdlcyc7XG5pbXBvcnQgdHlwZSB7UmFzdGVyTGF5ZXJBZGRlZFByb3BzLCBJbWFnZVN0YXRlfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQge21vZHVsZXNFcXVhbCwgYXBwbHlNb2R1bGVVbmlmb3Jtc30gZnJvbSAnLi4vdXRpbCc7XG5pbXBvcnQge3BhdGNoUGlwZWxpbmVWYWxpZGF0aW9ufSBmcm9tICcuLi9waXBlbGluZS12YWxpZGF0aW9uLXBhdGNoJztcbmltcG9ydCB7cmFzdGVyUHJvY2Vzc2luZ1VuaWZvcm1zfSBmcm9tICcuLi9yYXN0ZXItcHJvY2Vzc2luZy11bmlmb3Jtcyc7XG5cbmNvbnN0IGRlZmF1bHRQcm9wcyA9IHtcbiAgLi4uQml0bWFwTGF5ZXIuZGVmYXVsdFByb3BzLFxuICBtb2R1bGVzOiB7dHlwZTogJ2FycmF5JywgdmFsdWU6IFtdLCBjb21wYXJlOiB0cnVlfSxcbiAgaW1hZ2VzOiB7dHlwZTogJ29iamVjdCcsIHZhbHVlOiB7fSwgY29tcGFyZTogdHJ1ZX0sXG4gIG1vZHVsZVByb3BzOiB7dHlwZTogJ29iamVjdCcsIHZhbHVlOiB7fSwgY29tcGFyZTogdHJ1ZX0sXG4gIG9uUmVkcmF3TmVlZGVkOiB7dHlwZTogJ2Z1bmN0aW9uJywgdmFsdWU6IG51bGwsIGNvbXBhcmU6IGZhbHNlfVxufTtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUmFzdGVyTGF5ZXIgZXh0ZW5kcyBCaXRtYXBMYXllcjxSYXN0ZXJMYXllckFkZGVkUHJvcHM+IHtcbiAgZGVjbGFyZSBzdGF0ZTogQml0bWFwTGF5ZXI8UmFzdGVyTGF5ZXJBZGRlZFByb3BzPlsnc3RhdGUnXSAmIHtcbiAgICBpbWFnZXM6IEltYWdlU3RhdGU7XG4gIH07XG5cbiAgX3JlZHJhd1NjaGVkdWxlZCA9IGZhbHNlO1xuXG4gIGluaXRpYWxpemVTdGF0ZSgpOiB2b2lkIHtcbiAgICBwYXRjaFBpcGVsaW5lVmFsaWRhdGlvbigpO1xuICAgIGVuc3VyZVJhc3Rlckhvb2tzUmVnaXN0ZXJlZCgpO1xuICAgIHRoaXMuc2V0U3RhdGUoe2ltYWdlczoge319KTtcbiAgICBzdXBlci5pbml0aWFsaXplU3RhdGUoKTtcbiAgfVxuXG4gIGRyYXcoX29wdHM6IHtzaGFkZXJNb2R1bGVQcm9wczogUmVjb3JkPHN0cmluZywgdW5rbm93bj59KTogdm9pZCB7XG4gICAgY29uc3Qge21vZGVsLCBpbWFnZXMsIGNvb3JkaW5hdGVDb252ZXJzaW9uLCBib3VuZHN9ID0gdGhpcy5zdGF0ZTtcbiAgICBjb25zdCB7ZGVzYXR1cmF0ZSwgdHJhbnNwYXJlbnRDb2xvciwgdGludENvbG9yLCBtb2R1bGVQcm9wc30gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKFxuICAgICAgIW1vZGVsIHx8XG4gICAgICAhaW1hZ2VzIHx8XG4gICAgICBPYmplY3Qua2V5cyhpbWFnZXMpLmxlbmd0aCA9PT0gMCB8fFxuICAgICAgIU9iamVjdC52YWx1ZXMoaW1hZ2VzKS5ldmVyeShpdGVtID0+IGl0ZW0pXG4gICAgKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gU2V0IFVCTyB1bmlmb3JtcyBmb3IgdGhlIHJhc3RlciBtb2R1bGVcbiAgICBtb2RlbC5zaGFkZXJJbnB1dHMuc2V0UHJvcHMoe1xuICAgICAgcmFzdGVyOiB7XG4gICAgICAgIGRlc2F0dXJhdGU6IGRlc2F0dXJhdGUgfHwgMCxcbiAgICAgICAgdHJhbnNwYXJlbnRDb2xvcjogKHRyYW5zcGFyZW50Q29sb3IgfHwgWzAsIDAsIDAsIDBdKS5tYXAoeCA9PiAoeCA/IHggLyAyNTUgOiAwKSksXG4gICAgICAgIHRpbnRDb2xvcjogKHRpbnRDb2xvciB8fCBbMjU1LCAyNTUsIDI1NV0pLnNsaWNlKDAsIDMpLm1hcCh4ID0+IHggLyAyNTUpLFxuICAgICAgICBjb29yZGluYXRlQ29udmVyc2lvbjogY29vcmRpbmF0ZUNvbnZlcnNpb24gfHwgMCxcbiAgICAgICAgYm91bmRzOiBib3VuZHMgfHwgWzAsIDAsIDAsIDBdLFxuICAgICAgICBvcGFjaXR5OiB0aGlzLnByb3BzLm9wYWNpdHkgPz8gMVxuICAgICAgfVxuICAgIH0pO1xuXG4gICAgLy8gQXBwbHkgZWFjaCBjdXN0b20gbW9kdWxlJ3MgdW5pZm9ybXMvYmluZGluZ3MgdG8gc2hhZGVySW5wdXRzIGRpcmVjdGx5LlxuICAgIC8vIFdlIGNhbGwgZ2V0VW5pZm9ybXMgb25jZSBwZXIgbW9kdWxlIGFuZCB3cml0ZSB0aGUgcmVzdWx0cyBpbnRvXG4gICAgLy8gc2hhZGVySW5wdXRzLm1vZHVsZVVuaWZvcm1zL21vZHVsZUJpbmRpbmdzLCBieXBhc3Npbmcgc2V0UHJvcHMoKSB3aGljaFxuICAgIC8vIHdvdWxkIGNhbGwgZ2V0VW5pZm9ybXMgYSBzZWNvbmQgdGltZSBvbiBhbHJlYWR5LXRyYW5zZm9ybWVkIHZhbHVlcy5cbiAgICBjb25zdCBhbGxNb2R1bGVQcm9wcyA9IHsuLi5tb2R1bGVQcm9wcywgLi4uaW1hZ2VzfTtcbiAgICBjb25zdCBtb2R1bGVzID0gdGhpcy5wcm9wcy5tb2R1bGVzIHx8IFtdO1xuICAgIGFwcGx5TW9kdWxlVW5pZm9ybXMobW9kZWwuc2hhZGVySW5wdXRzLCBtb2R1bGVzLCBhbGxNb2R1bGVQcm9wcyk7XG5cbiAgICBjb25zdCBkcmF3U3VjY2VzcyA9IG1vZGVsLmRyYXcodGhpcy5jb250ZXh0LnJlbmRlclBhc3MpO1xuICAgIGlmICghZHJhd1N1Y2Nlc3MpIHtcbiAgICAgIHRoaXMuX3NjaGVkdWxlUmVkcmF3KCk7XG4gICAgfVxuICB9XG5cbiAgX3NjaGVkdWxlUmVkcmF3KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9yZWRyYXdTY2hlZHVsZWQpIHJldHVybjtcbiAgICB0aGlzLl9yZWRyYXdTY2hlZHVsZWQgPSB0cnVlO1xuICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICB0aGlzLl9yZWRyYXdTY2hlZHVsZWQgPSBmYWxzZTtcbiAgICAgIGlmICh0aGlzLmNvbnRleHQuZGVjaykge1xuICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yIGFjY2Vzc2luZyBwcml2YXRlIGRlY2suZ2wgcHJvcGVydHlcbiAgICAgICAgdGhpcy5jb250ZXh0LmRlY2suX25lZWRzUmVkcmF3ID0gJ1Jhc3RlckxheWVyIHBpcGVsaW5lIHBlbmRpbmcnO1xuICAgICAgfVxuICAgICAgdGhpcy5jb250ZXh0LmxheWVyTWFuYWdlcj8uc2V0TmVlZHNSZWRyYXcoJ1Jhc3RlckxheWVyIHBpcGVsaW5lIHBlbmRpbmcnKTtcbiAgICAgIGlmICh0eXBlb2YgdGhpcy5wcm9wcy5vblJlZHJhd05lZWRlZCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICB0aGlzLnByb3BzLm9uUmVkcmF3TmVlZGVkKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBnZXRTaGFkZXJzKCk6IGFueSB7XG4gICAgY29uc3Qge21vZHVsZXMgPSBbXX0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3QgbHVtYU1vZHVsZXMgPSBwcmVwYXJlTHVtYU1vZHVsZXMobW9kdWxlcyk7XG4gICAgY29uc3QgcGFyZW50U2hhZGVycyA9IHN1cGVyLmdldFNoYWRlcnMoKTtcblxuICAgIHJldHVybiB7XG4gICAgICAuLi5wYXJlbnRTaGFkZXJzLFxuICAgICAgdnM6IGJ1aWxkUmFzdGVyVmVydGV4U2hhZGVyKCksXG4gICAgICBmczogYnVpbGRSYXN0ZXJGcmFnbWVudFNoYWRlcigpLFxuICAgICAgbW9kdWxlczogW1xuICAgICAgICAuLi4ocGFyZW50U2hhZGVycy5tb2R1bGVzIHx8IFtdKSxcbiAgICAgICAgcmFzdGVyVW5pZm9ybXMsXG4gICAgICAgIHJhc3RlclByb2Nlc3NpbmdVbmlmb3JtcyxcbiAgICAgICAgLi4ubHVtYU1vZHVsZXNcbiAgICAgIF1cbiAgICB9O1xuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGNvbXBsZXhpdHlcbiAgdXBkYXRlU3RhdGUocGFyYW1zOiBVcGRhdGVQYXJhbWV0ZXJzPEJpdG1hcExheWVyPFJhc3RlckxheWVyQWRkZWRQcm9wcz4+KTogdm9pZCB7XG4gICAgY29uc3Qge3Byb3BzLCBvbGRQcm9wcywgY2hhbmdlRmxhZ3N9ID0gcGFyYW1zO1xuICAgIGNvbnN0IG1vZHVsZXMgPSBwcm9wcyAmJiBwcm9wcy5tb2R1bGVzO1xuICAgIGNvbnN0IG9sZE1vZHVsZXMgPSBvbGRQcm9wcyAmJiBvbGRQcm9wcy5tb2R1bGVzO1xuXG4gICAgaWYgKGNoYW5nZUZsYWdzLmV4dGVuc2lvbnNDaGFuZ2VkIHx8ICFtb2R1bGVzRXF1YWwobW9kdWxlcywgb2xkTW9kdWxlcykpIHtcbiAgICAgIHRoaXMuc3RhdGUubW9kZWw/LmRlc3Ryb3k/LigpO1xuICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciBfZ2V0TW9kZWwgaXMgaW50ZXJuYWwgdG8gQml0bWFwTGF5ZXJcbiAgICAgIHRoaXMuc3RhdGUubW9kZWwgPSB0aGlzLl9nZXRNb2RlbCh0aGlzLmNvbnRleHQuZGV2aWNlIHx8IHRoaXMuY29udGV4dC5nbCk7XG4gICAgICB0aGlzLmdldEF0dHJpYnV0ZU1hbmFnZXIoKT8uaW52YWxpZGF0ZUFsbCgpO1xuICAgIH1cblxuICAgIGlmIChwcm9wcyAmJiBwcm9wcy5pbWFnZXMpIHtcbiAgICAgIHRoaXMudXBkYXRlSW1hZ2VzKHtwcm9wcywgb2xkUHJvcHN9KTtcbiAgICB9XG5cbiAgICBjb25zdCBhdHRyaWJ1dGVNYW5hZ2VyID0gdGhpcy5nZXRBdHRyaWJ1dGVNYW5hZ2VyKCk7XG5cbiAgICBpZiAocHJvcHMuYm91bmRzICE9PSBvbGRQcm9wcy5ib3VuZHMpIHtcbiAgICAgIGNvbnN0IG9sZE1lc2ggPSB0aGlzLnN0YXRlLm1lc2g7XG4gICAgICBjb25zdCBtZXNoID0gdGhpcy5fY3JlYXRlTWVzaCgpO1xuICAgICAgdGhpcy5zdGF0ZS5tb2RlbD8uc2V0VmVydGV4Q291bnQobWVzaC52ZXJ0ZXhDb3VudCk7XG4gICAgICBmb3IgKGNvbnN0IGtleSBpbiBtZXNoKSB7XG4gICAgICAgIGlmIChvbGRNZXNoICYmIG9sZE1lc2hba2V5XSAhPT0gbWVzaFtrZXldKSB7XG4gICAgICAgICAgYXR0cmlidXRlTWFuYWdlcj8uaW52YWxpZGF0ZShrZXkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICB0aGlzLnNldFN0YXRlKHttZXNoLCAuLi50aGlzLl9nZXRDb29yZGluYXRlVW5pZm9ybXMoKX0pO1xuICAgIH0gZWxzZSBpZiAocHJvcHMuX2ltYWdlQ29vcmRpbmF0ZVN5c3RlbSAhPT0gb2xkUHJvcHMuX2ltYWdlQ29vcmRpbmF0ZVN5c3RlbSkge1xuICAgICAgdGhpcy5zZXRTdGF0ZSh0aGlzLl9nZXRDb29yZGluYXRlVW5pZm9ybXMoKSk7XG4gICAgfVxuICB9XG5cbiAgdXBkYXRlSW1hZ2VzKHtcbiAgICBwcm9wcyxcbiAgICBvbGRQcm9wc1xuICB9OiB7XG4gICAgcHJvcHM6IFJhc3RlckxheWVyQWRkZWRQcm9wcztcbiAgICBvbGRQcm9wczogUmFzdGVyTGF5ZXJBZGRlZFByb3BzO1xuICB9KTogdm9pZCB7XG4gICAgY29uc3Qge2ltYWdlc30gPSB0aGlzLnN0YXRlO1xuICAgIGNvbnN0IGRldmljZSA9IHRoaXMuY29udGV4dC5kZXZpY2U7XG4gICAgY29uc3QgZ2wgPSBkZXZpY2U/LmdsIHx8IHRoaXMuY29udGV4dC5nbDtcblxuICAgIGNvbnN0IG5ld0ltYWdlcyA9IGxvYWRJbWFnZXMoe1xuICAgICAgZ2wsXG4gICAgICBkZXZpY2UsXG4gICAgICBpbWFnZXMsXG4gICAgICBpbWFnZXNEYXRhOiBwcm9wcy5pbWFnZXMsXG4gICAgICBvbGRJbWFnZXNEYXRhOiBvbGRQcm9wcy5pbWFnZXNcbiAgICB9KTtcbiAgICBpZiAobmV3SW1hZ2VzKSB7XG4gICAgICB0aGlzLnNldFN0YXRlKHtpbWFnZXM6IG5ld0ltYWdlc30pO1xuICAgIH1cbiAgfVxuXG4gIGZpbmFsaXplU3RhdGUoKTogdm9pZCB7XG4gICAgc3VwZXIuZmluYWxpemVTdGF0ZSh0aGlzLmNvbnRleHQpO1xuXG4gICAgaWYgKHRoaXMuc3RhdGUuaW1hZ2VzKSB7XG4gICAgICBmb3IgKGNvbnN0IGltYWdlIG9mIE9iamVjdC52YWx1ZXModGhpcy5zdGF0ZS5pbWFnZXMpKSB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGltYWdlKSkge1xuICAgICAgICAgIGltYWdlLm1hcCh4ID0+IHggJiYgKHguZGVzdHJveSA/IHguZGVzdHJveSgpIDogeC5kZWxldGU/LigpKSk7XG4gICAgICAgIH0gZWxzZSBpZiAoaW1hZ2UpIHtcbiAgICAgICAgICBpbWFnZS5kZXN0cm95ID8gaW1hZ2UuZGVzdHJveSgpIDogaW1hZ2UuZGVsZXRlPy4oKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5SYXN0ZXJMYXllci5kZWZhdWx0UHJvcHMgPSBkZWZhdWx0UHJvcHM7XG5SYXN0ZXJMYXllci5sYXllck5hbWUgPSAnUmFzdGVyTGF5ZXInO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFJQSxJQUFBQSxPQUFBLEdBQUFDLE9BQUE7QUFFQSxJQUFBQyxtQkFBQSxHQUFBRCxPQUFBO0FBT0EsSUFBQUUsT0FBQSxHQUFBRixPQUFBO0FBRUEsSUFBQUcsS0FBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksd0JBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLHlCQUFBLEdBQUFMLE9BQUE7QUFBdUUsU0FBQU0sV0FBQUMsQ0FBQSxFQUFBQyxDQUFBLEVBQUFDLENBQUEsV0FBQUQsQ0FBQSxPQUFBRSxnQkFBQSxhQUFBRixDQUFBLE9BQUFHLDJCQUFBLGFBQUFKLENBQUEsRUFBQUsseUJBQUEsS0FBQUMsT0FBQSxDQUFBQyxTQUFBLENBQUFOLENBQUEsRUFBQUMsQ0FBQSxZQUFBQyxnQkFBQSxhQUFBSCxDQUFBLEVBQUFRLFdBQUEsSUFBQVAsQ0FBQSxDQUFBUSxLQUFBLENBQUFULENBQUEsRUFBQUUsQ0FBQTtBQUFBLFNBQUFHLDBCQUFBLGNBQUFMLENBQUEsSUFBQVUsT0FBQSxDQUFBQyxTQUFBLENBQUFDLE9BQUEsQ0FBQUMsSUFBQSxDQUFBUCxPQUFBLENBQUFDLFNBQUEsQ0FBQUcsT0FBQSxpQ0FBQVYsQ0FBQSxhQUFBSyx5QkFBQSxZQUFBQSwwQkFBQSxhQUFBTCxDQUFBO0FBQUEsU0FBQWMsY0FBQWQsQ0FB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
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.shouldComposeModelMatrix = shouldComposeModelMatrix;
|
|
7
|
-
var _core = require("@deck.gl/core");
|
|
8
|
-
// SPDX-License-Identifier: MIT
|
|
9
|
-
// Copyright contributors to the kepler.gl project
|
|
10
|
-
|
|
11
|
-
// only apply composeModelMatrix when in cartesian or meter_offsets coordinate system
|
|
12
|
-
// with `composeModelMatrix` enabled, the rotation part of the layer's modelMatrix will be composed to instance's transformations
|
|
13
|
-
// since rotating latitude and longitude can not provide meaningful results, hence `composeModelMatrix` is disabled
|
|
14
|
-
// when in LNGLAT and LNGLAT_OFFSET coordinates.
|
|
15
|
-
function shouldComposeModelMatrix(viewport, coordinateSystem) {
|
|
16
|
-
return coordinateSystem === _core.COORDINATE_SYSTEM.CARTESIAN || coordinateSystem === _core.COORDINATE_SYSTEM.METER_OFFSETS || coordinateSystem === _core.COORDINATE_SYSTEM.DEFAULT && !viewport.isGeospatial;
|
|
17
|
-
}
|
|
18
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29yZSIsInJlcXVpcmUiLCJzaG91bGRDb21wb3NlTW9kZWxNYXRyaXgiLCJ2aWV3cG9ydCIsImNvb3JkaW5hdGVTeXN0ZW0iLCJDT09SRElOQVRFX1NZU1RFTSIsIkNBUlRFU0lBTiIsIk1FVEVSX09GRlNFVFMiLCJERUZBVUxUIiwiaXNHZW9zcGF0aWFsIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Jhc3Rlci9yYXN0ZXItbWVzaC1sYXllci9tYXRyaXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuaW1wb3J0IHtDT09SRElOQVRFX1NZU1RFTSwgVmlld3BvcnR9IGZyb20gJ0BkZWNrLmdsL2NvcmUnO1xudHlwZSBDb29yZGluYXRlU3lzdGVtID0gbnVtYmVyIHwgc3RyaW5nO1xuXG4vLyBvbmx5IGFwcGx5IGNvbXBvc2VNb2RlbE1hdHJpeCB3aGVuIGluIGNhcnRlc2lhbiBvciBtZXRlcl9vZmZzZXRzIGNvb3JkaW5hdGUgc3lzdGVtXG4vLyB3aXRoIGBjb21wb3NlTW9kZWxNYXRyaXhgIGVuYWJsZWQsIHRoZSByb3RhdGlvbiBwYXJ0IG9mIHRoZSBsYXllcidzIG1vZGVsTWF0cml4IHdpbGwgYmUgY29tcG9zZWQgdG8gaW5zdGFuY2UncyB0cmFuc2Zvcm1hdGlvbnNcbi8vIHNpbmNlIHJvdGF0aW5nIGxhdGl0dWRlIGFuZCBsb25naXR1ZGUgY2FuIG5vdCBwcm92aWRlIG1lYW5pbmdmdWwgcmVzdWx0cywgaGVuY2UgYGNvbXBvc2VNb2RlbE1hdHJpeGAgaXMgZGlzYWJsZWRcbi8vIHdoZW4gaW4gTE5HTEFUIGFuZCBMTkdMQVRfT0ZGU0VUIGNvb3JkaW5hdGVzLlxuZXhwb3J0IGZ1bmN0aW9uIHNob3VsZENvbXBvc2VNb2RlbE1hdHJpeChcbiAgdmlld3BvcnQ6IFZpZXdwb3J0LFxuICBjb29yZGluYXRlU3lzdGVtOiBDb29yZGluYXRlU3lzdGVtXG4pOiBib29sZWFuIHtcbiAgcmV0dXJuIChcbiAgICBjb29yZGluYXRlU3lzdGVtID09PSBDT09SRElOQVRFX1NZU1RFTS5DQVJURVNJQU4gfHxcbiAgICBjb29yZGluYXRlU3lzdGVtID09PSBDT09SRElOQVRFX1NZU1RFTS5NRVRFUl9PRkZTRVRTIHx8XG4gICAgKGNvb3JkaW5hdGVTeXN0ZW0gPT09IENPT1JESU5BVEVfU1lTVEVNLkRFRkFVTFQgJiYgIXZpZXdwb3J0LmlzR2Vvc3BhdGlhbClcbiAgKTtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBR0EsSUFBQUEsS0FBQSxHQUFBQyxPQUFBO0FBSEE7QUFDQTs7QUFLQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLFNBQVNDLHdCQUF3QkEsQ0FDdENDLFFBQWtCLEVBQ2xCQyxnQkFBa0MsRUFDekI7RUFDVCxPQUNFQSxnQkFBZ0IsS0FBS0MsdUJBQWlCLENBQUNDLFNBQVMsSUFDaERGLGdCQUFnQixLQUFLQyx1QkFBaUIsQ0FBQ0UsYUFBYSxJQUNuREgsZ0JBQWdCLEtBQUtDLHVCQUFpQixDQUFDRyxPQUFPLElBQUksQ0FBQ0wsUUFBUSxDQUFDTSxZQUFhO0FBRTlFIiwiaWdub3JlTGlzdCI6W119
|