@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.
Files changed (262) hide show
  1. package/lib/core/BaseLayer.js +4 -1
  2. package/lib/core/BaseLayer.js.map +1 -1
  3. package/lib/core/BaseModel.js +1 -1
  4. package/lib/core/BaseModel.js.map +1 -1
  5. package/lib/heatmap/models/heatmap.js +12 -17
  6. package/lib/heatmap/models/heatmap.js.map +1 -1
  7. package/lib/image/models/image.js +28 -7
  8. package/lib/image/models/image.js.map +1 -1
  9. package/lib/imagetile/index.js +95 -0
  10. package/lib/imagetile/index.js.map +1 -0
  11. package/lib/imagetile/models/imagetile.js +177 -0
  12. package/lib/imagetile/models/imagetile.js.map +1 -0
  13. package/lib/imagetile/models/index.js +17 -0
  14. package/lib/imagetile/models/index.js.map +1 -0
  15. package/lib/imagetile/utils/ImageTile.js +99 -0
  16. package/lib/imagetile/utils/ImageTile.js.map +1 -0
  17. package/lib/imagetile/utils/Tile.js +324 -0
  18. package/lib/imagetile/utils/Tile.js.map +1 -0
  19. package/lib/imagetile/utils/lruCache.js +109 -0
  20. package/lib/imagetile/utils/lruCache.js.map +1 -0
  21. package/lib/imagetile/utils/tileCache.js +58 -0
  22. package/lib/imagetile/utils/tileCache.js.map +1 -0
  23. package/lib/index.js +8 -0
  24. package/lib/index.js.map +1 -1
  25. package/lib/line/index.js +3 -0
  26. package/lib/line/index.js.map +1 -1
  27. package/lib/line/models/arc.js +2 -2
  28. package/lib/line/models/arc_3d.js +2 -2
  29. package/lib/line/models/arcmini.js +160 -0
  30. package/lib/line/models/arcmini.js.map +1 -0
  31. package/lib/line/models/great_circle.js +2 -2
  32. package/lib/line/models/index.js +3 -0
  33. package/lib/line/models/index.js.map +1 -1
  34. package/lib/line/models/line.js +2 -2
  35. package/lib/plugins/LayerStylePlugin.js.map +1 -1
  36. package/lib/plugins/ShaderUniformPlugin.js +3 -1
  37. package/lib/plugins/ShaderUniformPlugin.js.map +1 -1
  38. package/lib/point/models/image.js.map +1 -1
  39. package/package.json +6 -5
  40. package/CHANGELOG.md +0 -492
  41. package/LICENSE.md +0 -21
  42. package/es/citybuliding/building.d.ts +0 -17
  43. package/es/citybuliding/building.js +0 -79
  44. package/es/citybuliding/building.js.map +0 -1
  45. package/es/citybuliding/models/build.d.ts +0 -13
  46. package/es/citybuliding/models/build.js +0 -124
  47. package/es/citybuliding/models/build.js.map +0 -1
  48. package/es/core/BaseLayer.d.ts +0 -174
  49. package/es/core/BaseLayer.js +0 -974
  50. package/es/core/BaseLayer.js.map +0 -1
  51. package/es/core/BaseModel.d.ts +0 -135
  52. package/es/core/BaseModel.js +0 -412
  53. package/es/core/BaseModel.js.map +0 -1
  54. package/es/core/interface.d.ts +0 -19
  55. package/es/core/interface.js +0 -7
  56. package/es/core/interface.js.map +0 -1
  57. package/es/core/schema.d.ts +0 -27
  58. package/es/core/schema.js +0 -23
  59. package/es/core/schema.js.map +0 -1
  60. package/es/core/shape/Path.d.ts +0 -39
  61. package/es/core/shape/Path.js +0 -57
  62. package/es/core/shape/Path.js.map +0 -1
  63. package/es/core/shape/extrude.d.ts +0 -17
  64. package/es/core/shape/extrude.js +0 -143
  65. package/es/core/shape/extrude.js.map +0 -1
  66. package/es/core/triangulation.d.ts +0 -109
  67. package/es/core/triangulation.js +0 -328
  68. package/es/core/triangulation.js.map +0 -1
  69. package/es/earth/index.d.ts +0 -17
  70. package/es/earth/index.js +0 -81
  71. package/es/earth/index.js.map +0 -1
  72. package/es/earth/models/atmosphere.d.ts +0 -9
  73. package/es/earth/models/atmosphere.js +0 -125
  74. package/es/earth/models/atmosphere.js.map +0 -1
  75. package/es/earth/models/base.d.ts +0 -16
  76. package/es/earth/models/base.js +0 -193
  77. package/es/earth/models/base.js.map +0 -1
  78. package/es/earth/models/bloomsphere.d.ts +0 -9
  79. package/es/earth/models/bloomsphere.js +0 -125
  80. package/es/earth/models/bloomsphere.js.map +0 -1
  81. package/es/earth/utils.d.ts +0 -26
  82. package/es/earth/utils.js +0 -81
  83. package/es/earth/utils.js.map +0 -1
  84. package/es/glsl.d.js +0 -2
  85. package/es/glsl.d.js.map +0 -1
  86. package/es/heatmap/index.d.ts +0 -22
  87. package/es/heatmap/index.js +0 -123
  88. package/es/heatmap/index.js.map +0 -1
  89. package/es/heatmap/models/grid.d.ts +0 -8
  90. package/es/heatmap/models/grid.js +0 -90
  91. package/es/heatmap/models/grid.js.map +0 -1
  92. package/es/heatmap/models/grid3d.d.ts +0 -8
  93. package/es/heatmap/models/grid3d.js +0 -122
  94. package/es/heatmap/models/grid3d.js.map +0 -1
  95. package/es/heatmap/models/heatmap.d.ts +0 -24
  96. package/es/heatmap/models/heatmap.js +0 -399
  97. package/es/heatmap/models/heatmap.js.map +0 -1
  98. package/es/heatmap/models/hexagon.d.ts +0 -8
  99. package/es/heatmap/models/hexagon.js +0 -90
  100. package/es/heatmap/models/hexagon.js.map +0 -1
  101. package/es/heatmap/models/index.d.ts +0 -5
  102. package/es/heatmap/models/index.js +0 -13
  103. package/es/heatmap/models/index.js.map +0 -1
  104. package/es/heatmap/triangulation.d.ts +0 -5
  105. package/es/heatmap/triangulation.js +0 -38
  106. package/es/heatmap/triangulation.js.map +0 -1
  107. package/es/image/index.d.ts +0 -22
  108. package/es/image/index.js +0 -82
  109. package/es/image/index.js.map +0 -1
  110. package/es/image/models/image.d.ts +0 -18
  111. package/es/image/models/image.js +0 -127
  112. package/es/image/models/image.js.map +0 -1
  113. package/es/image/models/index.d.ts +0 -5
  114. package/es/image/models/index.js +0 -6
  115. package/es/image/models/index.js.map +0 -1
  116. package/es/index.d.ts +0 -11
  117. package/es/index.js +0 -39
  118. package/es/index.js.map +0 -1
  119. package/es/line/index.d.ts +0 -25
  120. package/es/line/index.js +0 -95
  121. package/es/line/index.js.map +0 -1
  122. package/es/line/models/arc.d.ts +0 -12
  123. package/es/line/models/arc.js +0 -281
  124. package/es/line/models/arc.js.map +0 -1
  125. package/es/line/models/arc_3d.d.ts +0 -12
  126. package/es/line/models/arc_3d.js +0 -277
  127. package/es/line/models/arc_3d.js.map +0 -1
  128. package/es/line/models/great_circle.d.ts +0 -12
  129. package/es/line/models/great_circle.js +0 -269
  130. package/es/line/models/great_circle.js.map +0 -1
  131. package/es/line/models/index.d.ts +0 -5
  132. package/es/line/models/index.js +0 -12
  133. package/es/line/models/index.js.map +0 -1
  134. package/es/line/models/line.d.ts +0 -13
  135. package/es/line/models/line.js +0 -342
  136. package/es/line/models/line.js.map +0 -1
  137. package/es/plugins/DataMappingPlugin.d.ts +0 -13
  138. package/es/plugins/DataMappingPlugin.js +0 -199
  139. package/es/plugins/DataMappingPlugin.js.map +0 -1
  140. package/es/plugins/DataSourcePlugin.d.ts +0 -7
  141. package/es/plugins/DataSourcePlugin.js +0 -73
  142. package/es/plugins/DataSourcePlugin.js.map +0 -1
  143. package/es/plugins/FeatureScalePlugin.d.ts +0 -26
  144. package/es/plugins/FeatureScalePlugin.js +0 -270
  145. package/es/plugins/FeatureScalePlugin.js.map +0 -1
  146. package/es/plugins/LayerAnimateStylePlugin.d.ts +0 -7
  147. package/es/plugins/LayerAnimateStylePlugin.js +0 -50
  148. package/es/plugins/LayerAnimateStylePlugin.js.map +0 -1
  149. package/es/plugins/LayerModelPlugin.d.ts +0 -8
  150. package/es/plugins/LayerModelPlugin.js +0 -34
  151. package/es/plugins/LayerModelPlugin.js.map +0 -1
  152. package/es/plugins/LayerStylePlugin.d.ts +0 -8
  153. package/es/plugins/LayerStylePlugin.js +0 -35
  154. package/es/plugins/LayerStylePlugin.js.map +0 -1
  155. package/es/plugins/LightingPlugin.d.ts +0 -36
  156. package/es/plugins/LightingPlugin.js +0 -100
  157. package/es/plugins/LightingPlugin.js.map +0 -1
  158. package/es/plugins/MultiPassRendererPlugin.d.ts +0 -37
  159. package/es/plugins/MultiPassRendererPlugin.js +0 -79
  160. package/es/plugins/MultiPassRendererPlugin.js.map +0 -1
  161. package/es/plugins/PixelPickingPlugin.d.ts +0 -8
  162. package/es/plugins/PixelPickingPlugin.js +0 -112
  163. package/es/plugins/PixelPickingPlugin.js.map +0 -1
  164. package/es/plugins/RegisterStyleAttributePlugin.d.ts +0 -11
  165. package/es/plugins/RegisterStyleAttributePlugin.js +0 -98
  166. package/es/plugins/RegisterStyleAttributePlugin.js.map +0 -1
  167. package/es/plugins/ShaderUniformPlugin.d.ts +0 -16
  168. package/es/plugins/ShaderUniformPlugin.js +0 -78
  169. package/es/plugins/ShaderUniformPlugin.js.map +0 -1
  170. package/es/plugins/UpdateModelPlugin.d.ts +0 -8
  171. package/es/plugins/UpdateModelPlugin.js +0 -27
  172. package/es/plugins/UpdateModelPlugin.js.map +0 -1
  173. package/es/plugins/UpdateStyleAttributePlugin.d.ts +0 -12
  174. package/es/plugins/UpdateStyleAttributePlugin.js +0 -74
  175. package/es/plugins/UpdateStyleAttributePlugin.js.map +0 -1
  176. package/es/point/index.d.ts +0 -30
  177. package/es/point/index.js +0 -130
  178. package/es/point/index.js.map +0 -1
  179. package/es/point/models/extrude.d.ts +0 -14
  180. package/es/point/models/extrude.js +0 -180
  181. package/es/point/models/extrude.js.map +0 -1
  182. package/es/point/models/fill.d.ts +0 -17
  183. package/es/point/models/fill.js +0 -247
  184. package/es/point/models/fill.js.map +0 -1
  185. package/es/point/models/icon-font.d.ts +0 -11
  186. package/es/point/models/icon-font.js +0 -181
  187. package/es/point/models/icon-font.js.map +0 -1
  188. package/es/point/models/image.d.ts +0 -11
  189. package/es/point/models/image.js +0 -207
  190. package/es/point/models/image.js.map +0 -1
  191. package/es/point/models/index.d.ts +0 -5
  192. package/es/point/models/index.js +0 -16
  193. package/es/point/models/index.js.map +0 -1
  194. package/es/point/models/normal.d.ts +0 -21
  195. package/es/point/models/normal.js +0 -155
  196. package/es/point/models/normal.js.map +0 -1
  197. package/es/point/models/text.d.ts +0 -56
  198. package/es/point/models/text.js +0 -522
  199. package/es/point/models/text.js.map +0 -1
  200. package/es/point/shape/Path.d.ts +0 -40
  201. package/es/point/shape/Path.js +0 -57
  202. package/es/point/shape/Path.js.map +0 -1
  203. package/es/point/shape/extrude.d.ts +0 -15
  204. package/es/point/shape/extrude.js +0 -58
  205. package/es/point/shape/extrude.js.map +0 -1
  206. package/es/polygon/index.d.ts +0 -22
  207. package/es/polygon/index.js +0 -124
  208. package/es/polygon/index.js.map +0 -1
  209. package/es/polygon/models/extrude.d.ts +0 -13
  210. package/es/polygon/models/extrude.js +0 -139
  211. package/es/polygon/models/extrude.js.map +0 -1
  212. package/es/polygon/models/fill.d.ts +0 -13
  213. package/es/polygon/models/fill.js +0 -108
  214. package/es/polygon/models/fill.js.map +0 -1
  215. package/es/polygon/models/index.d.ts +0 -5
  216. package/es/polygon/models/index.js +0 -20
  217. package/es/polygon/models/index.js.map +0 -1
  218. package/es/raster/buffers/triangulation.d.ts +0 -6
  219. package/es/raster/buffers/triangulation.js +0 -28
  220. package/es/raster/buffers/triangulation.js.map +0 -1
  221. package/es/raster/image.d.ts +0 -0
  222. package/es/raster/image.js +0 -2
  223. package/es/raster/image.js.map +0 -1
  224. package/es/raster/index.d.ts +0 -28
  225. package/es/raster/index.js +0 -83
  226. package/es/raster/index.js.map +0 -1
  227. package/es/raster/models/index.d.ts +0 -5
  228. package/es/raster/models/index.js +0 -7
  229. package/es/raster/models/index.js.map +0 -1
  230. package/es/raster/models/raster.d.ts +0 -19
  231. package/es/raster/models/raster.js +0 -152
  232. package/es/raster/models/raster.js.map +0 -1
  233. package/es/raster/raster.d.ts +0 -30
  234. package/es/raster/raster.js +0 -178
  235. package/es/raster/raster.js.map +0 -1
  236. package/es/raster/raster2d.d.ts +0 -27
  237. package/es/raster/raster2d.js +0 -158
  238. package/es/raster/raster2d.js.map +0 -1
  239. package/es/utils/blend.d.ts +0 -2
  240. package/es/utils/blend.js +0 -55
  241. package/es/utils/blend.js.map +0 -1
  242. package/es/utils/collision-index.d.ts +0 -47
  243. package/es/utils/collision-index.js +0 -87
  244. package/es/utils/collision-index.js.map +0 -1
  245. package/es/utils/dataMappingStyle.d.ts +0 -30
  246. package/es/utils/dataMappingStyle.js +0 -88
  247. package/es/utils/dataMappingStyle.js.map +0 -1
  248. package/es/utils/extrude_polyline.d.ts +0 -48
  249. package/es/utils/extrude_polyline.js +0 -405
  250. package/es/utils/extrude_polyline.js.map +0 -1
  251. package/es/utils/geo.d.ts +0 -3
  252. package/es/utils/geo.js +0 -24
  253. package/es/utils/geo.js.map +0 -1
  254. package/es/utils/grid-index.d.ts +0 -28
  255. package/es/utils/grid-index.js +0 -193
  256. package/es/utils/grid-index.js.map +0 -1
  257. package/es/utils/polylineNormal.d.ts +0 -9
  258. package/es/utils/polylineNormal.js +0 -171
  259. package/es/utils/polylineNormal.js.map +0 -1
  260. package/es/utils/symbol-layout.d.ts +0 -43
  261. package/es/utils/symbol-layout.js +0 -260
  262. package/es/utils/symbol-layout.js.map +0 -1
@@ -1,57 +0,0 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
-
3
- var _geometryShape;
4
-
5
- export var ShapeType3D;
6
-
7
- (function (ShapeType3D) {
8
- ShapeType3D["CYLINDER"] = "cylinder";
9
- ShapeType3D["SQUARECOLUMN"] = "squareColumn";
10
- ShapeType3D["TRIANGLECOLUMN"] = "triangleColumn";
11
- ShapeType3D["HEXAGONCOLUMN"] = "hexagonColumn";
12
- ShapeType3D["PENTAGONCOLUMN"] = "pentagonColumn";
13
- })(ShapeType3D || (ShapeType3D = {}));
14
-
15
- export var ShapeType2D;
16
-
17
- (function (ShapeType2D) {
18
- ShapeType2D["CIRCLE"] = "circle";
19
- ShapeType2D["SQUARE"] = "square";
20
- ShapeType2D["TRIANGLE"] = "triangle";
21
- ShapeType2D["HEXAGON"] = "hexagon";
22
- ShapeType2D["PENTAGON"] = "pentagon";
23
- })(ShapeType2D || (ShapeType2D = {}));
24
-
25
- export function polygonPath(pointCount) {
26
- var start = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
27
- var step = Math.PI * 2 / pointCount;
28
- var line = [];
29
-
30
- for (var i = 0; i < pointCount; i++) {
31
- line.push(step * i + start * Math.PI / 12);
32
- }
33
-
34
- var path = line.map(function (t) {
35
- var x = Math.sin(t + Math.PI / 4);
36
- var y = Math.cos(t + Math.PI / 4);
37
- return [x, y, 0];
38
- });
39
- return path;
40
- }
41
- export function circle() {
42
- return polygonPath(30);
43
- }
44
- export function square() {
45
- return polygonPath(4);
46
- }
47
- export function triangle() {
48
- return polygonPath(3);
49
- }
50
- export function hexagon() {
51
- return polygonPath(6);
52
- }
53
- export function pentagon() {
54
- return polygonPath(5);
55
- }
56
- export var geometryShape = (_geometryShape = {}, _defineProperty(_geometryShape, ShapeType2D.CIRCLE, circle), _defineProperty(_geometryShape, ShapeType2D.HEXAGON, hexagon), _defineProperty(_geometryShape, ShapeType2D.TRIANGLE, triangle), _defineProperty(_geometryShape, ShapeType2D.SQUARE, square), _defineProperty(_geometryShape, ShapeType2D.PENTAGON, pentagon), _defineProperty(_geometryShape, ShapeType3D.CYLINDER, circle), _defineProperty(_geometryShape, ShapeType3D.HEXAGONCOLUMN, hexagon), _defineProperty(_geometryShape, ShapeType3D.TRIANGLECOLUMN, triangle), _defineProperty(_geometryShape, ShapeType3D.SQUARECOLUMN, square), _defineProperty(_geometryShape, ShapeType3D.PENTAGONCOLUMN, pentagon), _geometryShape);
57
- //# sourceMappingURL=Path.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/point/shape/Path.ts"],"names":["ShapeType3D","ShapeType2D","polygonPath","pointCount","start","step","Math","PI","line","i","push","path","map","t","x","sin","y","cos","circle","square","triangle","hexagon","pentagon","geometryShape","CIRCLE","HEXAGON","TRIANGLE","SQUARE","PENTAGON","CYLINDER","HEXAGONCOLUMN","TRIANGLECOLUMN","SQUARECOLUMN","PENTAGONCOLUMN"],"mappings":";;;;AAEA,WAAYA,WAAZ;;WAAYA,W;AAAAA,EAAAA,W;AAAAA,EAAAA,W;AAAAA,EAAAA,W;AAAAA,EAAAA,W;AAAAA,EAAAA,W;GAAAA,W,KAAAA,W;;AAOZ,WAAYC,WAAZ;;WAAYA,W;AAAAA,EAAAA,W;AAAAA,EAAAA,W;AAAAA,EAAAA,W;AAAAA,EAAAA,W;AAAAA,EAAAA,W;GAAAA,W,KAAAA,W;;AAaZ,OAAO,SAASC,WAAT,CAAqBC,UAArB,EAAmE;AAAA,MAA1BC,KAA0B,uEAAV,CAAU;AACxE,MAAMC,IAAI,GAAIC,IAAI,CAACC,EAAL,GAAU,CAAX,GAAgBJ,UAA7B;AACA,MAAMK,IAAI,GAAG,EAAb;;AACA,OAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGN,UAApB,EAAgCM,CAAC,EAAjC,EAAqC;AACnCD,IAAAA,IAAI,CAACE,IAAL,CAAUL,IAAI,GAAGI,CAAP,GAAYL,KAAK,GAAGE,IAAI,CAACC,EAAd,GAAoB,EAAzC;AACD;;AACD,MAAMI,IAAW,GAAGH,IAAI,CAACI,GAAL,CAAS,UAACC,CAAD,EAAO;AAClC,QAAMC,CAAC,GAAGR,IAAI,CAACS,GAAL,CAASF,CAAC,GAAGP,IAAI,CAACC,EAAL,GAAU,CAAvB,CAAV;AACA,QAAMS,CAAC,GAAGV,IAAI,CAACW,GAAL,CAASJ,CAAC,GAAGP,IAAI,CAACC,EAAL,GAAU,CAAvB,CAAV;AACA,WAAO,CAACO,CAAD,EAAIE,CAAJ,EAAO,CAAP,CAAP;AACD,GAJmB,CAApB;AAMA,SAAOL,IAAP;AACD;AAED,OAAO,SAASO,MAAT,GAAyB;AAC9B,SAAOhB,WAAW,CAAC,EAAD,CAAlB;AACD;AACD,OAAO,SAASiB,MAAT,GAAyB;AAC9B,SAAOjB,WAAW,CAAC,CAAD,CAAlB;AACD;AACD,OAAO,SAASkB,QAAT,GAA2B;AAChC,SAAOlB,WAAW,CAAC,CAAD,CAAlB;AACD;AACD,OAAO,SAASmB,OAAT,GAA0B;AAC/B,SAAOnB,WAAW,CAAC,CAAD,CAAlB;AACD;AACD,OAAO,SAASoB,QAAT,GAA2B;AAChC,SAAOpB,WAAW,CAAC,CAAD,CAAlB;AACD;AAED,OAAO,IAAMqB,aAAa,yDACvBtB,WAAW,CAACuB,MADW,EACFN,MADE,mCAEvBjB,WAAW,CAACwB,OAFW,EAEDJ,OAFC,mCAGvBpB,WAAW,CAACyB,QAHW,EAGAN,QAHA,mCAIvBnB,WAAW,CAAC0B,MAJW,EAIFR,MAJE,mCAKvBlB,WAAW,CAAC2B,QALW,EAKAN,QALA,mCAMvBtB,WAAW,CAAC6B,QANW,EAMAX,MANA,mCAOvBlB,WAAW,CAAC8B,aAPW,EAOKT,OAPL,mCAQvBrB,WAAW,CAAC+B,cARW,EAQMX,QARN,mCASvBpB,WAAW,CAACgC,YATW,EASIb,MATJ,mCAUvBnB,WAAW,CAACiC,cAVW,EAUMX,QAVN,kBAAnB","sourcesContent":["type IPosition = [number, number, number];\nexport type IPath = IPosition[];\nexport enum ShapeType3D {\n CYLINDER = 'cylinder',\n SQUARECOLUMN = 'squareColumn',\n TRIANGLECOLUMN = 'triangleColumn',\n HEXAGONCOLUMN = 'hexagonColumn',\n PENTAGONCOLUMN = 'pentagonColumn',\n}\nexport enum ShapeType2D {\n CIRCLE = 'circle',\n SQUARE = 'square',\n TRIANGLE = 'triangle',\n HEXAGON = 'hexagon',\n PENTAGON = 'pentagon',\n}\n\n/**\n * 生成规则多边形顶点个数\n * @param pointCount 顶点个数 3 => 三角形\n * @param start 顶点起始角度 调整图形的方向\n */\nexport function polygonPath(pointCount: number, start: number = 0): IPath {\n const step = (Math.PI * 2) / pointCount;\n const line = [];\n for (let i = 0; i < pointCount; i++) {\n line.push(step * i + (start * Math.PI) / 12);\n }\n const path: IPath = line.map((t) => {\n const x = Math.sin(t + Math.PI / 4);\n const y = Math.cos(t + Math.PI / 4);\n return [x, y, 0];\n });\n // path.push(path[0]);\n return path;\n}\n\nexport function circle(): IPath {\n return polygonPath(30);\n}\nexport function square(): IPath {\n return polygonPath(4);\n}\nexport function triangle(): IPath {\n return polygonPath(3);\n}\nexport function hexagon(): IPath {\n return polygonPath(6);\n}\nexport function pentagon(): IPath {\n return polygonPath(5);\n}\n\nexport const geometryShape = {\n [ShapeType2D.CIRCLE]: circle,\n [ShapeType2D.HEXAGON]: hexagon,\n [ShapeType2D.TRIANGLE]: triangle,\n [ShapeType2D.SQUARE]: square,\n [ShapeType2D.PENTAGON]: pentagon,\n [ShapeType3D.CYLINDER]: circle,\n [ShapeType3D.HEXAGONCOLUMN]: hexagon,\n [ShapeType3D.TRIANGLECOLUMN]: triangle,\n [ShapeType3D.SQUARECOLUMN]: square,\n [ShapeType3D.PENTAGONCOLUMN]: pentagon,\n};\n"],"file":"Path.js"}
@@ -1,15 +0,0 @@
1
- import { IPath } from './Path';
2
- export interface IExtrudeGeomety {
3
- positions: number[];
4
- index: number[];
5
- }
6
- /**
7
- * 拉伸多边形顶点,返回拉伸后的顶点信息
8
- * @param paths 路径数据组
9
- * @param extrude 是否拉伸
10
- */
11
- export default function extrudePolygon(path: IPath[]): IExtrudeGeomety;
12
- export declare function fillPolygon(points: IPath[]): {
13
- positions: number[];
14
- index: number[];
15
- };
@@ -1,58 +0,0 @@
1
- import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
2
- import earcut from 'earcut';
3
- export default function extrudePolygon(path) {
4
- var p1 = path[0][0];
5
- var p2 = path[0][path[0].length - 1];
6
-
7
- if (p1[0] === p2[0] && p1[1] === p2[1]) {
8
- path[0] = path[0].slice(0, path[0].length - 1);
9
- }
10
-
11
- var n = path[0].length;
12
- var flattengeo = earcut.flatten(path);
13
- var positions = [];
14
- var indexArray = [];
15
- var normals = [];
16
-
17
- for (var j = 0; j < flattengeo.vertices.length / 3; j++) {
18
- flattengeo.vertices[j * 3 + 2] = 1;
19
- normals.push(0, 0, 1);
20
- }
21
-
22
- positions.push.apply(positions, _toConsumableArray(flattengeo.vertices));
23
- var triangles = earcut(flattengeo.vertices, flattengeo.holes, flattengeo.dimensions);
24
- indexArray.push.apply(indexArray, _toConsumableArray(triangles));
25
-
26
- var _loop = function _loop(i) {
27
- var prePoint = flattengeo.vertices.slice(i * 3, i * 3 + 3);
28
- var nextPoint = flattengeo.vertices.slice(i * 3 + 3, i * 3 + 6);
29
-
30
- if (nextPoint.length === 0) {
31
- nextPoint = flattengeo.vertices.slice(0, 3);
32
- }
33
-
34
- var indexOffset = positions.length / 3;
35
- positions.push(prePoint[0], prePoint[1], 1, nextPoint[0], nextPoint[1], 1, prePoint[0], prePoint[1], 0, nextPoint[0], nextPoint[1], 0);
36
- indexArray.push.apply(indexArray, _toConsumableArray([1, 2, 0, 3, 2, 1].map(function (v) {
37
- return v + indexOffset;
38
- })));
39
- };
40
-
41
- for (var i = 0; i < n; i++) {
42
- _loop(i);
43
- }
44
-
45
- return {
46
- positions: positions,
47
- index: indexArray
48
- };
49
- }
50
- export function fillPolygon(points) {
51
- var flattengeo = earcut.flatten(points);
52
- var triangles = earcut(flattengeo.vertices, flattengeo.holes, flattengeo.dimensions);
53
- return {
54
- positions: flattengeo.vertices,
55
- index: triangles
56
- };
57
- }
58
- //# sourceMappingURL=extrude.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/point/shape/extrude.ts"],"names":["earcut","extrudePolygon","path","p1","p2","length","slice","n","flattengeo","flatten","positions","indexArray","normals","j","vertices","push","triangles","holes","dimensions","i","prePoint","nextPoint","indexOffset","map","v","index","fillPolygon","points"],"mappings":"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","sourcesContent":["import earcut from 'earcut';\nimport { IPath } from './Path';\nexport interface IExtrudeGeomety {\n positions: number[];\n index: number[];\n}\n/**\n * 拉伸多边形顶点,返回拉伸后的顶点信息\n * @param paths 路径数据组\n * @param extrude 是否拉伸\n */\nexport default function extrudePolygon(path: IPath[]): IExtrudeGeomety {\n const p1 = path[0][0];\n const p2 = path[0][path[0].length - 1];\n if (p1[0] === p2[0] && p1[1] === p2[1]) {\n path[0] = path[0].slice(0, path[0].length - 1);\n }\n const n = path[0].length;\n const flattengeo = earcut.flatten(path);\n const positions = [];\n const indexArray = [];\n const normals = [];\n // 设置顶部z值\n for (let j = 0; j < flattengeo.vertices.length / 3; j++) {\n flattengeo.vertices[j * 3 + 2] = 1;\n normals.push(0, 0, 1);\n }\n positions.push(...flattengeo.vertices);\n const triangles = earcut(\n flattengeo.vertices,\n flattengeo.holes,\n flattengeo.dimensions,\n );\n indexArray.push(...triangles);\n for (let i = 0; i < n; i++) {\n const prePoint = flattengeo.vertices.slice(i * 3, i * 3 + 3);\n let nextPoint = flattengeo.vertices.slice(i * 3 + 3, i * 3 + 6);\n if (nextPoint.length === 0) {\n nextPoint = flattengeo.vertices.slice(0, 3);\n }\n const indexOffset = positions.length / 3;\n positions.push(\n prePoint[0],\n prePoint[1],\n 1,\n nextPoint[0],\n nextPoint[1],\n 1,\n prePoint[0],\n prePoint[1],\n 0,\n nextPoint[0],\n nextPoint[1],\n 0,\n );\n indexArray.push(...[1, 2, 0, 3, 2, 1].map((v) => v + indexOffset));\n }\n return {\n positions,\n index: indexArray,\n };\n}\nexport function fillPolygon(points: IPath[]) {\n const flattengeo = earcut.flatten(points);\n const triangles = earcut(\n flattengeo.vertices,\n flattengeo.holes,\n flattengeo.dimensions,\n );\n return {\n positions: flattengeo.vertices,\n index: triangles,\n };\n}\n"],"file":"extrude.js"}
@@ -1,22 +0,0 @@
1
- import BaseLayer from '../core/BaseLayer';
2
- import { PolygonModelType } from './models/';
3
- interface IPolygonLayerStyleOptions {
4
- opacity: number;
5
- }
6
- export default class PolygonLayer extends BaseLayer<IPolygonLayerStyleOptions> {
7
- type: string;
8
- buildModels(): void;
9
- rebuildModels(): void;
10
- protected getConfigSchema(): {
11
- properties: {
12
- opacity: {
13
- type: string;
14
- minimum: number;
15
- maximum: number;
16
- };
17
- };
18
- };
19
- protected getModelType(): PolygonModelType;
20
- protected getPointModelType(): PolygonModelType;
21
- }
22
- export {};
@@ -1,124 +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 PolygonModels from './models/';
15
-
16
- var PolygonLayer = function (_BaseLayer) {
17
- _inherits(PolygonLayer, _BaseLayer);
18
-
19
- var _super = _createSuper(PolygonLayer);
20
-
21
- function PolygonLayer() {
22
- var _this;
23
-
24
- _classCallCheck(this, PolygonLayer);
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", 'PolygonLayer');
33
-
34
- return _this;
35
- }
36
-
37
- _createClass(PolygonLayer, [{
38
- key: "buildModels",
39
- value: function buildModels() {
40
- var shape = this.getModelType();
41
- this.layerModel = new PolygonModels[shape](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: "getModelType",
64
- value: function getModelType() {
65
- var _shapeAttribute$scale;
66
-
67
- var shapeAttribute = this.styleAttributeService.getLayerStyleAttribute('shape');
68
- var shape = shapeAttribute === null || shapeAttribute === void 0 ? void 0 : (_shapeAttribute$scale = shapeAttribute.scale) === null || _shapeAttribute$scale === void 0 ? void 0 : _shapeAttribute$scale.field;
69
-
70
- if (shape === 'fill') {
71
- return 'fill';
72
- } else if (shape === 'extrude') {
73
- return 'extrude';
74
- } else if (shape === 'line') {
75
- return 'line';
76
- } else {
77
- return this.getPointModelType();
78
- }
79
- }
80
- }, {
81
- key: "getPointModelType",
82
- value: function getPointModelType() {
83
- var layerData = this.getEncodedData();
84
-
85
- var _this$getLayerConfig = this.getLayerConfig(),
86
- shape2d = _this$getLayerConfig.shape2d,
87
- shape3d = _this$getLayerConfig.shape3d;
88
-
89
- var iconMap = this.iconService.getIconMap();
90
- var item = layerData.find(function (fe) {
91
- return fe.hasOwnProperty('shape');
92
- });
93
-
94
- if (!item) {
95
- return 'fill';
96
- } else {
97
- var shape = item.shape;
98
-
99
- if (shape === 'dot') {
100
- return 'point_normal';
101
- }
102
-
103
- if ((shape2d === null || shape2d === void 0 ? void 0 : shape2d.indexOf(shape)) !== -1) {
104
- return 'point_fill';
105
- }
106
-
107
- if ((shape3d === null || shape3d === void 0 ? void 0 : shape3d.indexOf(shape)) !== -1) {
108
- return 'point_extrude';
109
- }
110
-
111
- if (iconMap.hasOwnProperty(shape)) {
112
- return 'point_image';
113
- }
114
-
115
- return 'text';
116
- }
117
- }
118
- }]);
119
-
120
- return PolygonLayer;
121
- }(BaseLayer);
122
-
123
- export { PolygonLayer as default };
124
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/polygon/index.ts"],"names":["BaseLayer","PolygonModels","PolygonLayer","shape","getModelType","layerModel","models","initModels","buildModels","properties","opacity","type","minimum","maximum","shapeAttribute","styleAttributeService","getLayerStyleAttribute","scale","field","getPointModelType","layerData","getEncodedData","getLayerConfig","shape2d","shape3d","iconMap","iconService","getIconMap","item","find","fe","hasOwnProperty","indexOf"],"mappings":";;;;;;;;;;;;AACA,OAAOA,SAAP,MAAsB,mBAAtB;AAEA,OAAOC,aAAP,MAAgD,WAAhD;;IAMqBC,Y;;;;;;;;;;;;;;;;2DACG,c;;;;;;;WACtB,uBAAqB;AACnB,UAAMC,KAAK,GAAG,KAAKC,YAAL,EAAd;AACA,WAAKC,UAAL,GAAkB,IAAIJ,aAAa,CAACE,KAAD,CAAjB,CAAyB,IAAzB,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;;;WAED,wBAA2C;AAAA;;AACzC,UAAMC,cAAc,GAAG,KAAKC,qBAAL,CAA2BC,sBAA3B,CACrB,OADqB,CAAvB;AAGA,UAAMb,KAAK,GAAGW,cAAH,aAAGA,cAAH,gDAAGA,cAAc,CAAEG,KAAnB,0DAAG,sBAAuBC,KAArC;;AACA,UAAIf,KAAK,KAAK,MAAd,EAAsB;AACpB,eAAO,MAAP;AACD,OAFD,MAEO,IAAIA,KAAK,KAAK,SAAd,EAAyB;AAC9B,eAAO,SAAP;AACD,OAFM,MAEA,IAAIA,KAAK,KAAK,MAAd,EAAsB;AAC3B,eAAO,MAAP;AACD,OAFM,MAEA;AACL,eAAO,KAAKgB,iBAAL,EAAP;AACD;AACF;;;WACD,6BAAgD;AAG9C,UAAMC,SAAS,GAAG,KAAKC,cAAL,EAAlB;;AACA,iCAA6B,KAAKC,cAAL,EAA7B;AAAA,UAAQC,OAAR,wBAAQA,OAAR;AAAA,UAAiBC,OAAjB,wBAAiBA,OAAjB;;AACA,UAAMC,OAAO,GAAG,KAAKC,WAAL,CAAiBC,UAAjB,EAAhB;AACA,UAAMC,IAAI,GAAGR,SAAS,CAACS,IAAV,CAAe,UAACC,EAAD,EAAwB;AAClD,eAAOA,EAAE,CAACC,cAAH,CAAkB,OAAlB,CAAP;AACD,OAFY,CAAb;;AAGA,UAAI,CAACH,IAAL,EAAW;AACT,eAAO,MAAP;AACD,OAFD,MAEO;AACL,YAAMzB,KAAK,GAAGyB,IAAI,CAACzB,KAAnB;;AACA,YAAIA,KAAK,KAAK,KAAd,EAAqB;AACnB,iBAAO,cAAP;AACD;;AACD,YAAI,CAAAoB,OAAO,SAAP,IAAAA,OAAO,WAAP,YAAAA,OAAO,CAAES,OAAT,CAAiB7B,KAAjB,OAAsC,CAAC,CAA3C,EAA8C;AAC5C,iBAAO,YAAP;AACD;;AACD,YAAI,CAAAqB,OAAO,SAAP,IAAAA,OAAO,WAAP,YAAAA,OAAO,CAAEQ,OAAT,CAAiB7B,KAAjB,OAAsC,CAAC,CAA3C,EAA8C;AAC5C,iBAAO,eAAP;AACD;;AACD,YAAIsB,OAAO,CAACM,cAAR,CAAuB5B,KAAvB,CAAJ,EAA6C;AAC3C,iBAAO,aAAP;AACD;;AACD,eAAO,MAAP;AACD;AACF;;;;EAhEuCH,S;;SAArBE,Y","sourcesContent":["import { IEncodeFeature } from '@antv/l7-core';\nimport BaseLayer from '../core/BaseLayer';\nimport { PointType } from '../point/models/';\nimport PolygonModels, { PolygonModelType } from './models/';\n\ninterface IPolygonLayerStyleOptions {\n opacity: number;\n}\n\nexport default class PolygonLayer extends BaseLayer<IPolygonLayerStyleOptions> {\n public type: string = 'PolygonLayer';\n public buildModels() {\n const shape = this.getModelType();\n this.layerModel = new PolygonModels[shape](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\n protected getModelType(): PolygonModelType {\n const shapeAttribute = this.styleAttributeService.getLayerStyleAttribute(\n 'shape',\n );\n const shape = shapeAttribute?.scale?.field as PolygonModelType;\n if (shape === 'fill') {\n return 'fill';\n } else if (shape === 'extrude') {\n return 'extrude';\n } else if (shape === 'line') {\n return 'line';\n } else {\n return this.getPointModelType();\n }\n }\n protected getPointModelType(): PolygonModelType {\n // pointlayer\n // 2D、 3d、 shape、image、text、normal、\n const layerData = this.getEncodedData();\n const { shape2d, shape3d } = this.getLayerConfig();\n const iconMap = this.iconService.getIconMap();\n const item = layerData.find((fe: IEncodeFeature) => {\n return fe.hasOwnProperty('shape');\n });\n if (!item) {\n return 'fill';\n } else {\n const shape = item.shape;\n if (shape === 'dot') {\n return 'point_normal';\n }\n if (shape2d?.indexOf(shape as string) !== -1) {\n return 'point_fill';\n }\n if (shape3d?.indexOf(shape as string) !== -1) {\n return 'point_extrude';\n }\n if (iconMap.hasOwnProperty(shape as string)) {\n return 'point_image';\n }\n return 'text';\n }\n }\n}\n"],"file":"index.js"}
@@ -1,13 +0,0 @@
1
- import { IModel } from '@antv/l7-core';
2
- import BaseModel from '../../core/BaseModel';
3
- export default class ExtrudeModel extends BaseModel {
4
- getUninforms(): {
5
- u_dataTexture: import("@antv/l7-core").ITexture2D;
6
- u_cellTypeLayout: number[];
7
- u_opacity: number;
8
- };
9
- initModels(): IModel[];
10
- buildModels(): IModel[];
11
- clearModels(): void;
12
- protected registerBuiltinAttributes(): void;
13
- }
@@ -1,139 +0,0 @@
1
- import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
2
- import _createClass from "@babel/runtime/helpers/createClass";
3
- import _inherits from "@babel/runtime/helpers/inherits";
4
- import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
5
- import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
6
- import _isNumber from "lodash/isNumber";
7
-
8
- 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); }; }
9
-
10
- 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; } }
11
-
12
- import { AttributeType, gl } from '@antv/l7-core';
13
- import BaseModel from '../../core/BaseModel';
14
- import { PolygonExtrudeTriangulation } from '../../core/triangulation';
15
- var polygonExtrudeFrag = "uniform float u_opacity: 1.0;\nvarying vec4 v_Color;\nvarying mat4 styleMappingMat; // \u4F20\u9012\u4ECE\u7247\u5143\u4E2D\u4F20\u9012\u7684\u6620\u5C04\u6570\u636E\n#pragma include \"picking\"\n\nvoid main() {\n float opacity = styleMappingMat[0][0];\n gl_FragColor = v_Color;\n // gl_FragColor.a *= u_opacity;\n gl_FragColor.a *= opacity;\n gl_FragColor = filterColor(gl_FragColor);\n}\n";
16
- var polygonExtrudeVert = "precision highp float;\n\n#define ambientRatio 0.5\n#define diffuseRatio 0.3\n#define specularRatio 0.2\n\nattribute vec4 a_Color;\nattribute vec3 a_Position;\nattribute vec3 a_Normal;\nattribute float a_Size;\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_Mvp;\n\nvarying vec4 v_Color;\nuniform float u_opacity: 1.0;\nvarying mat4 styleMappingMat; // \u7528\u4E8E\u5C06\u5728\u9876\u70B9\u7740\u8272\u5668\u4E2D\u8BA1\u7B97\u597D\u7684\u6837\u5F0F\u503C\u4F20\u9012\u7ED9\u7247\u5143\n\n#pragma include \"styleMapping\"\n#pragma include \"styleMappingCalOpacity\"\n\n#pragma include \"projection\"\n#pragma include \"light\"\n#pragma include \"picking\"\n\nvoid main() {\n // cal style mapping - \u6570\u636E\u7EB9\u7406\u6620\u5C04\u90E8\u5206\u7684\u8BA1\u7B97\n styleMappingMat = mat4(\n 0.0, 0.0, 0.0, 0.0, // opacity - strokeOpacity - strokeWidth - empty\n 0.0, 0.0, 0.0, 0.0, // strokeR - strokeG - strokeB - strokeA\n 0.0, 0.0, 0.0, 0.0, // offsets[0] - offsets[1]\n 0.0, 0.0, 0.0, 0.0\n );\n\n float rowCount = u_cellTypeLayout[0][0]; // \u5F53\u524D\u7684\u6570\u636E\u7EB9\u7406\u6709\u51E0\u884C\n float columnCount = u_cellTypeLayout[0][1]; // \u5F53\u770B\u5230\u6570\u636E\u7EB9\u7406\u6709\u51E0\u5217\n float columnWidth = 1.0/columnCount; // \u5217\u5BBD\n float rowHeight = 1.0/rowCount; // \u884C\u9AD8\n float cellCount = calCellCount(); // opacity - strokeOpacity - strokeWidth - stroke - offsets\n float id = a_vertexId; // \u7B2Cn\u4E2A\u9876\u70B9\n float cellCurrentRow = floor(id * cellCount / columnCount) + 1.0; // \u8D77\u59CB\u70B9\u5728\u7B2C\u51E0\u884C\n float cellCurrentColumn = mod(id * cellCount, columnCount) + 1.0; // \u8D77\u59CB\u70B9\u5728\u7B2C\u51E0\u5217\n \n // cell \u56FA\u5B9A\u987A\u5E8F opacity -> strokeOpacity -> strokeWidth -> stroke ... \n // \u6309\u987A\u5E8F\u4ECE cell \u4E2D\u53D6\u503C\u3001\u82E5\u6CA1\u6709\u5219\u81EA\u52A8\u5F80\u4E0B\u53D6\u503C\n float textureOffset = 0.0; // \u5728 cell \u4E2D\u53D6\u503C\u7684\u504F\u79FB\u91CF\n\n vec2 opacityAndOffset = calOpacityAndOffset(cellCurrentRow, cellCurrentColumn, columnCount, textureOffset, columnWidth, rowHeight);\n styleMappingMat[0][0] = opacityAndOffset.r;\n textureOffset = opacityAndOffset.g;\n // cal style mapping - \u6570\u636E\u7EB9\u7406\u6620\u5C04\u90E8\u5206\u7684\u8BA1\u7B97\n vec4 pos = vec4(a_Position.xy, a_Position.z * a_Size, 1.0);\n vec4 project_pos = project_position(pos);\n\n // gl_Position = project_common_position_to_clipspace(vec4(project_pos.xyz, 1.0));\n\n if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) { // gaode2.x\n // gl_Position = u_Mvp * (vec4(project_pos.xyz * vec3(1.0, 1.0, -1.0), 1.0));\n gl_Position = u_Mvp * (vec4(project_pos.xyz, 1.0));\n } else {\n gl_Position = project_common_position_to_clipspace(vec4(project_pos.xyz, 1.0));\n }\n\n float lightWeight = calc_lighting(pos);\n // v_Color = a_Color;\n v_Color = vec4(a_Color.rgb * lightWeight, a_Color.w);\n\n setPickingColor(a_PickingColor);\n}\n";
17
-
18
- var ExtrudeModel = function (_BaseModel) {
19
- _inherits(ExtrudeModel, _BaseModel);
20
-
21
- var _super = _createSuper(ExtrudeModel);
22
-
23
- function ExtrudeModel() {
24
- _classCallCheck(this, ExtrudeModel);
25
-
26
- return _super.apply(this, arguments);
27
- }
28
-
29
- _createClass(ExtrudeModel, [{
30
- key: "getUninforms",
31
- value: function getUninforms() {
32
- var _ref = this.layer.getLayerConfig(),
33
- _ref$opacity = _ref.opacity,
34
- opacity = _ref$opacity === void 0 ? 1 : _ref$opacity;
35
-
36
- if (this.dataTextureTest && this.dataTextureNeedUpdate({
37
- opacity: opacity
38
- })) {
39
- this.judgeStyleAttributes({
40
- opacity: opacity
41
- });
42
- var encodeData = this.layer.getEncodedData();
43
-
44
- var _this$calDataFrame = this.calDataFrame(this.cellLength, encodeData, this.cellProperties),
45
- data = _this$calDataFrame.data,
46
- width = _this$calDataFrame.width,
47
- height = _this$calDataFrame.height;
48
-
49
- this.rowCount = height;
50
- this.dataTexture = this.cellLength > 0 && data.length > 0 ? this.createTexture2D({
51
- flipY: true,
52
- data: data,
53
- format: gl.LUMINANCE,
54
- type: gl.FLOAT,
55
- width: width,
56
- height: height
57
- }) : this.createTexture2D({
58
- flipY: true,
59
- data: [1],
60
- format: gl.LUMINANCE,
61
- type: gl.FLOAT,
62
- width: 1,
63
- height: 1
64
- });
65
- }
66
-
67
- return {
68
- u_dataTexture: this.dataTexture,
69
- u_cellTypeLayout: this.getCellTypeLayout(),
70
- u_opacity: _isNumber(opacity) ? opacity : 1.0
71
- };
72
- }
73
- }, {
74
- key: "initModels",
75
- value: function initModels() {
76
- return this.buildModels();
77
- }
78
- }, {
79
- key: "buildModels",
80
- value: function buildModels() {
81
- return [this.layer.buildLayerModel({
82
- moduleName: 'polygonExtrude',
83
- vertexShader: polygonExtrudeVert,
84
- fragmentShader: polygonExtrudeFrag,
85
- triangulation: PolygonExtrudeTriangulation
86
- })];
87
- }
88
- }, {
89
- key: "clearModels",
90
- value: function clearModels() {
91
- var _this$dataTexture;
92
-
93
- (_this$dataTexture = this.dataTexture) === null || _this$dataTexture === void 0 ? void 0 : _this$dataTexture.destroy();
94
- }
95
- }, {
96
- key: "registerBuiltinAttributes",
97
- value: function registerBuiltinAttributes() {
98
- this.styleAttributeService.registerStyleAttribute({
99
- name: 'normal',
100
- type: AttributeType.Attribute,
101
- descriptor: {
102
- name: 'a_Normal',
103
- buffer: {
104
- usage: gl.STATIC_DRAW,
105
- data: [],
106
- type: gl.FLOAT
107
- },
108
- size: 3,
109
- update: function update(feature, featureIdx, vertex, attributeIdx, normal) {
110
- return normal;
111
- }
112
- }
113
- });
114
- this.styleAttributeService.registerStyleAttribute({
115
- name: 'size',
116
- type: AttributeType.Attribute,
117
- descriptor: {
118
- name: 'a_Size',
119
- buffer: {
120
- usage: gl.DYNAMIC_DRAW,
121
- data: [],
122
- type: gl.FLOAT
123
- },
124
- size: 1,
125
- update: function update(feature, featureIdx, vertex, attributeIdx) {
126
- var _feature$size = feature.size,
127
- size = _feature$size === void 0 ? 10 : _feature$size;
128
- return Array.isArray(size) ? [size[0]] : [size];
129
- }
130
- }
131
- });
132
- }
133
- }]);
134
-
135
- return ExtrudeModel;
136
- }(BaseModel);
137
-
138
- export { ExtrudeModel as default };
139
- //# sourceMappingURL=extrude.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/polygon/models/extrude.ts"],"names":["AttributeType","gl","BaseModel","PolygonExtrudeTriangulation","ExtrudeModel","layer","getLayerConfig","opacity","dataTextureTest","dataTextureNeedUpdate","judgeStyleAttributes","encodeData","getEncodedData","calDataFrame","cellLength","cellProperties","data","width","height","rowCount","dataTexture","length","createTexture2D","flipY","format","LUMINANCE","type","FLOAT","u_dataTexture","u_cellTypeLayout","getCellTypeLayout","u_opacity","buildModels","buildLayerModel","moduleName","vertexShader","polygonExtrudeVert","fragmentShader","polygonExtrudeFrag","triangulation","destroy","styleAttributeService","registerStyleAttribute","name","Attribute","descriptor","buffer","usage","STATIC_DRAW","size","update","feature","featureIdx","vertex","attributeIdx","normal","DYNAMIC_DRAW","Array","isArray"],"mappings":"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","sourcesContent":["import { AttributeType, gl, IEncodeFeature, IModel } from '@antv/l7-core';\nimport { isNumber } from 'lodash';\nimport BaseModel, { styleSingle } from '../../core/BaseModel';\nimport { PolygonExtrudeTriangulation } from '../../core/triangulation';\nimport polygonExtrudeFrag from '../shaders/polygon_extrude_frag.glsl';\nimport polygonExtrudeVert from '../shaders/polygon_extrude_vert.glsl';\ninterface IPolygonLayerStyleOptions {\n opacity: styleSingle;\n}\nexport default class ExtrudeModel extends BaseModel {\n public getUninforms() {\n const {\n opacity = 1,\n } = this.layer.getLayerConfig() as IPolygonLayerStyleOptions;\n\n if (this.dataTextureTest && this.dataTextureNeedUpdate({ opacity })) {\n this.judgeStyleAttributes({ opacity });\n const encodeData = this.layer.getEncodedData();\n const { data, width, height } = this.calDataFrame(\n this.cellLength,\n encodeData,\n this.cellProperties,\n );\n this.rowCount = height; // 当前数据纹理有多少行\n\n this.dataTexture =\n this.cellLength > 0 && data.length > 0\n ? this.createTexture2D({\n flipY: true,\n data,\n format: gl.LUMINANCE,\n type: gl.FLOAT,\n width,\n height,\n })\n : this.createTexture2D({\n flipY: true,\n data: [1],\n format: gl.LUMINANCE,\n type: gl.FLOAT,\n width: 1,\n height: 1,\n });\n }\n\n return {\n u_dataTexture: this.dataTexture, // 数据纹理 - 有数据映射的时候纹理中带数据,若没有任何数据映射时纹理是 [1]\n u_cellTypeLayout: this.getCellTypeLayout(),\n\n u_opacity: isNumber(opacity) ? opacity : 1.0,\n };\n }\n\n public initModels(): IModel[] {\n return this.buildModels();\n }\n\n public buildModels(): IModel[] {\n return [\n this.layer.buildLayerModel({\n moduleName: 'polygonExtrude',\n vertexShader: polygonExtrudeVert,\n fragmentShader: polygonExtrudeFrag,\n triangulation: PolygonExtrudeTriangulation,\n }),\n ];\n }\n\n public clearModels() {\n this.dataTexture?.destroy();\n }\n\n protected registerBuiltinAttributes() {\n // point layer size;\n this.styleAttributeService.registerStyleAttribute({\n name: 'normal',\n type: AttributeType.Attribute,\n descriptor: {\n name: 'a_Normal',\n buffer: {\n // give the WebGL driver a hint that this buffer may change\n usage: gl.STATIC_DRAW,\n data: [],\n type: gl.FLOAT,\n },\n size: 3,\n update: (\n feature: IEncodeFeature,\n featureIdx: number,\n vertex: number[],\n attributeIdx: number,\n normal: number[],\n ) => {\n return normal;\n },\n },\n });\n\n this.styleAttributeService.registerStyleAttribute({\n name: 'size',\n type: AttributeType.Attribute,\n descriptor: {\n name: 'a_Size',\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: 1,\n update: (\n feature: IEncodeFeature,\n featureIdx: number,\n vertex: number[],\n attributeIdx: number,\n ) => {\n const { size = 10 } = feature;\n return Array.isArray(size) ? [size[0]] : [size as number];\n },\n },\n });\n }\n}\n"],"file":"extrude.js"}
@@ -1,13 +0,0 @@
1
- import { IModel } from '@antv/l7-core';
2
- import BaseModel from '../../core/BaseModel';
3
- export default class FillModel extends BaseModel {
4
- getUninforms(): {
5
- u_dataTexture: import("@antv/l7-core").ITexture2D;
6
- u_cellTypeLayout: number[];
7
- u_opacity: number;
8
- };
9
- initModels(): IModel[];
10
- buildModels(): IModel[];
11
- clearModels(): void;
12
- protected registerBuiltinAttributes(): void;
13
- }
@@ -1,108 +0,0 @@
1
- import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
2
- import _createClass from "@babel/runtime/helpers/createClass";
3
- import _inherits from "@babel/runtime/helpers/inherits";
4
- import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
5
- import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
6
- import _isNumber from "lodash/isNumber";
7
-
8
- 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); }; }
9
-
10
- 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; } }
11
-
12
- import { gl } from '@antv/l7-core';
13
- import BaseModel from '../../core/BaseModel';
14
- import { polygonTriangulation } from '../../core/triangulation';
15
- var polygon_frag = "uniform float u_opacity: 1.0;\nvarying vec4 v_Color;\nvarying mat4 styleMappingMat; // \u4F20\u9012\u4ECE\u7247\u5143\u4E2D\u4F20\u9012\u7684\u6620\u5C04\u6570\u636E\n\n#pragma include \"picking\"\n\nvoid main() {\n float opacity = styleMappingMat[0][0];\n gl_FragColor = v_Color;\n // gl_FragColor.a *= u_opacity;\n gl_FragColor.a *= opacity;\n gl_FragColor = filterColor(gl_FragColor);\n}\n";
16
- var polygon_vert = "attribute vec4 a_Color;\nattribute vec3 a_Position;\nattribute vec3 a_Normal;\nattribute float a_Size;\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_Mvp;\n\nvarying vec4 v_Color;\nuniform float u_opacity: 1.0;\nvarying mat4 styleMappingMat; // \u7528\u4E8E\u5C06\u5728\u9876\u70B9\u7740\u8272\u5668\u4E2D\u8BA1\u7B97\u597D\u7684\u6837\u5F0F\u503C\u4F20\u9012\u7ED9\u7247\u5143\n\n#pragma include \"styleMapping\"\n#pragma include \"styleMappingCalOpacity\"\n\n#pragma include \"projection\"\n#pragma include \"picking\"\n\nvoid main() {\n // cal style mapping - \u6570\u636E\u7EB9\u7406\u6620\u5C04\u90E8\u5206\u7684\u8BA1\u7B97\nstyleMappingMat = mat4(\n 0.0, 0.0, 0.0, 0.0, // opacity - strokeOpacity - strokeWidth - empty\n 0.0, 0.0, 0.0, 0.0, // strokeR - strokeG - strokeB - strokeA\n 0.0, 0.0, 0.0, 0.0, // offsets[0] - offsets[1]\n 0.0, 0.0, 0.0, 0.0\n );\n\n float rowCount = u_cellTypeLayout[0][0]; // \u5F53\u524D\u7684\u6570\u636E\u7EB9\u7406\u6709\u51E0\u884C\n float columnCount = u_cellTypeLayout[0][1]; // \u5F53\u770B\u5230\u6570\u636E\u7EB9\u7406\u6709\u51E0\u5217\n float columnWidth = 1.0/columnCount; // \u5217\u5BBD\n float rowHeight = 1.0/rowCount; // \u884C\u9AD8\n float cellCount = calCellCount(); // opacity - strokeOpacity - strokeWidth - stroke - offsets\n float id = a_vertexId; // \u7B2Cn\u4E2A\u9876\u70B9\n float cellCurrentRow = floor(id * cellCount / columnCount) + 1.0; // \u8D77\u59CB\u70B9\u5728\u7B2C\u51E0\u884C\n float cellCurrentColumn = mod(id * cellCount, columnCount) + 1.0; // \u8D77\u59CB\u70B9\u5728\u7B2C\u51E0\u5217\n \n // cell \u56FA\u5B9A\u987A\u5E8F opacity -> strokeOpacity -> strokeWidth -> stroke ... \n // \u6309\u987A\u5E8F\u4ECE cell \u4E2D\u53D6\u503C\u3001\u82E5\u6CA1\u6709\u5219\u81EA\u52A8\u5F80\u4E0B\u53D6\u503C\n float textureOffset = 0.0; // \u5728 cell \u4E2D\u53D6\u503C\u7684\u504F\u79FB\u91CF\n\n vec2 opacityAndOffset = calOpacityAndOffset(cellCurrentRow, cellCurrentColumn, columnCount, textureOffset, columnWidth, rowHeight);\n styleMappingMat[0][0] = opacityAndOffset.r;\n textureOffset = opacityAndOffset.g;\n // cal style mapping - \u6570\u636E\u7EB9\u7406\u6620\u5C04\u90E8\u5206\u7684\u8BA1\u7B97\n\n v_Color = a_Color;\n vec4 project_pos = project_position(vec4(a_Position, 1.0));\n // gl_Position = project_common_position_to_clipspace(vec4(project_pos.xyz, 1.0));\n\n if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) { // gaode2.x\n gl_Position = u_Mvp * (vec4(project_pos.xyz, 1.0));\n } else {\n gl_Position = project_common_position_to_clipspace(vec4(project_pos.xyz, 1.0));\n }\n\n setPickingColor(a_PickingColor);\n}\n\n";
17
-
18
- var FillModel = function (_BaseModel) {
19
- _inherits(FillModel, _BaseModel);
20
-
21
- var _super = _createSuper(FillModel);
22
-
23
- function FillModel() {
24
- _classCallCheck(this, FillModel);
25
-
26
- return _super.apply(this, arguments);
27
- }
28
-
29
- _createClass(FillModel, [{
30
- key: "getUninforms",
31
- value: function getUninforms() {
32
- var _ref = this.layer.getLayerConfig(),
33
- _ref$opacity = _ref.opacity,
34
- opacity = _ref$opacity === void 0 ? 1 : _ref$opacity;
35
-
36
- if (this.dataTextureTest && this.dataTextureNeedUpdate({
37
- opacity: opacity
38
- })) {
39
- this.judgeStyleAttributes({
40
- opacity: opacity
41
- });
42
- var encodeData = this.layer.getEncodedData();
43
-
44
- var _this$calDataFrame = this.calDataFrame(this.cellLength, encodeData, this.cellProperties),
45
- data = _this$calDataFrame.data,
46
- width = _this$calDataFrame.width,
47
- height = _this$calDataFrame.height;
48
-
49
- this.rowCount = height;
50
- this.dataTexture = this.cellLength > 0 && data.length > 0 ? this.createTexture2D({
51
- flipY: true,
52
- data: data,
53
- format: gl.LUMINANCE,
54
- type: gl.FLOAT,
55
- width: width,
56
- height: height
57
- }) : this.createTexture2D({
58
- flipY: true,
59
- data: [1],
60
- format: gl.LUMINANCE,
61
- type: gl.FLOAT,
62
- width: 1,
63
- height: 1
64
- });
65
- }
66
-
67
- return {
68
- u_dataTexture: this.dataTexture,
69
- u_cellTypeLayout: this.getCellTypeLayout(),
70
- u_opacity: _isNumber(opacity) ? opacity : 1.0
71
- };
72
- }
73
- }, {
74
- key: "initModels",
75
- value: function initModels() {
76
- return this.buildModels();
77
- }
78
- }, {
79
- key: "buildModels",
80
- value: function buildModels() {
81
- return [this.layer.buildLayerModel({
82
- moduleName: 'polygon',
83
- vertexShader: polygon_vert,
84
- fragmentShader: polygon_frag,
85
- triangulation: polygonTriangulation,
86
- blend: this.getBlend(),
87
- depth: {
88
- enable: false
89
- }
90
- })];
91
- }
92
- }, {
93
- key: "clearModels",
94
- value: function clearModels() {
95
- var _this$dataTexture;
96
-
97
- (_this$dataTexture = this.dataTexture) === null || _this$dataTexture === void 0 ? void 0 : _this$dataTexture.destroy();
98
- }
99
- }, {
100
- key: "registerBuiltinAttributes",
101
- value: function registerBuiltinAttributes() {}
102
- }]);
103
-
104
- return FillModel;
105
- }(BaseModel);
106
-
107
- export { FillModel as default };
108
- //# sourceMappingURL=fill.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/polygon/models/fill.ts"],"names":["gl","BaseModel","polygonTriangulation","FillModel","layer","getLayerConfig","opacity","dataTextureTest","dataTextureNeedUpdate","judgeStyleAttributes","encodeData","getEncodedData","calDataFrame","cellLength","cellProperties","data","width","height","rowCount","dataTexture","length","createTexture2D","flipY","format","LUMINANCE","type","FLOAT","u_dataTexture","u_cellTypeLayout","getCellTypeLayout","u_opacity","buildModels","buildLayerModel","moduleName","vertexShader","polygon_vert","fragmentShader","polygon_frag","triangulation","blend","getBlend","depth","enable","destroy"],"mappings":";;;;;;;;;;;AAAA,SAEEA,EAFF,QAWO,eAXP;AAaA,OAAOC,SAAP,MAAuC,sBAAvC;AACA,SAASC,oBAAT,QAAqC,0BAArC;;;;IAOqBC,S;;;;;;;;;;;;;WACnB,wBAAsB;AACpB,iBAEI,KAAKC,KAAL,CAAWC,cAAX,EAFJ;AAAA,8BACEC,OADF;AAAA,UACEA,OADF,6BACY,CADZ;;AAGA,UAAI,KAAKC,eAAL,IAAwB,KAAKC,qBAAL,CAA2B;AAAEF,QAAAA,OAAO,EAAPA;AAAF,OAA3B,CAA5B,EAAqE;AACnE,aAAKG,oBAAL,CAA0B;AAAEH,UAAAA,OAAO,EAAPA;AAAF,SAA1B;AACA,YAAMI,UAAU,GAAG,KAAKN,KAAL,CAAWO,cAAX,EAAnB;;AACA,iCAAgC,KAAKC,YAAL,CAC9B,KAAKC,UADyB,EAE9BH,UAF8B,EAG9B,KAAKI,cAHyB,CAAhC;AAAA,YAAQC,IAAR,sBAAQA,IAAR;AAAA,YAAcC,KAAd,sBAAcA,KAAd;AAAA,YAAqBC,MAArB,sBAAqBA,MAArB;;AAKA,aAAKC,QAAL,GAAgBD,MAAhB;AAEA,aAAKE,WAAL,GACE,KAAKN,UAAL,GAAkB,CAAlB,IAAuBE,IAAI,CAACK,MAAL,GAAc,CAArC,GACI,KAAKC,eAAL,CAAqB;AACnBC,UAAAA,KAAK,EAAE,IADY;AAEnBP,UAAAA,IAAI,EAAJA,IAFmB;AAGnBQ,UAAAA,MAAM,EAAEvB,EAAE,CAACwB,SAHQ;AAInBC,UAAAA,IAAI,EAAEzB,EAAE,CAAC0B,KAJU;AAKnBV,UAAAA,KAAK,EAALA,KALmB;AAMnBC,UAAAA,MAAM,EAANA;AANmB,SAArB,CADJ,GASI,KAAKI,eAAL,CAAqB;AACnBC,UAAAA,KAAK,EAAE,IADY;AAEnBP,UAAAA,IAAI,EAAE,CAAC,CAAD,CAFa;AAGnBQ,UAAAA,MAAM,EAAEvB,EAAE,CAACwB,SAHQ;AAInBC,UAAAA,IAAI,EAAEzB,EAAE,CAAC0B,KAJU;AAKnBV,UAAAA,KAAK,EAAE,CALY;AAMnBC,UAAAA,MAAM,EAAE;AANW,SAArB,CAVN;AAkBD;;AACD,aAAO;AACLU,QAAAA,aAAa,EAAE,KAAKR,WADf;AAELS,QAAAA,gBAAgB,EAAE,KAAKC,iBAAL,EAFb;AAILC,QAAAA,SAAS,EAAE,UAASxB,OAAT,IAAoBA,OAApB,GAA8B;AAJpC,OAAP;AAMD;;;WAED,sBAA8B;AAC5B,aAAO,KAAKyB,WAAL,EAAP;AACD;;;WAED,uBAA+B;AAC7B,aAAO,CACL,KAAK3B,KAAL,CAAW4B,eAAX,CAA2B;AACzBC,QAAAA,UAAU,EAAE,SADa;AAEzBC,QAAAA,YAAY,EAAEC,YAFW;AAGzBC,QAAAA,cAAc,EAAEC,YAHS;AAIzBC,QAAAA,aAAa,EAAEpC,oBAJU;AAKzBqC,QAAAA,KAAK,EAAE,KAAKC,QAAL,EALkB;AAMzBC,QAAAA,KAAK,EAAE;AAAEC,UAAAA,MAAM,EAAE;AAAV;AANkB,OAA3B,CADK,CAAP;AAUD;;;WAED,uBAAqB;AAAA;;AACnB,gCAAKvB,WAAL,wEAAkBwB,OAAlB;AACD;;;WAED,qCAAsC,CAErC;;;;EAjEoC1C,S;;SAAlBE,S","sourcesContent":["import {\n AttributeType,\n gl,\n IEncodeFeature,\n ILayer,\n ILayerModel,\n ILayerPlugin,\n IModel,\n IStyleAttributeService,\n lazyInject,\n TYPES,\n} from '@antv/l7-core';\nimport { isNumber } from 'lodash';\nimport BaseModel, { styleSingle } from '../../core/BaseModel';\nimport { polygonTriangulation } from '../../core/triangulation';\nimport polygon_frag from '../shaders/polygon_frag.glsl';\nimport polygon_vert from '../shaders/polygon_vert.glsl';\n\ninterface IPolygonLayerStyleOptions {\n opacity: styleSingle;\n}\nexport default class FillModel extends BaseModel {\n public getUninforms() {\n const {\n opacity = 1,\n } = this.layer.getLayerConfig() as IPolygonLayerStyleOptions;\n if (this.dataTextureTest && this.dataTextureNeedUpdate({ opacity })) {\n this.judgeStyleAttributes({ opacity });\n const encodeData = this.layer.getEncodedData();\n const { data, width, height } = this.calDataFrame(\n this.cellLength,\n encodeData,\n this.cellProperties,\n );\n this.rowCount = height; // 当前数据纹理有多少行\n\n this.dataTexture =\n this.cellLength > 0 && data.length > 0\n ? this.createTexture2D({\n flipY: true,\n data,\n format: gl.LUMINANCE,\n type: gl.FLOAT,\n width,\n height,\n })\n : this.createTexture2D({\n flipY: true,\n data: [1],\n format: gl.LUMINANCE,\n type: gl.FLOAT,\n width: 1,\n height: 1,\n });\n }\n return {\n u_dataTexture: this.dataTexture, // 数据纹理 - 有数据映射的时候纹理中带数据,若没有任何数据映射时纹理是 [1]\n u_cellTypeLayout: this.getCellTypeLayout(),\n // u_opacity: opacity,\n u_opacity: isNumber(opacity) ? opacity : 1.0,\n };\n }\n\n public initModels(): IModel[] {\n return this.buildModels();\n }\n\n public buildModels(): IModel[] {\n return [\n this.layer.buildLayerModel({\n moduleName: 'polygon',\n vertexShader: polygon_vert,\n fragmentShader: polygon_frag,\n triangulation: polygonTriangulation,\n blend: this.getBlend(),\n depth: { enable: false },\n }),\n ];\n }\n\n public clearModels() {\n this.dataTexture?.destroy();\n }\n\n protected registerBuiltinAttributes() {\n // point layer size;\n }\n}\n"],"file":"fill.js"}
@@ -1,5 +0,0 @@
1
- export declare type PolygonModelType = 'fill' | 'extrude' | 'line' | 'point_fill' | 'point_image' | 'point_normal' | 'point_extrude' | 'text';
2
- declare const PolygonModels: {
3
- [key in PolygonModelType]: any;
4
- };
5
- export default PolygonModels;