@antv/l7-layers 2.5.36 → 2.5.37-mini4
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/lib/core/BaseLayer.js +4 -1
- package/lib/core/BaseLayer.js.map +1 -1
- package/lib/core/BaseModel.js +1 -1
- package/lib/core/BaseModel.js.map +1 -1
- package/lib/heatmap/models/heatmap.js +12 -17
- package/lib/heatmap/models/heatmap.js.map +1 -1
- package/lib/image/models/image.js +28 -7
- package/lib/image/models/image.js.map +1 -1
- package/lib/imagetile/index.js +95 -0
- package/lib/imagetile/index.js.map +1 -0
- package/lib/imagetile/models/imagetile.js +177 -0
- package/lib/imagetile/models/imagetile.js.map +1 -0
- package/lib/imagetile/models/index.js +17 -0
- package/lib/imagetile/models/index.js.map +1 -0
- package/lib/imagetile/utils/ImageTile.js +99 -0
- package/lib/imagetile/utils/ImageTile.js.map +1 -0
- package/lib/imagetile/utils/Tile.js +324 -0
- package/lib/imagetile/utils/Tile.js.map +1 -0
- package/lib/imagetile/utils/lruCache.js +109 -0
- package/lib/imagetile/utils/lruCache.js.map +1 -0
- package/lib/imagetile/utils/tileCache.js +58 -0
- package/lib/imagetile/utils/tileCache.js.map +1 -0
- package/lib/index.js +8 -0
- package/lib/index.js.map +1 -1
- package/lib/line/index.js +3 -0
- package/lib/line/index.js.map +1 -1
- package/lib/line/models/arc.js +2 -2
- package/lib/line/models/arc_3d.js +2 -2
- package/lib/line/models/arcmini.js +160 -0
- package/lib/line/models/arcmini.js.map +1 -0
- package/lib/line/models/great_circle.js +2 -2
- package/lib/line/models/index.js +3 -0
- package/lib/line/models/index.js.map +1 -1
- package/lib/line/models/line.js +2 -2
- package/lib/plugins/LayerStylePlugin.js.map +1 -1
- package/lib/plugins/ShaderUniformPlugin.js +3 -1
- package/lib/plugins/ShaderUniformPlugin.js.map +1 -1
- package/lib/point/models/image.js.map +1 -1
- package/package.json +6 -5
- package/CHANGELOG.md +0 -492
- package/LICENSE.md +0 -21
- package/es/citybuliding/building.d.ts +0 -17
- package/es/citybuliding/building.js +0 -79
- package/es/citybuliding/building.js.map +0 -1
- package/es/citybuliding/models/build.d.ts +0 -13
- package/es/citybuliding/models/build.js +0 -124
- package/es/citybuliding/models/build.js.map +0 -1
- package/es/core/BaseLayer.d.ts +0 -174
- package/es/core/BaseLayer.js +0 -974
- package/es/core/BaseLayer.js.map +0 -1
- package/es/core/BaseModel.d.ts +0 -135
- package/es/core/BaseModel.js +0 -412
- package/es/core/BaseModel.js.map +0 -1
- package/es/core/interface.d.ts +0 -19
- package/es/core/interface.js +0 -7
- package/es/core/interface.js.map +0 -1
- package/es/core/schema.d.ts +0 -27
- package/es/core/schema.js +0 -23
- package/es/core/schema.js.map +0 -1
- package/es/core/shape/Path.d.ts +0 -39
- package/es/core/shape/Path.js +0 -57
- package/es/core/shape/Path.js.map +0 -1
- package/es/core/shape/extrude.d.ts +0 -17
- package/es/core/shape/extrude.js +0 -143
- package/es/core/shape/extrude.js.map +0 -1
- package/es/core/triangulation.d.ts +0 -109
- package/es/core/triangulation.js +0 -328
- package/es/core/triangulation.js.map +0 -1
- package/es/earth/index.d.ts +0 -17
- package/es/earth/index.js +0 -81
- package/es/earth/index.js.map +0 -1
- package/es/earth/models/atmosphere.d.ts +0 -9
- package/es/earth/models/atmosphere.js +0 -125
- package/es/earth/models/atmosphere.js.map +0 -1
- package/es/earth/models/base.d.ts +0 -16
- package/es/earth/models/base.js +0 -193
- package/es/earth/models/base.js.map +0 -1
- package/es/earth/models/bloomsphere.d.ts +0 -9
- package/es/earth/models/bloomsphere.js +0 -125
- package/es/earth/models/bloomsphere.js.map +0 -1
- package/es/earth/utils.d.ts +0 -26
- package/es/earth/utils.js +0 -81
- package/es/earth/utils.js.map +0 -1
- package/es/glsl.d.js +0 -2
- package/es/glsl.d.js.map +0 -1
- package/es/heatmap/index.d.ts +0 -22
- package/es/heatmap/index.js +0 -123
- package/es/heatmap/index.js.map +0 -1
- package/es/heatmap/models/grid.d.ts +0 -8
- package/es/heatmap/models/grid.js +0 -90
- package/es/heatmap/models/grid.js.map +0 -1
- package/es/heatmap/models/grid3d.d.ts +0 -8
- package/es/heatmap/models/grid3d.js +0 -122
- package/es/heatmap/models/grid3d.js.map +0 -1
- package/es/heatmap/models/heatmap.d.ts +0 -24
- package/es/heatmap/models/heatmap.js +0 -399
- package/es/heatmap/models/heatmap.js.map +0 -1
- package/es/heatmap/models/hexagon.d.ts +0 -8
- package/es/heatmap/models/hexagon.js +0 -90
- package/es/heatmap/models/hexagon.js.map +0 -1
- package/es/heatmap/models/index.d.ts +0 -5
- package/es/heatmap/models/index.js +0 -13
- package/es/heatmap/models/index.js.map +0 -1
- package/es/heatmap/triangulation.d.ts +0 -5
- package/es/heatmap/triangulation.js +0 -38
- package/es/heatmap/triangulation.js.map +0 -1
- package/es/image/index.d.ts +0 -22
- package/es/image/index.js +0 -82
- package/es/image/index.js.map +0 -1
- package/es/image/models/image.d.ts +0 -18
- package/es/image/models/image.js +0 -127
- package/es/image/models/image.js.map +0 -1
- package/es/image/models/index.d.ts +0 -5
- package/es/image/models/index.js +0 -6
- package/es/image/models/index.js.map +0 -1
- package/es/index.d.ts +0 -11
- package/es/index.js +0 -39
- package/es/index.js.map +0 -1
- package/es/line/index.d.ts +0 -25
- package/es/line/index.js +0 -95
- package/es/line/index.js.map +0 -1
- package/es/line/models/arc.d.ts +0 -12
- package/es/line/models/arc.js +0 -281
- package/es/line/models/arc.js.map +0 -1
- package/es/line/models/arc_3d.d.ts +0 -12
- package/es/line/models/arc_3d.js +0 -277
- package/es/line/models/arc_3d.js.map +0 -1
- package/es/line/models/great_circle.d.ts +0 -12
- package/es/line/models/great_circle.js +0 -269
- package/es/line/models/great_circle.js.map +0 -1
- package/es/line/models/index.d.ts +0 -5
- package/es/line/models/index.js +0 -12
- package/es/line/models/index.js.map +0 -1
- package/es/line/models/line.d.ts +0 -13
- package/es/line/models/line.js +0 -342
- package/es/line/models/line.js.map +0 -1
- package/es/plugins/DataMappingPlugin.d.ts +0 -13
- package/es/plugins/DataMappingPlugin.js +0 -199
- package/es/plugins/DataMappingPlugin.js.map +0 -1
- package/es/plugins/DataSourcePlugin.d.ts +0 -7
- package/es/plugins/DataSourcePlugin.js +0 -73
- package/es/plugins/DataSourcePlugin.js.map +0 -1
- package/es/plugins/FeatureScalePlugin.d.ts +0 -26
- package/es/plugins/FeatureScalePlugin.js +0 -270
- package/es/plugins/FeatureScalePlugin.js.map +0 -1
- package/es/plugins/LayerAnimateStylePlugin.d.ts +0 -7
- package/es/plugins/LayerAnimateStylePlugin.js +0 -50
- package/es/plugins/LayerAnimateStylePlugin.js.map +0 -1
- package/es/plugins/LayerModelPlugin.d.ts +0 -8
- package/es/plugins/LayerModelPlugin.js +0 -34
- package/es/plugins/LayerModelPlugin.js.map +0 -1
- package/es/plugins/LayerStylePlugin.d.ts +0 -8
- package/es/plugins/LayerStylePlugin.js +0 -35
- package/es/plugins/LayerStylePlugin.js.map +0 -1
- package/es/plugins/LightingPlugin.d.ts +0 -36
- package/es/plugins/LightingPlugin.js +0 -100
- package/es/plugins/LightingPlugin.js.map +0 -1
- package/es/plugins/MultiPassRendererPlugin.d.ts +0 -37
- package/es/plugins/MultiPassRendererPlugin.js +0 -79
- package/es/plugins/MultiPassRendererPlugin.js.map +0 -1
- package/es/plugins/PixelPickingPlugin.d.ts +0 -8
- package/es/plugins/PixelPickingPlugin.js +0 -112
- package/es/plugins/PixelPickingPlugin.js.map +0 -1
- package/es/plugins/RegisterStyleAttributePlugin.d.ts +0 -11
- package/es/plugins/RegisterStyleAttributePlugin.js +0 -98
- package/es/plugins/RegisterStyleAttributePlugin.js.map +0 -1
- package/es/plugins/ShaderUniformPlugin.d.ts +0 -16
- package/es/plugins/ShaderUniformPlugin.js +0 -78
- package/es/plugins/ShaderUniformPlugin.js.map +0 -1
- package/es/plugins/UpdateModelPlugin.d.ts +0 -8
- package/es/plugins/UpdateModelPlugin.js +0 -27
- package/es/plugins/UpdateModelPlugin.js.map +0 -1
- package/es/plugins/UpdateStyleAttributePlugin.d.ts +0 -12
- package/es/plugins/UpdateStyleAttributePlugin.js +0 -74
- package/es/plugins/UpdateStyleAttributePlugin.js.map +0 -1
- package/es/point/index.d.ts +0 -30
- package/es/point/index.js +0 -130
- package/es/point/index.js.map +0 -1
- package/es/point/models/extrude.d.ts +0 -14
- package/es/point/models/extrude.js +0 -180
- package/es/point/models/extrude.js.map +0 -1
- package/es/point/models/fill.d.ts +0 -17
- package/es/point/models/fill.js +0 -247
- package/es/point/models/fill.js.map +0 -1
- package/es/point/models/icon-font.d.ts +0 -11
- package/es/point/models/icon-font.js +0 -181
- package/es/point/models/icon-font.js.map +0 -1
- package/es/point/models/image.d.ts +0 -11
- package/es/point/models/image.js +0 -207
- package/es/point/models/image.js.map +0 -1
- package/es/point/models/index.d.ts +0 -5
- package/es/point/models/index.js +0 -16
- package/es/point/models/index.js.map +0 -1
- package/es/point/models/normal.d.ts +0 -21
- package/es/point/models/normal.js +0 -155
- package/es/point/models/normal.js.map +0 -1
- package/es/point/models/text.d.ts +0 -56
- package/es/point/models/text.js +0 -522
- package/es/point/models/text.js.map +0 -1
- package/es/point/shape/Path.d.ts +0 -40
- package/es/point/shape/Path.js +0 -57
- package/es/point/shape/Path.js.map +0 -1
- package/es/point/shape/extrude.d.ts +0 -15
- package/es/point/shape/extrude.js +0 -58
- package/es/point/shape/extrude.js.map +0 -1
- package/es/polygon/index.d.ts +0 -22
- package/es/polygon/index.js +0 -124
- package/es/polygon/index.js.map +0 -1
- package/es/polygon/models/extrude.d.ts +0 -13
- package/es/polygon/models/extrude.js +0 -139
- package/es/polygon/models/extrude.js.map +0 -1
- package/es/polygon/models/fill.d.ts +0 -13
- package/es/polygon/models/fill.js +0 -108
- package/es/polygon/models/fill.js.map +0 -1
- package/es/polygon/models/index.d.ts +0 -5
- package/es/polygon/models/index.js +0 -20
- package/es/polygon/models/index.js.map +0 -1
- package/es/raster/buffers/triangulation.d.ts +0 -6
- package/es/raster/buffers/triangulation.js +0 -28
- package/es/raster/buffers/triangulation.js.map +0 -1
- package/es/raster/image.d.ts +0 -0
- package/es/raster/image.js +0 -2
- package/es/raster/image.js.map +0 -1
- package/es/raster/index.d.ts +0 -28
- package/es/raster/index.js +0 -83
- package/es/raster/index.js.map +0 -1
- package/es/raster/models/index.d.ts +0 -5
- package/es/raster/models/index.js +0 -7
- package/es/raster/models/index.js.map +0 -1
- package/es/raster/models/raster.d.ts +0 -19
- package/es/raster/models/raster.js +0 -152
- package/es/raster/models/raster.js.map +0 -1
- package/es/raster/raster.d.ts +0 -30
- package/es/raster/raster.js +0 -178
- package/es/raster/raster.js.map +0 -1
- package/es/raster/raster2d.d.ts +0 -27
- package/es/raster/raster2d.js +0 -158
- package/es/raster/raster2d.js.map +0 -1
- package/es/utils/blend.d.ts +0 -2
- package/es/utils/blend.js +0 -55
- package/es/utils/blend.js.map +0 -1
- package/es/utils/collision-index.d.ts +0 -47
- package/es/utils/collision-index.js +0 -87
- package/es/utils/collision-index.js.map +0 -1
- package/es/utils/dataMappingStyle.d.ts +0 -30
- package/es/utils/dataMappingStyle.js +0 -88
- package/es/utils/dataMappingStyle.js.map +0 -1
- package/es/utils/extrude_polyline.d.ts +0 -48
- package/es/utils/extrude_polyline.js +0 -405
- package/es/utils/extrude_polyline.js.map +0 -1
- package/es/utils/geo.d.ts +0 -3
- package/es/utils/geo.js +0 -24
- package/es/utils/geo.js.map +0 -1
- package/es/utils/grid-index.d.ts +0 -28
- package/es/utils/grid-index.js +0 -193
- package/es/utils/grid-index.js.map +0 -1
- package/es/utils/polylineNormal.d.ts +0 -9
- package/es/utils/polylineNormal.js +0 -171
- package/es/utils/polylineNormal.js.map +0 -1
- package/es/utils/symbol-layout.d.ts +0 -43
- package/es/utils/symbol-layout.js +0 -260
- package/es/utils/symbol-layout.js.map +0 -1
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import LineModel from '../../line/models/line';
|
|
2
|
-
import PointExtrudeModel from '../../point/models/extrude';
|
|
3
|
-
import PointFillModel from '../../point/models/fill';
|
|
4
|
-
import IMageModel from '../../point/models/image';
|
|
5
|
-
import NormalModel from '../../point/models/normal';
|
|
6
|
-
import TextModel from '../../point/models/text';
|
|
7
|
-
import ExtrudeModel from './extrude';
|
|
8
|
-
import FillModel from './fill';
|
|
9
|
-
var PolygonModels = {
|
|
10
|
-
fill: FillModel,
|
|
11
|
-
line: LineModel,
|
|
12
|
-
extrude: ExtrudeModel,
|
|
13
|
-
text: TextModel,
|
|
14
|
-
point_fill: PointFillModel,
|
|
15
|
-
point_image: IMageModel,
|
|
16
|
-
point_normal: NormalModel,
|
|
17
|
-
point_extrude: PointExtrudeModel
|
|
18
|
-
};
|
|
19
|
-
export default PolygonModels;
|
|
20
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/polygon/models/index.ts"],"names":["LineModel","PointExtrudeModel","PointFillModel","IMageModel","NormalModel","TextModel","ExtrudeModel","FillModel","PolygonModels","fill","line","extrude","text","point_fill","point_image","point_normal","point_extrude"],"mappings":"AAAA,OAAOA,SAAP,MAAsB,wBAAtB;AACA,OAAOC,iBAAP,MAA8B,4BAA9B;AACA,OAAOC,cAAP,MAA2B,yBAA3B;AACA,OAAOC,UAAP,MAAuB,0BAAvB;AACA,OAAOC,WAAP,MAAwB,2BAAxB;AACA,OAAOC,SAAP,MAAsB,yBAAtB;AACA,OAAOC,YAAP,MAAyB,WAAzB;AACA,OAAOC,SAAP,MAAsB,QAAtB;AAYA,IAAMC,aAAiD,GAAG;AACxDC,EAAAA,IAAI,EAAEF,SADkD;AAExDG,EAAAA,IAAI,EAAEV,SAFkD;AAGxDW,EAAAA,OAAO,EAAEL,YAH+C;AAIxDM,EAAAA,IAAI,EAAEP,SAJkD;AAKxDQ,EAAAA,UAAU,EAAEX,cAL4C;AAMxDY,EAAAA,WAAW,EAAEX,UAN2C;AAOxDY,EAAAA,YAAY,EAAEX,WAP0C;AAQxDY,EAAAA,aAAa,EAAEf;AARyC,CAA1D;AAYA,eAAeO,aAAf","sourcesContent":["import LineModel from '../../line/models/line';\nimport PointExtrudeModel from '../../point/models/extrude';\nimport PointFillModel from '../../point/models/fill';\nimport IMageModel from '../../point/models/image';\nimport NormalModel from '../../point/models/normal';\nimport TextModel from '../../point/models/text';\nimport ExtrudeModel from './extrude';\nimport FillModel from './fill';\n\nexport type PolygonModelType =\n | 'fill'\n | 'extrude'\n | 'line'\n | 'point_fill'\n | 'point_image'\n | 'point_normal'\n | 'point_extrude'\n | 'text';\n\nconst PolygonModels: { [key in PolygonModelType]: any } = {\n fill: FillModel,\n line: LineModel,\n extrude: ExtrudeModel,\n text: TextModel,\n point_fill: PointFillModel,\n point_image: IMageModel,\n point_normal: NormalModel,\n point_extrude: PointExtrudeModel,\n\n // point_fill: PointModels.fill,\n};\nexport default PolygonModels;\n"],"file":"index.js"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import Martini from '@mapbox/martini';
|
|
2
|
-
export function RasterTriangulation(parserData) {
|
|
3
|
-
var coordinates = parserData.coordinates,
|
|
4
|
-
data = parserData.data,
|
|
5
|
-
min = parserData.min,
|
|
6
|
-
max = parserData.max,
|
|
7
|
-
width = parserData.width,
|
|
8
|
-
height = parserData.height;
|
|
9
|
-
var maxlength = Math.max(width, height);
|
|
10
|
-
var gridSize = Math.pow(2, Math.ceil(Math.log2(maxlength))) + 1;
|
|
11
|
-
var terrain = new Float32Array(gridSize * gridSize);
|
|
12
|
-
|
|
13
|
-
for (var i = 0; i < width; i++) {
|
|
14
|
-
for (var j = 0; j < height; j++) {
|
|
15
|
-
terrain[i * gridSize + j] = data[i * width + j];
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
var martini = new Martini(gridSize);
|
|
20
|
-
var tile = martini.createTile(terrain);
|
|
21
|
-
var mesh = tile.getMesh(gridSize / 2);
|
|
22
|
-
return {
|
|
23
|
-
vertices: Array.from(mesh.vertices),
|
|
24
|
-
indices: Array.from(mesh.triangles),
|
|
25
|
-
size: 2
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
//# sourceMappingURL=triangulation.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/raster/buffers/triangulation.ts"],"names":["Martini","RasterTriangulation","parserData","coordinates","data","min","max","width","height","maxlength","Math","gridSize","pow","ceil","log2","terrain","Float32Array","i","j","martini","tile","createTile","mesh","getMesh","vertices","Array","from","indices","triangles","size"],"mappings":"AAEA,OAAOA,OAAP,MAAoB,iBAApB;AACA,OAAO,SAASC,mBAAT,CAA6BC,UAA7B,EAAyD;AAC9D,MAAQC,WAAR,GAAuDD,UAAvD,CAAQC,WAAR;AAAA,MAAqBC,IAArB,GAAuDF,UAAvD,CAAqBE,IAArB;AAAA,MAA2BC,GAA3B,GAAuDH,UAAvD,CAA2BG,GAA3B;AAAA,MAAgCC,GAAhC,GAAuDJ,UAAvD,CAAgCI,GAAhC;AAAA,MAAqCC,KAArC,GAAuDL,UAAvD,CAAqCK,KAArC;AAAA,MAA4CC,MAA5C,GAAuDN,UAAvD,CAA4CM,MAA5C;AACA,MAAMC,SAAS,GAAGC,IAAI,CAACJ,GAAL,CAASC,KAAT,EAAgBC,MAAhB,CAAlB;AACA,MAAMG,QAAQ,GAAGD,IAAI,CAACE,GAAL,CAAS,CAAT,EAAYF,IAAI,CAACG,IAAL,CAAUH,IAAI,CAACI,IAAL,CAAUL,SAAV,CAAV,CAAZ,IAA+C,CAAhE;AACA,MAAMM,OAAO,GAAG,IAAIC,YAAJ,CAAiBL,QAAQ,GAAGA,QAA5B,CAAhB;;AACA,OAAK,IAAIM,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGV,KAApB,EAA2BU,CAAC,EAA5B,EAAgC;AAC9B,SAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGV,MAApB,EAA4BU,CAAC,EAA7B,EAAiC;AAC/BH,MAAAA,OAAO,CAACE,CAAC,GAAGN,QAAJ,GAAeO,CAAhB,CAAP,GAA4Bd,IAAI,CAACa,CAAC,GAAGV,KAAJ,GAAYW,CAAb,CAAhC;AACD;AACF;;AACD,MAAMC,OAAO,GAAG,IAAInB,OAAJ,CAAYW,QAAZ,CAAhB;AACA,MAAMS,IAAI,GAAGD,OAAO,CAACE,UAAR,CAAmBN,OAAnB,CAAb;AACA,MAAMO,IAAI,GAAGF,IAAI,CAACG,OAAL,CAAaZ,QAAQ,GAAG,CAAxB,CAAb;AACA,SAAO;AACLa,IAAAA,QAAQ,EAAEC,KAAK,CAACC,IAAN,CAAWJ,IAAI,CAACE,QAAhB,CADL;AAELG,IAAAA,OAAO,EAAEF,KAAK,CAACC,IAAN,CAAWJ,IAAI,CAACM,SAAhB,CAFJ;AAGLC,IAAAA,IAAI,EAAE;AAHD,GAAP;AAKD","sourcesContent":["import { IEncodeFeature, IParseDataItem } from '@antv/l7-core';\n// @ts-ignore\nimport Martini from '@mapbox/martini';\nexport function RasterTriangulation(parserData: IParseDataItem) {\n const { coordinates, data, min, max, width, height } = parserData;\n const maxlength = Math.max(width, height);\n const gridSize = Math.pow(2, Math.ceil(Math.log2(maxlength))) + 1;\n const terrain = new Float32Array(gridSize * gridSize);\n for (let i = 0; i < width; i++) {\n for (let j = 0; j < height; j++) {\n terrain[i * gridSize + j] = data[i * width + j];\n }\n }\n const martini = new Martini(gridSize);\n const tile = martini.createTile(terrain);\n const mesh = tile.getMesh(gridSize / 2);\n return {\n vertices: Array.from(mesh.vertices) as number[],\n indices: Array.from(mesh.triangles) as number[],\n size: 2,\n };\n}\n"],"file":"triangulation.js"}
|
package/es/raster/image.d.ts
DELETED
|
File without changes
|
package/es/raster/image.js
DELETED
package/es/raster/image.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","sourcesContent":[],"file":"image.js"}
|
package/es/raster/index.d.ts
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { IColorRamp } from '@antv/l7-utils';
|
|
2
|
-
import BaseLayer from '../core/BaseLayer';
|
|
3
|
-
import { RasterModelType } from './models/index';
|
|
4
|
-
interface IRasterLayerStyleOptions {
|
|
5
|
-
opacity: number;
|
|
6
|
-
domain: [number, number];
|
|
7
|
-
noDataValue: number;
|
|
8
|
-
clampLow: boolean;
|
|
9
|
-
clampHigh: boolean;
|
|
10
|
-
rampColors: IColorRamp;
|
|
11
|
-
}
|
|
12
|
-
export default class RaterLayer extends BaseLayer<IRasterLayerStyleOptions> {
|
|
13
|
-
type: string;
|
|
14
|
-
buildModels(): void;
|
|
15
|
-
rebuildModels(): void;
|
|
16
|
-
protected getConfigSchema(): {
|
|
17
|
-
properties: {
|
|
18
|
-
opacity: {
|
|
19
|
-
type: string;
|
|
20
|
-
minimum: number;
|
|
21
|
-
maximum: number;
|
|
22
|
-
};
|
|
23
|
-
};
|
|
24
|
-
};
|
|
25
|
-
protected getDefaultConfig(): {} | {};
|
|
26
|
-
protected getModelType(): RasterModelType;
|
|
27
|
-
}
|
|
28
|
-
export {};
|
package/es/raster/index.js
DELETED
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
|
2
|
-
import _createClass from "@babel/runtime/helpers/createClass";
|
|
3
|
-
import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
|
|
4
|
-
import _inherits from "@babel/runtime/helpers/inherits";
|
|
5
|
-
import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
|
|
6
|
-
import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
|
|
7
|
-
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
8
|
-
|
|
9
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
10
|
-
|
|
11
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
12
|
-
|
|
13
|
-
import BaseLayer from '../core/BaseLayer';
|
|
14
|
-
import RasterModels from './models/index';
|
|
15
|
-
|
|
16
|
-
var RaterLayer = function (_BaseLayer) {
|
|
17
|
-
_inherits(RaterLayer, _BaseLayer);
|
|
18
|
-
|
|
19
|
-
var _super = _createSuper(RaterLayer);
|
|
20
|
-
|
|
21
|
-
function RaterLayer() {
|
|
22
|
-
var _this;
|
|
23
|
-
|
|
24
|
-
_classCallCheck(this, RaterLayer);
|
|
25
|
-
|
|
26
|
-
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
27
|
-
args[_key] = arguments[_key];
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
_this = _super.call.apply(_super, [this].concat(args));
|
|
31
|
-
|
|
32
|
-
_defineProperty(_assertThisInitialized(_this), "type", 'RasterLayer');
|
|
33
|
-
|
|
34
|
-
return _this;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
_createClass(RaterLayer, [{
|
|
38
|
-
key: "buildModels",
|
|
39
|
-
value: function buildModels() {
|
|
40
|
-
var modelType = this.getModelType();
|
|
41
|
-
this.layerModel = new RasterModels[modelType](this);
|
|
42
|
-
this.models = this.layerModel.initModels();
|
|
43
|
-
}
|
|
44
|
-
}, {
|
|
45
|
-
key: "rebuildModels",
|
|
46
|
-
value: function rebuildModels() {
|
|
47
|
-
this.models = this.layerModel.buildModels();
|
|
48
|
-
}
|
|
49
|
-
}, {
|
|
50
|
-
key: "getConfigSchema",
|
|
51
|
-
value: function getConfigSchema() {
|
|
52
|
-
return {
|
|
53
|
-
properties: {
|
|
54
|
-
opacity: {
|
|
55
|
-
type: 'number',
|
|
56
|
-
minimum: 0,
|
|
57
|
-
maximum: 1
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
};
|
|
61
|
-
}
|
|
62
|
-
}, {
|
|
63
|
-
key: "getDefaultConfig",
|
|
64
|
-
value: function getDefaultConfig() {
|
|
65
|
-
var type = this.getModelType();
|
|
66
|
-
var defaultConfig = {
|
|
67
|
-
raster: {},
|
|
68
|
-
raster3d: {}
|
|
69
|
-
};
|
|
70
|
-
return defaultConfig[type];
|
|
71
|
-
}
|
|
72
|
-
}, {
|
|
73
|
-
key: "getModelType",
|
|
74
|
-
value: function getModelType() {
|
|
75
|
-
return 'raster';
|
|
76
|
-
}
|
|
77
|
-
}]);
|
|
78
|
-
|
|
79
|
-
return RaterLayer;
|
|
80
|
-
}(BaseLayer);
|
|
81
|
-
|
|
82
|
-
export { RaterLayer as default };
|
|
83
|
-
//# sourceMappingURL=index.js.map
|
package/es/raster/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/raster/index.ts"],"names":["BaseLayer","RasterModels","RaterLayer","modelType","getModelType","layerModel","models","initModels","buildModels","properties","opacity","type","minimum","maximum","defaultConfig","raster","raster3d"],"mappings":";;;;;;;;;;;;AACA,OAAOA,SAAP,MAAsB,mBAAtB;AACA,OAAOC,YAAP,MAA8C,gBAA9C;;IASqBC,U;;;;;;;;;;;;;;;;2DACG,a;;;;;;;WACtB,uBAAqB;AACnB,UAAMC,SAAS,GAAG,KAAKC,YAAL,EAAlB;AACA,WAAKC,UAAL,GAAkB,IAAIJ,YAAY,CAACE,SAAD,CAAhB,CAA4B,IAA5B,CAAlB;AACA,WAAKG,MAAL,GAAc,KAAKD,UAAL,CAAgBE,UAAhB,EAAd;AACD;;;WACD,yBAAuB;AACrB,WAAKD,MAAL,GAAc,KAAKD,UAAL,CAAgBG,WAAhB,EAAd;AACD;;;WACD,2BAA4B;AAC1B,aAAO;AACLC,QAAAA,UAAU,EAAE;AACVC,UAAAA,OAAO,EAAE;AACPC,YAAAA,IAAI,EAAE,QADC;AAEPC,YAAAA,OAAO,EAAE,CAFF;AAGPC,YAAAA,OAAO,EAAE;AAHF;AADC;AADP,OAAP;AASD;;;WACD,4BAA6B;AAC3B,UAAMF,IAAI,GAAG,KAAKP,YAAL,EAAb;AACA,UAAMU,aAAa,GAAG;AACpBC,QAAAA,MAAM,EAAE,EADY;AAEpBC,QAAAA,QAAQ,EAAE;AAFU,OAAtB;AAIA,aAAOF,aAAa,CAACH,IAAD,CAApB;AACD;;;WAED,wBAA0C;AACxC,aAAO,QAAP;AACD;;;;EAhCqCX,S;;SAAnBE,U","sourcesContent":["import { IColorRamp } from '@antv/l7-utils';\nimport BaseLayer from '../core/BaseLayer';\nimport RasterModels, { RasterModelType } from './models/index';\ninterface IRasterLayerStyleOptions {\n opacity: number;\n domain: [number, number];\n noDataValue: number;\n clampLow: boolean;\n clampHigh: boolean;\n rampColors: IColorRamp;\n}\nexport default class RaterLayer extends BaseLayer<IRasterLayerStyleOptions> {\n public type: string = 'RasterLayer';\n public buildModels() {\n const modelType = this.getModelType();\n this.layerModel = new RasterModels[modelType](this);\n this.models = this.layerModel.initModels();\n }\n public rebuildModels() {\n this.models = this.layerModel.buildModels();\n }\n protected getConfigSchema() {\n return {\n properties: {\n opacity: {\n type: 'number',\n minimum: 0,\n maximum: 1,\n },\n },\n };\n }\n protected getDefaultConfig() {\n const type = this.getModelType();\n const defaultConfig = {\n raster: {},\n raster3d: {},\n };\n return defaultConfig[type];\n }\n\n protected getModelType(): RasterModelType {\n return 'raster';\n }\n}\n"],"file":"index.js"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/raster/models/index.ts"],"names":["RasterModel","RasterModels","raster","raster3d"],"mappings":"AAAA,OAAOA,WAAP,MAAwB,UAAxB;AAGA,IAAMC,YAA+C,GAAG;AACtDC,EAAAA,MAAM,EAAEF,WAD8C;AAEtDG,EAAAA,QAAQ,EAAEH;AAF4C,CAAxD;AAKA,eAAeC,YAAf","sourcesContent":["import RasterModel from './raster';\nexport type RasterModelType = 'raster' | 'raster3d';\n\nconst RasterModels: { [key in RasterModelType]: any } = {\n raster: RasterModel,\n raster3d: RasterModel,\n};\n\nexport default RasterModels;\n"],"file":"index.js"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { IModel, ITexture2D } from '@antv/l7-core';
|
|
2
|
-
import BaseModel from '../../core/BaseModel';
|
|
3
|
-
export default class RasterModel extends BaseModel {
|
|
4
|
-
protected texture: ITexture2D;
|
|
5
|
-
protected colorTexture: ITexture2D;
|
|
6
|
-
getUninforms(): {
|
|
7
|
-
u_opacity: number;
|
|
8
|
-
u_texture: ITexture2D;
|
|
9
|
-
u_domain: [number, number];
|
|
10
|
-
u_clampLow: boolean;
|
|
11
|
-
u_clampHigh: boolean;
|
|
12
|
-
u_noDataValue: number;
|
|
13
|
-
u_colorTexture: ITexture2D;
|
|
14
|
-
};
|
|
15
|
-
initModels(): IModel[];
|
|
16
|
-
buildModels(): IModel[];
|
|
17
|
-
protected registerBuiltinAttributes(): void;
|
|
18
|
-
private updateColorTexure;
|
|
19
|
-
}
|
|
@@ -1,152 +0,0 @@
|
|
|
1
|
-
import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
|
2
|
-
import _createClass from "@babel/runtime/helpers/createClass";
|
|
3
|
-
import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
|
|
4
|
-
import _inherits from "@babel/runtime/helpers/inherits";
|
|
5
|
-
import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
|
|
6
|
-
import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
|
|
7
|
-
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
8
|
-
|
|
9
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
10
|
-
|
|
11
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
12
|
-
|
|
13
|
-
import { AttributeType, gl } from '@antv/l7-core';
|
|
14
|
-
import { generateColorRamp } from '@antv/l7-utils';
|
|
15
|
-
import BaseModel from '../../core/BaseModel';
|
|
16
|
-
import { RasterImageTriangulation } from '../../core/triangulation';
|
|
17
|
-
var rasterFrag = "precision mediump float;\nuniform float u_opacity: 1.0;\nuniform sampler2D u_texture;\nuniform sampler2D u_colorTexture;\nuniform float u_min;\nuniform float u_max;\nuniform vec2 u_domain;\nuniform float u_noDataValue;\nuniform bool u_clampLow: true;\nuniform bool u_clampHigh: true;\nvarying vec2 v_texCoord;\n\nvoid main() {\n\n float value = texture2D(u_texture,vec2(v_texCoord.x,v_texCoord.y)).r;\n if (value == u_noDataValue)\n gl_FragColor = vec4(0.0, 0, 0, 0.0);\n else if ((!u_clampLow && value < u_domain[0]) || (!u_clampHigh && value > u_domain[1]))\n gl_FragColor = vec4(0, 0, 0, 0);\n else {\n float normalisedValue =(value - u_domain[0]) / (u_domain[1] -u_domain[0]);\n vec4 color = texture2D(u_colorTexture,vec2(normalisedValue, 0));\n gl_FragColor = color;\n gl_FragColor.a = gl_FragColor.a * u_opacity ;\n }\n\n\n}\n";
|
|
18
|
-
var rasterVert = "precision highp float;\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_Mvp;\nattribute vec3 a_Position;\nattribute vec2 a_Uv;\nvarying vec2 v_texCoord;\n#pragma include \"projection\"\nvoid main() {\n v_texCoord = a_Uv;\n vec4 project_pos = project_position(vec4(a_Position, 1.0));\n gl_Position = project_common_position_to_clipspace(vec4(project_pos.xy,0., 1.0));\n\n if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) { // gaode2.x\n gl_Position = u_Mvp * (vec4(project_pos.xy,0., 1.0));\n } else {\n gl_Position = project_common_position_to_clipspace(vec4(project_pos.xy,0., 1.0));\n }\n}\n";
|
|
19
|
-
|
|
20
|
-
var RasterModel = function (_BaseModel) {
|
|
21
|
-
_inherits(RasterModel, _BaseModel);
|
|
22
|
-
|
|
23
|
-
var _super = _createSuper(RasterModel);
|
|
24
|
-
|
|
25
|
-
function RasterModel() {
|
|
26
|
-
var _this;
|
|
27
|
-
|
|
28
|
-
_classCallCheck(this, RasterModel);
|
|
29
|
-
|
|
30
|
-
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
31
|
-
args[_key] = arguments[_key];
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
_this = _super.call.apply(_super, [this].concat(args));
|
|
35
|
-
|
|
36
|
-
_defineProperty(_assertThisInitialized(_this), "texture", void 0);
|
|
37
|
-
|
|
38
|
-
_defineProperty(_assertThisInitialized(_this), "colorTexture", void 0);
|
|
39
|
-
|
|
40
|
-
return _this;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
_createClass(RasterModel, [{
|
|
44
|
-
key: "getUninforms",
|
|
45
|
-
value: function getUninforms() {
|
|
46
|
-
var _ref = this.layer.getLayerConfig(),
|
|
47
|
-
_ref$opacity = _ref.opacity,
|
|
48
|
-
opacity = _ref$opacity === void 0 ? 1 : _ref$opacity,
|
|
49
|
-
_ref$clampLow = _ref.clampLow,
|
|
50
|
-
clampLow = _ref$clampLow === void 0 ? true : _ref$clampLow,
|
|
51
|
-
_ref$clampHigh = _ref.clampHigh,
|
|
52
|
-
clampHigh = _ref$clampHigh === void 0 ? true : _ref$clampHigh,
|
|
53
|
-
_ref$noDataValue = _ref.noDataValue,
|
|
54
|
-
noDataValue = _ref$noDataValue === void 0 ? -9999999 : _ref$noDataValue,
|
|
55
|
-
_ref$domain = _ref.domain,
|
|
56
|
-
domain = _ref$domain === void 0 ? [0, 1] : _ref$domain;
|
|
57
|
-
|
|
58
|
-
this.updateColorTexure();
|
|
59
|
-
return {
|
|
60
|
-
u_opacity: opacity || 1,
|
|
61
|
-
u_texture: this.texture,
|
|
62
|
-
u_domain: domain,
|
|
63
|
-
u_clampLow: clampLow,
|
|
64
|
-
u_clampHigh: typeof clampHigh !== 'undefined' ? clampHigh : clampLow,
|
|
65
|
-
u_noDataValue: noDataValue,
|
|
66
|
-
u_colorTexture: this.colorTexture
|
|
67
|
-
};
|
|
68
|
-
}
|
|
69
|
-
}, {
|
|
70
|
-
key: "initModels",
|
|
71
|
-
value: function initModels() {
|
|
72
|
-
var source = this.layer.getSource();
|
|
73
|
-
var createTexture2D = this.rendererService.createTexture2D;
|
|
74
|
-
var parserDataItem = source.data.dataArray[0];
|
|
75
|
-
this.texture = createTexture2D({
|
|
76
|
-
data: parserDataItem.data,
|
|
77
|
-
width: parserDataItem.width,
|
|
78
|
-
height: parserDataItem.height,
|
|
79
|
-
format: gl.LUMINANCE,
|
|
80
|
-
type: gl.FLOAT
|
|
81
|
-
});
|
|
82
|
-
|
|
83
|
-
var _ref2 = this.layer.getLayerConfig(),
|
|
84
|
-
rampColors = _ref2.rampColors;
|
|
85
|
-
|
|
86
|
-
var imageData = generateColorRamp(rampColors);
|
|
87
|
-
this.colorTexture = createTexture2D({
|
|
88
|
-
data: imageData.data,
|
|
89
|
-
width: imageData.width,
|
|
90
|
-
height: imageData.height,
|
|
91
|
-
flipY: false
|
|
92
|
-
});
|
|
93
|
-
return [this.layer.buildLayerModel({
|
|
94
|
-
moduleName: 'RasterImageData',
|
|
95
|
-
vertexShader: rasterVert,
|
|
96
|
-
fragmentShader: rasterFrag,
|
|
97
|
-
triangulation: RasterImageTriangulation,
|
|
98
|
-
primitive: gl.TRIANGLES,
|
|
99
|
-
depth: {
|
|
100
|
-
enable: false
|
|
101
|
-
},
|
|
102
|
-
blend: this.getBlend()
|
|
103
|
-
})];
|
|
104
|
-
}
|
|
105
|
-
}, {
|
|
106
|
-
key: "buildModels",
|
|
107
|
-
value: function buildModels() {
|
|
108
|
-
return this.initModels();
|
|
109
|
-
}
|
|
110
|
-
}, {
|
|
111
|
-
key: "registerBuiltinAttributes",
|
|
112
|
-
value: function registerBuiltinAttributes() {
|
|
113
|
-
this.styleAttributeService.registerStyleAttribute({
|
|
114
|
-
name: 'uv',
|
|
115
|
-
type: AttributeType.Attribute,
|
|
116
|
-
descriptor: {
|
|
117
|
-
name: 'a_Uv',
|
|
118
|
-
buffer: {
|
|
119
|
-
usage: gl.DYNAMIC_DRAW,
|
|
120
|
-
data: [],
|
|
121
|
-
type: gl.FLOAT
|
|
122
|
-
},
|
|
123
|
-
size: 2,
|
|
124
|
-
update: function update(feature, featureIdx, vertex, attributeIdx) {
|
|
125
|
-
return [vertex[3], vertex[4]];
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
});
|
|
129
|
-
}
|
|
130
|
-
}, {
|
|
131
|
-
key: "updateColorTexure",
|
|
132
|
-
value: function updateColorTexure() {
|
|
133
|
-
var createTexture2D = this.rendererService.createTexture2D;
|
|
134
|
-
|
|
135
|
-
var _ref3 = this.layer.getLayerConfig(),
|
|
136
|
-
rampColors = _ref3.rampColors;
|
|
137
|
-
|
|
138
|
-
var imageData = generateColorRamp(rampColors);
|
|
139
|
-
this.colorTexture = createTexture2D({
|
|
140
|
-
data: imageData.data,
|
|
141
|
-
width: imageData.width,
|
|
142
|
-
height: imageData.height,
|
|
143
|
-
flipY: false
|
|
144
|
-
});
|
|
145
|
-
}
|
|
146
|
-
}]);
|
|
147
|
-
|
|
148
|
-
return RasterModel;
|
|
149
|
-
}(BaseModel);
|
|
150
|
-
|
|
151
|
-
export { RasterModel as default };
|
|
152
|
-
//# sourceMappingURL=raster.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/raster/models/raster.ts"],"names":["AttributeType","gl","generateColorRamp","BaseModel","RasterImageTriangulation","RasterModel","layer","getLayerConfig","opacity","clampLow","clampHigh","noDataValue","domain","updateColorTexure","u_opacity","u_texture","texture","u_domain","u_clampLow","u_clampHigh","u_noDataValue","u_colorTexture","colorTexture","source","getSource","createTexture2D","rendererService","parserDataItem","data","dataArray","width","height","format","LUMINANCE","type","FLOAT","rampColors","imageData","flipY","buildLayerModel","moduleName","vertexShader","rasterVert","fragmentShader","rasterFrag","triangulation","primitive","TRIANGLES","depth","enable","blend","getBlend","initModels","styleAttributeService","registerStyleAttribute","name","Attribute","descriptor","buffer","usage","DYNAMIC_DRAW","size","update","feature","featureIdx","vertex","attributeIdx"],"mappings":"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","sourcesContent":["import {\n AttributeType,\n gl,\n IEncodeFeature,\n ILayer,\n ILayerPlugin,\n IModel,\n IModelUniform,\n IRasterParserDataItem,\n IStyleAttributeService,\n ITexture2D,\n lazyInject,\n TYPES,\n} from '@antv/l7-core';\nimport { generateColorRamp, IColorRamp } from '@antv/l7-utils';\nimport BaseModel from '../../core/BaseModel';\nimport { RasterImageTriangulation } from '../../core/triangulation';\nimport rasterFrag from '../shaders/raster_2d_frag.glsl';\nimport rasterVert from '../shaders/raster_2d_vert.glsl';\n\ninterface IRasterLayerStyleOptions {\n opacity: number;\n domain: [number, number];\n noDataValue: number;\n clampLow: boolean;\n clampHigh: boolean;\n rampColors: IColorRamp;\n}\nexport default class RasterModel extends BaseModel {\n protected texture: ITexture2D;\n protected colorTexture: ITexture2D;\n public getUninforms() {\n const {\n opacity = 1,\n clampLow = true,\n clampHigh = true,\n noDataValue = -9999999,\n domain = [0, 1],\n } = this.layer.getLayerConfig() as IRasterLayerStyleOptions;\n this.updateColorTexure();\n return {\n u_opacity: opacity || 1,\n u_texture: this.texture,\n u_domain: domain,\n u_clampLow: clampLow,\n u_clampHigh: typeof clampHigh !== 'undefined' ? clampHigh : clampLow,\n u_noDataValue: noDataValue,\n u_colorTexture: this.colorTexture,\n };\n }\n\n public initModels() {\n const source = this.layer.getSource();\n const { createTexture2D } = this.rendererService;\n const parserDataItem = source.data.dataArray[0];\n this.texture = createTexture2D({\n data: parserDataItem.data,\n width: parserDataItem.width,\n height: parserDataItem.height,\n format: gl.LUMINANCE,\n type: gl.FLOAT,\n // aniso: 4,\n });\n const {\n rampColors,\n } = this.layer.getLayerConfig() as IRasterLayerStyleOptions;\n const imageData = generateColorRamp(rampColors as IColorRamp);\n this.colorTexture = createTexture2D({\n data: imageData.data,\n width: imageData.width,\n height: imageData.height,\n flipY: false,\n });\n return [\n this.layer.buildLayerModel({\n moduleName: 'RasterImageData',\n vertexShader: rasterVert,\n fragmentShader: rasterFrag,\n triangulation: RasterImageTriangulation,\n primitive: gl.TRIANGLES,\n depth: { enable: false },\n blend: this.getBlend(),\n }),\n ];\n }\n\n public buildModels() {\n return this.initModels();\n }\n protected registerBuiltinAttributes() {\n // point layer size;\n this.styleAttributeService.registerStyleAttribute({\n name: 'uv',\n type: AttributeType.Attribute,\n descriptor: {\n name: 'a_Uv',\n buffer: {\n // give the WebGL driver a hint that this buffer may change\n usage: gl.DYNAMIC_DRAW,\n data: [],\n type: gl.FLOAT,\n },\n size: 2,\n update: (\n feature: IEncodeFeature,\n featureIdx: number,\n vertex: number[],\n attributeIdx: number,\n ) => {\n return [vertex[3], vertex[4]];\n },\n },\n });\n }\n\n private updateColorTexure() {\n const { createTexture2D } = this.rendererService;\n const {\n rampColors,\n } = this.layer.getLayerConfig() as IRasterLayerStyleOptions;\n const imageData = generateColorRamp(rampColors as IColorRamp);\n this.colorTexture = createTexture2D({\n data: imageData.data,\n width: imageData.width,\n height: imageData.height,\n flipY: false,\n });\n }\n}\n"],"file":"raster.js"}
|
package/es/raster/raster.d.ts
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { IModelUniform, ITexture2D } from '@antv/l7-core';
|
|
2
|
-
import { IColorRamp } from '@antv/l7-utils';
|
|
3
|
-
import BaseLayer from '../core/BaseLayer';
|
|
4
|
-
interface IRasterLayerStyleOptions {
|
|
5
|
-
opacity: number;
|
|
6
|
-
min: number;
|
|
7
|
-
max: number;
|
|
8
|
-
extent: [number, number, number, number];
|
|
9
|
-
rampColors: IColorRamp;
|
|
10
|
-
heightRatio: number;
|
|
11
|
-
}
|
|
12
|
-
export default class RasterLayer extends BaseLayer<IRasterLayerStyleOptions> {
|
|
13
|
-
type: string;
|
|
14
|
-
protected rasterTexture: ITexture2D;
|
|
15
|
-
protected colorTexture: ITexture2D;
|
|
16
|
-
getAnimateUniforms(): IModelUniform;
|
|
17
|
-
buildModels(): void;
|
|
18
|
-
renderModels(): this;
|
|
19
|
-
protected getConfigSchema(): {
|
|
20
|
-
properties: {
|
|
21
|
-
opacity: {
|
|
22
|
-
type: string;
|
|
23
|
-
minimum: number;
|
|
24
|
-
maximum: number;
|
|
25
|
-
};
|
|
26
|
-
};
|
|
27
|
-
};
|
|
28
|
-
private buildRasterModel;
|
|
29
|
-
}
|
|
30
|
-
export {};
|
package/es/raster/raster.js
DELETED
|
@@ -1,178 +0,0 @@
|
|
|
1
|
-
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
2
|
-
import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
|
3
|
-
import _createClass from "@babel/runtime/helpers/createClass";
|
|
4
|
-
import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
|
|
5
|
-
import _inherits from "@babel/runtime/helpers/inherits";
|
|
6
|
-
import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
|
|
7
|
-
import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
|
|
8
|
-
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
9
|
-
|
|
10
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
11
|
-
|
|
12
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
13
|
-
|
|
14
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
15
|
-
|
|
16
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
17
|
-
|
|
18
|
-
import { gl } from '@antv/l7-core';
|
|
19
|
-
import { generateColorRamp } from '@antv/l7-utils';
|
|
20
|
-
import BaseLayer from '../core/BaseLayer';
|
|
21
|
-
import { RasterTriangulation } from './buffers/triangulation';
|
|
22
|
-
var rasterFrag = "varying vec4 v_color;\nuniform float u_opacity: 1.0;\n#define PI 3.141592653589793\n\nvoid main() {\n gl_FragColor = v_color;\n gl_FragColor.a *= u_opacity;\n\n}\n";
|
|
23
|
-
var rasterVert = "precision highp float;\nattribute vec3 a_Position;\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_Mvp;\nuniform vec4 u_extent;\nuniform sampler2D u_texture;\nuniform sampler2D u_colorTexture;\nuniform float u_min;\nuniform float u_max;\nuniform float u_width;\nuniform float u_height;\nuniform float u_heightRatio;\n\nvarying vec2 v_texCoord;\nvarying vec4 v_color;\n\n#pragma include \"projection\"\nvoid main() {\n vec2 uv = a_Position.xy / vec2(u_width, u_height);\n vec2 minxy = project_position(vec4(u_extent.xy, 0, 1.0)).xy;\n vec2 maxxy = project_position(vec4(u_extent.zw, 0, 1.0)).xy;\n float value = texture2D(u_texture, vec2(uv.x,1.0 - uv.y)).x;\n vec2 step = (maxxy - minxy) / vec2(u_width, u_height);\n vec2 pos = minxy + vec2(a_Position.x, a_Position.y ) * step;\n // v_texCoord = a_Uv;\n value = clamp(value,u_min,u_max);\n float value1 = (value - u_min) / (u_max -u_min);\n vec4 color = texture2D(u_colorTexture,vec2(intensity, 0));\n\n // if(uv.x > 1.0 || uv.y > 1.0) {\n // v_color = vec4(0.);\n // }\n\n // vec2 range = u_extent.zw - u_extent.xy;\n // vec4 project_pos = project_position(vec4(pos, 0, 1.0));\n // gl_Position = project_common_position_to_clipspace(vec4(pos.xy, project_scale(value) * u_heightRatio, 1.0));\n\n if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) { // gaode2.x\n gl_Position = u_Mvp * (vec4(pos.xy, project_scale(value) * u_heightRatio, 1.0));\n } else {\n gl_Position = project_common_position_to_clipspace(vec4(pos.xy, project_scale(value) * u_heightRatio, 1.0));\n }\n\n}\n";
|
|
24
|
-
|
|
25
|
-
var RasterLayer = function (_BaseLayer) {
|
|
26
|
-
_inherits(RasterLayer, _BaseLayer);
|
|
27
|
-
|
|
28
|
-
var _super = _createSuper(RasterLayer);
|
|
29
|
-
|
|
30
|
-
function RasterLayer() {
|
|
31
|
-
var _this;
|
|
32
|
-
|
|
33
|
-
_classCallCheck(this, RasterLayer);
|
|
34
|
-
|
|
35
|
-
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
36
|
-
args[_key] = arguments[_key];
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
_this = _super.call.apply(_super, [this].concat(args));
|
|
40
|
-
|
|
41
|
-
_defineProperty(_assertThisInitialized(_this), "type", 'RasterLayer');
|
|
42
|
-
|
|
43
|
-
_defineProperty(_assertThisInitialized(_this), "rasterTexture", void 0);
|
|
44
|
-
|
|
45
|
-
_defineProperty(_assertThisInitialized(_this), "colorTexture", void 0);
|
|
46
|
-
|
|
47
|
-
return _this;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
_createClass(RasterLayer, [{
|
|
51
|
-
key: "getAnimateUniforms",
|
|
52
|
-
value: function getAnimateUniforms() {
|
|
53
|
-
return {};
|
|
54
|
-
}
|
|
55
|
-
}, {
|
|
56
|
-
key: "buildModels",
|
|
57
|
-
value: function buildModels() {
|
|
58
|
-
var parserDataItem = this.getSource().data.dataArray[0];
|
|
59
|
-
var createTexture2D = this.rendererService.createTexture2D;
|
|
60
|
-
this.rasterTexture = createTexture2D({
|
|
61
|
-
data: parserDataItem.data,
|
|
62
|
-
width: parserDataItem.width,
|
|
63
|
-
height: parserDataItem.height,
|
|
64
|
-
format: gl.LUMINANCE,
|
|
65
|
-
type: gl.FLOAT,
|
|
66
|
-
aniso: 4
|
|
67
|
-
});
|
|
68
|
-
|
|
69
|
-
var _this$getLayerConfig = this.getLayerConfig(),
|
|
70
|
-
rampColors = _this$getLayerConfig.rampColors;
|
|
71
|
-
|
|
72
|
-
var imageData = generateColorRamp(rampColors);
|
|
73
|
-
this.colorTexture = createTexture2D({
|
|
74
|
-
data: imageData.data,
|
|
75
|
-
width: imageData.width,
|
|
76
|
-
height: imageData.height,
|
|
77
|
-
flipY: false
|
|
78
|
-
});
|
|
79
|
-
this.models = [this.buildRasterModel()];
|
|
80
|
-
}
|
|
81
|
-
}, {
|
|
82
|
-
key: "renderModels",
|
|
83
|
-
value: function renderModels() {
|
|
84
|
-
var _this2 = this;
|
|
85
|
-
|
|
86
|
-
var _this$getLayerConfig2 = this.getLayerConfig(),
|
|
87
|
-
opacity = _this$getLayerConfig2.opacity,
|
|
88
|
-
_this$getLayerConfig3 = _this$getLayerConfig2.heightRatio,
|
|
89
|
-
heightRatio = _this$getLayerConfig3 === void 0 ? 10 : _this$getLayerConfig3;
|
|
90
|
-
|
|
91
|
-
var parserDataItem = this.getSource().data.dataArray[0];
|
|
92
|
-
var coordinates = parserDataItem.coordinates,
|
|
93
|
-
width = parserDataItem.width,
|
|
94
|
-
height = parserDataItem.height,
|
|
95
|
-
min = parserDataItem.min,
|
|
96
|
-
max = parserDataItem.max;
|
|
97
|
-
this.models.forEach(function (model) {
|
|
98
|
-
return model.draw({
|
|
99
|
-
uniforms: {
|
|
100
|
-
u_opacity: opacity || 1,
|
|
101
|
-
u_texture: _this2.rasterTexture,
|
|
102
|
-
u_min: min,
|
|
103
|
-
u_width: width,
|
|
104
|
-
u_height: height,
|
|
105
|
-
u_max: max,
|
|
106
|
-
u_heightRatio: heightRatio,
|
|
107
|
-
u_colorTexture: _this2.colorTexture,
|
|
108
|
-
u_extent: [].concat(_toConsumableArray(coordinates[0]), _toConsumableArray(coordinates[1]))
|
|
109
|
-
}
|
|
110
|
-
});
|
|
111
|
-
});
|
|
112
|
-
return this;
|
|
113
|
-
}
|
|
114
|
-
}, {
|
|
115
|
-
key: "getConfigSchema",
|
|
116
|
-
value: function getConfigSchema() {
|
|
117
|
-
return {
|
|
118
|
-
properties: {
|
|
119
|
-
opacity: {
|
|
120
|
-
type: 'number',
|
|
121
|
-
minimum: 0,
|
|
122
|
-
maximum: 1
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
};
|
|
126
|
-
}
|
|
127
|
-
}, {
|
|
128
|
-
key: "buildRasterModel",
|
|
129
|
-
value: function buildRasterModel() {
|
|
130
|
-
var source = this.getSource();
|
|
131
|
-
var sourceFeature = source.data.dataArray[0];
|
|
132
|
-
var triangulation = RasterTriangulation(sourceFeature);
|
|
133
|
-
this.shaderModuleService.registerModule('raster', {
|
|
134
|
-
vs: rasterVert,
|
|
135
|
-
fs: rasterFrag
|
|
136
|
-
});
|
|
137
|
-
|
|
138
|
-
var _this$shaderModuleSer = this.shaderModuleService.getModule('raster'),
|
|
139
|
-
vs = _this$shaderModuleSer.vs,
|
|
140
|
-
fs = _this$shaderModuleSer.fs,
|
|
141
|
-
uniforms = _this$shaderModuleSer.uniforms;
|
|
142
|
-
|
|
143
|
-
var _this$rendererService = this.rendererService,
|
|
144
|
-
createAttribute = _this$rendererService.createAttribute,
|
|
145
|
-
createElements = _this$rendererService.createElements,
|
|
146
|
-
createBuffer = _this$rendererService.createBuffer,
|
|
147
|
-
createModel = _this$rendererService.createModel;
|
|
148
|
-
return createModel({
|
|
149
|
-
vs: vs,
|
|
150
|
-
fs: fs,
|
|
151
|
-
attributes: {
|
|
152
|
-
a_Position: createAttribute({
|
|
153
|
-
buffer: createBuffer({
|
|
154
|
-
data: triangulation.vertices,
|
|
155
|
-
type: gl.FLOAT
|
|
156
|
-
}),
|
|
157
|
-
size: 2
|
|
158
|
-
})
|
|
159
|
-
},
|
|
160
|
-
primitive: gl.TRIANGLES,
|
|
161
|
-
uniforms: _objectSpread({}, uniforms),
|
|
162
|
-
depth: {
|
|
163
|
-
enable: true
|
|
164
|
-
},
|
|
165
|
-
elements: createElements({
|
|
166
|
-
data: triangulation.indices,
|
|
167
|
-
type: gl.UNSIGNED_INT,
|
|
168
|
-
count: triangulation.indices.length
|
|
169
|
-
})
|
|
170
|
-
});
|
|
171
|
-
}
|
|
172
|
-
}]);
|
|
173
|
-
|
|
174
|
-
return RasterLayer;
|
|
175
|
-
}(BaseLayer);
|
|
176
|
-
|
|
177
|
-
export { RasterLayer as default };
|
|
178
|
-
//# sourceMappingURL=raster.js.map
|
package/es/raster/raster.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/raster/raster.ts"],"names":["gl","generateColorRamp","BaseLayer","RasterTriangulation","RasterLayer","parserDataItem","getSource","data","dataArray","createTexture2D","rendererService","rasterTexture","width","height","format","LUMINANCE","type","FLOAT","aniso","getLayerConfig","rampColors","imageData","colorTexture","flipY","models","buildRasterModel","opacity","heightRatio","coordinates","min","max","forEach","model","draw","uniforms","u_opacity","u_texture","u_min","u_width","u_height","u_max","u_heightRatio","u_colorTexture","u_extent","properties","minimum","maximum","source","sourceFeature","triangulation","shaderModuleService","registerModule","vs","rasterVert","fs","rasterFrag","getModule","createAttribute","createElements","createBuffer","createModel","attributes","a_Position","buffer","vertices","size","primitive","TRIANGLES","depth","enable","elements","indices","UNSIGNED_INT","count","length"],"mappings":"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","sourcesContent":["import {\n AttributeType,\n gl,\n IEncodeFeature,\n ILayer,\n ILayerPlugin,\n IModelUniform,\n IRasterParserDataItem,\n IStyleAttributeService,\n ITexture2D,\n lazyInject,\n TYPES,\n} from '@antv/l7-core';\n\nimport { generateColorRamp, IColorRamp } from '@antv/l7-utils';\nimport BaseLayer from '../core/BaseLayer';\nimport { RasterTriangulation } from './buffers/triangulation';\nimport rasterFrag from './shaders/raster_frag.glsl';\nimport rasterVert from './shaders/raster_vert.glsl';\ninterface IRasterLayerStyleOptions {\n opacity: number;\n min: number;\n max: number;\n extent: [number, number, number, number];\n rampColors: IColorRamp;\n heightRatio: number;\n}\n\nexport default class RasterLayer extends BaseLayer<IRasterLayerStyleOptions> {\n public type: string = 'RasterLayer';\n protected rasterTexture: ITexture2D;\n protected colorTexture: ITexture2D;\n\n public getAnimateUniforms(): IModelUniform {\n return {};\n }\n\n public buildModels() {\n const parserDataItem = this.getSource().data.dataArray[0];\n const { createTexture2D } = this.rendererService;\n this.rasterTexture = createTexture2D({\n data: parserDataItem.data,\n width: parserDataItem.width,\n height: parserDataItem.height,\n format: gl.LUMINANCE,\n type: gl.FLOAT,\n aniso: 4,\n });\n const { rampColors } = this.getLayerConfig();\n const imageData = generateColorRamp(rampColors as IColorRamp);\n this.colorTexture = createTexture2D({\n data: imageData.data,\n width: imageData.width,\n height: imageData.height,\n flipY: false,\n });\n this.models = [this.buildRasterModel()];\n }\n public renderModels() {\n const { opacity, heightRatio = 10 } = this.getLayerConfig();\n const parserDataItem = this.getSource().data.dataArray[0];\n const { coordinates, width, height, min, max } = parserDataItem;\n this.models.forEach((model) =>\n model.draw({\n uniforms: {\n u_opacity: opacity || 1,\n u_texture: this.rasterTexture,\n u_min: min,\n u_width: width,\n u_height: height,\n u_max: max,\n u_heightRatio: heightRatio,\n u_colorTexture: this.colorTexture,\n u_extent: [...coordinates[0], ...coordinates[1]],\n },\n }),\n );\n\n return this;\n }\n protected getConfigSchema() {\n return {\n properties: {\n opacity: {\n type: 'number',\n minimum: 0,\n maximum: 1,\n },\n },\n };\n }\n\n private buildRasterModel() {\n const source = this.getSource();\n const sourceFeature = source.data.dataArray[0];\n const triangulation = RasterTriangulation(sourceFeature);\n this.shaderModuleService.registerModule('raster', {\n vs: rasterVert,\n fs: rasterFrag,\n });\n\n const { vs, fs, uniforms } = this.shaderModuleService.getModule('raster');\n const {\n createAttribute,\n createElements,\n createBuffer,\n createModel,\n } = this.rendererService;\n return createModel({\n vs,\n fs,\n attributes: {\n a_Position: createAttribute({\n buffer: createBuffer({\n data: triangulation.vertices,\n type: gl.FLOAT,\n }),\n size: 2,\n }),\n },\n primitive: gl.TRIANGLES,\n uniforms: {\n ...uniforms,\n },\n depth: {\n enable: true,\n },\n elements: createElements({\n data: triangulation.indices,\n type: gl.UNSIGNED_INT,\n count: triangulation.indices.length,\n }),\n });\n }\n}\n"],"file":"raster.js"}
|