@deck.gl/carto 9.0.34 → 9.1.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/basemap.d.ts +2 -1
- package/dist/api/basemap.d.ts.map +1 -1
- package/dist/api/basemap.js +3 -0
- package/dist/api/fetch-map.d.ts.map +1 -1
- package/dist/api/fetch-map.js +9 -11
- package/dist/api/index.d.ts +1 -4
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +3 -2
- package/dist/api/layer-map.d.ts.map +1 -1
- package/dist/api/layer-map.js +5 -2
- package/dist/api/parse-map.d.ts.map +1 -1
- package/dist/api/parse-map.js +3 -0
- package/dist/api/types.d.ts +0 -56
- package/dist/api/types.d.ts.map +1 -1
- package/dist/api/types.js +4 -20
- package/dist/basemap.d.ts +2 -1
- package/dist/basemap.d.ts.map +1 -1
- package/dist/basemap.js +4 -1
- package/dist/cartoRasterTile-worker.js +25 -2
- package/dist/cartoSpatialTile-worker.js +28 -3
- package/dist/cartoVectorTile-worker.js +29 -3
- package/dist/constants.d.ts +0 -3
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +3 -3
- package/dist/dist.dev.js +4512 -3855
- package/dist/index.cjs +328 -630
- package/dist/index.cjs.map +4 -4
- package/dist/index.d.ts +29 -16
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -2
- package/dist/layers/cluster-tile-layer.d.ts +1 -1
- package/dist/layers/cluster-tile-layer.d.ts.map +1 -1
- package/dist/layers/cluster-tile-layer.js +4 -0
- package/dist/layers/cluster-utils.d.ts.map +1 -1
- package/dist/layers/cluster-utils.js +3 -0
- package/dist/layers/h3-tile-layer.d.ts +4 -4
- package/dist/layers/h3-tile-layer.d.ts.map +1 -1
- package/dist/layers/h3-tile-layer.js +15 -14
- package/dist/layers/h3-tileset-2d.d.ts.map +1 -1
- package/dist/layers/h3-tileset-2d.js +3 -0
- package/dist/layers/heatmap-tile-layer.d.ts +12 -2
- package/dist/layers/heatmap-tile-layer.d.ts.map +1 -1
- package/dist/layers/heatmap-tile-layer.js +85 -9
- package/dist/layers/heatmap.d.ts +69 -22
- package/dist/layers/heatmap.d.ts.map +1 -1
- package/dist/layers/heatmap.js +86 -102
- package/dist/layers/point-label-layer.d.ts.map +1 -1
- package/dist/layers/point-label-layer.js +5 -2
- package/dist/layers/post-process-utils.d.ts.map +1 -1
- package/dist/layers/post-process-utils.js +9 -5
- package/dist/layers/quadbin-layer.d.ts.map +1 -1
- package/dist/layers/quadbin-layer.js +3 -0
- package/dist/layers/quadbin-tile-layer.d.ts +4 -4
- package/dist/layers/quadbin-tile-layer.d.ts.map +1 -1
- package/dist/layers/quadbin-tile-layer.js +13 -12
- package/dist/layers/quadbin-tileset-2d.d.ts.map +1 -1
- package/dist/layers/quadbin-tileset-2d.js +3 -0
- package/dist/layers/quadbin-utils.d.ts.map +1 -1
- package/dist/layers/quadbin-utils.js +3 -0
- package/dist/layers/raster-layer-vertex.glsl.d.ts +1 -1
- package/dist/layers/raster-layer-vertex.glsl.d.ts.map +1 -1
- package/dist/layers/raster-layer-vertex.glsl.js +20 -25
- package/dist/layers/raster-layer.d.ts +6 -6
- package/dist/layers/raster-layer.d.ts.map +1 -1
- package/dist/layers/raster-layer.js +6 -1
- package/dist/layers/raster-tile-layer.d.ts +1 -1
- package/dist/layers/raster-tile-layer.d.ts.map +1 -1
- package/dist/layers/raster-tile-layer.js +14 -13
- package/dist/layers/schema/carto-properties-tile-loader.d.ts.map +1 -1
- package/dist/layers/schema/carto-properties-tile-loader.js +3 -0
- package/dist/layers/schema/carto-properties-tile.d.ts.map +1 -1
- package/dist/layers/schema/carto-properties-tile.js +3 -0
- package/dist/layers/schema/carto-raster-tile-loader.d.ts.map +1 -1
- package/dist/layers/schema/carto-raster-tile-loader.js +4 -1
- package/dist/layers/schema/carto-raster-tile.d.ts.map +1 -1
- package/dist/layers/schema/carto-raster-tile.js +3 -0
- package/dist/layers/schema/carto-spatial-tile-loader.d.ts.map +1 -1
- package/dist/layers/schema/carto-spatial-tile-loader.js +4 -1
- package/dist/layers/schema/carto-spatial-tile.d.ts.map +1 -1
- package/dist/layers/schema/carto-spatial-tile.js +3 -0
- package/dist/layers/schema/carto-tile.d.ts.map +1 -1
- package/dist/layers/schema/carto-tile.js +3 -0
- package/dist/layers/schema/carto-vector-tile-loader.d.ts.map +1 -1
- package/dist/layers/schema/carto-vector-tile-loader.js +4 -1
- package/dist/layers/schema/fast-pbf.d.ts.map +1 -1
- package/dist/layers/schema/fast-pbf.js +3 -0
- package/dist/layers/schema/spatialjson-utils.d.ts.map +1 -1
- package/dist/layers/schema/spatialjson-utils.js +3 -0
- package/dist/layers/schema/tile-loader-utils.d.ts.map +1 -1
- package/dist/layers/schema/tile-loader-utils.js +3 -0
- package/dist/layers/spatial-index-tile-layer.d.ts.map +1 -1
- package/dist/layers/spatial-index-tile-layer.js +3 -0
- package/dist/layers/utils.d.ts +2 -2
- package/dist/layers/utils.d.ts.map +1 -1
- package/dist/layers/utils.js +3 -0
- package/dist/layers/vector-tile-layer.d.ts +1 -1
- package/dist/layers/vector-tile-layer.d.ts.map +1 -1
- package/dist/layers/vector-tile-layer.js +3 -0
- package/dist/style/color-bins-style.d.ts.map +1 -1
- package/dist/style/color-bins-style.js +3 -0
- package/dist/style/color-categories-style.d.ts.map +1 -1
- package/dist/style/color-categories-style.js +3 -0
- package/dist/style/color-continuous-style.d.ts.map +1 -1
- package/dist/style/color-continuous-style.js +3 -0
- package/dist/style/palette.d.ts.map +1 -1
- package/dist/style/palette.js +3 -0
- package/dist/style/utils.d.ts.map +1 -1
- package/dist/style/utils.js +3 -0
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +3 -0
- package/dist/workers/cartoRasterTile.js +3 -0
- package/dist/workers/cartoSpatialTile.js +3 -0
- package/dist/workers/cartoVectorTile.js +3 -0
- package/dist.min.js +115 -101
- package/package.json +13 -11
- package/src/api/basemap.ts +6 -1
- package/src/api/fetch-map.ts +23 -15
- package/src/api/index.ts +5 -13
- package/src/api/layer-map.ts +6 -2
- package/src/api/parse-map.ts +4 -0
- package/src/api/types.ts +4 -75
- package/src/basemap.ts +6 -2
- package/src/constants.ts +4 -4
- package/src/index.ts +28 -9
- package/src/layers/cluster-tile-layer.ts +6 -1
- package/src/layers/cluster-utils.ts +4 -0
- package/src/layers/h3-tile-layer.ts +18 -16
- package/src/layers/h3-tileset-2d.ts +4 -0
- package/src/layers/heatmap-tile-layer.ts +115 -11
- package/src/layers/heatmap.ts +41 -99
- package/src/layers/point-label-layer.ts +6 -2
- package/src/layers/post-process-utils.ts +10 -5
- package/src/layers/quadbin-layer.ts +4 -0
- package/src/layers/quadbin-tile-layer.ts +16 -14
- package/src/layers/quadbin-tileset-2d.ts +4 -0
- package/src/layers/quadbin-utils.ts +4 -0
- package/src/layers/raster-layer-vertex.glsl.ts +21 -27
- package/src/layers/raster-layer.ts +7 -1
- package/src/layers/raster-tile-layer.ts +16 -14
- package/src/layers/schema/carto-properties-tile-loader.ts +4 -0
- package/src/layers/schema/carto-properties-tile.ts +4 -0
- package/src/layers/schema/carto-raster-tile-loader.ts +4 -0
- package/src/layers/schema/carto-raster-tile.ts +4 -0
- package/src/layers/schema/carto-spatial-tile-loader.ts +4 -0
- package/src/layers/schema/carto-spatial-tile.ts +4 -0
- package/src/layers/schema/carto-tile.ts +4 -0
- package/src/layers/schema/carto-vector-tile-loader.ts +4 -0
- package/src/layers/schema/fast-pbf.ts +4 -0
- package/src/layers/schema/spatialjson-utils.ts +4 -0
- package/src/layers/schema/tile-loader-utils.ts +4 -0
- package/src/layers/spatial-index-tile-layer.ts +4 -0
- package/src/layers/utils.ts +5 -1
- package/src/layers/vector-tile-layer.ts +5 -1
- package/src/style/color-bins-style.ts +4 -0
- package/src/style/color-categories-style.ts +4 -0
- package/src/style/color-continuous-style.ts +4 -0
- package/src/style/palette.ts +4 -0
- package/src/style/utils.ts +4 -0
- package/src/utils.ts +4 -0
- package/src/workers/cartoRasterTile.ts +4 -0
- package/src/workers/cartoSpatialTile.ts +4 -0
- package/src/workers/cartoVectorTile.ts +4 -0
- package/dist/api/carto-api-error.d.ts +0 -19
- package/dist/api/carto-api-error.d.ts.map +0 -1
- package/dist/api/carto-api-error.js +0 -48
- package/dist/api/common.d.ts +0 -5
- package/dist/api/common.d.ts.map +0 -1
- package/dist/api/common.js +0 -5
- package/dist/api/endpoints.d.ts +0 -23
- package/dist/api/endpoints.d.ts.map +0 -1
- package/dist/api/endpoints.js +0 -22
- package/dist/api/query.d.ts +0 -4
- package/dist/api/query.d.ts.map +0 -1
- package/dist/api/query.js +0 -26
- package/dist/api/request-with-parameters.d.ts +0 -9
- package/dist/api/request-with-parameters.d.ts.map +0 -1
- package/dist/api/request-with-parameters.js +0 -86
- package/dist/sources/base-source.d.ts +0 -5
- package/dist/sources/base-source.d.ts.map +0 -1
- package/dist/sources/base-source.js +0 -60
- package/dist/sources/boundary-query-source.d.ts +0 -10
- package/dist/sources/boundary-query-source.d.ts.map +0 -1
- package/dist/sources/boundary-query-source.js +0 -18
- package/dist/sources/boundary-table-source.d.ts +0 -8
- package/dist/sources/boundary-table-source.d.ts.map +0 -1
- package/dist/sources/boundary-table-source.js +0 -15
- package/dist/sources/h3-query-source.d.ts +0 -4
- package/dist/sources/h3-query-source.d.ts.map +0 -1
- package/dist/sources/h3-query-source.js +0 -22
- package/dist/sources/h3-table-source.d.ts +0 -4
- package/dist/sources/h3-table-source.d.ts.map +0 -1
- package/dist/sources/h3-table-source.js +0 -19
- package/dist/sources/h3-tileset-source.d.ts +0 -4
- package/dist/sources/h3-tileset-source.d.ts.map +0 -1
- package/dist/sources/h3-tileset-source.js +0 -6
- package/dist/sources/index.d.ts +0 -28
- package/dist/sources/index.d.ts.map +0 -1
- package/dist/sources/index.js +0 -13
- package/dist/sources/quadbin-query-source.d.ts +0 -4
- package/dist/sources/quadbin-query-source.d.ts.map +0 -1
- package/dist/sources/quadbin-query-source.js +0 -22
- package/dist/sources/quadbin-table-source.d.ts +0 -4
- package/dist/sources/quadbin-table-source.d.ts.map +0 -1
- package/dist/sources/quadbin-table-source.js +0 -19
- package/dist/sources/quadbin-tileset-source.d.ts +0 -4
- package/dist/sources/quadbin-tileset-source.d.ts.map +0 -1
- package/dist/sources/quadbin-tileset-source.js +0 -6
- package/dist/sources/raster-source.d.ts +0 -4
- package/dist/sources/raster-source.d.ts.map +0 -1
- package/dist/sources/raster-source.js +0 -9
- package/dist/sources/types.d.ts +0 -219
- package/dist/sources/types.d.ts.map +0 -1
- package/dist/sources/types.js +0 -1
- package/dist/sources/vector-query-source.d.ts +0 -4
- package/dist/sources/vector-query-source.d.ts.map +0 -1
- package/dist/sources/vector-query-source.js +0 -22
- package/dist/sources/vector-table-source.d.ts +0 -4
- package/dist/sources/vector-table-source.d.ts.map +0 -1
- package/dist/sources/vector-table-source.js +0 -19
- package/dist/sources/vector-tileset-source.d.ts +0 -4
- package/dist/sources/vector-tileset-source.d.ts.map +0 -1
- package/dist/sources/vector-tileset-source.js +0 -6
- package/src/api/carto-api-error.ts +0 -68
- package/src/api/common.ts +0 -6
- package/src/api/endpoints.ts +0 -69
- package/src/api/query.ts +0 -42
- package/src/api/request-with-parameters.ts +0 -117
- package/src/sources/base-source.ts +0 -79
- package/src/sources/boundary-query-source.ts +0 -39
- package/src/sources/boundary-table-source.ts +0 -33
- package/src/sources/h3-query-source.ts +0 -55
- package/src/sources/h3-table-source.ts +0 -51
- package/src/sources/h3-tileset-source.ts +0 -14
- package/src/sources/index.ts +0 -45
- package/src/sources/quadbin-query-source.ts +0 -56
- package/src/sources/quadbin-table-source.ts +0 -52
- package/src/sources/quadbin-tileset-source.ts +0 -14
- package/src/sources/raster-source.ts +0 -17
- package/src/sources/types.ts +0 -231
- package/src/sources/vector-query-source.ts +0 -57
- package/src/sources/vector-table-source.ts +0 -51
- package/src/sources/vector-tileset-source.ts +0 -14
package/dist/index.d.ts
CHANGED
|
@@ -15,28 +15,41 @@ declare const CARTO_LAYERS: {
|
|
|
15
15
|
VectorTileLayer: typeof VectorTileLayer;
|
|
16
16
|
};
|
|
17
17
|
export { CARTO_LAYERS, ClusterTileLayer, H3TileLayer, HeatmapTileLayer, _PointLabelLayer, QuadbinTileLayer, RasterTileLayer, VectorTileLayer };
|
|
18
|
+
export { default as _QuadbinLayer } from "./layers/quadbin-layer.js";
|
|
19
|
+
export { default as _RasterLayer } from "./layers/raster-layer.js";
|
|
20
|
+
export { default as _SpatialIndexTileLayer } from "./layers/spatial-index-tile-layer.js";
|
|
21
|
+
export type { ClusterTileLayerProps } from "./layers/cluster-tile-layer.js";
|
|
22
|
+
export type { H3TileLayerProps } from "./layers/h3-tile-layer.js";
|
|
23
|
+
export type { HeatmapTileLayerProps } from "./layers/heatmap-tile-layer.js";
|
|
24
|
+
export type { PointLabelLayerProps } from "./layers/point-label-layer.js";
|
|
25
|
+
export type { QuadbinLayerProps } from "./layers/quadbin-layer.js";
|
|
26
|
+
export type { QuadbinTileLayerProps } from "./layers/quadbin-tile-layer.js";
|
|
27
|
+
export type { RasterLayerProps } from "./layers/raster-layer.js";
|
|
28
|
+
export type { RasterTileLayerProps } from "./layers/raster-tile-layer.js";
|
|
29
|
+
export type { SpatialIndexTileLayerProps } from "./layers/spatial-index-tile-layer.js";
|
|
30
|
+
export type { VectorTileLayerProps } from "./layers/vector-tile-layer.js";
|
|
18
31
|
export { default as BASEMAP, GOOGLE_BASEMAPS as _GOOGLE_BASEMAPS, getStyleUrl as _getStyleUrl, fetchStyle as _fetchStyle, applyLayerGroupFilters as _applyLayerGroupFilters, STYLE_LAYER_GROUPS as _STYLE_LAYER_GROUPS } from "./basemap.js";
|
|
19
32
|
export { default as colorBins } from "./style/color-bins-style.js";
|
|
20
33
|
export { default as colorCategories } from "./style/color-categories-style.js";
|
|
21
34
|
export { default as colorContinuous } from "./style/color-continuous-style.js";
|
|
22
|
-
export {
|
|
35
|
+
export { fetchMap } from "./api/index.js";
|
|
23
36
|
export { fetchBasemapProps } from "./api/basemap.js";
|
|
24
|
-
export type {
|
|
25
|
-
import { boundaryQuerySource, boundaryTableSource, h3QuerySource, h3TableSource, h3TilesetSource, rasterSource, quadbinQuerySource, quadbinTableSource, quadbinTilesetSource, vectorQuerySource, vectorTableSource, vectorTilesetSource, SOURCE_DEFAULTS } from
|
|
37
|
+
export type { FetchMapOptions, FetchMapResult, Basemap as _Basemap, MapLibreBasemap as _MapLibreBasemap, GoogleBasemap as _GoogleBasemap } from "./api/index.js";
|
|
38
|
+
import { boundaryQuerySource, boundaryTableSource, h3QuerySource, h3TableSource, h3TilesetSource, rasterSource, quadbinQuerySource, quadbinTableSource, quadbinTilesetSource, vectorQuerySource, vectorTableSource, vectorTilesetSource, SOURCE_DEFAULTS } from '@carto/api-client';
|
|
26
39
|
declare const CARTO_SOURCES: {
|
|
27
|
-
boundaryQuerySource: (options: import("
|
|
28
|
-
boundaryTableSource: (options: import("
|
|
29
|
-
h3QuerySource: (options: import("
|
|
30
|
-
h3TableSource: (options: import("
|
|
31
|
-
h3TilesetSource: (options: import("
|
|
32
|
-
rasterSource: (options: import("
|
|
33
|
-
quadbinQuerySource: (options: import("
|
|
34
|
-
quadbinTableSource: (options: import("
|
|
35
|
-
quadbinTilesetSource: (options: import("
|
|
36
|
-
vectorQuerySource: (options: import("
|
|
37
|
-
vectorTableSource: (options: import("
|
|
38
|
-
vectorTilesetSource: (options: import("
|
|
40
|
+
boundaryQuerySource: (options: import("@carto/api-client").BoundaryQuerySourceOptions) => Promise<import("@carto/api-client").TilejsonResult>;
|
|
41
|
+
boundaryTableSource: (options: import("@carto/api-client").BoundaryTableSourceOptions) => Promise<import("@carto/api-client").TilejsonResult>;
|
|
42
|
+
h3QuerySource: (options: import("@carto/api-client").H3QuerySourceOptions) => Promise<import("@carto/api-client").TilejsonResult & import("@carto/api-client").WidgetQuerySourceResult>;
|
|
43
|
+
h3TableSource: (options: import("@carto/api-client").H3TableSourceOptions) => Promise<import("@carto/api-client").TilejsonResult & import("@carto/api-client").WidgetTableSourceResult>;
|
|
44
|
+
h3TilesetSource: (options: import("@carto/api-client").H3TilesetSourceOptions) => Promise<import("@carto/api-client").TilejsonResult>;
|
|
45
|
+
rasterSource: (options: import("@carto/api-client").RasterSourceOptions) => Promise<import("@carto/api-client").TilejsonResult>;
|
|
46
|
+
quadbinQuerySource: (options: import("@carto/api-client").QuadbinQuerySourceOptions) => Promise<import("@carto/api-client").TilejsonResult & import("@carto/api-client").WidgetQuerySourceResult>;
|
|
47
|
+
quadbinTableSource: (options: import("@carto/api-client").QuadbinTableSourceOptions) => Promise<import("@carto/api-client").TilejsonResult & import("@carto/api-client").WidgetTableSourceResult>;
|
|
48
|
+
quadbinTilesetSource: (options: import("@carto/api-client").QuadbinTilesetSourceOptions) => Promise<import("@carto/api-client").TilejsonResult>;
|
|
49
|
+
vectorQuerySource: (options: import("@carto/api-client").VectorQuerySourceOptions) => Promise<import("@carto/api-client").TilejsonResult & import("@carto/api-client").WidgetQuerySourceResult>;
|
|
50
|
+
vectorTableSource: (options: import("@carto/api-client").VectorTableSourceOptions) => Promise<import("@carto/api-client").TilejsonResult & import("@carto/api-client").WidgetTableSourceResult>;
|
|
51
|
+
vectorTilesetSource: (options: import("@carto/api-client").VectorTilesetSourceOptions) => Promise<import("@carto/api-client").TilejsonResult>;
|
|
39
52
|
};
|
|
40
53
|
export { boundaryQuerySource, boundaryTableSource, h3QuerySource, h3TableSource, h3TilesetSource, rasterSource, quadbinQuerySource, quadbinTableSource, quadbinTilesetSource, vectorQuerySource, vectorTableSource, vectorTilesetSource, CARTO_SOURCES, SOURCE_DEFAULTS };
|
|
41
|
-
export type { GeojsonResult, JsonResult, TilejsonResult, SourceOptions, QuerySourceOptions, TableSourceOptions, TilesetSourceOptions, BoundaryQuerySourceOptions, BoundaryTableSourceOptions, H3QuerySourceOptions, H3TableSourceOptions, H3TilesetSourceOptions, RasterSourceOptions, QuadbinQuerySourceOptions, QuadbinTableSourceOptions, QuadbinTilesetSourceOptions, VectorQuerySourceOptions, VectorTableSourceOptions, VectorTilesetSourceOptions } from
|
|
54
|
+
export type { GeojsonResult, JsonResult, TilejsonResult, SourceOptions, QuerySourceOptions, TableSourceOptions, TilesetSourceOptions, BoundaryQuerySourceOptions, BoundaryTableSourceOptions, H3QuerySourceOptions, H3TableSourceOptions, H3TilesetSourceOptions, RasterSourceOptions, QuadbinQuerySourceOptions, QuadbinTableSourceOptions, QuadbinTilesetSourceOptions, VectorQuerySourceOptions, VectorTableSourceOptions, VectorTilesetSourceOptions } from '@carto/api-client';
|
|
42
55
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
// deck.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright (c) vis.gl contributors
|
|
4
|
+
// CARTO Layers
|
|
1
5
|
import { default as ClusterTileLayer } from "./layers/cluster-tile-layer.js";
|
|
2
6
|
import { default as H3TileLayer } from "./layers/h3-tile-layer.js";
|
|
3
7
|
import { default as HeatmapTileLayer } from "./layers/heatmap-tile-layer.js";
|
|
@@ -5,6 +9,7 @@ import { default as _PointLabelLayer } from "./layers/point-label-layer.js";
|
|
|
5
9
|
import { default as QuadbinTileLayer } from "./layers/quadbin-tile-layer.js";
|
|
6
10
|
import { default as RasterTileLayer } from "./layers/raster-tile-layer.js";
|
|
7
11
|
import { default as VectorTileLayer } from "./layers/vector-tile-layer.js";
|
|
12
|
+
// Exports for playground/bindings
|
|
8
13
|
const CARTO_LAYERS = {
|
|
9
14
|
ClusterTileLayer,
|
|
10
15
|
H3TileLayer,
|
|
@@ -15,13 +20,18 @@ const CARTO_LAYERS = {
|
|
|
15
20
|
VectorTileLayer
|
|
16
21
|
};
|
|
17
22
|
export { CARTO_LAYERS, ClusterTileLayer, H3TileLayer, HeatmapTileLayer, _PointLabelLayer, QuadbinTileLayer, RasterTileLayer, VectorTileLayer };
|
|
23
|
+
// Internal Layers
|
|
24
|
+
export { default as _QuadbinLayer } from "./layers/quadbin-layer.js";
|
|
25
|
+
export { default as _RasterLayer } from "./layers/raster-layer.js";
|
|
26
|
+
export { default as _SpatialIndexTileLayer } from "./layers/spatial-index-tile-layer.js";
|
|
27
|
+
// Helpers
|
|
18
28
|
export { default as BASEMAP, GOOGLE_BASEMAPS as _GOOGLE_BASEMAPS, getStyleUrl as _getStyleUrl, fetchStyle as _fetchStyle, applyLayerGroupFilters as _applyLayerGroupFilters, STYLE_LAYER_GROUPS as _STYLE_LAYER_GROUPS } from "./basemap.js";
|
|
19
29
|
export { default as colorBins } from "./style/color-bins-style.js";
|
|
20
30
|
export { default as colorCategories } from "./style/color-categories-style.js";
|
|
21
31
|
export { default as colorContinuous } from "./style/color-continuous-style.js";
|
|
22
|
-
export {
|
|
32
|
+
export { fetchMap } from "./api/index.js";
|
|
23
33
|
export { fetchBasemapProps } from "./api/basemap.js";
|
|
24
|
-
import { boundaryQuerySource, boundaryTableSource, h3QuerySource, h3TableSource, h3TilesetSource, rasterSource, quadbinQuerySource, quadbinTableSource, quadbinTilesetSource, vectorQuerySource, vectorTableSource, vectorTilesetSource, SOURCE_DEFAULTS } from
|
|
34
|
+
import { boundaryQuerySource, boundaryTableSource, h3QuerySource, h3TableSource, h3TilesetSource, rasterSource, quadbinQuerySource, quadbinTableSource, quadbinTilesetSource, vectorQuerySource, vectorTableSource, vectorTilesetSource, SOURCE_DEFAULTS } from '@carto/api-client';
|
|
25
35
|
const CARTO_SOURCES = {
|
|
26
36
|
boundaryQuerySource,
|
|
27
37
|
boundaryTableSource,
|
|
@@ -3,7 +3,7 @@ import { TileLayerProps, TileLayerPickingInfo } from '@deck.gl/geo-layers';
|
|
|
3
3
|
import type { Feature, Geometry } from 'geojson';
|
|
4
4
|
import { Accessor, DefaultProps, CompositeLayer, Layer, LayersList, PickingInfo } from '@deck.gl/core';
|
|
5
5
|
import { ClusteredFeaturePropertiesT, ParsedQuadbinCell, ParsedQuadbinTile } from "./cluster-utils.js";
|
|
6
|
-
import type { TilejsonResult } from
|
|
6
|
+
import type { TilejsonResult } from '@carto/api-client';
|
|
7
7
|
export type ClusterTileLayerPickingInfo<FeaturePropertiesT = {}> = TileLayerPickingInfo<ParsedQuadbinTile<FeaturePropertiesT>, PickingInfo<Feature<Geometry, FeaturePropertiesT>>>;
|
|
8
8
|
/** All properties supported by ClusterTileLayer. */
|
|
9
9
|
export type ClusterTileLayerProps<FeaturePropertiesT = unknown> = _ClusterTileLayerProps<FeaturePropertiesT> & Omit<TileLayerProps<ParsedQuadbinTile<FeaturePropertiesT>>, 'data'>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cluster-tile-layer.d.ts","sourceRoot":"","sources":["../../src/layers/cluster-tile-layer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cluster-tile-layer.d.ts","sourceRoot":"","sources":["../../src/layers/cluster-tile-layer.ts"],"names":[],"mappings":"AAIA,OAAO,EAAe,iBAAiB,EAAC,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAGL,cAAc,EACd,oBAAoB,EACrB,MAAM,qBAAqB,CAAC;AAI7B,OAAO,KAAK,EAAC,OAAO,EAAE,QAAQ,EAAC,MAAM,SAAS,CAAC;AAE/C,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,cAAc,EAGd,KAAK,EACL,UAAU,EACV,WAAW,EACZ,MAAM,eAAe,CAAC;AAEvB,OAAO,EAEL,2BAA2B,EAI3B,iBAAiB,EACjB,iBAAiB,EAClB,2BAAwB;AAMzB,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,mBAAmB,CAAC;AAgBtD,MAAM,MAAM,2BAA2B,CAAC,kBAAkB,GAAG,EAAE,IAAI,oBAAoB,CACrF,iBAAiB,CAAC,kBAAkB,CAAC,EACrC,WAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CACnD,CAAC;AAEF,oDAAoD;AACpD,MAAM,MAAM,qBAAqB,CAAC,kBAAkB,GAAG,OAAO,IAC5D,sBAAsB,CAAC,kBAAkB,CAAC,GACxC,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AAExE,4CAA4C;AAC5C,KAAK,sBAAsB,CAAC,kBAAkB,IAAI,IAAI,CACpD,iBAAiB,CAAC,2BAA2B,CAAC,kBAAkB,CAAC,CAAC,EAClE,MAAM,CACP,GAAG;IACF,IAAI,EAAE,IAAI,GAAG,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAEtD;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,QAAQ,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAEhF;;;;OAIG;IACH,SAAS,CAAC,EAAE,QAAQ,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC,CAAC;CACrE,CAAC;AAkHF,MAAM,CAAC,OAAO,OAAO,gBAAgB,CACnC,kBAAkB,GAAG,GAAG,EACxB,UAAU,SAAS,EAAE,GAAG,EAAE,CAC1B,SAAQ,cAAc,CAAC,UAAU,GAAG,QAAQ,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,CAAC,CAAC;IACzF,MAAM,CAAC,SAAS,SAAsB;IACtC,MAAM,CAAC,YAAY,+CAAgB;IAEnC,cAAc,IAAI,GAAG;IAQrB,YAAY,IAAI,KAAK,GAAG,IAAI,GAAG,UAAU;CAiB1C"}
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
// deck.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright (c) vis.gl contributors
|
|
1
4
|
import { GeoJsonLayer } from '@deck.gl/layers';
|
|
2
5
|
import { TileLayer } from '@deck.gl/geo-layers';
|
|
3
6
|
import { registerLoaders } from '@loaders.gl/core';
|
|
@@ -26,6 +29,7 @@ class ClusterGeoJsonLayer extends TileLayer {
|
|
|
26
29
|
super.initializeState();
|
|
27
30
|
this.state.aggregationCache = new WeakMap();
|
|
28
31
|
}
|
|
32
|
+
// eslint-disable-next-line max-statements
|
|
29
33
|
renderLayers() {
|
|
30
34
|
const visibleTiles = this.state.tileset?.tiles.filter((tile) => {
|
|
31
35
|
return tile.isLoaded && tile.content && this.state.tileset.isTileVisible(tile);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cluster-utils.d.ts","sourceRoot":"","sources":["../../src/layers/cluster-utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cluster-utils.d.ts","sourceRoot":"","sources":["../../src/layers/cluster-utils.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,aAAa,IAAI,YAAY,EAAC,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAC,QAAQ,EAAM,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAC,uBAAuB,EAAC,MAAM,oBAAoB,CAAC;AAE3D,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,SAAS,GAAG,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;AAC9E,MAAM,MAAM,qBAAqB,CAAC,kBAAkB,IAAI;IACtD,WAAW,EAAE,WAAW,CAAC;IACzB,IAAI,EAAE,MAAM,kBAAkB,CAAC;CAChC,EAAE,CAAC;AACJ,MAAM,MAAM,2BAA2B,CAAC,kBAAkB,IAAI,kBAAkB,GAAG;IACjF,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC5B,CAAC;AACF,MAAM,MAAM,iBAAiB,CAAC,kBAAkB,IAAI;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,kBAAkB,CAAA;CAAC,CAAC;AACjG,MAAM,MAAM,iBAAiB,CAAC,kBAAkB,IAAI,iBAAiB,CAAC,kBAAkB,CAAC,EAAE,CAAC;AAE5F;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,kBAAkB,EAC9C,IAAI,EAAE,YAAY,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAC,EACzD,oBAAoB,EAAE,GAAG,CAAC,MAAM,EAAE,2BAA2B,CAAC,kBAAkB,CAAC,EAAE,CAAC,EACpF,iBAAiB,EAAE,MAAM,EACzB,UAAU,EAAE,qBAAqB,CAAC,kBAAkB,CAAC,YAAK,EAC1D,WAAW,EAAE,QAAQ,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAC9E,SAAS,EAAE,QAAQ,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC,GACjE,OAAO,CAoET;AAED,wBAAgB,4BAA4B,CAAC,kBAAkB,SAAS,EAAE,EACxE,IAAI,EAAE,YAAY,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAC,GACxD,qBAAqB,CAAC,kBAAkB,CAAC,CAa3C;AAED,wBAAgB,uBAAuB,CAAC,kBAAkB,EACxD,IAAI,EAAE,2BAA2B,CAAC,kBAAkB,CAAC,EAAE,EACvD,UAAU,EAAE,qBAAqB,CAAC,kBAAkB,CAAC;SAEM,MAAM;SAAO,MAAM;GAY/E;AAWD,KAAK,gCAAgC,CAAC,kBAAkB,IAAI,IAAI,CAC9D,uBAAuB,EACvB,QAAQ,CACT,GAAG;IACF,MAAM,EAAE,uBAAuB,CAAC,QAAQ,CAAC,GAAG;QAC1C,UAAU,CAAC,EAAE;YACX,KAAK,EAAE,MAAM,CAAC,MAAM,kBAAkB,EAAE;gBAAC,GAAG,EAAE,MAAM,CAAC;gBAAC,GAAG,EAAE,MAAM,CAAA;aAAC,CAAC,CAAC;SACrE,CAAC;KACH,CAAC;CACH,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,kBAAkB,EACjD,IAAI,EAAE,2BAA2B,CAAC,kBAAkB,CAAC,EAAE,GACtD,gCAAgC,CAAC,kBAAkB,CAAC,CA8BtD"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { CompositeLayer, CompositeLayerProps,
|
|
1
|
+
import { CompositeLayer, CompositeLayerProps, DefaultProps } from '@deck.gl/core';
|
|
2
2
|
import { H3HexagonLayer, H3HexagonLayerProps } from '@deck.gl/geo-layers';
|
|
3
|
-
import { SpatialIndexTileLayerProps } from "./spatial-index-tile-layer.js";
|
|
4
|
-
import type { TilejsonResult } from
|
|
3
|
+
import SpatialIndexTileLayer, { SpatialIndexTileLayerProps } from "./spatial-index-tile-layer.js";
|
|
4
|
+
import type { TilejsonResult } from '@carto/api-client';
|
|
5
5
|
export declare const renderSubLayers: (props: any) => H3HexagonLayer<any, {
|
|
6
6
|
getHexagon: (d: any) => any;
|
|
7
7
|
centerHexagon: any;
|
|
@@ -18,7 +18,7 @@ export default class H3TileLayer<DataT = any, ExtraPropsT extends {} = {}> exten
|
|
|
18
18
|
static defaultProps: DefaultProps<H3TileLayerProps<unknown>>;
|
|
19
19
|
initializeState(): void;
|
|
20
20
|
getLoadOptions(): any;
|
|
21
|
-
renderLayers():
|
|
21
|
+
renderLayers(): SpatialIndexTileLayer | null;
|
|
22
22
|
}
|
|
23
23
|
export {};
|
|
24
24
|
//# sourceMappingURL=h3-tile-layer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"h3-tile-layer.d.ts","sourceRoot":"","sources":["../../src/layers/h3-tile-layer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"h3-tile-layer.d.ts","sourceRoot":"","sources":["../../src/layers/h3-tile-layer.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,cAAc,EAAE,mBAAmB,EAAqB,YAAY,EAAC,MAAM,eAAe,CAAC;AACnG,OAAO,EAAC,cAAc,EAAE,mBAAmB,EAAC,MAAM,qBAAqB,CAAC;AAExE,OAAO,qBAAqB,EAAE,EAAC,0BAA0B,EAAC,sCAAmC;AAC7F,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,mBAAmB,CAAC;AAItD,eAAO,MAAM,eAAe;;;;SAU3B,CAAC;AAOF,+CAA+C;AAC/C,MAAM,MAAM,gBAAgB,CAAC,KAAK,GAAG,OAAO,IAAI,iBAAiB,CAAC,KAAK,CAAC,GAAG,mBAAmB,CAAC;AAE/F,uCAAuC;AACvC,KAAK,iBAAiB,CAAC,KAAK,IAAI,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,GACtE,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,GAAG;IAChD,IAAI,EAAE,IAAI,GAAG,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;CACvD,CAAC;AAEJ,MAAM,CAAC,OAAO,OAAO,WAAW,CAAC,KAAK,GAAG,GAAG,EAAE,WAAW,SAAS,EAAE,GAAG,EAAE,CAAE,SAAQ,cAAc,CAC/F,WAAW,GAAG,QAAQ,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CACjD;IACC,MAAM,CAAC,SAAS,SAAiB;IACjC,MAAM,CAAC,YAAY,0CAAgB;IAEnC,eAAe,IAAI,IAAI;IAIvB,cAAc,IAAI,GAAG;IAQrB,YAAY,IAAI,qBAAqB,GAAG,IAAI;CAoC7C"}
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
// deck.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright (c) vis.gl contributors
|
|
1
4
|
import { CompositeLayer } from '@deck.gl/core';
|
|
2
5
|
import { H3HexagonLayer } from '@deck.gl/geo-layers';
|
|
3
6
|
import H3Tileset2D, { getHexagonResolution } from "./h3-tileset-2d.js";
|
|
@@ -44,22 +47,20 @@ class H3TileLayer extends CompositeLayer {
|
|
|
44
47
|
if (this.props.maxZoom) {
|
|
45
48
|
maxresolution = Math.min(maxresolution, getHexagonResolution({ zoom: this.props.maxZoom, latitude: 0 }, this.props.tileSize));
|
|
46
49
|
}
|
|
50
|
+
const SubLayerClass = this.getSubLayerClass('spatial-index-tile', SpatialIndexTileLayer);
|
|
47
51
|
// The naming is unfortunate, but minZoom & maxZoom in the context
|
|
48
52
|
// of a Tileset2D refer to the resolution levels, not the Mercator zooms
|
|
49
|
-
return
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
loadOptions: this.getLoadOptions()
|
|
61
|
-
})
|
|
62
|
-
];
|
|
53
|
+
return new SubLayerClass(this.props, {
|
|
54
|
+
id: `h3-tile-layer-${this.props.id}`,
|
|
55
|
+
data,
|
|
56
|
+
// TODO: Tileset2D should be generic over TileIndex type
|
|
57
|
+
TilesetClass: H3Tileset2D,
|
|
58
|
+
renderSubLayers,
|
|
59
|
+
// minZoom and maxZoom are H3 resolutions, however we must use this naming as that is what the Tileset2D class expects
|
|
60
|
+
minZoom: minresolution,
|
|
61
|
+
maxZoom: maxresolution,
|
|
62
|
+
loadOptions: this.getLoadOptions()
|
|
63
|
+
});
|
|
63
64
|
}
|
|
64
65
|
}
|
|
65
66
|
H3TileLayer.layerName = 'H3TileLayer';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"h3-tileset-2d.d.ts","sourceRoot":"","sources":["../../src/layers/h3-tileset-2d.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"h3-tileset-2d.d.ts","sourceRoot":"","sources":["../../src/layers/h3-tileset-2d.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,UAAU,IAAI,SAAS,EAAE,cAAc,EAAC,MAAM,qBAAqB,CAAC;AAa5E,MAAM,MAAM,WAAW,GAAG;IAAC,CAAC,EAAE,MAAM,CAAA;CAAC,CAAC;AA6EtC,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAC,EAC1C,QAAQ,EAAE,MAAM,GACf,MAAM,CASR;AAED,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,SAAS;IAChD;;;;OAIG;IAEH,cAAc,CAAC,EAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAC;;;;KAAA,GAAG,WAAW,EAAE;IA2B3D,SAAS,CAAC,EAAC,CAAC,EAAC,EAAE,WAAW,GAAG,MAAM;IAKnC,eAAe,CAAC,EAAC,CAAC,EAAC,EAAE,WAAW;;;IAKhC,WAAW,CAAC,EAAC,CAAC,EAAC,EAAE,WAAW,GAAG,MAAM;IAKrC,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW;CAKhD"}
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
// deck.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright (c) vis.gl contributors
|
|
1
4
|
import { _Tileset2D as Tileset2D } from '@deck.gl/geo-layers';
|
|
2
5
|
import { polygonToCells, latLngToCell, getResolution, cellToBoundary, cellToParent, gridDisk, edgeLength, UNITS, originToDirectedEdges } from 'h3-js';
|
|
3
6
|
const MAX_LATITUDE = 85.051128;
|
|
@@ -1,14 +1,21 @@
|
|
|
1
|
-
import { Accessor, CompositeLayer, CompositeLayerProps, DefaultProps, Layer } from '@deck.gl/core';
|
|
1
|
+
import { Accessor, Color, CompositeLayer, CompositeLayerProps, DefaultProps, Layer, UpdateParameters } from '@deck.gl/core';
|
|
2
2
|
import { HeatmapProps } from "./heatmap.js";
|
|
3
3
|
import { QuadbinTileLayerProps } from "./quadbin-tile-layer.js";
|
|
4
|
-
import { TilejsonResult } from
|
|
4
|
+
import { TilejsonResult } from '@carto/api-client';
|
|
5
5
|
import { _Tile2DHeader as Tile2DHeader } from '@deck.gl/geo-layers';
|
|
6
|
+
import { Texture } from '@luma.gl/core';
|
|
6
7
|
/** All properties supported by HeatmapTileLayer. */
|
|
7
8
|
export type HeatmapTileLayerProps<DataT = unknown> = _HeatmapTileLayerProps<DataT> & CompositeLayerProps & {
|
|
8
9
|
data: null | TilejsonResult | Promise<TilejsonResult>;
|
|
9
10
|
};
|
|
10
11
|
/** Properties added by HeatmapTileLayer. */
|
|
11
12
|
type _HeatmapTileLayerProps<DataT> = QuadbinTileLayerProps<DataT> & HeatmapProps & {
|
|
13
|
+
/**
|
|
14
|
+
* Specified as an array of colors [color1, color2, ...].
|
|
15
|
+
*
|
|
16
|
+
* @default `6-class YlOrRd` - [colorbrewer](http://colorbrewer2.org/#type=sequential&scheme=YlOrRd&n=6)
|
|
17
|
+
*/
|
|
18
|
+
colorRange: Color[];
|
|
12
19
|
/**
|
|
13
20
|
* The weight of each object.
|
|
14
21
|
*
|
|
@@ -22,6 +29,7 @@ declare class HeatmapTileLayer<DataT = any, ExtraProps extends {} = {}> extends
|
|
|
22
29
|
static layerName: string;
|
|
23
30
|
static defaultProps: DefaultProps<HeatmapTileLayerProps<unknown>>;
|
|
24
31
|
state: {
|
|
32
|
+
colorTexture?: Texture;
|
|
25
33
|
isLoaded: boolean;
|
|
26
34
|
tiles: Set<Tile2DHeader>;
|
|
27
35
|
viewportChanged?: boolean;
|
|
@@ -30,7 +38,9 @@ declare class HeatmapTileLayer<DataT = any, ExtraProps extends {} = {}> extends
|
|
|
30
38
|
shouldUpdateState({ changeFlags }: {
|
|
31
39
|
changeFlags: any;
|
|
32
40
|
}): boolean;
|
|
41
|
+
updateState(opts: UpdateParameters<this>): void;
|
|
33
42
|
renderLayers(): Layer;
|
|
43
|
+
_updateColorTexture(opts: any): void;
|
|
34
44
|
}
|
|
35
45
|
export default HeatmapTileLayer;
|
|
36
46
|
//# sourceMappingURL=heatmap-tile-layer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"heatmap-tile-layer.d.ts","sourceRoot":"","sources":["../../src/layers/heatmap-tile-layer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"heatmap-tile-layer.d.ts","sourceRoot":"","sources":["../../src/layers/heatmap-tile-layer.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,QAAQ,EACR,KAAK,EACL,cAAc,EACd,mBAAmB,EACnB,YAAY,EACZ,KAAK,EACL,gBAAgB,EACjB,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAC,YAAY,EAAU,qBAAkB;AAEhD,OAAyB,EAAC,qBAAqB,EAAC,gCAA6B;AAE7E,OAAO,EAAC,cAAc,EAAC,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAC,aAAa,IAAI,YAAY,EAAC,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAC,OAAO,EAAe,MAAM,eAAe,CAAC;AAuHpD,oDAAoD;AACpD,MAAM,MAAM,qBAAqB,CAAC,KAAK,GAAG,OAAO,IAAI,sBAAsB,CAAC,KAAK,CAAC,GAChF,mBAAmB,GAAG;IACpB,IAAI,EAAE,IAAI,GAAG,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;CACvD,CAAC;AAEJ,4CAA4C;AAC5C,KAAK,sBAAsB,CAAC,KAAK,IAAI,qBAAqB,CAAC,KAAK,CAAC,GAC/D,YAAY,GAAG;IACb;;;;OAIG;IACH,UAAU,EAAE,KAAK,EAAE,CAAC;IAEpB;;;;OAIG;IACH,SAAS,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAEpC,8DAA8D;IAC9D,kBAAkB,CAAC,EAAE,CAAC,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;CAC5D,CAAC;AAEJ,cAAM,gBAAgB,CAAC,KAAK,GAAG,GAAG,EAAE,UAAU,SAAS,EAAE,GAAG,EAAE,CAAE,SAAQ,cAAc,CACpF,UAAU,GAAG,QAAQ,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CACrD;IACC,MAAM,CAAC,SAAS,SAAsB;IACtC,MAAM,CAAC,YAAY,+CAAgB;IAEnC,KAAK,EAAG;QACN,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,QAAQ,EAAE,OAAO,CAAC;QAClB,KAAK,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC;QACzB,eAAe,CAAC,EAAE,OAAO,CAAC;KAC3B,CAAC;IACF,eAAe;IAQf,iBAAiB,CAAC,EAAC,WAAW,EAAC;;KAAA,GAAG,OAAO;IAMzC,WAAW,CAAC,IAAI,EAAE,gBAAgB,CAAC,IAAI,CAAC;IAQxC,YAAY,IAAI,KAAK;IAiHrB,mBAAmB,CAAC,IAAI,KAAA;CAoBzB;AAED,eAAe,gBAAgB,CAAC"}
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
// deck.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright (c) vis.gl contributors
|
|
1
4
|
import { getResolution } from 'quadbin';
|
|
2
5
|
import { CompositeLayer } from '@deck.gl/core';
|
|
3
6
|
import { SolidPolygonLayer } from '@deck.gl/layers';
|
|
@@ -5,6 +8,24 @@ import { heatmap } from "./heatmap.js";
|
|
|
5
8
|
import { RTTModifier, PostProcessModifier } from "./post-process-utils.js";
|
|
6
9
|
import QuadbinTileLayer from "./quadbin-tile-layer.js";
|
|
7
10
|
import { TilejsonPropType } from "./utils.js";
|
|
11
|
+
const defaultColorRange = [
|
|
12
|
+
[255, 255, 178],
|
|
13
|
+
[254, 217, 118],
|
|
14
|
+
[254, 178, 76],
|
|
15
|
+
[253, 141, 60],
|
|
16
|
+
[240, 59, 32],
|
|
17
|
+
[189, 0, 38]
|
|
18
|
+
];
|
|
19
|
+
const TEXTURE_PROPS = {
|
|
20
|
+
format: 'rgba8unorm',
|
|
21
|
+
mipmaps: false,
|
|
22
|
+
sampler: {
|
|
23
|
+
minFilter: 'linear',
|
|
24
|
+
magFilter: 'linear',
|
|
25
|
+
addressModeU: 'clamp-to-edge',
|
|
26
|
+
addressModeV: 'clamp-to-edge'
|
|
27
|
+
}
|
|
28
|
+
};
|
|
8
29
|
/**
|
|
9
30
|
* Computes the unit density (inverse of cell area)
|
|
10
31
|
*/
|
|
@@ -12,21 +33,45 @@ function unitDensityForCell(cell) {
|
|
|
12
33
|
const cellResolution = Number(getResolution(cell));
|
|
13
34
|
return Math.pow(4.0, cellResolution);
|
|
14
35
|
}
|
|
36
|
+
/**
|
|
37
|
+
* Converts a colorRange array to a flat array with 4 components per color
|
|
38
|
+
*/
|
|
39
|
+
function colorRangeToFlatArray(colorRange) {
|
|
40
|
+
const flatArray = new Uint8Array(colorRange.length * 4);
|
|
41
|
+
let index = 0;
|
|
42
|
+
for (let i = 0; i < colorRange.length; i++) {
|
|
43
|
+
const color = colorRange[i];
|
|
44
|
+
flatArray[index++] = color[0];
|
|
45
|
+
flatArray[index++] = color[1];
|
|
46
|
+
flatArray[index++] = color[2];
|
|
47
|
+
flatArray[index++] = Number.isFinite(color[3]) ? color[3] : 255;
|
|
48
|
+
}
|
|
49
|
+
return flatArray;
|
|
50
|
+
}
|
|
51
|
+
const uniformBlock = `\
|
|
52
|
+
uniform densityUniforms {
|
|
53
|
+
float factor;
|
|
54
|
+
} density;
|
|
55
|
+
`;
|
|
56
|
+
const densityUniforms = {
|
|
57
|
+
name: 'density',
|
|
58
|
+
vs: uniformBlock,
|
|
59
|
+
uniformTypes: {
|
|
60
|
+
factor: 'f32'
|
|
61
|
+
}
|
|
62
|
+
};
|
|
15
63
|
// Modified polygon layer to draw offscreen and output value expected by heatmap
|
|
16
64
|
class RTTSolidPolygonLayer extends RTTModifier(SolidPolygonLayer) {
|
|
17
65
|
getShaders(type) {
|
|
18
66
|
const shaders = super.getShaders(type);
|
|
19
67
|
shaders.inject = {
|
|
20
|
-
'vs:#decl': `
|
|
21
|
-
uniform float densityFactor;
|
|
22
|
-
`,
|
|
23
68
|
'vs:#main-end': `
|
|
24
69
|
// Value from getWeight accessor
|
|
25
70
|
float weight = elevations;
|
|
26
71
|
|
|
27
72
|
// Keep "power" delivered to screen constant when tiles update
|
|
28
|
-
// by outputting normalized density
|
|
29
|
-
weight *=
|
|
73
|
+
// by outputting normalized density
|
|
74
|
+
weight *= density.factor;
|
|
30
75
|
|
|
31
76
|
// Pack float into 3 channels to pass to heatmap shader
|
|
32
77
|
// SCALE value important, as we don't want to saturate
|
|
@@ -39,14 +84,17 @@ uniform float densityFactor;
|
|
|
39
84
|
vColor = vec4(mod(vec3(weight, floor(weight / SHIFT.yz)), 256.0), 255.0) / 255.0;
|
|
40
85
|
`
|
|
41
86
|
};
|
|
87
|
+
shaders.modules = [...shaders.modules, densityUniforms];
|
|
42
88
|
return shaders;
|
|
43
89
|
}
|
|
44
90
|
draw(opts) {
|
|
45
91
|
const cell = this.props.data[0];
|
|
46
92
|
const maxDensity = this.props.elevationScale;
|
|
47
|
-
const
|
|
93
|
+
const densityProps = {
|
|
94
|
+
factor: unitDensityForCell(cell.id) / maxDensity
|
|
95
|
+
};
|
|
48
96
|
for (const model of this.state.models) {
|
|
49
|
-
model.
|
|
97
|
+
model.shaderInputs.setProps({ density: densityProps });
|
|
50
98
|
}
|
|
51
99
|
super.draw(opts);
|
|
52
100
|
}
|
|
@@ -59,6 +107,7 @@ const defaultProps = {
|
|
|
59
107
|
getWeight: { type: 'accessor', value: 1 },
|
|
60
108
|
onMaxDensityChange: { type: 'function', optional: true, value: null },
|
|
61
109
|
colorDomain: { type: 'array', value: [0, 1] },
|
|
110
|
+
colorRange: defaultColorRange,
|
|
62
111
|
intensity: { type: 'number', value: 1 },
|
|
63
112
|
radiusPixels: { type: 'number', min: 0, max: 100, value: 20 }
|
|
64
113
|
};
|
|
@@ -75,8 +124,15 @@ class HeatmapTileLayer extends CompositeLayer {
|
|
|
75
124
|
this.setState({ viewportChanged });
|
|
76
125
|
return changeFlags.somethingChanged;
|
|
77
126
|
}
|
|
127
|
+
updateState(opts) {
|
|
128
|
+
const { props, oldProps } = opts;
|
|
129
|
+
super.updateState(opts);
|
|
130
|
+
if (props.colorRange !== oldProps.colorRange) {
|
|
131
|
+
this._updateColorTexture(opts);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
78
134
|
renderLayers() {
|
|
79
|
-
const { data, getWeight, colorDomain,
|
|
135
|
+
const { data, getWeight, colorDomain, intensity, radiusPixels, _subLayerProps, updateTriggers, onMaxDensityChange, onViewportLoad, onTileLoad, onTileUnload, ...tileLayerProps } = this.props;
|
|
80
136
|
// Inject modified polygon layer as sublayer into TileLayer
|
|
81
137
|
const subLayerProps = {
|
|
82
138
|
..._subLayerProps,
|
|
@@ -116,11 +172,11 @@ class HeatmapTileLayer extends CompositeLayer {
|
|
|
116
172
|
getElevation: getWeight,
|
|
117
173
|
elevationScale: maxDensity,
|
|
118
174
|
colorDomain,
|
|
119
|
-
colorRange,
|
|
120
175
|
radiusPixels,
|
|
121
176
|
intensity,
|
|
122
177
|
_subLayerProps: subLayerProps,
|
|
123
178
|
refinementStrategy: 'no-overlap',
|
|
179
|
+
colorTexture: this.state.colorTexture,
|
|
124
180
|
// Disable line rendering
|
|
125
181
|
extruded: false,
|
|
126
182
|
stroked: false,
|
|
@@ -159,6 +215,26 @@ class HeatmapTileLayer extends CompositeLayer {
|
|
|
159
215
|
transitions: { elevationScale: { type: 'spring', stiffness: 0.3, damping: 0.5 } }
|
|
160
216
|
}));
|
|
161
217
|
}
|
|
218
|
+
_updateColorTexture(opts) {
|
|
219
|
+
const { colorRange } = opts.props;
|
|
220
|
+
let { colorTexture } = this.state;
|
|
221
|
+
const colors = colorRangeToFlatArray(colorRange);
|
|
222
|
+
if (colorTexture && colorTexture?.width === colorRange.length) {
|
|
223
|
+
// TODO(v9): Unclear whether `setSubImageData` is a public API, or what to use if not.
|
|
224
|
+
colorTexture.setSubImageData({ data: colors });
|
|
225
|
+
}
|
|
226
|
+
else {
|
|
227
|
+
colorTexture?.destroy();
|
|
228
|
+
// @ts-ignore TODO v9.1
|
|
229
|
+
colorTexture = this.context.device.createTexture({
|
|
230
|
+
...TEXTURE_PROPS,
|
|
231
|
+
data: colors,
|
|
232
|
+
width: colorRange.length,
|
|
233
|
+
height: 1
|
|
234
|
+
});
|
|
235
|
+
}
|
|
236
|
+
this.setState({ colorTexture });
|
|
237
|
+
}
|
|
162
238
|
}
|
|
163
239
|
HeatmapTileLayer.layerName = 'HeatmapTileLayer';
|
|
164
240
|
HeatmapTileLayer.defaultProps = defaultProps;
|
package/dist/layers/heatmap.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { Color } from '@deck.gl/core';
|
|
1
|
+
import { Texture } from '@luma.gl/core';
|
|
3
2
|
export type HeatmapProps = {
|
|
4
3
|
/**
|
|
5
4
|
* Radius of the heatmap blur in pixels, to which the weight of a cell is distributed.
|
|
@@ -8,35 +7,83 @@ export type HeatmapProps = {
|
|
|
8
7
|
*/
|
|
9
8
|
radiusPixels?: number;
|
|
10
9
|
/**
|
|
11
|
-
* Controls how weight values are mapped to the `
|
|
10
|
+
* Controls how weight values are mapped to the colors in `colorTexture`, as an array of two numbers [`minValue`, `maxValue`].
|
|
12
11
|
*
|
|
13
12
|
* @default [0, 1]
|
|
14
13
|
*/
|
|
15
14
|
colorDomain?: [number, number];
|
|
16
|
-
/**
|
|
17
|
-
* Specified as an array of colors [color1, color2, ...].
|
|
18
|
-
*
|
|
19
|
-
* @default `6-class YlOrRd` - [colorbrewer](http://colorbrewer2.org/#type=sequential&scheme=YlOrRd&n=6)
|
|
20
|
-
*/
|
|
21
|
-
colorRange: Color[];
|
|
22
15
|
/**
|
|
23
16
|
* Value that is multiplied with the total weight at a pixel to obtain the final weight. A value larger than 1 biases the output color towards the higher end of the spectrum, and a value less than 1 biases the output color towards the lower end of the spectrum.
|
|
24
17
|
*/
|
|
25
18
|
intensity?: number;
|
|
19
|
+
/**
|
|
20
|
+
* Color LUT for color gradient
|
|
21
|
+
*/
|
|
22
|
+
colorTexture: Texture;
|
|
26
23
|
opacity: number;
|
|
27
24
|
};
|
|
28
|
-
|
|
29
|
-
delta
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
25
|
+
type PassProps = {
|
|
26
|
+
delta: [number, number];
|
|
27
|
+
};
|
|
28
|
+
export declare const heatmap: {
|
|
29
|
+
readonly name: "heatmap";
|
|
30
|
+
readonly uniformPropTypes: {
|
|
31
|
+
readonly colorDomain: {
|
|
32
|
+
readonly value: readonly [0, 1];
|
|
33
|
+
};
|
|
34
|
+
readonly delta: {
|
|
35
|
+
readonly value: readonly [0, 1];
|
|
36
|
+
};
|
|
37
|
+
readonly intensity: {
|
|
38
|
+
readonly value: 1;
|
|
39
|
+
readonly min: 0.1;
|
|
40
|
+
readonly max: 10;
|
|
41
|
+
};
|
|
42
|
+
readonly opacity: {
|
|
43
|
+
readonly value: 1;
|
|
44
|
+
readonly min: 0;
|
|
45
|
+
readonly max: 1;
|
|
46
|
+
};
|
|
47
|
+
readonly radiusPixels: {
|
|
48
|
+
readonly value: 20;
|
|
49
|
+
readonly min: 0;
|
|
50
|
+
readonly softMax: 100;
|
|
51
|
+
};
|
|
52
|
+
};
|
|
53
|
+
readonly uniformTypes: {
|
|
54
|
+
readonly colorDomain: "vec2<f32>";
|
|
55
|
+
readonly delta: "vec2<f32>";
|
|
56
|
+
readonly intensity: "f32";
|
|
57
|
+
readonly opacity: "f32";
|
|
58
|
+
readonly radiusPixels: "f32";
|
|
59
|
+
};
|
|
60
|
+
readonly getUniforms: (opts: Partial<HeatmapProps & PassProps>) => {
|
|
61
|
+
colorDomain?: undefined;
|
|
62
|
+
colorTexture?: undefined;
|
|
63
|
+
delta?: undefined;
|
|
64
|
+
intensity?: undefined;
|
|
65
|
+
opacity?: undefined;
|
|
66
|
+
radiusPixels?: undefined;
|
|
67
|
+
} | {
|
|
68
|
+
colorDomain: [number, number];
|
|
69
|
+
colorTexture: Texture | undefined;
|
|
70
|
+
delta: [number, number];
|
|
71
|
+
intensity: number;
|
|
72
|
+
opacity: number;
|
|
73
|
+
radiusPixels: number;
|
|
74
|
+
};
|
|
75
|
+
readonly fs: "uniform heatmapUniforms {\n vec2 colorDomain;\n vec2 delta;\n float intensity;\n float opacity;\n float radiusPixels;\n} heatmap;\n\nuniform sampler2D colorTexture;\n\nvec3 colorGradient(float value) {\n return texture(colorTexture, vec2(value, 0.5)).rgb;\n}\n\nconst vec3 SHIFT = vec3(1.0, 256.0, 256.0 * 256.0);\nconst float MAX_VAL = SHIFT.z * 255.0;\nconst float SCALE = MAX_VAL / 8.0;\nvec4 pack(float value) {\n return vec4(mod(vec3(value, floor(value / SHIFT.yz)), 256.0), 255.0) / 255.0;\n}\nfloat unpack(vec3 color) {\n return 255.0 * dot(color, SHIFT);\n}\n\nvec4 heatmap_sampleColor(sampler2D source, vec2 texSize, vec2 texCoord) {\n bool firstPass = (heatmap.delta.y < 0.5);\n float accumulator = 0.0;\n\n // Controls quality of heatmap, larger values increase quality at expense of performance\n float SUPPORT = clamp(heatmap.radiusPixels / 2.0, 8.0, 32.0);\n\n // Gaussian normalization parameters\n float sigma = SUPPORT / 3.0;\n float a = -0.5 / (sigma * sigma);\n float w0 = 0.3989422804014327 / sigma; // 1D normalization\n for (float t = -SUPPORT; t <= SUPPORT; t++) {\n vec2 percent = (t * heatmap.delta - 0.5) / SUPPORT;\n vec2 delta = percent * heatmap.radiusPixels / texSize;\n vec4 offsetColor = texture(source, texCoord + delta);\n\n // Unpack float\n float value = unpack(offsetColor.rgb);\n\n // Gaussian\n float weight = w0 * exp(a * t * t);\n \n accumulator += value * weight;\n }\n\n if (firstPass) {\n return pack(accumulator);\n }\n\n // Undo scaling to obtain normalized density\n float density = 10.0 * heatmap.intensity * accumulator / SCALE;\n \n // Domain also in normalized density units\n vec2 domain = heatmap.colorDomain;\n\n // Apply domain\n float f = (density - domain[0]) / (domain[1] - domain[0]);\n\n // sqrt/log scaling??\n // float f = (log(density) - log(domain[0] + 1.0)) / (log(domain[1] + 1.0) - log(domain[0] + 1.0));\n // f = sqrt(f);\n\n // Color map\n vec4 color = vec4(0.0);\n color.rgb = colorGradient(f);\n\n color.a = smoothstep(0.0, 0.1, f);\n color.a = pow(color.a, 1.0 / 2.2);\n color.a *= heatmap.opacity;\n\n return color;\n}\n";
|
|
76
|
+
readonly passes: [{
|
|
77
|
+
readonly sampler: true;
|
|
78
|
+
readonly uniforms: {
|
|
79
|
+
readonly delta: [1, 0];
|
|
80
|
+
};
|
|
81
|
+
}, {
|
|
82
|
+
readonly sampler: true;
|
|
83
|
+
readonly uniforms: {
|
|
84
|
+
readonly delta: [0, 1];
|
|
85
|
+
};
|
|
86
|
+
}];
|
|
40
87
|
};
|
|
41
|
-
export
|
|
88
|
+
export {};
|
|
42
89
|
//# sourceMappingURL=heatmap.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"heatmap.d.ts","sourceRoot":"","sources":["../../src/layers/heatmap.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"heatmap.d.ts","sourceRoot":"","sources":["../../src/layers/heatmap.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AA0FtC,MAAM,MAAM,YAAY,GAAG;IACzB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,YAAY,EAAE,OAAO,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,KAAK,SAAS,GAAG;IACf,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2CqC,CAAC"}
|