@kepler.gl/deckgl-layers 3.2.6 → 3.3.0-alpha.0
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/3d-building-layer/3d-building-layer.d.ts +3 -3
- package/dist/3d-building-layer/3d-building-layer.js +9 -12
- package/dist/3d-building-layer/types.d.ts +8 -8
- package/dist/cluster-layer/cluster-layer.d.ts +16 -26
- package/dist/cluster-layer/cluster-layer.js +19 -30
- package/dist/column-layer/enhanced-column-layer.d.ts +4 -4
- package/dist/column-layer/enhanced-column-layer.js +39 -35
- package/dist/deckgl-extensions/filter-arrow-layer.d.ts +33 -6
- package/dist/deckgl-extensions/filter-arrow-layer.js +4 -12
- package/dist/deckgl-extensions/filter-shader-module.d.ts +32 -4
- package/dist/deckgl-extensions/filter-shader-module.js +3 -4
- package/dist/grid-layer/enhanced-cpu-grid-layer.d.ts +4906 -6
- package/dist/grid-layer/enhanced-cpu-grid-layer.js +46 -44
- package/dist/hexagon-layer/enhanced-hexagon-layer.d.ts +4903 -4
- package/dist/hexagon-layer/enhanced-hexagon-layer.js +61 -41
- package/dist/layer-utils/cpu-aggregator.d.ts +74 -27
- package/dist/layer-utils/cpu-aggregator.js +224 -19
- package/dist/line-layer/line-layer.d.ts +4 -4
- package/dist/line-layer/line-layer.js +29 -21
- package/dist/raster/images.d.ts +10 -3
- package/dist/raster/images.js +154 -60
- package/dist/raster/pipeline-validation-patch.d.ts +1 -0
- package/dist/raster/pipeline-validation-patch.js +60 -0
- package/dist/raster/raster-layer/raster-layer-shaders.d.ts +56 -0
- package/dist/raster/raster-layer/raster-layer-shaders.js +129 -0
- package/dist/raster/raster-layer/raster-layer.d.ts +6 -6
- package/dist/raster/raster-layer/raster-layer.js +100 -79
- package/dist/raster/raster-mesh-layer/matrix.d.ts +3 -1
- package/dist/raster/raster-mesh-layer/matrix.js +3 -3
- package/dist/raster/raster-mesh-layer/raster-mesh-layer-shaders.d.ts +19 -0
- package/dist/raster/raster-mesh-layer/raster-mesh-layer-shaders.js +38 -0
- package/dist/raster/raster-mesh-layer/raster-mesh-layer.d.ts +7 -6
- package/dist/raster/raster-mesh-layer/raster-mesh-layer.js +106 -81
- package/dist/raster/types.d.ts +8 -8
- package/dist/raster/types.js +1 -1
- package/dist/raster/webgl/color/colormap.js +13 -7
- package/dist/raster/webgl/color/filter.js +22 -12
- package/dist/raster/webgl/color/gamma-contrast.js +9 -3
- package/dist/raster/webgl/color/linear-rescale.js +9 -5
- package/dist/raster/webgl/color/saturation.js +7 -4
- package/dist/raster/webgl/color/sigmoidal-contrast.js +9 -5
- package/dist/raster/webgl/pansharpen/pansharpen-brovey.js +7 -4
- package/dist/raster/webgl/texture/combine-bands.js +1 -1
- package/dist/raster/webgl/texture/mask.js +27 -35
- package/dist/raster/webgl/texture/reorder-bands.js +8 -5
- package/dist/raster/webgl/texture/rgba-image.js +1 -1
- package/dist/raster/webgl/types.d.ts +11 -6
- package/dist/raster/webgl/types.js +1 -1
- package/dist/svg-icon-layer/scatterplot-icon-layer.d.ts +2 -4
- package/dist/svg-icon-layer/scatterplot-icon-layer.js +19 -25
- package/dist/svg-icon-layer/svg-icon-layer.d.ts +4 -6
- package/dist/svg-icon-layer/svg-icon-layer.js +5 -3
- package/dist/wms/wms-layer.d.ts +3 -3
- package/dist/wms/wms-layer.js +7 -7
- package/package.json +14 -13
|
@@ -23,7 +23,7 @@ exports.gammaContrast = void 0;
|
|
|
23
23
|
|
|
24
24
|
// NOTE: Input array must have float values between 0 and 1!
|
|
25
25
|
// NOTE: gamma must be >= 0
|
|
26
|
-
var fs = "#define epsilon 0.00000001\n\nuniform float gamma1;\
|
|
26
|
+
var fs = "#define epsilon 0.00000001\n\nuniform gamma_contrastUniforms {\n float gamma1;\n float gamma2;\n float gamma3;\n float gamma4;\n} gamma_contrast;\n\nfloat gammaContrastCalc(float arr, float g) {\n // Gamma must be > 0\n g = clamp(g, epsilon, g);\n\n return pow(arr, 1.0 / g);\n}\n\nvec4 gammaContrastCalc(vec4 arr, float g1, float g2, float g3, float g4) {\n arr.r = gammaContrastCalc(arr.r, g1);\n arr.g = gammaContrastCalc(arr.g, g2);\n arr.b = gammaContrastCalc(arr.b, g3);\n arr.a = gammaContrastCalc(arr.a, g4);\n\n return arr;\n}\n";
|
|
27
27
|
function getUniforms() {
|
|
28
28
|
var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
29
29
|
var gammaContrastValue = opts.gammaContrastValue,
|
|
@@ -54,9 +54,15 @@ function getUniforms() {
|
|
|
54
54
|
var gammaContrast = exports.gammaContrast = {
|
|
55
55
|
name: 'gamma_contrast',
|
|
56
56
|
fs: fs,
|
|
57
|
+
uniformTypes: {
|
|
58
|
+
gamma1: 'f32',
|
|
59
|
+
gamma2: 'f32',
|
|
60
|
+
gamma3: 'f32',
|
|
61
|
+
gamma4: 'f32'
|
|
62
|
+
},
|
|
57
63
|
getUniforms: getUniforms,
|
|
58
64
|
inject: {
|
|
59
|
-
'fs:DECKGL_MUTATE_COLOR': "\n image =
|
|
65
|
+
'fs:DECKGL_MUTATE_COLOR': "\n image = gammaContrastCalc(image, gamma_contrast.gamma1, gamma_contrast.gamma2, gamma_contrast.gamma3, gamma_contrast.gamma4);\n "
|
|
60
66
|
}
|
|
61
67
|
};
|
|
62
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
68
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmcyIsImdldFVuaWZvcm1zIiwib3B0cyIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsImdhbW1hQ29udHJhc3RWYWx1ZSIsImdhbW1hQ29udHJhc3RWYWx1ZTEiLCJnYW1tYUNvbnRyYXN0VmFsdWUyIiwiZ2FtbWFDb250cmFzdFZhbHVlMyIsImdhbW1hQ29udHJhc3RWYWx1ZTQiLCJnYW1tYTEiLCJnYW1tYTIiLCJnYW1tYTMiLCJnYW1tYTQiLCJnYW1tYUNvbnRyYXN0IiwiZXhwb3J0cyIsIm5hbWUiLCJ1bmlmb3JtVHlwZXMiLCJpbmplY3QiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcmFzdGVyL3dlYmdsL2NvbG9yL2dhbW1hLWNvbnRyYXN0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCB7R2V0VW5pZm9ybXNPdXRwdXQsIFNoYWRlck1vZHVsZX0gZnJvbSAnLi4vdHlwZXMnO1xuXG4vLyBHYW1tYSBjb3JyZWN0aW9uIGlzIGEgbm9ubGluZWFyIG9wZXJhdGlvbiB0aGF0XG4vLyBhZGp1c3RzIHRoZSBpbWFnZSdzIGNoYW5uZWwgdmFsdWVzIHBpeGVsLWJ5LXBpeGVsIGFjY29yZGluZ1xuLy8gdG8gYSBwb3dlci1sYXc6XG4vL1xuLy8gLi4gbWF0aDo6IHBpeGVsX3tvdXR9ID0gcGl4ZWxfe2lufSBeIHtnYW1tYX1cbi8vXG4vLyBTZXR0aW5nIGdhbW1hICg6bWF0aDpnYW1tYSkgdG8gYmUgbGVzcyB0aGFuIDEuMCBkYXJrZW5zIHRoZSBpbWFnZSBhbmRcbi8vIHNldHRpbmcgZ2FtbWEgdG8gYmUgZ3JlYXRlciB0aGFuIDEuMCBsaWdodGVucyBpdC5cblxuLy8gUGFyYW1ldGVyc1xuLy8gLS0tLS0tLS0tLVxuLy8gZ2FtbWEgKDptYXRoOmdhbW1hKTogZmxvYXRcbi8vICAgICBSZWFzb25hYmxlIHZhbHVlcyByYW5nZSBmcm9tIDAuOCB0byAyLjQuXG5cbi8vIE5PVEU6IElucHV0IGFycmF5IG11c3QgaGF2ZSBmbG9hdCB2YWx1ZXMgYmV0d2VlbiAwIGFuZCAxIVxuLy8gTk9URTogZ2FtbWEgbXVzdCBiZSA+PSAwXG5jb25zdCBmcyA9IGBcXFxuI2RlZmluZSBlcHNpbG9uIDAuMDAwMDAwMDFcblxudW5pZm9ybSBnYW1tYV9jb250cmFzdFVuaWZvcm1zIHtcbiAgZmxvYXQgZ2FtbWExO1xuICBmbG9hdCBnYW1tYTI7XG4gIGZsb2F0IGdhbW1hMztcbiAgZmxvYXQgZ2FtbWE0O1xufSBnYW1tYV9jb250cmFzdDtcblxuZmxvYXQgZ2FtbWFDb250cmFzdENhbGMoZmxvYXQgYXJyLCBmbG9hdCBnKSB7XG4gIC8vIEdhbW1hIG11c3QgYmUgPiAwXG4gIGcgPSBjbGFtcChnLCBlcHNpbG9uLCBnKTtcblxuICByZXR1cm4gcG93KGFyciwgMS4wIC8gZyk7XG59XG5cbnZlYzQgZ2FtbWFDb250cmFzdENhbGModmVjNCBhcnIsIGZsb2F0IGcxLCBmbG9hdCBnMiwgZmxvYXQgZzMsIGZsb2F0IGc0KSB7XG4gIGFyci5yID0gZ2FtbWFDb250cmFzdENhbGMoYXJyLnIsIGcxKTtcbiAgYXJyLmcgPSBnYW1tYUNvbnRyYXN0Q2FsYyhhcnIuZywgZzIpO1xuICBhcnIuYiA9IGdhbW1hQ29udHJhc3RDYWxjKGFyci5iLCBnMyk7XG4gIGFyci5hID0gZ2FtbWFDb250cmFzdENhbGMoYXJyLmEsIGc0KTtcblxuICByZXR1cm4gYXJyO1xufVxuYDtcblxuZnVuY3Rpb24gZ2V0VW5pZm9ybXMoXG4gIG9wdHM6IHtcbiAgICBnYW1tYUNvbnRyYXN0VmFsdWU/OiBudW1iZXI7XG4gICAgZ2FtbWFDb250cmFzdFZhbHVlMT86IG51bWJlcjtcbiAgICBnYW1tYUNvbnRyYXN0VmFsdWUyPzogbnVtYmVyO1xuICAgIGdhbW1hQ29udHJhc3RWYWx1ZTM/OiBudW1iZXI7XG4gICAgZ2FtbWFDb250cmFzdFZhbHVlND86IG51bWJlcjtcbiAgfSA9IHt9XG4pOiBHZXRVbmlmb3Jtc091dHB1dCB7XG4gIGNvbnN0IHtcbiAgICBnYW1tYUNvbnRyYXN0VmFsdWUsXG4gICAgZ2FtbWFDb250cmFzdFZhbHVlMSxcbiAgICBnYW1tYUNvbnRyYXN0VmFsdWUyLFxuICAgIGdhbW1hQ29udHJhc3RWYWx1ZTMsXG4gICAgZ2FtbWFDb250cmFzdFZhbHVlNFxuICB9ID0gb3B0cztcblxuICAvLyBHYW1tYSBtdXN0IGJlID4gMCwgc28gbm90IHVzaW5nIE51bWJlci5pc0Zpbml0ZSBpcyBmaW5lXG5cbiAgaWYgKGdhbW1hQ29udHJhc3RWYWx1ZSkge1xuICAgIHJldHVybiB7XG4gICAgICBnYW1tYTE6IGdhbW1hQ29udHJhc3RWYWx1ZSxcbiAgICAgIGdhbW1hMjogZ2FtbWFDb250cmFzdFZhbHVlLFxuICAgICAgZ2FtbWEzOiBnYW1tYUNvbnRyYXN0VmFsdWUsXG4gICAgICBnYW1tYTQ6IGdhbW1hQ29udHJhc3RWYWx1ZVxuICAgIH07XG4gIH0gZWxzZSBpZiAoXG4gICAgZ2FtbWFDb250cmFzdFZhbHVlMSB8fFxuICAgIGdhbW1hQ29udHJhc3RWYWx1ZTIgfHxcbiAgICBnYW1tYUNvbnRyYXN0VmFsdWUzIHx8XG4gICAgZ2FtbWFDb250cmFzdFZhbHVlNFxuICApIHtcbiAgICByZXR1cm4ge1xuICAgICAgZ2FtbWExOiBnYW1tYUNvbnRyYXN0VmFsdWUxIHx8IDEsXG4gICAgICBnYW1tYTI6IGdhbW1hQ29udHJhc3RWYWx1ZTIgfHwgMSxcbiAgICAgIGdhbW1hMzogZ2FtbWFDb250cmFzdFZhbHVlMyB8fCAxLFxuICAgICAgZ2FtbWE0OiBnYW1tYUNvbnRyYXN0VmFsdWU0IHx8IDFcbiAgICB9O1xuICB9XG5cbiAgcmV0dXJuIG51bGw7XG59XG5cbmV4cG9ydCBjb25zdCBnYW1tYUNvbnRyYXN0OiBTaGFkZXJNb2R1bGUgPSB7XG4gIG5hbWU6ICdnYW1tYV9jb250cmFzdCcsXG4gIGZzLFxuICB1bmlmb3JtVHlwZXM6IHtcbiAgICBnYW1tYTE6ICdmMzInLFxuICAgIGdhbW1hMjogJ2YzMicsXG4gICAgZ2FtbWEzOiAnZjMyJyxcbiAgICBnYW1tYTQ6ICdmMzInXG4gIH0sXG4gIGdldFVuaWZvcm1zLFxuICBpbmplY3Q6IHtcbiAgICAnZnM6REVDS0dMX01VVEFURV9DT0xPUic6IGBcbiAgICBpbWFnZSA9IGdhbW1hQ29udHJhc3RDYWxjKGltYWdlLCBnYW1tYV9jb250cmFzdC5nYW1tYTEsIGdhbW1hX2NvbnRyYXN0LmdhbW1hMiwgZ2FtbWFfY29udHJhc3QuZ2FtbWEzLCBnYW1tYV9jb250cmFzdC5nYW1tYTQpO1xuICAgIGBcbiAgfVxufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7QUFDQTs7QUFJQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxJQUFNQSxFQUFFLDBpQkF5QlA7QUFFRCxTQUFTQyxXQUFXQSxDQUFBLEVBUUM7RUFBQSxJQVBuQkMsSUFNQyxHQUFBQyxTQUFBLENBQUFDLE1BQUEsUUFBQUQsU0FBQSxRQUFBRSxTQUFBLEdBQUFGLFNBQUEsTUFBRyxDQUFDLENBQUM7RUFFTixJQUNFRyxrQkFBa0IsR0FLaEJKLElBQUksQ0FMTkksa0JBQWtCO0lBQ2xCQyxtQkFBbUIsR0FJakJMLElBQUksQ0FKTkssbUJBQW1CO0lBQ25CQyxtQkFBbUIsR0FHakJOLElBQUksQ0FITk0sbUJBQW1CO0lBQ25CQyxtQkFBbUIsR0FFakJQLElBQUksQ0FGTk8sbUJBQW1CO0lBQ25CQyxtQkFBbUIsR0FDakJSLElBQUksQ0FETlEsbUJBQW1COztFQUdyQjs7RUFFQSxJQUFJSixrQkFBa0IsRUFBRTtJQUN0QixPQUFPO01BQ0xLLE1BQU0sRUFBRUwsa0JBQWtCO01BQzFCTSxNQUFNLEVBQUVOLGtCQUFrQjtNQUMxQk8sTUFBTSxFQUFFUCxrQkFBa0I7TUFDMUJRLE1BQU0sRUFBRVI7SUFDVixDQUFDO0VBQ0gsQ0FBQyxNQUFNLElBQ0xDLG1CQUFtQixJQUNuQkMsbUJBQW1CLElBQ25CQyxtQkFBbUIsSUFDbkJDLG1CQUFtQixFQUNuQjtJQUNBLE9BQU87TUFDTEMsTUFBTSxFQUFFSixtQkFBbUIsSUFBSSxDQUFDO01BQ2hDSyxNQUFNLEVBQUVKLG1CQUFtQixJQUFJLENBQUM7TUFDaENLLE1BQU0sRUFBRUosbUJBQW1CLElBQUksQ0FBQztNQUNoQ0ssTUFBTSxFQUFFSixtQkFBbUIsSUFBSTtJQUNqQyxDQUFDO0VBQ0g7RUFFQSxPQUFPLElBQUk7QUFDYjtBQUVPLElBQU1LLGFBQTJCLEdBQUFDLE9BQUEsQ0FBQUQsYUFBQSxHQUFHO0VBQ3pDRSxJQUFJLEVBQUUsZ0JBQWdCO0VBQ3RCakIsRUFBRSxFQUFGQSxFQUFFO0VBQ0ZrQixZQUFZLEVBQUU7SUFDWlAsTUFBTSxFQUFFLEtBQUs7SUFDYkMsTUFBTSxFQUFFLEtBQUs7SUFDYkMsTUFBTSxFQUFFLEtBQUs7SUFDYkMsTUFBTSxFQUFFO0VBQ1YsQ0FBQztFQUNEYixXQUFXLEVBQVhBLFdBQVc7RUFDWGtCLE1BQU0sRUFBRTtJQUNOLHdCQUF3QjtFQUcxQjtBQUNGLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -7,7 +7,7 @@ exports.linearRescale = void 0;
|
|
|
7
7
|
// SPDX-License-Identifier: MIT
|
|
8
8
|
// Copyright contributors to the kepler.gl project
|
|
9
9
|
|
|
10
|
-
var fs = "uniform float
|
|
10
|
+
var fs = "uniform linear_rescaleUniforms {\n float scaler;\n float offset;\n} linear_rescale;\n\n// Perform a linear rescaling of image\nvec4 linear_rescale_fn(vec4 arr, float scaler, float offset) {\n return arr * scaler + offset;\n}\n";
|
|
11
11
|
function getUniforms() {
|
|
12
12
|
var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
13
13
|
var linearRescaleScaler = opts.linearRescaleScaler,
|
|
@@ -16,16 +16,20 @@ function getUniforms() {
|
|
|
16
16
|
return null;
|
|
17
17
|
}
|
|
18
18
|
return {
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
scaler: Number.isFinite(linearRescaleScaler) ? linearRescaleScaler : 1,
|
|
20
|
+
offset: Number.isFinite(linearRescaleOffset) ? linearRescaleOffset : 0
|
|
21
21
|
};
|
|
22
22
|
}
|
|
23
23
|
var linearRescale = exports.linearRescale = {
|
|
24
24
|
name: 'linear_rescale',
|
|
25
25
|
fs: fs,
|
|
26
|
+
uniformTypes: {
|
|
27
|
+
scaler: 'f32',
|
|
28
|
+
offset: 'f32'
|
|
29
|
+
},
|
|
26
30
|
getUniforms: getUniforms,
|
|
27
31
|
inject: {
|
|
28
|
-
'fs:DECKGL_MUTATE_COLOR': "\n image =
|
|
32
|
+
'fs:DECKGL_MUTATE_COLOR': "\n image = linear_rescale_fn(image, linear_rescale.scaler, linear_rescale.offset);\n "
|
|
29
33
|
}
|
|
30
34
|
};
|
|
31
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmcyIsImdldFVuaWZvcm1zIiwib3B0cyIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsImxpbmVhclJlc2NhbGVTY2FsZXIiLCJsaW5lYXJSZXNjYWxlT2Zmc2V0IiwiTnVtYmVyIiwiaXNGaW5pdGUiLCJzY2FsZXIiLCJvZmZzZXQiLCJsaW5lYXJSZXNjYWxlIiwiZXhwb3J0cyIsIm5hbWUiLCJ1bmlmb3JtVHlwZXMiLCJpbmplY3QiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcmFzdGVyL3dlYmdsL2NvbG9yL2xpbmVhci1yZXNjYWxlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCB7R2V0VW5pZm9ybXNPdXRwdXQsIFNoYWRlck1vZHVsZX0gZnJvbSAnLi4vdHlwZXMnO1xuXG5jb25zdCBmcyA9IGBcXFxudW5pZm9ybSBsaW5lYXJfcmVzY2FsZVVuaWZvcm1zIHtcbiAgZmxvYXQgc2NhbGVyO1xuICBmbG9hdCBvZmZzZXQ7XG59IGxpbmVhcl9yZXNjYWxlO1xuXG4vLyBQZXJmb3JtIGEgbGluZWFyIHJlc2NhbGluZyBvZiBpbWFnZVxudmVjNCBsaW5lYXJfcmVzY2FsZV9mbih2ZWM0IGFyciwgZmxvYXQgc2NhbGVyLCBmbG9hdCBvZmZzZXQpIHtcbiAgcmV0dXJuIGFyciAqIHNjYWxlciArIG9mZnNldDtcbn1cbmA7XG5cbmZ1bmN0aW9uIGdldFVuaWZvcm1zKFxuICBvcHRzOiB7bGluZWFyUmVzY2FsZVNjYWxlcj86IG51bWJlcjsgbGluZWFyUmVzY2FsZU9mZnNldD86IG51bWJlcn0gPSB7fVxuKTogR2V0VW5pZm9ybXNPdXRwdXQge1xuICBjb25zdCB7bGluZWFyUmVzY2FsZVNjYWxlciwgbGluZWFyUmVzY2FsZU9mZnNldH0gPSBvcHRzO1xuXG4gIGlmICghTnVtYmVyLmlzRmluaXRlKGxpbmVhclJlc2NhbGVTY2FsZXIpICYmICFOdW1iZXIuaXNGaW5pdGUobGluZWFyUmVzY2FsZU9mZnNldCkpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgc2NhbGVyOiBOdW1iZXIuaXNGaW5pdGUobGluZWFyUmVzY2FsZVNjYWxlcikgPyBsaW5lYXJSZXNjYWxlU2NhbGVyIDogMSxcbiAgICBvZmZzZXQ6IE51bWJlci5pc0Zpbml0ZShsaW5lYXJSZXNjYWxlT2Zmc2V0KSA/IGxpbmVhclJlc2NhbGVPZmZzZXQgOiAwXG4gIH07XG59XG5cbmV4cG9ydCBjb25zdCBsaW5lYXJSZXNjYWxlOiBTaGFkZXJNb2R1bGUgPSB7XG4gIG5hbWU6ICdsaW5lYXJfcmVzY2FsZScsXG4gIGZzLFxuICB1bmlmb3JtVHlwZXM6IHtcbiAgICBzY2FsZXI6ICdmMzInLFxuICAgIG9mZnNldDogJ2YzMidcbiAgfSxcbiAgZ2V0VW5pZm9ybXMsXG4gIGluamVjdDoge1xuICAgICdmczpERUNLR0xfTVVUQVRFX0NPTE9SJzogYFxuICAgIGltYWdlID0gbGluZWFyX3Jlc2NhbGVfZm4oaW1hZ2UsIGxpbmVhcl9yZXNjYWxlLnNjYWxlciwgbGluZWFyX3Jlc2NhbGUub2Zmc2V0KTtcbiAgICBgXG4gIH1cbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBO0FBQ0E7O0FBSUEsSUFBTUEsRUFBRSwwT0FVUDtBQUVELFNBQVNDLFdBQVdBLENBQUEsRUFFQztFQUFBLElBRG5CQyxJQUFrRSxHQUFBQyxTQUFBLENBQUFDLE1BQUEsUUFBQUQsU0FBQSxRQUFBRSxTQUFBLEdBQUFGLFNBQUEsTUFBRyxDQUFDLENBQUM7RUFFdkUsSUFBT0csbUJBQW1CLEdBQXlCSixJQUFJLENBQWhESSxtQkFBbUI7SUFBRUMsbUJBQW1CLEdBQUlMLElBQUksQ0FBM0JLLG1CQUFtQjtFQUUvQyxJQUFJLENBQUNDLE1BQU0sQ0FBQ0MsUUFBUSxDQUFDSCxtQkFBbUIsQ0FBQyxJQUFJLENBQUNFLE1BQU0sQ0FBQ0MsUUFBUSxDQUFDRixtQkFBbUIsQ0FBQyxFQUFFO0lBQ2xGLE9BQU8sSUFBSTtFQUNiO0VBRUEsT0FBTztJQUNMRyxNQUFNLEVBQUVGLE1BQU0sQ0FBQ0MsUUFBUSxDQUFDSCxtQkFBbUIsQ0FBQyxHQUFHQSxtQkFBbUIsR0FBRyxDQUFDO0lBQ3RFSyxNQUFNLEVBQUVILE1BQU0sQ0FBQ0MsUUFBUSxDQUFDRixtQkFBbUIsQ0FBQyxHQUFHQSxtQkFBbUIsR0FBRztFQUN2RSxDQUFDO0FBQ0g7QUFFTyxJQUFNSyxhQUEyQixHQUFBQyxPQUFBLENBQUFELGFBQUEsR0FBRztFQUN6Q0UsSUFBSSxFQUFFLGdCQUFnQjtFQUN0QmQsRUFBRSxFQUFGQSxFQUFFO0VBQ0ZlLFlBQVksRUFBRTtJQUNaTCxNQUFNLEVBQUUsS0FBSztJQUNiQyxNQUFNLEVBQUU7RUFDVixDQUFDO0VBQ0RWLFdBQVcsRUFBWEEsV0FBVztFQUNYZSxNQUFNLEVBQUU7SUFDTix3QkFBd0I7RUFHMUI7QUFDRixDQUFDIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -17,7 +17,7 @@ exports.saturation = void 0;
|
|
|
17
17
|
*
|
|
18
18
|
* @returns {vec3} The color with the saturation adjusted.
|
|
19
19
|
*/
|
|
20
|
-
var fs = "uniform float
|
|
20
|
+
var fs = "uniform saturationUniforms {\n float value;\n} saturation;\n\nvec3 saturate(vec3 rgb, float adjustment) {\n // Algorithm from Chapter 16 of OpenGL Shading Language\n const vec3 W = vec3(0.2125, 0.7154, 0.0721);\n vec3 intensity = vec3(dot(rgb, W));\n return mix(intensity, rgb, adjustment);\n}\n";
|
|
21
21
|
function getUniforms() {
|
|
22
22
|
var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
23
23
|
var saturationValue = opts.saturationValue;
|
|
@@ -25,15 +25,18 @@ function getUniforms() {
|
|
|
25
25
|
return null;
|
|
26
26
|
}
|
|
27
27
|
return {
|
|
28
|
-
|
|
28
|
+
value: Number.isFinite(saturationValue) ? saturationValue : 1
|
|
29
29
|
};
|
|
30
30
|
}
|
|
31
31
|
var saturation = exports.saturation = {
|
|
32
32
|
name: 'saturation',
|
|
33
33
|
fs: fs,
|
|
34
|
+
uniformTypes: {
|
|
35
|
+
value: 'f32'
|
|
36
|
+
},
|
|
34
37
|
getUniforms: getUniforms,
|
|
35
38
|
inject: {
|
|
36
|
-
'fs:DECKGL_MUTATE_COLOR': "\n image = vec4(saturate(image.rgb,
|
|
39
|
+
'fs:DECKGL_MUTATE_COLOR': "\n image = vec4(saturate(image.rgb, saturation.value), image.a);\n "
|
|
37
40
|
}
|
|
38
41
|
};
|
|
39
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmcyIsImdldFVuaWZvcm1zIiwib3B0cyIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsInNhdHVyYXRpb25WYWx1ZSIsInZhbHVlIiwiTnVtYmVyIiwiaXNGaW5pdGUiLCJzYXR1cmF0aW9uIiwiZXhwb3J0cyIsIm5hbWUiLCJ1bmlmb3JtVHlwZXMiLCJpbmplY3QiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcmFzdGVyL3dlYmdsL2NvbG9yL3NhdHVyYXRpb24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuaW1wb3J0IHtHZXRVbmlmb3Jtc091dHB1dCwgU2hhZGVyTW9kdWxlfSBmcm9tICcuLi90eXBlcyc7XG5cbi8qKlxuICogQWRqdXN0cyB0aGUgc2F0dXJhdGlvbiBvZiBhIGNvbG9yLlxuICogRnJvbSBjZXNpdW06XG4gKiBodHRwczovL2dpdGh1Yi5jb20vQ2VzaXVtR1MvY2VzaXVtL2Jsb2IvbWFzdGVyL1NvdXJjZS9TaGFkZXJzL0J1aWx0aW4vRnVuY3Rpb25zL3NhdHVyYXRpb24uZ2xzbFxuICpcbiAqIEBwYXJhbSB7dmVjM30gcmdiIFRoZSBjb2xvci5cbiAqIEBwYXJhbSB7ZmxvYXR9IGFkanVzdG1lbnQgVGhlIGFtb3VudCB0byBhZGp1c3QgdGhlIHNhdHVyYXRpb24gb2YgdGhlIGNvbG9yLiBVc3VhbGx5IGJldHdlZW4gMCBhbmQgMi5cbiAqXG4gKiBAcmV0dXJucyB7dmVjM30gVGhlIGNvbG9yIHdpdGggdGhlIHNhdHVyYXRpb24gYWRqdXN0ZWQuXG4gKi9cbmNvbnN0IGZzID0gYFxcXG51bmlmb3JtIHNhdHVyYXRpb25Vbmlmb3JtcyB7XG4gIGZsb2F0IHZhbHVlO1xufSBzYXR1cmF0aW9uO1xuXG52ZWMzIHNhdHVyYXRlKHZlYzMgcmdiLCBmbG9hdCBhZGp1c3RtZW50KSB7XG4gICAgLy8gQWxnb3JpdGhtIGZyb20gQ2hhcHRlciAxNiBvZiBPcGVuR0wgU2hhZGluZyBMYW5ndWFnZVxuICAgIGNvbnN0IHZlYzMgVyA9IHZlYzMoMC4yMTI1LCAwLjcxNTQsIDAuMDcyMSk7XG4gICAgdmVjMyBpbnRlbnNpdHkgPSB2ZWMzKGRvdChyZ2IsIFcpKTtcbiAgICByZXR1cm4gbWl4KGludGVuc2l0eSwgcmdiLCBhZGp1c3RtZW50KTtcbn1cbmA7XG5cbmZ1bmN0aW9uIGdldFVuaWZvcm1zKG9wdHM6IHtzYXR1cmF0aW9uVmFsdWU/OiBudW1iZXJ9ID0ge30pOiBHZXRVbmlmb3Jtc091dHB1dCB7XG4gIGNvbnN0IHtzYXR1cmF0aW9uVmFsdWV9ID0gb3B0cztcblxuICBpZiAoIXNhdHVyYXRpb25WYWx1ZSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICB2YWx1ZTogTnVtYmVyLmlzRmluaXRlKHNhdHVyYXRpb25WYWx1ZSkgPyBzYXR1cmF0aW9uVmFsdWUgOiAxXG4gIH07XG59XG5cbmV4cG9ydCBjb25zdCBzYXR1cmF0aW9uOiBTaGFkZXJNb2R1bGUgPSB7XG4gIG5hbWU6ICdzYXR1cmF0aW9uJyxcbiAgZnMsXG4gIHVuaWZvcm1UeXBlczoge1xuICAgIHZhbHVlOiAnZjMyJ1xuICB9LFxuICBnZXRVbmlmb3JtcyxcbiAgaW5qZWN0OiB7XG4gICAgJ2ZzOkRFQ0tHTF9NVVRBVEVfQ09MT1InOiBgXG4gICAgaW1hZ2UgPSB2ZWM0KHNhdHVyYXRlKGltYWdlLnJnYiwgc2F0dXJhdGlvbi52YWx1ZSksIGltYWdlLmEpO1xuICAgIGBcbiAgfVxufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7QUFDQTs7QUFJQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQU1BLEVBQUUseVRBV1A7QUFFRCxTQUFTQyxXQUFXQSxDQUFBLEVBQTJEO0VBQUEsSUFBMURDLElBQWdDLEdBQUFDLFNBQUEsQ0FBQUMsTUFBQSxRQUFBRCxTQUFBLFFBQUFFLFNBQUEsR0FBQUYsU0FBQSxNQUFHLENBQUMsQ0FBQztFQUN4RCxJQUFPRyxlQUFlLEdBQUlKLElBQUksQ0FBdkJJLGVBQWU7RUFFdEIsSUFBSSxDQUFDQSxlQUFlLEVBQUU7SUFDcEIsT0FBTyxJQUFJO0VBQ2I7RUFFQSxPQUFPO0lBQ0xDLEtBQUssRUFBRUMsTUFBTSxDQUFDQyxRQUFRLENBQUNILGVBQWUsQ0FBQyxHQUFHQSxlQUFlLEdBQUc7RUFDOUQsQ0FBQztBQUNIO0FBRU8sSUFBTUksVUFBd0IsR0FBQUMsT0FBQSxDQUFBRCxVQUFBLEdBQUc7RUFDdENFLElBQUksRUFBRSxZQUFZO0VBQ2xCWixFQUFFLEVBQUZBLEVBQUU7RUFDRmEsWUFBWSxFQUFFO0lBQ1pOLEtBQUssRUFBRTtFQUNULENBQUM7RUFDRE4sV0FBVyxFQUFYQSxXQUFXO0VBQ1hhLE1BQU0sRUFBRTtJQUNOLHdCQUF3QjtFQUcxQjtBQUNGLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -40,7 +40,7 @@ exports.sigmoidalContrast = void 0;
|
|
|
40
40
|
// ----------
|
|
41
41
|
// .. [CT] Hany Farid "Fundamentals of Image Processing"
|
|
42
42
|
// http://www.cs.dartmouth.edu/farid/downloads/tutorials/fip.pdf
|
|
43
|
-
var fs = "#define epsilon 0.00000001\n\nuniform float
|
|
43
|
+
var fs = "#define epsilon 0.00000001\n\nuniform sigmoidalContrastUniforms {\n float contrast;\n float bias;\n} sigmoidalContrast;\n\n// NOTE: Input array must have float values between 0 and 1!\n// NOTE: bias must be a scalar float between 0 and 1!\nvec4 calculateSigmoidalContrast(vec4 arr, float contrast, float bias) {\n // We use the names alpha and beta to match documentation.\n float alpha = bias;\n float beta = contrast;\n\n // alpha must be >= 0\n alpha = clamp(alpha, epsilon, alpha);\n\n if (beta > 0.) {\n vec4 numerator = 1. / (1. + exp(beta * (alpha - arr))) - 1. / (\n 1. + exp(beta * alpha)\n );\n float denominator = 1. / (1. + exp(beta * (alpha - 1.))) - 1. / (\n 1. + exp(beta * alpha)\n );\n arr = numerator / denominator;\n } else if (beta < 0.) {\n arr = (\n (beta * alpha) - log(\n (\n 1.0 / (\n (arr / (1.0 + exp((beta * alpha) - beta))) -\n (arr / (1.0 + exp(beta * alpha))) +\n (1.0 / (1.0 + exp(beta * alpha)))\n )\n ) - 1.0)\n ) / beta;\n }\n\n return arr;\n}\n";
|
|
44
44
|
function getUniforms() {
|
|
45
45
|
var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
46
46
|
var sigmoidalContrast = opts.sigmoidalContrast,
|
|
@@ -49,16 +49,20 @@ function getUniforms() {
|
|
|
49
49
|
return null;
|
|
50
50
|
}
|
|
51
51
|
return {
|
|
52
|
-
|
|
53
|
-
|
|
52
|
+
contrast: Number.isFinite(sigmoidalContrast) ? sigmoidalContrast : 0,
|
|
53
|
+
bias: Number.isFinite(sigmoidalBias) ? sigmoidalBias : 0.5
|
|
54
54
|
};
|
|
55
55
|
}
|
|
56
56
|
var sigmoidalContrast = exports.sigmoidalContrast = {
|
|
57
57
|
name: 'sigmoidalContrast',
|
|
58
58
|
fs: fs,
|
|
59
|
+
uniformTypes: {
|
|
60
|
+
contrast: 'f32',
|
|
61
|
+
bias: 'f32'
|
|
62
|
+
},
|
|
59
63
|
getUniforms: getUniforms,
|
|
60
64
|
inject: {
|
|
61
|
-
'fs:DECKGL_MUTATE_COLOR': "\n image = calculateSigmoidalContrast(image, sigmoidalContrast,
|
|
65
|
+
'fs:DECKGL_MUTATE_COLOR': "\n image = calculateSigmoidalContrast(image, sigmoidalContrast.contrast, sigmoidalContrast.bias);\n "
|
|
62
66
|
}
|
|
63
67
|
};
|
|
64
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
68
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmcyIsImdldFVuaWZvcm1zIiwib3B0cyIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsInNpZ21vaWRhbENvbnRyYXN0Iiwic2lnbW9pZGFsQmlhcyIsIk51bWJlciIsImlzRmluaXRlIiwiY29udHJhc3QiLCJiaWFzIiwiZXhwb3J0cyIsIm5hbWUiLCJ1bmlmb3JtVHlwZXMiLCJpbmplY3QiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcmFzdGVyL3dlYmdsL2NvbG9yL3NpZ21vaWRhbC1jb250cmFzdC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQge0dldFVuaWZvcm1zT3V0cHV0LCBTaGFkZXJNb2R1bGV9IGZyb20gJy4uL3R5cGVzJztcblxuLy8gRnJvbSBtYXBib3gvcmlvLWNvbG9yIHVuZGVyIHRoZSBNSVQgTGljZW5zZVxuLy9cbi8vIFNpZ21vaWRhbCBjb250cmFzdCBpcyBhIHR5cGUgb2YgY29udHJhc3QgY29udHJvbCB0aGF0XG4vLyBhZGp1c3RzIHRoZSBjb250cmFzdCB3aXRob3V0IHNhdHVyYXRpbmcgaGlnaGxpZ2h0cyBvciBzaGFkb3dzLlxuLy8gSXQgYWxsb3dzIGNvbnRyb2wgb3ZlciB0d28gZmFjdG9yczpcbi8vIHRoZSBjb250cmFzdCByYW5nZSBmcm9tIGxpZ2h0IHRvIGRhcmssIGFuZCB3aGVyZSB0aGUgbWlkZGxlIHZhbHVlXG4vLyBvZiB0aGUgbWlkLXRvbmVzIGZhbGxzLiBUaGUgcmVzdWx0IGlzIGEgbm9uLWxpbmVhciBhbmQgc21vb3RoXG4vLyBjb250cmFzdCBjaGFuZ2UuXG4vLyBQYXJhbWV0ZXJzXG4vLyAtLS0tLS0tLS0tXG4vLyBhcnIgOiBuZGFycmF5LCBmbG9hdCwgMCAuLiAxXG4vLyAgICAgQXJyYXkgb2YgY29sb3IgdmFsdWVzIHRvIGFkanVzdFxuLy8gY29udHJhc3QgOiBpbnRlZ2VyXG4vLyAgICAgRW5oYW5jZXMgdGhlIGludGVuc2l0eSBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRoZSBsaWdodGVyIGFuZCBkYXJrZXJcbi8vICAgICBlbGVtZW50cyBvZiB0aGUgaW1hZ2UuIEZvciBleGFtcGxlLCAwIGlzIG5vbmUsIDMgaXMgdHlwaWNhbCBhbmRcbi8vICAgICAyMCBpcyBhIGxvdC5cbi8vIGJpYXMgOiBmbG9hdCwgYmV0d2VlbiAwIGFuZCAxXG4vLyAgICAgVGhyZXNob2xkIGxldmVsIGZvciB0aGUgY29udHJhc3QgZnVuY3Rpb24gdG8gY2VudGVyIG9uXG4vLyAgICAgKHR5cGljYWxseSBjZW50ZXJlZCBhdCAwLjUpXG4vLyBOb3Rlc1xuLy8gLS0tLS0tLS0tLVxuLy8gU2lnbW9pZGFsIGNvbnRyYXN0IGlzIGJhc2VkIG9uIHRoZSBzaWdtb2lkYWwgdHJhbnNmZXIgZnVuY3Rpb246XG4vLyAuLiBtYXRoOjogZyh1KSA9ICggMS8oMSArIGVeey0gXFxhbHBoYSAqIHUgKyBcXGJldGEpfSlcbi8vIFRoaXMgc2lnbW9pZCBmdW5jdGlvbiBpcyBzY2FsZWQgc28gdGhhdCB0aGUgb3V0cHV0IGlzIGJvdW5kIGJ5XG4vLyB0aGUgaW50ZXJ2YWwgWzAsIDFdLlxuLy8gLi4gbWF0aDo6ICggMS8oMSArIGVeKFxcYmV0YSAqIChcXGFscGhhIC0gdSkpKSAtIDEvKDEgKyBlXihcXGJldGEgKiBcXGFscGhhKSkpL1xuLy8gICAgICggMS8oMSArIGVeKFxcYmV0YSooXFxhbHBoYSAtIDEpKSkgLSAxLygxICsgZV4oXFxiZXRhICogXFxhbHBoYSkpIClcbi8vIFdoZXJlIDptYXRoOiBgXFxhbHBoYWAgaXMgdGhlIHRocmVzaG9sZCBsZXZlbCwgYW5kIDptYXRoOiBgXFxiZXRhYCB0aGVcbi8vIGNvbnRyYXN0IGZhY3RvciB0byBiZSBhcHBsaWVkLlxuLy8gUmVmZXJlbmNlc1xuLy8gLS0tLS0tLS0tLVxuLy8gLi4gW0NUXSBIYW55IEZhcmlkIFwiRnVuZGFtZW50YWxzIG9mIEltYWdlIFByb2Nlc3NpbmdcIlxuLy8gICAgICAgICBodHRwOi8vd3d3LmNzLmRhcnRtb3V0aC5lZHUvZmFyaWQvZG93bmxvYWRzL3R1dG9yaWFscy9maXAucGRmXG5jb25zdCBmcyA9IGBcXFxuI2RlZmluZSBlcHNpbG9uIDAuMDAwMDAwMDFcblxudW5pZm9ybSBzaWdtb2lkYWxDb250cmFzdFVuaWZvcm1zIHtcbiAgZmxvYXQgY29udHJhc3Q7XG4gIGZsb2F0IGJpYXM7XG59IHNpZ21vaWRhbENvbnRyYXN0O1xuXG4vLyBOT1RFOiBJbnB1dCBhcnJheSBtdXN0IGhhdmUgZmxvYXQgdmFsdWVzIGJldHdlZW4gMCBhbmQgMSFcbi8vIE5PVEU6IGJpYXMgbXVzdCBiZSBhIHNjYWxhciBmbG9hdCBiZXR3ZWVuIDAgYW5kIDEhXG52ZWM0IGNhbGN1bGF0ZVNpZ21vaWRhbENvbnRyYXN0KHZlYzQgYXJyLCBmbG9hdCBjb250cmFzdCwgZmxvYXQgYmlhcykge1xuICAvLyBXZSB1c2UgdGhlIG5hbWVzIGFscGhhIGFuZCBiZXRhIHRvIG1hdGNoIGRvY3VtZW50YXRpb24uXG4gIGZsb2F0IGFscGhhID0gYmlhcztcbiAgZmxvYXQgYmV0YSA9IGNvbnRyYXN0O1xuXG4gIC8vIGFscGhhIG11c3QgYmUgPj0gMFxuICBhbHBoYSA9IGNsYW1wKGFscGhhLCBlcHNpbG9uLCBhbHBoYSk7XG5cbiAgaWYgKGJldGEgPiAwLikge1xuICAgIHZlYzQgbnVtZXJhdG9yID0gMS4gLyAoMS4gKyBleHAoYmV0YSAqIChhbHBoYSAtIGFycikpKSAtIDEuIC8gKFxuICAgICAgMS4gKyBleHAoYmV0YSAqIGFscGhhKVxuICAgICk7XG4gICAgZmxvYXQgZGVub21pbmF0b3IgPSAxLiAvICgxLiArIGV4cChiZXRhICogKGFscGhhIC0gMS4pKSkgLSAxLiAvIChcbiAgICAgIDEuICsgZXhwKGJldGEgKiBhbHBoYSlcbiAgICApO1xuICAgIGFyciA9IG51bWVyYXRvciAvIGRlbm9taW5hdG9yO1xuICB9IGVsc2UgaWYgKGJldGEgPCAwLikge1xuICAgIGFyciA9IChcbiAgICAgIChiZXRhICogYWxwaGEpIC0gbG9nKFxuICAgICAgICAoXG4gICAgICAgICAgMS4wIC8gKFxuICAgICAgICAgICAgKGFyciAvICgxLjAgKyBleHAoKGJldGEgKiBhbHBoYSkgLSBiZXRhKSkpIC1cbiAgICAgICAgICAgIChhcnIgLyAoMS4wICsgZXhwKGJldGEgKiBhbHBoYSkpKSArXG4gICAgICAgICAgICAoMS4wIC8gKDEuMCArIGV4cChiZXRhICogYWxwaGEpKSlcbiAgICAgICAgICApXG4gICAgICAgICkgLSAxLjApXG4gICAgKSAvIGJldGE7XG4gIH1cblxuICByZXR1cm4gYXJyO1xufVxuYDtcblxuZnVuY3Rpb24gZ2V0VW5pZm9ybXMoXG4gIG9wdHM6IHtzaWdtb2lkYWxDb250cmFzdD86IG51bWJlcjsgc2lnbW9pZGFsQmlhcz86IG51bWJlcn0gPSB7fVxuKTogR2V0VW5pZm9ybXNPdXRwdXQge1xuICBjb25zdCB7c2lnbW9pZGFsQ29udHJhc3QsIHNpZ21vaWRhbEJpYXN9ID0gb3B0cztcblxuICBpZiAoIShOdW1iZXIuaXNGaW5pdGUoc2lnbW9pZGFsQ29udHJhc3QpIHx8IE51bWJlci5pc0Zpbml0ZShzaWdtb2lkYWxCaWFzKSkpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgY29udHJhc3Q6IE51bWJlci5pc0Zpbml0ZShzaWdtb2lkYWxDb250cmFzdCkgPyBzaWdtb2lkYWxDb250cmFzdCA6IDAsXG4gICAgYmlhczogTnVtYmVyLmlzRmluaXRlKHNpZ21vaWRhbEJpYXMpID8gc2lnbW9pZGFsQmlhcyA6IDAuNVxuICB9O1xufVxuXG5leHBvcnQgY29uc3Qgc2lnbW9pZGFsQ29udHJhc3Q6IFNoYWRlck1vZHVsZSA9IHtcbiAgbmFtZTogJ3NpZ21vaWRhbENvbnRyYXN0JyxcbiAgZnMsXG4gIHVuaWZvcm1UeXBlczoge1xuICAgIGNvbnRyYXN0OiAnZjMyJyxcbiAgICBiaWFzOiAnZjMyJ1xuICB9LFxuICBnZXRVbmlmb3JtcyxcbiAgaW5qZWN0OiB7XG4gICAgJ2ZzOkRFQ0tHTF9NVVRBVEVfQ09MT1InOiBgXG4gICAgaW1hZ2UgPSBjYWxjdWxhdGVTaWdtb2lkYWxDb250cmFzdChpbWFnZSwgc2lnbW9pZGFsQ29udHJhc3QuY29udHJhc3QsIHNpZ21vaWRhbENvbnRyYXN0LmJpYXMpO1xuICAgIGBcbiAgfVxufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7QUFDQTs7QUFJQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFNQSxFQUFFLHlrQ0F5Q1A7QUFFRCxTQUFTQyxXQUFXQSxDQUFBLEVBRUM7RUFBQSxJQURuQkMsSUFBMEQsR0FBQUMsU0FBQSxDQUFBQyxNQUFBLFFBQUFELFNBQUEsUUFBQUUsU0FBQSxHQUFBRixTQUFBLE1BQUcsQ0FBQyxDQUFDO0VBRS9ELElBQU9HLGlCQUFpQixHQUFtQkosSUFBSSxDQUF4Q0ksaUJBQWlCO0lBQUVDLGFBQWEsR0FBSUwsSUFBSSxDQUFyQkssYUFBYTtFQUV2QyxJQUFJLEVBQUVDLE1BQU0sQ0FBQ0MsUUFBUSxDQUFDSCxpQkFBaUIsQ0FBQyxJQUFJRSxNQUFNLENBQUNDLFFBQVEsQ0FBQ0YsYUFBYSxDQUFDLENBQUMsRUFBRTtJQUMzRSxPQUFPLElBQUk7RUFDYjtFQUVBLE9BQU87SUFDTEcsUUFBUSxFQUFFRixNQUFNLENBQUNDLFFBQVEsQ0FBQ0gsaUJBQWlCLENBQUMsR0FBR0EsaUJBQWlCLEdBQUcsQ0FBQztJQUNwRUssSUFBSSxFQUFFSCxNQUFNLENBQUNDLFFBQVEsQ0FBQ0YsYUFBYSxDQUFDLEdBQUdBLGFBQWEsR0FBRztFQUN6RCxDQUFDO0FBQ0g7QUFFTyxJQUFNRCxpQkFBK0IsR0FBQU0sT0FBQSxDQUFBTixpQkFBQSxHQUFHO0VBQzdDTyxJQUFJLEVBQUUsbUJBQW1CO0VBQ3pCYixFQUFFLEVBQUZBLEVBQUU7RUFDRmMsWUFBWSxFQUFFO0lBQ1pKLFFBQVEsRUFBRSxLQUFLO0lBQ2ZDLElBQUksRUFBRTtFQUNSLENBQUM7RUFDRFYsV0FBVyxFQUFYQSxXQUFXO0VBQ1hjLE1BQU0sRUFBRTtJQUNOLHdCQUF3QjtFQUcxQjtBQUNGLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -13,8 +13,8 @@ exports.pansharpenBrovey = void 0;
|
|
|
13
13
|
// multispectral intensities.
|
|
14
14
|
// Original code from https://github.com/mapbox/rio-pansharpen
|
|
15
15
|
//
|
|
16
|
-
var fs1 = "uniform sampler2D bitmapTexturePan;\nuniform float panWeight;\n\nfloat pansharpen_brovey_ratio(vec4 rgb, float pan, float weight) {\n return pan / ((rgb.r + rgb.g + rgb.b * weight) / (2. + weight));\n}\n\nvec4 pansharpen_brovey_calc(vec4 rgb, float pan, float weight) {\n float ratio = pansharpen_brovey_ratio(rgb, pan, weight);\n return ratio * rgb;\n}\n";
|
|
17
|
-
var fs2 = "precision mediump usampler2D;\n\n#ifdef SAMPLER_TYPE\n uniform SAMPLER_TYPE bitmapTexturePan;\n#else\n uniform sampler2D bitmapTexturePan;\n#endif\n\nuniform float panWeight;\n\nfloat pansharpen_brovey_ratio(vec4 rgb, float pan, float weight) {\n return pan / ((rgb.r + rgb.g + rgb.b * weight) / (2. + weight));\n}\n\nvec4 pansharpen_brovey_calc(vec4 rgb, float pan, float weight) {\n float ratio = pansharpen_brovey_ratio(rgb, pan, weight);\n return ratio * rgb;\n}\n";
|
|
16
|
+
var fs1 = "uniform sampler2D bitmapTexturePan;\n\nuniform pansharpen_broveyUniforms {\n float panWeight;\n} pansharpen_brovey;\n\nfloat pansharpen_brovey_ratio(vec4 rgb, float pan, float weight) {\n return pan / ((rgb.r + rgb.g + rgb.b * weight) / (2. + weight));\n}\n\nvec4 pansharpen_brovey_calc(vec4 rgb, float pan, float weight) {\n float ratio = pansharpen_brovey_ratio(rgb, pan, weight);\n return ratio * rgb;\n}\n";
|
|
17
|
+
var fs2 = "precision mediump usampler2D;\n\n#ifdef SAMPLER_TYPE\n uniform SAMPLER_TYPE bitmapTexturePan;\n#else\n uniform sampler2D bitmapTexturePan;\n#endif\n\nuniform pansharpen_broveyUniforms {\n float panWeight;\n} pansharpen_brovey;\n\nfloat pansharpen_brovey_ratio(vec4 rgb, float pan, float weight) {\n return pan / ((rgb.r + rgb.g + rgb.b * weight) / (2. + weight));\n}\n\nvec4 pansharpen_brovey_calc(vec4 rgb, float pan, float weight) {\n float ratio = pansharpen_brovey_ratio(rgb, pan, weight);\n return ratio * rgb;\n}\n";
|
|
18
18
|
function getUniforms() {
|
|
19
19
|
var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
20
20
|
var imagePan = opts.imagePan,
|
|
@@ -32,12 +32,15 @@ var pansharpenBrovey = exports.pansharpenBrovey = {
|
|
|
32
32
|
name: 'pansharpen_brovey',
|
|
33
33
|
fs1: fs1,
|
|
34
34
|
fs2: fs2,
|
|
35
|
+
uniformTypes: {
|
|
36
|
+
panWeight: 'f32'
|
|
37
|
+
},
|
|
35
38
|
defines: {
|
|
36
39
|
SAMPLER_TYPE: 'sampler2D'
|
|
37
40
|
},
|
|
38
41
|
getUniforms: getUniforms,
|
|
39
42
|
inject: {
|
|
40
|
-
'fs:DECKGL_MUTATE_COLOR': "\n float pan_band = float(
|
|
43
|
+
'fs:DECKGL_MUTATE_COLOR': "\n float pan_band = float(texture(bitmapTexturePan, coord).r);\n image = pansharpen_brovey_calc(image, pan_band, pansharpen_brovey.panWeight);\n "
|
|
41
44
|
}
|
|
42
45
|
};
|
|
43
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmczEiLCJmczIiLCJnZXRVbmlmb3JtcyIsIm9wdHMiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJpbWFnZVBhbiIsIl9vcHRzJHBhbldlaWdodCIsInBhbldlaWdodCIsImJpdG1hcFRleHR1cmVQYW4iLCJwYW5zaGFycGVuQnJvdmV5IiwiZXhwb3J0cyIsIm5hbWUiLCJ1bmlmb3JtVHlwZXMiLCJkZWZpbmVzIiwiU0FNUExFUl9UWVBFIiwiaW5qZWN0Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3Jhc3Rlci93ZWJnbC9wYW5zaGFycGVuL3BhbnNoYXJwZW4tYnJvdmV5LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCB0eXBlIHtUZXh0dXJlfSBmcm9tICdAbHVtYS5nbC9jb3JlJztcbmltcG9ydCB7R2V0VW5pZm9ybXNPdXRwdXQsIFNoYWRlck1vZHVsZX0gZnJvbSAnLi4vdHlwZXMnO1xuXG4vLyBCcm92ZXkgTWV0aG9kOiBFYWNoIHJlc2FtcGxlZCwgbXVsdGlzcGVjdHJhbCBwaXhlbCBpc1xuLy8gbXVsdGlwbGllZCBieSB0aGUgcmF0aW8gb2YgdGhlIGNvcnJlc3BvbmRpbmdcbi8vIHBhbmNocm9tYXRpYyBwaXhlbCBpbnRlbnNpdHkgdG8gdGhlIHN1bSBvZiBhbGwgdGhlXG4vLyBtdWx0aXNwZWN0cmFsIGludGVuc2l0aWVzLlxuLy8gT3JpZ2luYWwgY29kZSBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9tYXBib3gvcmlvLXBhbnNoYXJwZW5cbi8vXG5jb25zdCBmczEgPSBgXFxcbnVuaWZvcm0gc2FtcGxlcjJEIGJpdG1hcFRleHR1cmVQYW47XG5cbnVuaWZvcm0gcGFuc2hhcnBlbl9icm92ZXlVbmlmb3JtcyB7XG4gIGZsb2F0IHBhbldlaWdodDtcbn0gcGFuc2hhcnBlbl9icm92ZXk7XG5cbmZsb2F0IHBhbnNoYXJwZW5fYnJvdmV5X3JhdGlvKHZlYzQgcmdiLCBmbG9hdCBwYW4sIGZsb2F0IHdlaWdodCkge1xuICByZXR1cm4gcGFuIC8gKChyZ2IuciArIHJnYi5nICsgcmdiLmIgKiB3ZWlnaHQpIC8gKDIuICsgd2VpZ2h0KSk7XG59XG5cbnZlYzQgcGFuc2hhcnBlbl9icm92ZXlfY2FsYyh2ZWM0IHJnYiwgZmxvYXQgcGFuLCBmbG9hdCB3ZWlnaHQpIHtcbiAgZmxvYXQgcmF0aW8gPSBwYW5zaGFycGVuX2Jyb3ZleV9yYXRpbyhyZ2IsIHBhbiwgd2VpZ2h0KTtcbiAgcmV0dXJuIHJhdGlvICogcmdiO1xufVxuYDtcblxuY29uc3QgZnMyID0gYFxcXG5wcmVjaXNpb24gbWVkaXVtcCB1c2FtcGxlcjJEO1xuXG4jaWZkZWYgU0FNUExFUl9UWVBFXG4gIHVuaWZvcm0gU0FNUExFUl9UWVBFIGJpdG1hcFRleHR1cmVQYW47XG4jZWxzZVxuICB1bmlmb3JtIHNhbXBsZXIyRCBiaXRtYXBUZXh0dXJlUGFuO1xuI2VuZGlmXG5cbnVuaWZvcm0gcGFuc2hhcnBlbl9icm92ZXlVbmlmb3JtcyB7XG4gIGZsb2F0IHBhbldlaWdodDtcbn0gcGFuc2hhcnBlbl9icm92ZXk7XG5cbmZsb2F0IHBhbnNoYXJwZW5fYnJvdmV5X3JhdGlvKHZlYzQgcmdiLCBmbG9hdCBwYW4sIGZsb2F0IHdlaWdodCkge1xuICByZXR1cm4gcGFuIC8gKChyZ2IuciArIHJnYi5nICsgcmdiLmIgKiB3ZWlnaHQpIC8gKDIuICsgd2VpZ2h0KSk7XG59XG5cbnZlYzQgcGFuc2hhcnBlbl9icm92ZXlfY2FsYyh2ZWM0IHJnYiwgZmxvYXQgcGFuLCBmbG9hdCB3ZWlnaHQpIHtcbiAgZmxvYXQgcmF0aW8gPSBwYW5zaGFycGVuX2Jyb3ZleV9yYXRpbyhyZ2IsIHBhbiwgd2VpZ2h0KTtcbiAgcmV0dXJuIHJhdGlvICogcmdiO1xufVxuYDtcblxuZnVuY3Rpb24gZ2V0VW5pZm9ybXMob3B0czoge2ltYWdlUGFuPzogVGV4dHVyZTsgcGFuV2VpZ2h0PzogbnVtYmVyfSA9IHt9KTogR2V0VW5pZm9ybXNPdXRwdXQge1xuICBjb25zdCB7aW1hZ2VQYW4sIHBhbldlaWdodCA9IDAuMn0gPSBvcHRzO1xuXG4gIGlmICghaW1hZ2VQYW4pIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgYml0bWFwVGV4dHVyZVBhbjogaW1hZ2VQYW4sXG4gICAgcGFuV2VpZ2h0XG4gIH07XG59XG5cbmV4cG9ydCBjb25zdCBwYW5zaGFycGVuQnJvdmV5OiBTaGFkZXJNb2R1bGUgPSB7XG4gIG5hbWU6ICdwYW5zaGFycGVuX2Jyb3ZleScsXG4gIGZzMSxcbiAgZnMyLFxuICB1bmlmb3JtVHlwZXM6IHtcbiAgICBwYW5XZWlnaHQ6ICdmMzInXG4gIH0sXG4gIGRlZmluZXM6IHtcbiAgICBTQU1QTEVSX1RZUEU6ICdzYW1wbGVyMkQnXG4gIH0sXG4gIGdldFVuaWZvcm1zLFxuICBpbmplY3Q6IHtcbiAgICAnZnM6REVDS0dMX01VVEFURV9DT0xPUic6IGBcbiAgICBmbG9hdCBwYW5fYmFuZCA9IGZsb2F0KHRleHR1cmUoYml0bWFwVGV4dHVyZVBhbiwgY29vcmQpLnIpO1xuICAgIGltYWdlID0gcGFuc2hhcnBlbl9icm92ZXlfY2FsYyhpbWFnZSwgcGFuX2JhbmQsIHBhbnNoYXJwZW5fYnJvdmV5LnBhbldlaWdodCk7XG4gICAgYFxuICB9XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTtBQUNBOztBQUtBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQU1BLEdBQUcsa2FBZVI7QUFFRCxJQUFNQyxHQUFHLG1oQkFxQlI7QUFFRCxTQUFTQyxXQUFXQSxDQUFBLEVBQXlFO0VBQUEsSUFBeEVDLElBQThDLEdBQUFDLFNBQUEsQ0FBQUMsTUFBQSxRQUFBRCxTQUFBLFFBQUFFLFNBQUEsR0FBQUYsU0FBQSxNQUFHLENBQUMsQ0FBQztFQUN0RSxJQUFPRyxRQUFRLEdBQXFCSixJQUFJLENBQWpDSSxRQUFRO0lBQUFDLGVBQUEsR0FBcUJMLElBQUksQ0FBdkJNLFNBQVM7SUFBVEEsU0FBUyxHQUFBRCxlQUFBLGNBQUcsR0FBRyxHQUFBQSxlQUFBO0VBRWhDLElBQUksQ0FBQ0QsUUFBUSxFQUFFO0lBQ2IsT0FBTyxJQUFJO0VBQ2I7RUFFQSxPQUFPO0lBQ0xHLGdCQUFnQixFQUFFSCxRQUFRO0lBQzFCRSxTQUFTLEVBQVRBO0VBQ0YsQ0FBQztBQUNIO0FBRU8sSUFBTUUsZ0JBQThCLEdBQUFDLE9BQUEsQ0FBQUQsZ0JBQUEsR0FBRztFQUM1Q0UsSUFBSSxFQUFFLG1CQUFtQjtFQUN6QmIsR0FBRyxFQUFIQSxHQUFHO0VBQ0hDLEdBQUcsRUFBSEEsR0FBRztFQUNIYSxZQUFZLEVBQUU7SUFDWkwsU0FBUyxFQUFFO0VBQ2IsQ0FBQztFQUNETSxPQUFPLEVBQUU7SUFDUEMsWUFBWSxFQUFFO0VBQ2hCLENBQUM7RUFDRGQsV0FBVyxFQUFYQSxXQUFXO0VBQ1hlLE1BQU0sRUFBRTtJQUNOLHdCQUF3QjtFQUkxQjtBQUNGLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -62,4 +62,4 @@ var combineBandsInt = exports.combineBandsInt = _objectSpread(_objectSpread({},
|
|
|
62
62
|
SAMPLER_TYPE: 'isampler2D'
|
|
63
63
|
}
|
|
64
64
|
});
|
|
65
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
65
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJnZXRVbmlmb3JtcyIsIm9wdHMiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJpbWFnZUJhbmRzIiwiX2ltYWdlQmFuZHMiLCJfc2xpY2VkVG9BcnJheTIiLCJiaXRtYXBUZXh0dXJlUiIsImJpdG1hcFRleHR1cmVHIiwiYml0bWFwVGV4dHVyZUIiLCJiaXRtYXBUZXh0dXJlQSIsImZzMSIsImZzMiIsImNvbWJpbmVCYW5kcyIsIm5hbWUiLCJkZWZpbmVzIiwiU0FNUExFUl9UWVBFIiwiaW5qZWN0IiwiY29tYmluZUJhbmRzRmxvYXQiLCJleHBvcnRzIiwiX29iamVjdFNwcmVhZCIsImNvbWJpbmVCYW5kc1VpbnQiLCJjb21iaW5lQmFuZHNJbnQiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcmFzdGVyL3dlYmdsL3RleHR1cmUvY29tYmluZS1iYW5kcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQgdHlwZSB7VGV4dHVyZX0gZnJvbSAnQGx1bWEuZ2wvY29yZSc7XG5pbXBvcnQge0dldFVuaWZvcm1zT3V0cHV0LCBTaGFkZXJNb2R1bGV9IGZyb20gJy4uL3R5cGVzJztcblxuZnVuY3Rpb24gZ2V0VW5pZm9ybXMob3B0czoge2ltYWdlQmFuZHM/OiBUZXh0dXJlW119ID0ge30pOiBHZXRVbmlmb3Jtc091dHB1dCB7XG4gIGNvbnN0IHtpbWFnZUJhbmRzfSA9IG9wdHM7XG5cbiAgaWYgKCFpbWFnZUJhbmRzIHx8IGltYWdlQmFuZHMubGVuZ3RoID09PSAwKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBjb25zdCBbYml0bWFwVGV4dHVyZVIsIGJpdG1hcFRleHR1cmVHLCBiaXRtYXBUZXh0dXJlQiwgYml0bWFwVGV4dHVyZUFdID0gaW1hZ2VCYW5kcztcblxuICAvLyByZXR1cm4gZGVmYXVsdCB2YWx1ZXMgdG8gcHJldmVudCBkZWNrLmdsIHZhbGlkYXRpb24gd2FybmluZ3MuXG4gIC8vIE5vdGU6IGFsbCBiYW5kcyBtdXN0IGJlIHNldCBmb3IgdGhlIHNoYWRvdyBlZmZlY3QgdG8gd29yayBhcyBleHBlY3RlZC5cbiAgcmV0dXJuIHtcbiAgICBiaXRtYXBUZXh0dXJlUjogYml0bWFwVGV4dHVyZVIgfHwgYml0bWFwVGV4dHVyZVIsXG4gICAgYml0bWFwVGV4dHVyZUc6IGJpdG1hcFRleHR1cmVHIHx8IGJpdG1hcFRleHR1cmVSLFxuICAgIGJpdG1hcFRleHR1cmVCOiBiaXRtYXBUZXh0dXJlQiB8fCBiaXRtYXBUZXh0dXJlUixcbiAgICBiaXRtYXBUZXh0dXJlQTogYml0bWFwVGV4dHVyZUEgfHwgYml0bWFwVGV4dHVyZVJcbiAgfTtcbn1cblxuY29uc3QgZnMxID0gYFxcXG51bmlmb3JtIHNhbXBsZXIyRCBiaXRtYXBUZXh0dXJlUjtcbnVuaWZvcm0gc2FtcGxlcjJEIGJpdG1hcFRleHR1cmVHO1xudW5pZm9ybSBzYW1wbGVyMkQgYml0bWFwVGV4dHVyZUI7XG51bmlmb3JtIHNhbXBsZXIyRCBiaXRtYXBUZXh0dXJlQTtcbmA7XG5cbmNvbnN0IGZzMiA9IGBcXFxucHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7XG5wcmVjaXNpb24gbWVkaXVtcCBpbnQ7XG5wcmVjaXNpb24gbWVkaXVtcCB1c2FtcGxlcjJEO1xuXG4jaWZkZWYgU0FNUExFUl9UWVBFXG4gIHVuaWZvcm0gU0FNUExFUl9UWVBFIGJpdG1hcFRleHR1cmVSO1xuICB1bmlmb3JtIFNBTVBMRVJfVFlQRSBiaXRtYXBUZXh0dXJlRztcbiAgdW5pZm9ybSBTQU1QTEVSX1RZUEUgYml0bWFwVGV4dHVyZUI7XG4gIHVuaWZvcm0gU0FNUExFUl9UWVBFIGJpdG1hcFRleHR1cmVBO1xuI2Vsc2VcbiAgdW5pZm9ybSBzYW1wbGVyMkQgYml0bWFwVGV4dHVyZVI7XG4gIHVuaWZvcm0gc2FtcGxlcjJEIGJpdG1hcFRleHR1cmVHO1xuICB1bmlmb3JtIHNhbXBsZXIyRCBiaXRtYXBUZXh0dXJlQjtcbiAgdW5pZm9ybSBzYW1wbGVyMkQgYml0bWFwVGV4dHVyZUE7XG4jZW5kaWZcbmA7XG5cbmNvbnN0IGNvbWJpbmVCYW5kczogU2hhZGVyTW9kdWxlID0ge1xuICBuYW1lOiAnY29tYmluZS1iYW5kcycsXG4gIGZzMSxcbiAgZnMyLFxuICBnZXRVbmlmb3JtcyxcbiAgZGVmaW5lczoge1xuICAgIFNBTVBMRVJfVFlQRTogJ3NhbXBsZXIyRCdcbiAgfSxcbiAgaW5qZWN0OiB7XG4gICAgJ2ZzOkRFQ0tHTF9DUkVBVEVfQ09MT1InOiBgXG4gICAgZmxvYXQgY2hhbm5lbDEgPSBmbG9hdCh0ZXh0dXJlMkQoYml0bWFwVGV4dHVyZVIsIGNvb3JkKS5yKTtcbiAgICBmbG9hdCBjaGFubmVsMiA9IGZsb2F0KHRleHR1cmUyRChiaXRtYXBUZXh0dXJlRywgY29vcmQpLnIpO1xuICAgIGZsb2F0IGNoYW5uZWwzID0gZmxvYXQodGV4dHVyZTJEKGJpdG1hcFRleHR1cmVCLCBjb29yZCkucik7XG4gICAgZmxvYXQgY2hhbm5lbDQgPSBmbG9hdCh0ZXh0dXJlMkQoYml0bWFwVGV4dHVyZUEsIGNvb3JkKS5yKTtcblxuICAgIGltYWdlID0gdmVjNChjaGFubmVsMSwgY2hhbm5lbDIsIGNoYW5uZWwzLCBjaGFubmVsNCk7XG4gICAgYFxuICB9XG59O1xuXG5leHBvcnQgY29uc3QgY29tYmluZUJhbmRzRmxvYXQ6IFNoYWRlck1vZHVsZSA9IHtcbiAgLi4uY29tYmluZUJhbmRzLFxuICBuYW1lOiAnY29tYmluZS1iYW5kcy1mbG9hdCdcbn07XG5leHBvcnQgY29uc3QgY29tYmluZUJhbmRzVWludDogU2hhZGVyTW9kdWxlID0ge1xuICAuLi5jb21iaW5lQmFuZHMsXG4gIG5hbWU6ICdjb21iaW5lLWJhbmRzLXVpbnQnLFxuICBkZWZpbmVzOiB7XG4gICAgU0FNUExFUl9UWVBFOiAndXNhbXBsZXIyRCdcbiAgfVxufTtcbmV4cG9ydCBjb25zdCBjb21iaW5lQmFuZHNJbnQ6IFNoYWRlck1vZHVsZSA9IHtcbiAgLi4uY29tYmluZUJhbmRzLFxuICBuYW1lOiAnY29tYmluZS1iYW5kcy1pbnQnLFxuICBkZWZpbmVzOiB7XG4gICAgU0FNUExFUl9UWVBFOiAnaXNhbXBsZXIyRCdcbiAgfVxufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTtBQUNBOztBQUtBLFNBQVNBLFdBQVdBLENBQUEsRUFBeUQ7RUFBQSxJQUF4REMsSUFBOEIsR0FBQUMsU0FBQSxDQUFBQyxNQUFBLFFBQUFELFNBQUEsUUFBQUUsU0FBQSxHQUFBRixTQUFBLE1BQUcsQ0FBQyxDQUFDO0VBQ3RELElBQU9HLFVBQVUsR0FBSUosSUFBSSxDQUFsQkksVUFBVTtFQUVqQixJQUFJLENBQUNBLFVBQVUsSUFBSUEsVUFBVSxDQUFDRixNQUFNLEtBQUssQ0FBQyxFQUFFO0lBQzFDLE9BQU8sSUFBSTtFQUNiO0VBRUEsSUFBQUcsV0FBQSxPQUFBQyxlQUFBLGFBQXlFRixVQUFVO0lBQTVFRyxjQUFjLEdBQUFGLFdBQUE7SUFBRUcsY0FBYyxHQUFBSCxXQUFBO0lBQUVJLGNBQWMsR0FBQUosV0FBQTtJQUFFSyxjQUFjLEdBQUFMLFdBQUE7O0VBRXJFO0VBQ0E7RUFDQSxPQUFPO0lBQ0xFLGNBQWMsRUFBRUEsY0FBYyxJQUFJQSxjQUFjO0lBQ2hEQyxjQUFjLEVBQUVBLGNBQWMsSUFBSUQsY0FBYztJQUNoREUsY0FBYyxFQUFFQSxjQUFjLElBQUlGLGNBQWM7SUFDaERHLGNBQWMsRUFBRUEsY0FBYyxJQUFJSDtFQUNwQyxDQUFDO0FBQ0g7QUFFQSxJQUFNSSxHQUFHLGlKQUtSO0FBRUQsSUFBTUMsR0FBRyxnYkFnQlI7QUFFRCxJQUFNQyxZQUEwQixHQUFHO0VBQ2pDQyxJQUFJLEVBQUUsZUFBZTtFQUNyQkgsR0FBRyxFQUFIQSxHQUFHO0VBQ0hDLEdBQUcsRUFBSEEsR0FBRztFQUNIYixXQUFXLEVBQVhBLFdBQVc7RUFDWGdCLE9BQU8sRUFBRTtJQUNQQyxZQUFZLEVBQUU7RUFDaEIsQ0FBQztFQUNEQyxNQUFNLEVBQUU7SUFDTix3QkFBd0I7RUFRMUI7QUFDRixDQUFDO0FBRU0sSUFBTUMsaUJBQStCLEdBQUFDLE9BQUEsQ0FBQUQsaUJBQUEsR0FBQUUsYUFBQSxDQUFBQSxhQUFBLEtBQ3ZDUCxZQUFZO0VBQ2ZDLElBQUksRUFBRTtBQUFxQixFQUM1QjtBQUNNLElBQU1PLGdCQUE4QixHQUFBRixPQUFBLENBQUFFLGdCQUFBLEdBQUFELGFBQUEsQ0FBQUEsYUFBQSxLQUN0Q1AsWUFBWTtFQUNmQyxJQUFJLEVBQUUsb0JBQW9CO0VBQzFCQyxPQUFPLEVBQUU7SUFDUEMsWUFBWSxFQUFFO0VBQ2hCO0FBQUMsRUFDRjtBQUNNLElBQU1NLGVBQTZCLEdBQUFILE9BQUEsQ0FBQUcsZUFBQSxHQUFBRixhQUFBLENBQUFBLGFBQUEsS0FDckNQLFlBQVk7RUFDZkMsSUFBSSxFQUFFLG1CQUFtQjtFQUN6QkMsT0FBTyxFQUFFO0lBQ1BDLFlBQVksRUFBRTtFQUNoQjtBQUFDLEVBQ0YiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -1,13 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
3
|
Object.defineProperty(exports, "__esModule", {
|
|
5
4
|
value: true
|
|
6
5
|
});
|
|
7
6
|
exports.maskUint = exports.maskInt = exports.maskFloat = void 0;
|
|
8
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
9
|
-
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; }
|
|
10
|
-
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; }
|
|
11
7
|
// SPDX-License-Identifier: MIT
|
|
12
8
|
// Copyright contributors to the kepler.gl project
|
|
13
9
|
|
|
@@ -22,37 +18,33 @@ function getUniforms() {
|
|
|
22
18
|
}
|
|
23
19
|
return {
|
|
24
20
|
bitmapTextureMask: imageMask,
|
|
25
|
-
|
|
26
|
-
|
|
21
|
+
keepMin: Number.isFinite(maskKeepMin) ? maskKeepMin : -inf,
|
|
22
|
+
keepMax: Number.isFinite(maskKeepMax) ? maskKeepMax : inf
|
|
27
23
|
};
|
|
28
24
|
}
|
|
29
|
-
var
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
name: 'mask-image',
|
|
33
|
-
fs1: fs1,
|
|
34
|
-
fs2: fs2,
|
|
35
|
-
getUniforms: getUniforms,
|
|
36
|
-
defines: {
|
|
37
|
-
SAMPLER_TYPE: 'sampler2D'
|
|
38
|
-
},
|
|
39
|
-
inject: {
|
|
40
|
-
'fs:DECKGL_CREATE_COLOR': "\n float mask_value = float(texture2D(bitmapTextureMask, coord).r);\n if (mask_value < uMaskKeepMin) discard;\n if (mask_value > uMaskKeepMax) discard;\n "
|
|
41
|
-
}
|
|
25
|
+
var maskUniformTypes = {
|
|
26
|
+
keepMin: 'f32',
|
|
27
|
+
keepMax: 'f32'
|
|
42
28
|
};
|
|
43
|
-
|
|
44
|
-
name
|
|
45
|
-
|
|
46
|
-
var
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
29
|
+
function makeMaskModule(name, samplerType) {
|
|
30
|
+
var blockDecl = "uniform ".concat(name, "Uniforms {\n float keepMin;\n float keepMax;\n} ").concat(name, ";\n");
|
|
31
|
+
var fs1 = "uniform sampler2D bitmapTextureMask;\n".concat(blockDecl, "\n");
|
|
32
|
+
var fs2 = "precision mediump float;\nprecision mediump int;\nprecision mediump usampler2D;\n\n#ifdef SAMPLER_TYPE\n uniform SAMPLER_TYPE bitmapTextureMask;\n#else\n uniform sampler2D bitmapTextureMask;\n#endif\n\n".concat(blockDecl, "\n");
|
|
33
|
+
return {
|
|
34
|
+
name: name,
|
|
35
|
+
fs1: fs1,
|
|
36
|
+
fs2: fs2,
|
|
37
|
+
uniformTypes: maskUniformTypes,
|
|
38
|
+
getUniforms: getUniforms,
|
|
39
|
+
defines: {
|
|
40
|
+
SAMPLER_TYPE: samplerType
|
|
41
|
+
},
|
|
42
|
+
inject: {
|
|
43
|
+
'fs:DECKGL_CREATE_COLOR': "\n float mask_value = float(texture(bitmapTextureMask, coord).r);\n if (mask_value < ".concat(name, ".keepMin) discard;\n if (mask_value > ").concat(name, ".keepMax) discard;\n ")
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
var maskFloat = exports.maskFloat = makeMaskModule('mask_image_float', 'sampler2D');
|
|
48
|
+
var maskUint = exports.maskUint = makeMaskModule('mask_image_uint', 'usampler2D');
|
|
49
|
+
var maskInt = exports.maskInt = makeMaskModule('mask_image_int', 'isampler2D');
|
|
50
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJpbmYiLCJNYXRoIiwicG93IiwiZ2V0VW5pZm9ybXMiLCJvcHRzIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwidW5kZWZpbmVkIiwiaW1hZ2VNYXNrIiwibWFza0tlZXBNaW4iLCJtYXNrS2VlcE1heCIsImJpdG1hcFRleHR1cmVNYXNrIiwia2VlcE1pbiIsIk51bWJlciIsImlzRmluaXRlIiwia2VlcE1heCIsIm1hc2tVbmlmb3JtVHlwZXMiLCJtYWtlTWFza01vZHVsZSIsIm5hbWUiLCJzYW1wbGVyVHlwZSIsImJsb2NrRGVjbCIsImNvbmNhdCIsImZzMSIsImZzMiIsInVuaWZvcm1UeXBlcyIsImRlZmluZXMiLCJTQU1QTEVSX1RZUEUiLCJpbmplY3QiLCJtYXNrRmxvYXQiLCJleHBvcnRzIiwibWFza1VpbnQiLCJtYXNrSW50Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3Jhc3Rlci93ZWJnbC90ZXh0dXJlL21hc2sudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuaW1wb3J0IHR5cGUge1RleHR1cmV9IGZyb20gJ0BsdW1hLmdsL2NvcmUnO1xuaW1wb3J0IHtHZXRVbmlmb3Jtc091dHB1dCwgU2hhZGVyTW9kdWxlfSBmcm9tICcuLi90eXBlcyc7XG5cbmNvbnN0IGluZiA9IE1hdGgucG93KDIsIDYyKTtcblxuZnVuY3Rpb24gZ2V0VW5pZm9ybXMoXG4gIG9wdHM6IHtpbWFnZU1hc2s/OiBUZXh0dXJlOyBtYXNrS2VlcE1pbj86IG51bWJlcjsgbWFza0tlZXBNYXg/OiBudW1iZXJ9ID0ge31cbik6IEdldFVuaWZvcm1zT3V0cHV0IHtcbiAgY29uc3Qge2ltYWdlTWFzaywgbWFza0tlZXBNaW4sIG1hc2tLZWVwTWF4fSA9IG9wdHM7XG4gIGlmICghaW1hZ2VNYXNrKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIGJpdG1hcFRleHR1cmVNYXNrOiBpbWFnZU1hc2ssXG4gICAga2VlcE1pbjogTnVtYmVyLmlzRmluaXRlKG1hc2tLZWVwTWluKSA/IG1hc2tLZWVwTWluIDogLWluZixcbiAgICBrZWVwTWF4OiBOdW1iZXIuaXNGaW5pdGUobWFza0tlZXBNYXgpID8gbWFza0tlZXBNYXggOiBpbmZcbiAgfTtcbn1cblxuY29uc3QgbWFza1VuaWZvcm1UeXBlcyA9IHtcbiAga2VlcE1pbjogJ2YzMicsXG4gIGtlZXBNYXg6ICdmMzInXG59O1xuXG5mdW5jdGlvbiBtYWtlTWFza01vZHVsZShuYW1lOiBzdHJpbmcsIHNhbXBsZXJUeXBlOiBzdHJpbmcpOiBTaGFkZXJNb2R1bGUge1xuICBjb25zdCBibG9ja0RlY2wgPSBgXFxcbnVuaWZvcm0gJHtuYW1lfVVuaWZvcm1zIHtcbiAgZmxvYXQga2VlcE1pbjtcbiAgZmxvYXQga2VlcE1heDtcbn0gJHtuYW1lfTtcbmA7XG5cbiAgY29uc3QgZnMxID0gYFxcXG51bmlmb3JtIHNhbXBsZXIyRCBiaXRtYXBUZXh0dXJlTWFzaztcbiR7YmxvY2tEZWNsfVxuYDtcblxuICBjb25zdCBmczIgPSBgXFxcbnByZWNpc2lvbiBtZWRpdW1wIGZsb2F0O1xucHJlY2lzaW9uIG1lZGl1bXAgaW50O1xucHJlY2lzaW9uIG1lZGl1bXAgdXNhbXBsZXIyRDtcblxuI2lmZGVmIFNBTVBMRVJfVFlQRVxuICB1bmlmb3JtIFNBTVBMRVJfVFlQRSBiaXRtYXBUZXh0dXJlTWFzaztcbiNlbHNlXG4gIHVuaWZvcm0gc2FtcGxlcjJEIGJpdG1hcFRleHR1cmVNYXNrO1xuI2VuZGlmXG5cbiR7YmxvY2tEZWNsfVxuYDtcblxuICByZXR1cm4ge1xuICAgIG5hbWUsXG4gICAgZnMxLFxuICAgIGZzMixcbiAgICB1bmlmb3JtVHlwZXM6IG1hc2tVbmlmb3JtVHlwZXMsXG4gICAgZ2V0VW5pZm9ybXMsXG4gICAgZGVmaW5lczoge1xuICAgICAgU0FNUExFUl9UWVBFOiBzYW1wbGVyVHlwZVxuICAgIH0sXG4gICAgaW5qZWN0OiB7XG4gICAgICAnZnM6REVDS0dMX0NSRUFURV9DT0xPUic6IGBcbiAgICBmbG9hdCBtYXNrX3ZhbHVlID0gZmxvYXQodGV4dHVyZShiaXRtYXBUZXh0dXJlTWFzaywgY29vcmQpLnIpO1xuICAgIGlmIChtYXNrX3ZhbHVlIDwgJHtuYW1lfS5rZWVwTWluKSBkaXNjYXJkO1xuICAgIGlmIChtYXNrX3ZhbHVlID4gJHtuYW1lfS5rZWVwTWF4KSBkaXNjYXJkO1xuICAgIGBcbiAgICB9XG4gIH07XG59XG5cbmV4cG9ydCBjb25zdCBtYXNrRmxvYXQ6IFNoYWRlck1vZHVsZSA9IG1ha2VNYXNrTW9kdWxlKCdtYXNrX2ltYWdlX2Zsb2F0JywgJ3NhbXBsZXIyRCcpO1xuZXhwb3J0IGNvbnN0IG1hc2tVaW50OiBTaGFkZXJNb2R1bGUgPSBtYWtlTWFza01vZHVsZSgnbWFza19pbWFnZV91aW50JywgJ3VzYW1wbGVyMkQnKTtcbmV4cG9ydCBjb25zdCBtYXNrSW50OiBTaGFkZXJNb2R1bGUgPSBtYWtlTWFza01vZHVsZSgnbWFza19pbWFnZV9pbnQnLCAnaXNhbXBsZXIyRCcpO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTtBQUNBOztBQUtBLElBQU1BLEdBQUcsR0FBR0MsSUFBSSxDQUFDQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztBQUUzQixTQUFTQyxXQUFXQSxDQUFBLEVBRUM7RUFBQSxJQURuQkMsSUFBdUUsR0FBQUMsU0FBQSxDQUFBQyxNQUFBLFFBQUFELFNBQUEsUUFBQUUsU0FBQSxHQUFBRixTQUFBLE1BQUcsQ0FBQyxDQUFDO0VBRTVFLElBQU9HLFNBQVMsR0FBOEJKLElBQUksQ0FBM0NJLFNBQVM7SUFBRUMsV0FBVyxHQUFpQkwsSUFBSSxDQUFoQ0ssV0FBVztJQUFFQyxXQUFXLEdBQUlOLElBQUksQ0FBbkJNLFdBQVc7RUFDMUMsSUFBSSxDQUFDRixTQUFTLEVBQUU7SUFDZCxPQUFPLElBQUk7RUFDYjtFQUVBLE9BQU87SUFDTEcsaUJBQWlCLEVBQUVILFNBQVM7SUFDNUJJLE9BQU8sRUFBRUMsTUFBTSxDQUFDQyxRQUFRLENBQUNMLFdBQVcsQ0FBQyxHQUFHQSxXQUFXLEdBQUcsQ0FBQ1QsR0FBRztJQUMxRGUsT0FBTyxFQUFFRixNQUFNLENBQUNDLFFBQVEsQ0FBQ0osV0FBVyxDQUFDLEdBQUdBLFdBQVcsR0FBR1Y7RUFDeEQsQ0FBQztBQUNIO0FBRUEsSUFBTWdCLGdCQUFnQixHQUFHO0VBQ3ZCSixPQUFPLEVBQUUsS0FBSztFQUNkRyxPQUFPLEVBQUU7QUFDWCxDQUFDO0FBRUQsU0FBU0UsY0FBY0EsQ0FBQ0MsSUFBWSxFQUFFQyxXQUFtQixFQUFnQjtFQUN2RSxJQUFNQyxTQUFTLGNBQUFDLE1BQUEsQ0FDUEgsSUFBSSx3REFBQUcsTUFBQSxDQUdWSCxJQUFJLFFBQ1A7RUFFQyxJQUFNSSxHQUFHLDRDQUFBRCxNQUFBLENBRVRELFNBQVMsT0FDVjtFQUVDLElBQU1HLEdBQUcsa05BQUFGLE1BQUEsQ0FXVEQsU0FBUyxPQUNWO0VBRUMsT0FBTztJQUNMRixJQUFJLEVBQUpBLElBQUk7SUFDSkksR0FBRyxFQUFIQSxHQUFHO0lBQ0hDLEdBQUcsRUFBSEEsR0FBRztJQUNIQyxZQUFZLEVBQUVSLGdCQUFnQjtJQUM5QmIsV0FBVyxFQUFYQSxXQUFXO0lBQ1hzQixPQUFPLEVBQUU7TUFDUEMsWUFBWSxFQUFFUDtJQUNoQixDQUFDO0lBQ0RRLE1BQU0sRUFBRTtNQUNOLHdCQUF3QixnR0FBQU4sTUFBQSxDQUVQSCxJQUFJLCtDQUFBRyxNQUFBLENBQ0pILElBQUk7SUFFdkI7RUFDRixDQUFDO0FBQ0g7QUFFTyxJQUFNVSxTQUF1QixHQUFBQyxPQUFBLENBQUFELFNBQUEsR0FBR1gsY0FBYyxDQUFDLGtCQUFrQixFQUFFLFdBQVcsQ0FBQztBQUMvRSxJQUFNYSxRQUFzQixHQUFBRCxPQUFBLENBQUFDLFFBQUEsR0FBR2IsY0FBYyxDQUFDLGlCQUFpQixFQUFFLFlBQVksQ0FBQztBQUM5RSxJQUFNYyxPQUFxQixHQUFBRixPQUFBLENBQUFFLE9BQUEsR0FBR2QsY0FBYyxDQUFDLGdCQUFnQixFQUFFLFlBQVksQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -16,7 +16,7 @@ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length)
|
|
|
16
16
|
* Uses a permutation matrix to reorder a vec4
|
|
17
17
|
*/
|
|
18
18
|
|
|
19
|
-
var fs = "uniform mat4
|
|
19
|
+
var fs = "uniform reorder_bandsUniforms {\n mat4 ordering;\n} reorder_bands;\n\nvec4 reorder_image(vec4 image, mat4 ordering) {\n return image.rgba * ordering;\n}\n";
|
|
20
20
|
function getUniforms() {
|
|
21
21
|
var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
22
22
|
var ordering = opts.ordering;
|
|
@@ -24,7 +24,7 @@ function getUniforms() {
|
|
|
24
24
|
return null;
|
|
25
25
|
}
|
|
26
26
|
return {
|
|
27
|
-
|
|
27
|
+
ordering: constructPermutationMatrix(ordering)
|
|
28
28
|
};
|
|
29
29
|
}
|
|
30
30
|
|
|
@@ -59,11 +59,14 @@ function constructPermutationMatrix(vector) {
|
|
|
59
59
|
return mat4;
|
|
60
60
|
}
|
|
61
61
|
var reorderBands = exports.reorderBands = {
|
|
62
|
-
name: '
|
|
62
|
+
name: 'reorder_bands',
|
|
63
63
|
fs: fs,
|
|
64
|
+
uniformTypes: {
|
|
65
|
+
ordering: 'mat4x4<f32>'
|
|
66
|
+
},
|
|
64
67
|
getUniforms: getUniforms,
|
|
65
68
|
inject: {
|
|
66
|
-
'fs:DECKGL_MUTATE_COLOR': "\n image = reorder_image(image,
|
|
69
|
+
'fs:DECKGL_MUTATE_COLOR': "\n image = reorder_image(image, reorder_bands.ordering);\n "
|
|
67
70
|
}
|
|
68
71
|
};
|
|
69
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
72
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmcyIsImdldFVuaWZvcm1zIiwib3B0cyIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsIm9yZGVyaW5nIiwiY29uc3RydWN0UGVybXV0YXRpb25NYXRyaXgiLCJ2ZWN0b3IiLCJtYXQ0IiwiQXJyYXkiLCJmaWxsIiwicm93IiwiX2l0ZXJhdG9yIiwiX2NyZWF0ZUZvck9mSXRlcmF0b3JIZWxwZXIiLCJfc3RlcCIsInMiLCJuIiwiZG9uZSIsImluZGV4IiwidmFsdWUiLCJlcnIiLCJlIiwiZiIsInIiLCJyZW9yZGVyQmFuZHMiLCJleHBvcnRzIiwibmFtZSIsInVuaWZvcm1UeXBlcyIsImluamVjdCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9yYXN0ZXIvd2ViZ2wvdGV4dHVyZS9yZW9yZGVyLWJhbmRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCB7U2hhZGVyTW9kdWxlLCBHZXRVbmlmb3Jtc091dHB1dH0gZnJvbSAnLi4vdHlwZXMnO1xuXG4vKipcbiAqIFJlb3JkZXIgaW1hZ2UgYmFuZHMgb24gR1BVXG4gKiBVc2VzIGEgcGVybXV0YXRpb24gbWF0cml4IHRvIHJlb3JkZXIgYSB2ZWM0XG4gKi9cblxuY29uc3QgZnMgPSBgXFxcbnVuaWZvcm0gcmVvcmRlcl9iYW5kc1VuaWZvcm1zIHtcbiAgbWF0NCBvcmRlcmluZztcbn0gcmVvcmRlcl9iYW5kcztcblxudmVjNCByZW9yZGVyX2ltYWdlKHZlYzQgaW1hZ2UsIG1hdDQgb3JkZXJpbmcpIHtcbiAgcmV0dXJuIGltYWdlLnJnYmEgKiBvcmRlcmluZztcbn1cbmA7XG5cbmZ1bmN0aW9uIGdldFVuaWZvcm1zKG9wdHM6IHtvcmRlcmluZz86IG51bWJlcltdfSA9IHt9KTogR2V0VW5pZm9ybXNPdXRwdXQge1xuICBjb25zdCB7b3JkZXJpbmd9ID0gb3B0cztcblxuICBpZiAoIW9yZGVyaW5nKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIG9yZGVyaW5nOiBjb25zdHJ1Y3RQZXJtdXRhdGlvbk1hdHJpeChvcmRlcmluZylcbiAgfTtcbn1cblxuLyoqXG4gKiBDb25zdHJ1Y3QgcGVybXV0YXRpb24gbWF0cml4IGZyb20gdmVjdG9yXG4gKlxuICogQHBhcmFtIHZlY3RvciAgVmVjdG9yIGRlc2NyaWJpbmcgaG93IHRvIHJlb3JkZXIgYmFuZHNcbiAqXG4gKiBAcmV0dXJuIGEgbWF0NCBwZXJtdXRhdGlvbiBtYXRyaXggcmVwcmVzZW50aW5nIGhvdyB0byByZW9yZGVyIGJhbmRzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjb25zdHJ1Y3RQZXJtdXRhdGlvbk1hdHJpeCh2ZWN0b3I6IG51bWJlcltdKTogbnVtYmVyW10ge1xuICBjb25zdCBtYXQ0ID0gQXJyYXkoMTYpLmZpbGwoMCk7XG4gIGxldCByb3cgPSAwO1xuICBmb3IgKGNvbnN0IGluZGV4IG9mIHZlY3Rvcikge1xuICAgIG1hdDRbcm93ICogNCArIGluZGV4XSA9IDE7XG4gICAgcm93ICs9IDE7XG4gIH1cblxuICAvLyBJZiBpbnB1dCB2ZWN0b3Igd2Fzbid0IG9mIGxlbmd0aCA0LCBhZGQgaWRlbnRpdHkgaW4gZmluYWwgcGxhY2VzXG4gIGZvciAobGV0IHIgPSByb3c7IHIgPCA0OyByKyspIHtcbiAgICBtYXQ0W3IgKiA0ICsgcl0gPSAxO1xuICB9XG5cbiAgcmV0dXJuIG1hdDQ7XG59XG5cbmV4cG9ydCBjb25zdCByZW9yZGVyQmFuZHM6IFNoYWRlck1vZHVsZSA9IHtcbiAgbmFtZTogJ3Jlb3JkZXJfYmFuZHMnLFxuICBmcyxcbiAgdW5pZm9ybVR5cGVzOiB7XG4gICAgb3JkZXJpbmc6ICdtYXQ0eDQ8ZjMyPidcbiAgfSxcbiAgZ2V0VW5pZm9ybXMsXG4gIGluamVjdDoge1xuICAgICdmczpERUNLR0xfTVVUQVRFX0NPTE9SJzogYFxuICAgIGltYWdlID0gcmVvcmRlcl9pbWFnZShpbWFnZSwgcmVvcmRlcl9iYW5kcy5vcmRlcmluZyk7XG4gICAgYFxuICB9XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUE7QUFDQTs7QUFJQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxJQUFNQSxFQUFFLGlLQVFQO0FBRUQsU0FBU0MsV0FBV0EsQ0FBQSxFQUFzRDtFQUFBLElBQXJEQyxJQUEyQixHQUFBQyxTQUFBLENBQUFDLE1BQUEsUUFBQUQsU0FBQSxRQUFBRSxTQUFBLEdBQUFGLFNBQUEsTUFBRyxDQUFDLENBQUM7RUFDbkQsSUFBT0csUUFBUSxHQUFJSixJQUFJLENBQWhCSSxRQUFRO0VBRWYsSUFBSSxDQUFDQSxRQUFRLEVBQUU7SUFDYixPQUFPLElBQUk7RUFDYjtFQUVBLE9BQU87SUFDTEEsUUFBUSxFQUFFQywwQkFBMEIsQ0FBQ0QsUUFBUTtFQUMvQyxDQUFDO0FBQ0g7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxTQUFTQywwQkFBMEJBLENBQUNDLE1BQWdCLEVBQVk7RUFDckUsSUFBTUMsSUFBSSxHQUFHQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUNDLElBQUksQ0FBQyxDQUFDLENBQUM7RUFDOUIsSUFBSUMsR0FBRyxHQUFHLENBQUM7RUFBQyxJQUFBQyxTQUFBLEdBQUFDLDBCQUFBLENBQ1FOLE1BQU07SUFBQU8sS0FBQTtFQUFBO0lBQTFCLEtBQUFGLFNBQUEsQ0FBQUcsQ0FBQSxNQUFBRCxLQUFBLEdBQUFGLFNBQUEsQ0FBQUksQ0FBQSxJQUFBQyxJQUFBLEdBQTRCO01BQUEsSUFBakJDLEtBQUssR0FBQUosS0FBQSxDQUFBSyxLQUFBO01BQ2RYLElBQUksQ0FBQ0csR0FBRyxHQUFHLENBQUMsR0FBR08sS0FBSyxDQUFDLEdBQUcsQ0FBQztNQUN6QlAsR0FBRyxJQUFJLENBQUM7SUFDVjs7SUFFQTtFQUFBLFNBQUFTLEdBQUE7SUFBQVIsU0FBQSxDQUFBUyxDQUFBLENBQUFELEdBQUE7RUFBQTtJQUFBUixTQUFBLENBQUFVLENBQUE7RUFBQTtFQUNBLEtBQUssSUFBSUMsQ0FBQyxHQUFHWixHQUFHLEVBQUVZLENBQUMsR0FBRyxDQUFDLEVBQUVBLENBQUMsRUFBRSxFQUFFO0lBQzVCZixJQUFJLENBQUNlLENBQUMsR0FBRyxDQUFDLEdBQUdBLENBQUMsQ0FBQyxHQUFHLENBQUM7RUFDckI7RUFFQSxPQUFPZixJQUFJO0FBQ2I7QUFFTyxJQUFNZ0IsWUFBMEIsR0FBQUMsT0FBQSxDQUFBRCxZQUFBLEdBQUc7RUFDeENFLElBQUksRUFBRSxlQUFlO0VBQ3JCM0IsRUFBRSxFQUFGQSxFQUFFO0VBQ0Y0QixZQUFZLEVBQUU7SUFDWnRCLFFBQVEsRUFBRTtFQUNaLENBQUM7RUFDREwsV0FBVyxFQUFYQSxXQUFXO0VBQ1g0QixNQUFNLEVBQUU7SUFDTix3QkFBd0I7RUFHMUI7QUFDRixDQUFDIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -31,4 +31,4 @@ var rgbaImage = exports.rgbaImage = {
|
|
|
31
31
|
'fs:DECKGL_CREATE_COLOR': "\n image = vec4(texture2D(bitmapTextureRgba, coord));\n if (image.a < 0.5) {\n discard;\n }\n "
|
|
32
32
|
}
|
|
33
33
|
};
|
|
34
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
34
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJnZXRVbmlmb3JtcyIsIm9wdHMiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJpbWFnZVJnYmEiLCJiaXRtYXBUZXh0dXJlUmdiYSIsImZzMSIsImZzMiIsInJnYmFJbWFnZSIsImV4cG9ydHMiLCJuYW1lIiwiZGVmaW5lcyIsIlNBTVBMRVJfVFlQRSIsImluamVjdCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9yYXN0ZXIvd2ViZ2wvdGV4dHVyZS9yZ2JhLWltYWdlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCB0eXBlIHtUZXh0dXJlfSBmcm9tICdAbHVtYS5nbC9jb3JlJztcbmltcG9ydCB7R2V0VW5pZm9ybXNPdXRwdXQsIFNoYWRlck1vZHVsZX0gZnJvbSAnLi4vdHlwZXMnO1xuXG5mdW5jdGlvbiBnZXRVbmlmb3JtcyhvcHRzOiB7aW1hZ2VSZ2JhPzogVGV4dHVyZX0gPSB7fSk6IEdldFVuaWZvcm1zT3V0cHV0IHtcbiAgY29uc3Qge2ltYWdlUmdiYX0gPSBvcHRzO1xuXG4gIGlmICghaW1hZ2VSZ2JhKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIGJpdG1hcFRleHR1cmVSZ2JhOiBpbWFnZVJnYmFcbiAgfTtcbn1cblxuY29uc3QgZnMxID0gYFxcXG51bmlmb3JtIHNhbXBsZXIyRCBiaXRtYXBUZXh0dXJlUmdiYTtcbmA7XG5cbmNvbnN0IGZzMiA9IGBcXFxucHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7XG5wcmVjaXNpb24gbWVkaXVtcCBpbnQ7XG5wcmVjaXNpb24gbWVkaXVtcCB1c2FtcGxlcjJEO1xuXG4jaWZkZWYgU0FNUExFUl9UWVBFXG4gIHVuaWZvcm0gU0FNUExFUl9UWVBFIGJpdG1hcFRleHR1cmVSZ2JhO1xuI2Vsc2VcbiAgdW5pZm9ybSBzYW1wbGVyMkQgYml0bWFwVGV4dHVyZVJnYmE7XG4jZW5kaWZcbmA7XG5cbmV4cG9ydCBjb25zdCByZ2JhSW1hZ2U6IFNoYWRlck1vZHVsZSA9IHtcbiAgbmFtZTogJ3JnYmEtaW1hZ2UnLFxuICBmczEsXG4gIGZzMixcbiAgZ2V0VW5pZm9ybXMsXG4gIGRlZmluZXM6IHtcbiAgICBTQU1QTEVSX1RZUEU6ICdzYW1wbGVyMkQnXG4gIH0sXG4gIGluamVjdDoge1xuICAgICdmczpERUNLR0xfQ1JFQVRFX0NPTE9SJzogYFxuICAgIGltYWdlID0gdmVjNCh0ZXh0dXJlMkQoYml0bWFwVGV4dHVyZVJnYmEsIGNvb3JkKSk7XG4gICAgaWYgKGltYWdlLmEgPCAwLjUpIHtcbiAgICAgIGRpc2NhcmQ7XG4gICAgfVxuICAgIGBcbiAgfVxufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7QUFDQTs7QUFLQSxTQUFTQSxXQUFXQSxDQUFBLEVBQXNEO0VBQUEsSUFBckRDLElBQTJCLEdBQUFDLFNBQUEsQ0FBQUMsTUFBQSxRQUFBRCxTQUFBLFFBQUFFLFNBQUEsR0FBQUYsU0FBQSxNQUFHLENBQUMsQ0FBQztFQUNuRCxJQUFPRyxTQUFTLEdBQUlKLElBQUksQ0FBakJJLFNBQVM7RUFFaEIsSUFBSSxDQUFDQSxTQUFTLEVBQUU7SUFDZCxPQUFPLElBQUk7RUFDYjtFQUVBLE9BQU87SUFDTEMsaUJBQWlCLEVBQUVEO0VBQ3JCLENBQUM7QUFDSDtBQUVBLElBQU1FLEdBQUcsMkNBRVI7QUFFRCxJQUFNQyxHQUFHLCtNQVVSO0FBRU0sSUFBTUMsU0FBdUIsR0FBQUMsT0FBQSxDQUFBRCxTQUFBLEdBQUc7RUFDckNFLElBQUksRUFBRSxZQUFZO0VBQ2xCSixHQUFHLEVBQUhBLEdBQUc7RUFDSEMsR0FBRyxFQUFIQSxHQUFHO0VBQ0hSLFdBQVcsRUFBWEEsV0FBVztFQUNYWSxPQUFPLEVBQUU7SUFDUEMsWUFBWSxFQUFFO0VBQ2hCLENBQUM7RUFDREMsTUFBTSxFQUFFO0lBQ04sd0JBQXdCO0VBTTFCO0FBQ0YsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
import { Texture2D } from '@luma.gl/webgl';
|
|
1
|
+
import type { Texture } from '@luma.gl/core';
|
|
3
2
|
export interface ShaderModule {
|
|
4
3
|
/** A unique name for this shader module */
|
|
5
4
|
name: string;
|
|
@@ -11,13 +10,19 @@ export interface ShaderModule {
|
|
|
11
10
|
fs2?: string;
|
|
12
11
|
/** A vertex shader to inject */
|
|
13
12
|
vs?: string;
|
|
14
|
-
uniforms?: Record<string,
|
|
13
|
+
uniforms?: Record<string, UniformType>;
|
|
15
14
|
getUniforms?: (opts: object) => GetUniformsOutput;
|
|
15
|
+
/** luma.gl 9 UBO uniform type declarations (e.g. { opacity: 'f32' }) */
|
|
16
|
+
uniformTypes?: Record<string, string>;
|
|
16
17
|
/** Optional constants to define when injecting */
|
|
17
18
|
defines?: Record<string, string>;
|
|
18
19
|
inject?: Record<string, string>;
|
|
19
20
|
dependencies?: ShaderModule[];
|
|
20
|
-
deprecations?:
|
|
21
|
+
deprecations?: {
|
|
22
|
+
type: string;
|
|
23
|
+
old: string;
|
|
24
|
+
new: string;
|
|
25
|
+
}[];
|
|
21
26
|
}
|
|
22
|
-
export
|
|
23
|
-
export
|
|
27
|
+
export type UniformType = number | number[] | Texture | undefined;
|
|
28
|
+
export type GetUniformsOutput = Record<string, UniformType> | null;
|
|
@@ -3,4 +3,4 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
6
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Jhc3Rlci93ZWJnbC90eXBlcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQgdHlwZSB7VGV4dHVyZX0gZnJvbSAnQGx1bWEuZ2wvY29yZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2hhZGVyTW9kdWxlIHtcbiAgLyoqIEEgdW5pcXVlIG5hbWUgZm9yIHRoaXMgc2hhZGVyIG1vZHVsZSAqL1xuICBuYW1lOiBzdHJpbmc7XG5cbiAgLyoqIEEgZnJhZ21lbnQgc2hhZGVyIHRvIGJlIHVzZWQgaW4gYm90aCBXZWJHTDEgYW5kIFdlYkdMMiBlbnZpcm9ubWVudHMgKi9cbiAgZnM/OiBzdHJpbmc7XG5cbiAgLyoqIEEgZnJhZ21lbnQgc2hhZGVyIHRvIGJlIHVzZWQgb25seSBpbiBXZWJHTDEgZW52aXJvbm1lbnRzICovXG4gIGZzMT86IHN0cmluZztcblxuICAvKiogQSBmcmFnbWVudCBzaGFkZXIgdG8gYmUgdXNlZCBvbmx5IGluIFdlYkdMMiBlbnZpcm9ubWVudHMgKi9cbiAgZnMyPzogc3RyaW5nO1xuXG4gIC8qKiBBIHZlcnRleCBzaGFkZXIgdG8gaW5qZWN0ICovXG4gIHZzPzogc3RyaW5nO1xuICB1bmlmb3Jtcz86IFJlY29yZDxzdHJpbmcsIFVuaWZvcm1UeXBlPjtcbiAgZ2V0VW5pZm9ybXM/OiAob3B0czogb2JqZWN0KSA9PiBHZXRVbmlmb3Jtc091dHB1dDtcblxuICAvKiogbHVtYS5nbCA5IFVCTyB1bmlmb3JtIHR5cGUgZGVjbGFyYXRpb25zIChlLmcuIHsgb3BhY2l0eTogJ2YzMicgfSkgKi9cbiAgdW5pZm9ybVR5cGVzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcblxuICAvKiogT3B0aW9uYWwgY29uc3RhbnRzIHRvIGRlZmluZSB3aGVuIGluamVjdGluZyAqL1xuICBkZWZpbmVzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgaW5qZWN0PzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgZGVwZW5kZW5jaWVzPzogU2hhZGVyTW9kdWxlW107XG4gIGRlcHJlY2F0aW9ucz86IHt0eXBlOiBzdHJpbmc7IG9sZDogc3RyaW5nOyBuZXc6IHN0cmluZ31bXTtcbn1cblxuZXhwb3J0IHR5cGUgVW5pZm9ybVR5cGUgPSBudW1iZXIgfCBudW1iZXJbXSB8IFRleHR1cmUgfCB1bmRlZmluZWQ7XG5cbmV4cG9ydCB0eXBlIEdldFVuaWZvcm1zT3V0cHV0ID0gUmVjb3JkPHN0cmluZywgVW5pZm9ybVR5cGU+IHwgbnVsbDtcbiJdLCJtYXBwaW5ncyI6IiIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
/// <reference types="deck.gl" />
|
|
2
1
|
import { ScatterplotLayer, ScatterplotLayerProps } from '@deck.gl/layers';
|
|
3
|
-
import { Model } from '@luma.gl/core';
|
|
4
2
|
export interface ScatterplotIconLayerProps extends ScatterplotLayerProps<any> {
|
|
5
|
-
iconGeometry: number;
|
|
3
|
+
iconGeometry: number[];
|
|
6
4
|
}
|
|
7
5
|
export default class ScatterplotIconLayer extends ScatterplotLayer<any, ScatterplotIconLayerProps> {
|
|
8
|
-
_getModel(
|
|
6
|
+
_getModel(): import("@luma.gl/engine").Model;
|
|
9
7
|
}
|