@antv/l7-layers 2.9.14 → 2.9.15
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/LICENSE.md +1 -1
- package/es/core/BaseLayer.d.ts +2 -4
- package/es/core/BaseLayer.js +21 -47
- package/es/core/BaseLayer.js.map +1 -1
- package/es/core/BaseModel.d.ts +1 -2
- package/es/core/BaseModel.js +0 -3
- package/es/core/BaseModel.js.map +1 -1
- package/es/core/LayerGroup.d.ts +9 -0
- package/es/{tile/tileFactory/rasterDataLayer.js → core/LayerGroup.js} +32 -39
- package/es/core/LayerGroup.js.map +1 -0
- package/es/core/interface.d.ts +1 -14
- package/es/core/interface.js.map +1 -1
- package/es/image/models/image.js.map +1 -1
- package/es/line/index.d.ts +1 -1
- package/es/line/index.js +1 -13
- package/es/line/index.js.map +1 -1
- package/es/line/models/index.d.ts +1 -1
- package/es/line/models/index.js +1 -9
- package/es/line/models/index.js.map +1 -1
- package/es/plugins/DataMappingPlugin.js +1 -1
- package/es/plugins/DataMappingPlugin.js.map +1 -1
- package/es/plugins/DataSourcePlugin.js +6 -7
- package/es/plugins/DataSourcePlugin.js.map +1 -1
- package/es/plugins/FeatureScalePlugin.js +9 -35
- package/es/plugins/FeatureScalePlugin.js.map +1 -1
- package/es/plugins/ShaderUniformPlugin.js +1 -3
- package/es/plugins/ShaderUniformPlugin.js.map +1 -1
- package/es/point/index.d.ts +1 -1
- package/es/point/index.js +2 -10
- package/es/point/index.js.map +1 -1
- package/es/point/models/extrude.d.ts +1 -0
- package/es/point/models/extrude.js +10 -2
- package/es/point/models/extrude.js.map +1 -1
- package/es/point/models/fill.d.ts +1 -8
- package/es/point/models/fill.js +75 -55
- package/es/point/models/fill.js.map +1 -1
- package/es/point/models/index.d.ts +1 -1
- package/es/point/models/index.js +1 -9
- package/es/point/models/index.js.map +1 -1
- package/es/point/models/radar.js +6 -2
- package/es/point/models/radar.js.map +1 -1
- package/es/polygon/index.js +0 -6
- package/es/polygon/index.js.map +1 -1
- package/es/polygon/models/index.d.ts +1 -1
- package/es/polygon/models/index.js +1 -5
- package/es/polygon/models/index.js.map +1 -1
- package/es/raster/index.d.ts +2 -2
- package/es/raster/index.js +4 -4
- package/es/raster/index.js.map +1 -1
- package/es/raster/models/index.js +1 -1
- package/es/raster/models/index.js.map +1 -1
- package/es/raster/models/raste-tile.d.ts +23 -0
- package/es/raster/models/raste-tile.js +285 -0
- package/es/raster/models/raste-tile.js.map +1 -0
- package/es/raster/models/raster.d.ts +0 -2
- package/es/raster/models/raster.js +12 -24
- package/es/raster/models/raster.js.map +1 -1
- package/lib/core/BaseLayer.js +20 -45
- package/lib/core/BaseLayer.js.map +1 -1
- package/lib/core/BaseModel.js +0 -2
- package/lib/core/BaseModel.js.map +1 -1
- package/lib/{tile/tileFactory/rasterDataLayer.js → core/LayerGroup.js} +32 -40
- package/lib/core/LayerGroup.js.map +1 -0
- package/lib/core/interface.js.map +1 -1
- package/lib/image/models/image.js.map +1 -1
- package/lib/line/index.js +1 -13
- package/lib/line/index.js.map +1 -1
- package/lib/line/models/index.js +1 -13
- package/lib/line/models/index.js.map +1 -1
- package/lib/plugins/DataMappingPlugin.js +1 -1
- package/lib/plugins/DataMappingPlugin.js.map +1 -1
- package/lib/plugins/DataSourcePlugin.js +6 -7
- package/lib/plugins/DataSourcePlugin.js.map +1 -1
- package/lib/plugins/FeatureScalePlugin.js +9 -35
- package/lib/plugins/FeatureScalePlugin.js.map +1 -1
- package/lib/plugins/ShaderUniformPlugin.js +1 -3
- package/lib/plugins/ShaderUniformPlugin.js.map +1 -1
- package/lib/point/index.js +2 -10
- package/lib/point/index.js.map +1 -1
- package/lib/point/models/extrude.js +11 -2
- package/lib/point/models/extrude.js.map +1 -1
- package/lib/point/models/fill.js +93 -51
- package/lib/point/models/fill.js.map +1 -1
- package/lib/point/models/index.js +1 -13
- package/lib/point/models/index.js.map +1 -1
- package/lib/point/models/radar.js +5 -1
- package/lib/point/models/radar.js.map +1 -1
- package/lib/polygon/index.js +0 -6
- package/lib/polygon/index.js.map +1 -1
- package/lib/polygon/models/index.js +1 -7
- package/lib/polygon/models/index.js.map +1 -1
- package/lib/raster/index.js +4 -4
- package/lib/raster/index.js.map +1 -1
- package/lib/raster/models/index.js +2 -2
- package/lib/raster/models/index.js.map +1 -1
- package/lib/raster/models/raste-tile.js +294 -0
- package/lib/raster/models/raste-tile.js.map +1 -0
- package/lib/raster/models/raster.js +12 -24
- package/lib/raster/models/raster.js.map +1 -1
- package/package.json +7 -9
- package/es/line/models/earthArc_3d.d.ts +0 -17
- package/es/line/models/earthArc_3d.js +0 -311
- package/es/line/models/earthArc_3d.js.map +0 -1
- package/es/line/models/half.d.ts +0 -18
- package/es/line/models/half.js +0 -244
- package/es/line/models/half.js.map +0 -1
- package/es/line/models/tile.d.ts +0 -20
- package/es/line/models/tile.js +0 -327
- package/es/line/models/tile.js.map +0 -1
- package/es/point/models/earthExtrude.d.ts +0 -24
- package/es/point/models/earthExtrude.js +0 -259
- package/es/point/models/earthExtrude.js.map +0 -1
- package/es/point/models/earthFill.d.ts +0 -20
- package/es/point/models/earthFill.js +0 -255
- package/es/point/models/earthFill.js.map +0 -1
- package/es/point/models/tile.d.ts +0 -31
- package/es/point/models/tile.js +0 -291
- package/es/point/models/tile.js.map +0 -1
- package/es/polygon/models/tile.d.ts +0 -16
- package/es/polygon/models/tile.js +0 -137
- package/es/polygon/models/tile.js.map +0 -1
- package/es/tile/interface.d.ts +0 -28
- package/es/tile/interface.js +0 -2
- package/es/tile/interface.js.map +0 -1
- package/es/tile/manager/tileConfigManager.d.ts +0 -17
- package/es/tile/manager/tileConfigManager.js +0 -123
- package/es/tile/manager/tileConfigManager.js.map +0 -1
- package/es/tile/manager/tileLayerManager.d.ts +0 -35
- package/es/tile/manager/tileLayerManager.js +0 -297
- package/es/tile/manager/tileLayerManager.js.map +0 -1
- package/es/tile/manager/tilePickerManager.d.ts +0 -21
- package/es/tile/manager/tilePickerManager.js +0 -189
- package/es/tile/manager/tilePickerManager.js.map +0 -1
- package/es/tile/models/tileModel.d.ts +0 -8
- package/es/tile/models/tileModel.js +0 -61
- package/es/tile/models/tileModel.js.map +0 -1
- package/es/tile/tileFactory/base.d.ts +0 -44
- package/es/tile/tileFactory/base.js +0 -423
- package/es/tile/tileFactory/base.js.map +0 -1
- package/es/tile/tileFactory/index.d.ts +0 -5
- package/es/tile/tileFactory/index.js +0 -30
- package/es/tile/tileFactory/index.js.map +0 -1
- package/es/tile/tileFactory/line.d.ts +0 -12
- package/es/tile/tileFactory/line.js +0 -65
- package/es/tile/tileFactory/line.js.map +0 -1
- package/es/tile/tileFactory/point.d.ts +0 -12
- package/es/tile/tileFactory/point.js +0 -65
- package/es/tile/tileFactory/point.js.map +0 -1
- package/es/tile/tileFactory/polygon.d.ts +0 -12
- package/es/tile/tileFactory/polygon.js +0 -65
- package/es/tile/tileFactory/polygon.js.map +0 -1
- package/es/tile/tileFactory/raster.d.ts +0 -12
- package/es/tile/tileFactory/raster.js +0 -61
- package/es/tile/tileFactory/raster.js.map +0 -1
- package/es/tile/tileFactory/rasterData.d.ts +0 -12
- package/es/tile/tileFactory/rasterData.js +0 -86
- package/es/tile/tileFactory/rasterData.js.map +0 -1
- package/es/tile/tileFactory/rasterDataLayer.d.ts +0 -19
- package/es/tile/tileFactory/rasterDataLayer.js.map +0 -1
- package/es/tile/tileFactory/vectorLayer.d.ts +0 -27
- package/es/tile/tileFactory/vectorLayer.js +0 -131
- package/es/tile/tileFactory/vectorLayer.js.map +0 -1
- package/es/tile/tileLayer/baseTileLayer.d.ts +0 -47
- package/es/tile/tileLayer/baseTileLayer.js +0 -409
- package/es/tile/tileLayer/baseTileLayer.js.map +0 -1
- package/es/tile/tmsTileLayer.d.ts +0 -7
- package/es/tile/tmsTileLayer.js +0 -100
- package/es/tile/tmsTileLayer.js.map +0 -1
- package/es/tile/utils.d.ts +0 -11
- package/es/tile/utils.js +0 -125
- package/es/tile/utils.js.map +0 -1
- package/lib/line/models/earthArc_3d.js +0 -328
- package/lib/line/models/earthArc_3d.js.map +0 -1
- package/lib/line/models/half.js +0 -260
- package/lib/line/models/half.js.map +0 -1
- package/lib/line/models/tile.js +0 -342
- package/lib/line/models/tile.js.map +0 -1
- package/lib/point/models/earthExtrude.js +0 -277
- package/lib/point/models/earthExtrude.js.map +0 -1
- package/lib/point/models/earthFill.js +0 -291
- package/lib/point/models/earthFill.js.map +0 -1
- package/lib/point/models/tile.js +0 -308
- package/lib/point/models/tile.js.map +0 -1
- package/lib/polygon/models/tile.js +0 -152
- package/lib/polygon/models/tile.js.map +0 -1
- package/lib/tile/interface.js +0 -2
- package/lib/tile/interface.js.map +0 -1
- package/lib/tile/manager/tileConfigManager.js +0 -134
- package/lib/tile/manager/tileConfigManager.js.map +0 -1
- package/lib/tile/manager/tileLayerManager.js +0 -305
- package/lib/tile/manager/tileLayerManager.js.map +0 -1
- package/lib/tile/manager/tilePickerManager.js +0 -195
- package/lib/tile/manager/tilePickerManager.js.map +0 -1
- package/lib/tile/models/tileModel.js +0 -73
- package/lib/tile/models/tileModel.js.map +0 -1
- package/lib/tile/tileFactory/base.js +0 -436
- package/lib/tile/tileFactory/base.js.map +0 -1
- package/lib/tile/tileFactory/index.js +0 -60
- package/lib/tile/tileFactory/index.js.map +0 -1
- package/lib/tile/tileFactory/line.js +0 -76
- package/lib/tile/tileFactory/line.js.map +0 -1
- package/lib/tile/tileFactory/point.js +0 -76
- package/lib/tile/tileFactory/point.js.map +0 -1
- package/lib/tile/tileFactory/polygon.js +0 -76
- package/lib/tile/tileFactory/polygon.js.map +0 -1
- package/lib/tile/tileFactory/raster.js +0 -74
- package/lib/tile/tileFactory/raster.js.map +0 -1
- package/lib/tile/tileFactory/rasterData.js +0 -99
- package/lib/tile/tileFactory/rasterData.js.map +0 -1
- package/lib/tile/tileFactory/rasterDataLayer.js.map +0 -1
- package/lib/tile/tileFactory/vectorLayer.js +0 -145
- package/lib/tile/tileFactory/vectorLayer.js.map +0 -1
- package/lib/tile/tileLayer/baseTileLayer.js +0 -407
- package/lib/tile/tileLayer/baseTileLayer.js.map +0 -1
- package/lib/tile/tmsTileLayer.js +0 -116
- package/lib/tile/tmsTileLayer.js.map +0 -1
- package/lib/tile/utils.js +0 -147
- package/lib/tile/utils.js.map +0 -1
package/lib/tile/utils.js
DELETED
|
@@ -1,147 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.getContainerSize = getContainerSize;
|
|
9
|
-
exports.getLayerShape = getLayerShape;
|
|
10
|
-
exports.getMaskValue = getMaskValue;
|
|
11
|
-
exports.readPixel = readPixel;
|
|
12
|
-
exports.readRasterValue = readRasterValue;
|
|
13
|
-
exports.registerLayers = registerLayers;
|
|
14
|
-
|
|
15
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
16
|
-
|
|
17
|
-
var _l7Core = require("@antv/l7-core");
|
|
18
|
-
|
|
19
|
-
var _l7Utils = require("@antv/l7-utils");
|
|
20
|
-
|
|
21
|
-
function registerLayers(parentLayer, layers) {
|
|
22
|
-
layers.map(function (layer) {
|
|
23
|
-
var container = (0, _l7Core.createLayerContainer)(parentLayer.sceneContainer);
|
|
24
|
-
layer.setContainer(container, parentLayer.sceneContainer);
|
|
25
|
-
layer.init();
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
function getLayerShape(layerType, layer) {
|
|
30
|
-
var _layerShape$scale;
|
|
31
|
-
|
|
32
|
-
var layerShape = layer.getAttribute('shape');
|
|
33
|
-
|
|
34
|
-
if (layerShape && (_layerShape$scale = layerShape.scale) !== null && _layerShape$scale !== void 0 && _layerShape$scale.field) {
|
|
35
|
-
var _layerShape$scale2;
|
|
36
|
-
|
|
37
|
-
if (((_layerShape$scale2 = layerShape.scale) === null || _layerShape$scale2 === void 0 ? void 0 : _layerShape$scale2.values) === 'text') {
|
|
38
|
-
return [layerShape.scale.field, layerShape.scale.values];
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
return layerShape.scale.field;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
switch (layerType) {
|
|
45
|
-
case 'PolygonLayer':
|
|
46
|
-
return 'fill';
|
|
47
|
-
|
|
48
|
-
case 'LineLayer':
|
|
49
|
-
return 'tileline';
|
|
50
|
-
|
|
51
|
-
case 'PointLayer':
|
|
52
|
-
return 'circle';
|
|
53
|
-
|
|
54
|
-
case 'RasterLayer':
|
|
55
|
-
return 'image';
|
|
56
|
-
|
|
57
|
-
default:
|
|
58
|
-
return '';
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
function getMaskValue(layerType, mask) {
|
|
63
|
-
switch (layerType) {
|
|
64
|
-
case 'PolygonLayer':
|
|
65
|
-
return true;
|
|
66
|
-
|
|
67
|
-
case 'LineLayer':
|
|
68
|
-
return true;
|
|
69
|
-
|
|
70
|
-
case 'PointLayer':
|
|
71
|
-
return false;
|
|
72
|
-
|
|
73
|
-
case 'RasterLayer':
|
|
74
|
-
return mask;
|
|
75
|
-
|
|
76
|
-
default:
|
|
77
|
-
return mask;
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
function getContainerSize(container) {
|
|
82
|
-
if (!!container.getContext) {
|
|
83
|
-
return {
|
|
84
|
-
width: container.width / _l7Utils.DOM.DPR,
|
|
85
|
-
height: container.height / _l7Utils.DOM.DPR
|
|
86
|
-
};
|
|
87
|
-
} else {
|
|
88
|
-
return container.getBoundingClientRect();
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
function readRasterValue(tile, mapService, x, y) {
|
|
93
|
-
var _tile$bboxPolygon, _tile$data, _tile$data2, _tile$data3;
|
|
94
|
-
|
|
95
|
-
var bbox = (tile === null || tile === void 0 ? void 0 : (_tile$bboxPolygon = tile.bboxPolygon) === null || _tile$bboxPolygon === void 0 ? void 0 : _tile$bboxPolygon.bbox) || [0, 0, 10, -10];
|
|
96
|
-
|
|
97
|
-
var _bbox = (0, _slicedToArray2.default)(bbox, 4),
|
|
98
|
-
_bbox$ = _bbox[0],
|
|
99
|
-
minLng = _bbox$ === void 0 ? 0 : _bbox$,
|
|
100
|
-
_bbox$2 = _bbox[1],
|
|
101
|
-
minLat = _bbox$2 === void 0 ? 0 : _bbox$2,
|
|
102
|
-
_bbox$3 = _bbox[2],
|
|
103
|
-
maxLng = _bbox$3 === void 0 ? 10 : _bbox$3,
|
|
104
|
-
_bbox$4 = _bbox[3],
|
|
105
|
-
maxLat = _bbox$4 === void 0 ? -10 : _bbox$4;
|
|
106
|
-
|
|
107
|
-
var tileXY = mapService.lngLatToContainer([minLng, minLat]);
|
|
108
|
-
var tileMaxXY = mapService.lngLatToContainer([maxLng, maxLat]);
|
|
109
|
-
var tilePixelWidth = tileMaxXY.x - tileXY.x;
|
|
110
|
-
var tilePixelHeight = tileXY.y - tileMaxXY.y;
|
|
111
|
-
var pos = [(x - tileXY.x) / tilePixelWidth, (y - tileMaxXY.y) / tilePixelHeight];
|
|
112
|
-
var tileWidth = (tile === null || tile === void 0 ? void 0 : (_tile$data = tile.data) === null || _tile$data === void 0 ? void 0 : _tile$data.width) || 1;
|
|
113
|
-
var tileHeight = (tile === null || tile === void 0 ? void 0 : (_tile$data2 = tile.data) === null || _tile$data2 === void 0 ? void 0 : _tile$data2.height) || 1;
|
|
114
|
-
var indexX = Math.floor(pos[0] * tileWidth);
|
|
115
|
-
var indexY = Math.floor(pos[1] * tileHeight);
|
|
116
|
-
var index = Math.max(0, indexY - 1) * tileWidth + indexX;
|
|
117
|
-
var data = tile === null || tile === void 0 ? void 0 : (_tile$data3 = tile.data) === null || _tile$data3 === void 0 ? void 0 : _tile$data3.data[index];
|
|
118
|
-
return data;
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
function readPixel(x, y, rendererService) {
|
|
122
|
-
var readPixels = rendererService.readPixels,
|
|
123
|
-
getContainer = rendererService.getContainer;
|
|
124
|
-
var xInDevicePixel = x * _l7Utils.DOM.DPR;
|
|
125
|
-
var yInDevicePixel = y * _l7Utils.DOM.DPR;
|
|
126
|
-
|
|
127
|
-
var _getContainerSize = getContainerSize(getContainer()),
|
|
128
|
-
width = _getContainerSize.width,
|
|
129
|
-
height = _getContainerSize.height;
|
|
130
|
-
|
|
131
|
-
width *= _l7Utils.DOM.DPR;
|
|
132
|
-
height *= _l7Utils.DOM.DPR;
|
|
133
|
-
|
|
134
|
-
if (xInDevicePixel > width - 1 * _l7Utils.DOM.DPR || xInDevicePixel < 0 || yInDevicePixel > height - 1 * _l7Utils.DOM.DPR || yInDevicePixel < 0) {
|
|
135
|
-
return false;
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
var pickedColors = readPixels({
|
|
139
|
-
x: Math.floor(xInDevicePixel),
|
|
140
|
-
y: Math.floor(height - (y + 1) * _l7Utils.DOM.DPR),
|
|
141
|
-
width: 1,
|
|
142
|
-
height: 1,
|
|
143
|
-
data: new Uint8Array(1 * 1 * 4)
|
|
144
|
-
});
|
|
145
|
-
return pickedColors;
|
|
146
|
-
}
|
|
147
|
-
//# sourceMappingURL=utils.js.map
|
package/lib/tile/utils.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/tile/utils.ts"],"names":["registerLayers","parentLayer","layers","map","layer","container","sceneContainer","setContainer","init","getLayerShape","layerType","layerShape","getAttribute","scale","field","values","getMaskValue","mask","getContainerSize","getContext","width","DOM","DPR","height","getBoundingClientRect","readRasterValue","tile","mapService","x","y","bbox","bboxPolygon","minLng","minLat","maxLng","maxLat","tileXY","lngLatToContainer","tileMaxXY","tilePixelWidth","tilePixelHeight","pos","tileWidth","data","tileHeight","indexX","Math","floor","indexY","index","max","readPixel","rendererService","readPixels","getContainer","xInDevicePixel","yInDevicePixel","pickedColors","Uint8Array"],"mappings":"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","sourcesContent":["import {\n createLayerContainer,\n ILayer,\n IMapService,\n IRendererService,\n} from '@antv/l7-core';\nimport { DOM, Tile } from '@antv/l7-utils';\nimport { Container } from 'inversify';\nexport function registerLayers(parentLayer: ILayer, layers: ILayer[]) {\n layers.map((layer) => {\n const container = createLayerContainer(\n parentLayer.sceneContainer as Container,\n );\n layer.setContainer(container, parentLayer.sceneContainer as Container);\n layer.init();\n });\n}\n\nexport function getLayerShape(layerType: string, layer: ILayer) {\n const layerShape = layer.getAttribute('shape');\n if (layerShape && layerShape.scale?.field) {\n if (layerShape.scale?.values === 'text') {\n return [layerShape.scale.field, layerShape.scale.values] as string[];\n }\n return layerShape.scale.field as string;\n }\n switch (layerType) {\n case 'PolygonLayer':\n return 'fill';\n case 'LineLayer':\n return 'tileline';\n case 'PointLayer':\n return 'circle';\n case 'RasterLayer':\n return 'image';\n default:\n return '';\n }\n}\n\nexport function getMaskValue(layerType: string, mask: boolean) {\n switch (layerType) {\n case 'PolygonLayer':\n return true;\n case 'LineLayer':\n return true;\n case 'PointLayer':\n return false;\n case 'RasterLayer':\n return mask;\n default:\n return mask;\n }\n}\n\nexport function getContainerSize(container: HTMLCanvasElement | HTMLElement) {\n if (!!(container as HTMLCanvasElement).getContext) {\n return {\n width: (container as HTMLCanvasElement).width / DOM.DPR,\n height: (container as HTMLCanvasElement).height / DOM.DPR,\n };\n } else {\n return container.getBoundingClientRect();\n }\n}\n\nexport function readRasterValue(\n tile: Tile,\n mapService: IMapService,\n x: number,\n y: number,\n) {\n const bbox = tile?.bboxPolygon?.bbox || [0, 0, 10, -10];\n\n const [minLng = 0, minLat = 0, maxLng = 10, maxLat = -10] = bbox;\n\n const tileXY = mapService.lngLatToContainer([minLng, minLat]);\n const tileMaxXY = mapService.lngLatToContainer([maxLng, maxLat]);\n\n const tilePixelWidth = tileMaxXY.x - tileXY.x;\n const tilePixelHeight = tileXY.y - tileMaxXY.y;\n const pos = [\n (x - tileXY.x) / tilePixelWidth, // x\n (y - tileMaxXY.y) / tilePixelHeight, // y\n ];\n\n const tileWidth = tile?.data?.width || 1;\n const tileHeight = tile?.data?.height || 1;\n\n const indexX = Math.floor(pos[0] * tileWidth);\n const indexY = Math.floor(pos[1] * tileHeight);\n const index = Math.max(0, indexY - 1) * tileWidth + indexX;\n\n const data = tile?.data?.data[index];\n\n return data;\n}\n\nexport function readPixel(\n x: number,\n y: number,\n rendererService: IRendererService,\n) {\n const { readPixels, getContainer } = rendererService;\n const xInDevicePixel = x * DOM.DPR;\n const yInDevicePixel = y * DOM.DPR;\n let { width, height } = getContainerSize(\n getContainer() as HTMLCanvasElement | HTMLElement,\n );\n width *= DOM.DPR;\n height *= DOM.DPR;\n if (\n xInDevicePixel > width - 1 * DOM.DPR ||\n xInDevicePixel < 0 ||\n yInDevicePixel > height - 1 * DOM.DPR ||\n yInDevicePixel < 0\n ) {\n return false;\n }\n\n const pickedColors = readPixels({\n x: Math.floor(xInDevicePixel),\n // 视口坐标系原点在左上,而 WebGL 在左下,需要翻转 Y 轴\n y: Math.floor(height - (y + 1) * DOM.DPR),\n width: 1,\n height: 1,\n data: new Uint8Array(1 * 1 * 4),\n });\n return pickedColors;\n}\n"],"file":"utils.js"}
|