@antv/l7-layers 2.9.12 → 2.9.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (185) hide show
  1. package/LICENSE.md +1 -1
  2. package/es/core/BaseLayer.d.ts +2 -5
  3. package/es/core/BaseLayer.js +4 -35
  4. package/es/core/BaseLayer.js.map +1 -1
  5. package/es/core/BaseModel.d.ts +1 -2
  6. package/es/core/BaseModel.js +0 -3
  7. package/es/core/BaseModel.js.map +1 -1
  8. package/es/core/LayerGroup.d.ts +9 -0
  9. package/es/{tile/tileFactory/rasterDataLayer.js → core/LayerGroup.js} +32 -39
  10. package/es/core/LayerGroup.js.map +1 -0
  11. package/es/core/interface.d.ts +1 -14
  12. package/es/core/interface.js.map +1 -1
  13. package/es/image/models/image.js.map +1 -1
  14. package/es/line/index.d.ts +1 -1
  15. package/es/line/index.js +1 -7
  16. package/es/line/index.js.map +1 -1
  17. package/es/line/models/index.d.ts +1 -1
  18. package/es/line/models/index.js +1 -5
  19. package/es/line/models/index.js.map +1 -1
  20. package/es/plugins/FeatureScalePlugin.js +9 -35
  21. package/es/plugins/FeatureScalePlugin.js.map +1 -1
  22. package/es/plugins/ShaderUniformPlugin.js +1 -3
  23. package/es/plugins/ShaderUniformPlugin.js.map +1 -1
  24. package/es/point/index.d.ts +1 -1
  25. package/es/point/index.js +2 -8
  26. package/es/point/index.js.map +1 -1
  27. package/es/point/models/fill.d.ts +1 -8
  28. package/es/point/models/fill.js +33 -49
  29. package/es/point/models/fill.js.map +1 -1
  30. package/es/point/models/index.d.ts +1 -1
  31. package/es/point/models/index.js +1 -5
  32. package/es/point/models/index.js.map +1 -1
  33. package/es/point/models/radar.js +6 -2
  34. package/es/point/models/radar.js.map +1 -1
  35. package/es/polygon/index.js +0 -6
  36. package/es/polygon/index.js.map +1 -1
  37. package/es/polygon/models/index.d.ts +1 -1
  38. package/es/polygon/models/index.js +1 -5
  39. package/es/polygon/models/index.js.map +1 -1
  40. package/es/raster/index.d.ts +2 -2
  41. package/es/raster/index.js +4 -4
  42. package/es/raster/index.js.map +1 -1
  43. package/es/raster/models/index.js +1 -1
  44. package/es/raster/models/index.js.map +1 -1
  45. package/es/raster/models/raste-tile.d.ts +23 -0
  46. package/es/raster/models/raste-tile.js +285 -0
  47. package/es/raster/models/raste-tile.js.map +1 -0
  48. package/es/raster/models/raster.d.ts +0 -2
  49. package/es/raster/models/raster.js +12 -24
  50. package/es/raster/models/raster.js.map +1 -1
  51. package/lib/core/BaseLayer.js +3 -33
  52. package/lib/core/BaseLayer.js.map +1 -1
  53. package/lib/core/BaseModel.js +0 -2
  54. package/lib/core/BaseModel.js.map +1 -1
  55. package/lib/{tile/tileFactory/rasterDataLayer.js → core/LayerGroup.js} +32 -40
  56. package/lib/core/LayerGroup.js.map +1 -0
  57. package/lib/core/interface.js.map +1 -1
  58. package/lib/image/models/image.js.map +1 -1
  59. package/lib/line/index.js +1 -7
  60. package/lib/line/index.js.map +1 -1
  61. package/lib/line/models/index.js +1 -7
  62. package/lib/line/models/index.js.map +1 -1
  63. package/lib/plugins/FeatureScalePlugin.js +9 -35
  64. package/lib/plugins/FeatureScalePlugin.js.map +1 -1
  65. package/lib/plugins/ShaderUniformPlugin.js +1 -3
  66. package/lib/plugins/ShaderUniformPlugin.js.map +1 -1
  67. package/lib/point/index.js +2 -8
  68. package/lib/point/index.js.map +1 -1
  69. package/lib/point/models/fill.js +32 -46
  70. package/lib/point/models/fill.js.map +1 -1
  71. package/lib/point/models/index.js +1 -7
  72. package/lib/point/models/index.js.map +1 -1
  73. package/lib/point/models/radar.js +5 -1
  74. package/lib/point/models/radar.js.map +1 -1
  75. package/lib/polygon/index.js +0 -6
  76. package/lib/polygon/index.js.map +1 -1
  77. package/lib/polygon/models/index.js +1 -7
  78. package/lib/polygon/models/index.js.map +1 -1
  79. package/lib/raster/index.js +4 -4
  80. package/lib/raster/index.js.map +1 -1
  81. package/lib/raster/models/index.js +2 -2
  82. package/lib/raster/models/index.js.map +1 -1
  83. package/lib/raster/models/raste-tile.js +294 -0
  84. package/lib/raster/models/raste-tile.js.map +1 -0
  85. package/lib/raster/models/raster.js +12 -24
  86. package/lib/raster/models/raster.js.map +1 -1
  87. package/package.json +7 -9
  88. package/es/line/models/tile.d.ts +0 -20
  89. package/es/line/models/tile.js +0 -327
  90. package/es/line/models/tile.js.map +0 -1
  91. package/es/point/models/tile.d.ts +0 -31
  92. package/es/point/models/tile.js +0 -291
  93. package/es/point/models/tile.js.map +0 -1
  94. package/es/polygon/models/tile.d.ts +0 -16
  95. package/es/polygon/models/tile.js +0 -137
  96. package/es/polygon/models/tile.js.map +0 -1
  97. package/es/tile/interface.d.ts +0 -28
  98. package/es/tile/interface.js +0 -2
  99. package/es/tile/interface.js.map +0 -1
  100. package/es/tile/manager/tileConfigManager.d.ts +0 -17
  101. package/es/tile/manager/tileConfigManager.js +0 -123
  102. package/es/tile/manager/tileConfigManager.js.map +0 -1
  103. package/es/tile/manager/tileLayerManager.d.ts +0 -35
  104. package/es/tile/manager/tileLayerManager.js +0 -297
  105. package/es/tile/manager/tileLayerManager.js.map +0 -1
  106. package/es/tile/manager/tilePickerManager.d.ts +0 -21
  107. package/es/tile/manager/tilePickerManager.js +0 -189
  108. package/es/tile/manager/tilePickerManager.js.map +0 -1
  109. package/es/tile/models/tileModel.d.ts +0 -8
  110. package/es/tile/models/tileModel.js +0 -61
  111. package/es/tile/models/tileModel.js.map +0 -1
  112. package/es/tile/tileFactory/base.d.ts +0 -44
  113. package/es/tile/tileFactory/base.js +0 -423
  114. package/es/tile/tileFactory/base.js.map +0 -1
  115. package/es/tile/tileFactory/index.d.ts +0 -5
  116. package/es/tile/tileFactory/index.js +0 -30
  117. package/es/tile/tileFactory/index.js.map +0 -1
  118. package/es/tile/tileFactory/line.d.ts +0 -12
  119. package/es/tile/tileFactory/line.js +0 -65
  120. package/es/tile/tileFactory/line.js.map +0 -1
  121. package/es/tile/tileFactory/point.d.ts +0 -12
  122. package/es/tile/tileFactory/point.js +0 -65
  123. package/es/tile/tileFactory/point.js.map +0 -1
  124. package/es/tile/tileFactory/polygon.d.ts +0 -12
  125. package/es/tile/tileFactory/polygon.js +0 -65
  126. package/es/tile/tileFactory/polygon.js.map +0 -1
  127. package/es/tile/tileFactory/raster.d.ts +0 -12
  128. package/es/tile/tileFactory/raster.js +0 -61
  129. package/es/tile/tileFactory/raster.js.map +0 -1
  130. package/es/tile/tileFactory/rasterData.d.ts +0 -12
  131. package/es/tile/tileFactory/rasterData.js +0 -86
  132. package/es/tile/tileFactory/rasterData.js.map +0 -1
  133. package/es/tile/tileFactory/rasterDataLayer.d.ts +0 -19
  134. package/es/tile/tileFactory/rasterDataLayer.js.map +0 -1
  135. package/es/tile/tileFactory/vectorLayer.d.ts +0 -27
  136. package/es/tile/tileFactory/vectorLayer.js +0 -131
  137. package/es/tile/tileFactory/vectorLayer.js.map +0 -1
  138. package/es/tile/tileLayer/baseTileLayer.d.ts +0 -47
  139. package/es/tile/tileLayer/baseTileLayer.js +0 -409
  140. package/es/tile/tileLayer/baseTileLayer.js.map +0 -1
  141. package/es/tile/tmsTileLayer.d.ts +0 -7
  142. package/es/tile/tmsTileLayer.js +0 -100
  143. package/es/tile/tmsTileLayer.js.map +0 -1
  144. package/es/tile/utils.d.ts +0 -11
  145. package/es/tile/utils.js +0 -125
  146. package/es/tile/utils.js.map +0 -1
  147. package/lib/line/models/tile.js +0 -342
  148. package/lib/line/models/tile.js.map +0 -1
  149. package/lib/point/models/tile.js +0 -308
  150. package/lib/point/models/tile.js.map +0 -1
  151. package/lib/polygon/models/tile.js +0 -152
  152. package/lib/polygon/models/tile.js.map +0 -1
  153. package/lib/tile/interface.js +0 -2
  154. package/lib/tile/interface.js.map +0 -1
  155. package/lib/tile/manager/tileConfigManager.js +0 -134
  156. package/lib/tile/manager/tileConfigManager.js.map +0 -1
  157. package/lib/tile/manager/tileLayerManager.js +0 -305
  158. package/lib/tile/manager/tileLayerManager.js.map +0 -1
  159. package/lib/tile/manager/tilePickerManager.js +0 -195
  160. package/lib/tile/manager/tilePickerManager.js.map +0 -1
  161. package/lib/tile/models/tileModel.js +0 -73
  162. package/lib/tile/models/tileModel.js.map +0 -1
  163. package/lib/tile/tileFactory/base.js +0 -436
  164. package/lib/tile/tileFactory/base.js.map +0 -1
  165. package/lib/tile/tileFactory/index.js +0 -60
  166. package/lib/tile/tileFactory/index.js.map +0 -1
  167. package/lib/tile/tileFactory/line.js +0 -76
  168. package/lib/tile/tileFactory/line.js.map +0 -1
  169. package/lib/tile/tileFactory/point.js +0 -76
  170. package/lib/tile/tileFactory/point.js.map +0 -1
  171. package/lib/tile/tileFactory/polygon.js +0 -76
  172. package/lib/tile/tileFactory/polygon.js.map +0 -1
  173. package/lib/tile/tileFactory/raster.js +0 -74
  174. package/lib/tile/tileFactory/raster.js.map +0 -1
  175. package/lib/tile/tileFactory/rasterData.js +0 -99
  176. package/lib/tile/tileFactory/rasterData.js.map +0 -1
  177. package/lib/tile/tileFactory/rasterDataLayer.js.map +0 -1
  178. package/lib/tile/tileFactory/vectorLayer.js +0 -145
  179. package/lib/tile/tileFactory/vectorLayer.js.map +0 -1
  180. package/lib/tile/tileLayer/baseTileLayer.js +0 -407
  181. package/lib/tile/tileLayer/baseTileLayer.js.map +0 -1
  182. package/lib/tile/tmsTileLayer.js +0 -116
  183. package/lib/tile/tmsTileLayer.js.map +0 -1
  184. package/lib/tile/utils.js +0 -147
  185. package/lib/tile/utils.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/polygon/index.ts"],"names":["PolygonLayer","shape","getModelType","layerModel","PolygonModels","models","initModels","buildModels","properties","opacity","type","minimum","maximum","layerSource","parser","shapeAttribute","styleAttributeService","getLayerStyleAttribute","scale","field","getPointModelType","layerData","getEncodedData","getLayerConfig","shape2d","shape3d","iconMap","iconService","getIconMap","item","find","fe","hasOwnProperty","indexOf","BaseLayer"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AACA;;AAEA;;;;;;IAEqBA,Y;;;;;;;;;;;;;;;uFACG,c;;;;;;WACtB,uBAAqB;AACnB,UAAMC,KAAK,GAAG,KAAKC,YAAL,EAAd;AACA,WAAKC,UAAL,GAAkB,IAAIC,gBAAcH,KAAd,CAAJ,CAAyB,IAAzB,CAAlB;AACA,WAAKI,MAAL,GAAc,KAAKF,UAAL,CAAgBG,UAAhB,EAAd;AACD;;;WACD,yBAAuB;AACrB,WAAKD,MAAL,GAAc,KAAKF,UAAL,CAAgBI,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,UAAI,KAAKC,WAAL,CAAiBC,MAAjB,CAAwBJ,IAAxB,KAAiC,KAArC,EAA4C;AAC1C,eAAO,eAAP;AACD;;AACD,UAAMK,cAAc,GAAG,KAAKC,qBAAL,CAA2BC,sBAA3B,CACrB,OADqB,CAAvB;AAGA,UAAMhB,KAAK,GAAGc,cAAH,aAAGA,cAAH,gDAAGA,cAAc,CAAEG,KAAnB,0DAAG,sBAAuBC,KAArC;;AACA,UAAIlB,KAAK,KAAK,MAAd,EAAsB;AACpB,eAAO,MAAP;AACD,OAFD,MAEO,IAAIA,KAAK,KAAK,SAAd,EAAyB;AAC9B,eAAO,SAAP;AACD,OAFM,MAEA,IAAIA,KAAK,KAAK,OAAd,EAAuB;AAC5B,eAAO,OAAP;AACD,OAFM,MAEA,IAAIA,KAAK,KAAK,OAAd,EAAuB;AAC5B,eAAO,OAAP;AACD,OAFM,MAEA,IAAIA,KAAK,KAAK,MAAd,EAAsB;AAC3B,eAAO,MAAP;AACD,OAFM,MAEA,IAAIA,KAAK,KAAK,MAAd,EAAsB;AAC3B,eAAO,MAAP;AACD,OAFM,MAEA;AACL,eAAO,KAAKmB,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,YAAM5B,KAAK,GAAG4B,IAAI,CAAC5B,KAAnB;;AACA,YAAIA,KAAK,KAAK,KAAd,EAAqB;AACnB,iBAAO,cAAP;AACD;;AACD,YAAI,CAAAuB,OAAO,SAAP,IAAAA,OAAO,WAAP,YAAAA,OAAO,CAAES,OAAT,CAAiBhC,KAAjB,OAAsC,CAAC,CAA3C,EAA8C;AAC5C,iBAAO,YAAP;AACD;;AACD,YAAI,CAAAwB,OAAO,SAAP,IAAAA,OAAO,WAAP,YAAAA,OAAO,CAAEQ,OAAT,CAAiBhC,KAAjB,OAAsC,CAAC,CAA3C,EAA8C;AAC5C,iBAAO,eAAP;AACD;;AACD,YAAIyB,OAAO,CAACM,cAAR,CAAuB/B,KAAvB,CAAJ,EAA6C;AAC3C,iBAAO,aAAP;AACD;;AACD,eAAO,MAAP;AACD;AACF;;;EAzEuCiC,mB","sourcesContent":["import { IEncodeFeature } from '@antv/l7-core';\nimport BaseLayer from '../core/BaseLayer';\nimport { IPolygonLayerStyleOptions } from '../core/interface';\nimport PolygonModels, { PolygonModelType } from './models/';\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 if (this.layerSource.parser.type === 'mvt') {\n return 'vectorpolygon';\n }\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 === 'water') {\n return 'water';\n } else if (shape === 'ocean') {\n return 'ocean';\n } else if (shape === 'line') {\n return 'line';\n } else if (shape === 'tile') {\n return 'tile';\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
+ {"version":3,"sources":["../../src/polygon/index.ts"],"names":["PolygonLayer","shape","getModelType","layerModel","PolygonModels","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","BaseLayer"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AACA;;AAEA;;;;;;IAEqBA,Y;;;;;;;;;;;;;;;uFACG,c;;;;;;WACtB,uBAAqB;AACnB,UAAMC,KAAK,GAAG,KAAKC,YAAL,EAAd;AACA,WAAKC,UAAL,GAAkB,IAAIC,gBAAcH,KAAd,CAAJ,CAAyB,IAAzB,CAAlB;AACA,WAAKI,MAAL,GAAc,KAAKF,UAAL,CAAgBG,UAAhB,EAAd;AACD;;;WACD,yBAAuB;AACrB,WAAKD,MAAL,GAAc,KAAKF,UAAL,CAAgBI,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,UAAMd,KAAK,GAAGY,cAAH,aAAGA,cAAH,gDAAGA,cAAc,CAAEG,KAAnB,0DAAG,sBAAuBC,KAArC;;AACA,UAAIhB,KAAK,KAAK,MAAd,EAAsB;AACpB,eAAO,MAAP;AACD,OAFD,MAEO,IAAIA,KAAK,KAAK,SAAd,EAAyB;AAC9B,eAAO,SAAP;AACD,OAFM,MAEA,IAAIA,KAAK,KAAK,OAAd,EAAuB;AAC5B,eAAO,OAAP;AACD,OAFM,MAEA,IAAIA,KAAK,KAAK,OAAd,EAAuB;AAC5B,eAAO,OAAP;AACD,OAFM,MAEA,IAAIA,KAAK,KAAK,MAAd,EAAsB;AAC3B,eAAO,MAAP;AACD,OAFM,MAEA;AACL,eAAO,KAAKiB,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,YAAM1B,KAAK,GAAG0B,IAAI,CAAC1B,KAAnB;;AACA,YAAIA,KAAK,KAAK,KAAd,EAAqB;AACnB,iBAAO,cAAP;AACD;;AACD,YAAI,CAAAqB,OAAO,SAAP,IAAAA,OAAO,WAAP,YAAAA,OAAO,CAAES,OAAT,CAAiB9B,KAAjB,OAAsC,CAAC,CAA3C,EAA8C;AAC5C,iBAAO,YAAP;AACD;;AACD,YAAI,CAAAsB,OAAO,SAAP,IAAAA,OAAO,WAAP,YAAAA,OAAO,CAAEQ,OAAT,CAAiB9B,KAAjB,OAAsC,CAAC,CAA3C,EAA8C;AAC5C,iBAAO,eAAP;AACD;;AACD,YAAIuB,OAAO,CAACM,cAAR,CAAuB7B,KAAvB,CAAJ,EAA6C;AAC3C,iBAAO,aAAP;AACD;;AACD,eAAO,MAAP;AACD;AACF;;;EApEuC+B,mB","sourcesContent":["import { IEncodeFeature } from '@antv/l7-core';\nimport BaseLayer from '../core/BaseLayer';\nimport { IPolygonLayerStyleOptions } from '../core/interface';\nimport PolygonModels, { PolygonModelType } from './models/';\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 === 'water') {\n return 'water';\n } else if (shape === 'ocean') {\n return 'ocean';\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"}
@@ -19,16 +19,12 @@ var _normal = _interopRequireDefault(require("../../point/models/normal"));
19
19
 
20
20
  var _text = _interopRequireDefault(require("../../point/models/text"));
21
21
 
22
- var _tileModel = _interopRequireDefault(require("../../tile/models/tileModel"));
23
-
24
22
  var _extrude2 = _interopRequireDefault(require("./extrude"));
25
23
 
26
24
  var _fill2 = _interopRequireDefault(require("./fill"));
27
25
 
28
26
  var _ocean = _interopRequireDefault(require("./ocean"));
29
27
 
30
- var _tile = _interopRequireDefault(require("./tile"));
31
-
32
28
  var _water = _interopRequireDefault(require("./water"));
33
29
 
34
30
  var PolygonModels = {
@@ -41,9 +37,7 @@ var PolygonModels = {
41
37
  point_normal: _normal.default,
42
38
  point_extrude: _extrude.default,
43
39
  water: _water.default,
44
- ocean: _ocean.default,
45
- vectorpolygon: _tileModel.default,
46
- tile: _tile.default
40
+ ocean: _ocean.default
47
41
  };
48
42
  var _default = PolygonModels;
49
43
  exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/polygon/models/index.ts"],"names":["PolygonModels","fill","FillModel","line","LineModel","extrude","ExtrudeModel","text","TextModel","point_fill","PointFillModel","point_image","IMageModel","point_normal","NormalModel","point_extrude","PointExtrudeModel","water","Water","ocean","Ocean","vectorpolygon","PolygonTileModel","tile","TilePolygonModel"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAgBA,IAAMA,aAAiD,GAAG;AACxDC,EAAAA,IAAI,EAAEC,cADkD;AAExDC,EAAAA,IAAI,EAAEC,aAFkD;AAGxDC,EAAAA,OAAO,EAAEC,iBAH+C;AAIxDC,EAAAA,IAAI,EAAEC,aAJkD;AAKxDC,EAAAA,UAAU,EAAEC,aAL4C;AAMxDC,EAAAA,WAAW,EAAEC,cAN2C;AAOxDC,EAAAA,YAAY,EAAEC,eAP0C;AAQxDC,EAAAA,aAAa,EAAEC,gBARyC;AASxDC,EAAAA,KAAK,EAAEC,cATiD;AAUxDC,EAAAA,KAAK,EAAEC,cAViD;AAYxDC,EAAAA,aAAa,EAAEC,kBAZyC;AAaxDC,EAAAA,IAAI,EAAEC;AAbkD,CAA1D;eAeexB,a","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 PolygonTileModel from '../../tile/models/tileModel';\nimport ExtrudeModel from './extrude';\nimport FillModel from './fill';\nimport Ocean from './ocean';\nimport TilePolygonModel from './tile';\nimport Water from './water';\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 | 'water'\n | 'ocean'\n | 'vectorpolygon'\n | 'tile';\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 water: Water,\n ocean: Ocean,\n // point_fill: PointModels.fill,\n vectorpolygon: PolygonTileModel,\n tile: TilePolygonModel,\n};\nexport default PolygonModels;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/polygon/models/index.ts"],"names":["PolygonModels","fill","FillModel","line","LineModel","extrude","ExtrudeModel","text","TextModel","point_fill","PointFillModel","point_image","IMageModel","point_normal","NormalModel","point_extrude","PointExtrudeModel","water","Water","ocean","Ocean"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAcA,IAAMA,aAAiD,GAAG;AACxDC,EAAAA,IAAI,EAAEC,cADkD;AAExDC,EAAAA,IAAI,EAAEC,aAFkD;AAGxDC,EAAAA,OAAO,EAAEC,iBAH+C;AAIxDC,EAAAA,IAAI,EAAEC,aAJkD;AAKxDC,EAAAA,UAAU,EAAEC,aAL4C;AAMxDC,EAAAA,WAAW,EAAEC,cAN2C;AAOxDC,EAAAA,YAAY,EAAEC,eAP0C;AAQxDC,EAAAA,aAAa,EAAEC,gBARyC;AASxDC,EAAAA,KAAK,EAAEC,cATiD;AAUxDC,EAAAA,KAAK,EAAEC;AAViD,CAA1D;eAaepB,a","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';\nimport Ocean from './ocean';\nimport Water from './water';\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 | 'water'\n | 'ocean';\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 water: Water,\n ocean: Ocean,\n // point_fill: PointModels.fill,\n};\nexport default PolygonModels;\n"],"file":"index.js"}
@@ -21,7 +21,7 @@ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/ge
21
21
 
22
22
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
23
 
24
- var _BaseLayer2 = _interopRequireDefault(require("../core/BaseLayer"));
24
+ var _LayerGroup2 = _interopRequireDefault(require("../core/LayerGroup"));
25
25
 
26
26
  var _index = _interopRequireDefault(require("./models/index"));
27
27
 
@@ -29,8 +29,8 @@ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflec
29
29
 
30
30
  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; } }
31
31
 
32
- var RaterLayer = function (_BaseLayer) {
33
- (0, _inherits2.default)(RaterLayer, _BaseLayer);
32
+ var RaterLayer = function (_LayerGroup) {
33
+ (0, _inherits2.default)(RaterLayer, _LayerGroup);
34
34
 
35
35
  var _super = _createSuper(RaterLayer);
36
36
 
@@ -100,7 +100,7 @@ var RaterLayer = function (_BaseLayer) {
100
100
  }
101
101
  }]);
102
102
  return RaterLayer;
103
- }(_BaseLayer2.default);
103
+ }(_LayerGroup2.default);
104
104
 
105
105
  exports.default = RaterLayer;
106
106
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/raster/index.ts"],"names":["RaterLayer","modelType","getModelType","layerModel","RasterModels","models","initModels","buildModels","properties","opacity","type","minimum","maximum","defaultConfig","raster","raster3d","rasterTile","layerSource","parser","BaseLayer"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAEA;;;;;;IACqBA,U;;;;;;;;;;;;;;;uFACG,a;;;;;;WACtB,uBAAqB;AACnB,UAAMC,SAAS,GAAG,KAAKC,YAAL,EAAlB;AACA,WAAKC,UAAL,GAAkB,IAAIC,eAAaH,SAAb,CAAJ,CAA4B,IAA5B,CAAlB;AACA,WAAKI,MAAL,GAAc,KAAKF,UAAL,CAAgBG,UAAhB,EAAd;AACD;;;WACD,yBAAuB;AACrB,WAAKD,MAAL,GAAc,KAAKF,UAAL,CAAgBI,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,KAAKR,YAAL,EAAb;AACA,UAAMW,aAAa,GAAG;AACpBC,QAAAA,MAAM,EAAE,EADY;AAEpBC,QAAAA,QAAQ,EAAE,EAFU;AAGpBC,QAAAA,UAAU,EAAE;AAHQ,OAAtB;AAKA,aAAOH,aAAa,CAACH,IAAD,CAApB;AACD;;;WAED,wBAA0C;AAExC,cAAQ,KAAKO,WAAL,CAAiBC,MAAjB,CAAwBR,IAAhC;AACE,aAAK,QAAL;AACE,iBAAO,QAAP;;AACF,aAAK,YAAL;AACE,iBAAO,YAAP;;AACF;AACE,iBAAO,QAAP;AANJ;AASD;;;EA1CqCS,mB","sourcesContent":["import BaseLayer from '../core/BaseLayer';\nimport { IRasterLayerStyleOptions } from '../core/interface';\nimport RasterModels, { RasterModelType } from './models/index';\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 rasterTile: {},\n };\n return defaultConfig[type];\n }\n\n protected getModelType(): RasterModelType {\n // 根据 source 的类型判断 model type\n switch (this.layerSource.parser.type) {\n case 'raster':\n return 'raster';\n case 'rasterTile':\n return 'rasterTile';\n default:\n return 'raster';\n }\n // return 'raster';\n }\n}\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../src/raster/index.ts"],"names":["RaterLayer","modelType","getModelType","layerModel","RasterModels","models","initModels","buildModels","properties","opacity","type","minimum","maximum","defaultConfig","raster","raster3d","rasterTile","layerSource","parser","LayerGroup"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AACA;;AACA;;;;;;IACqBA,U;;;;;;;;;;;;;;;uFACG,a;;;;;;WACtB,uBAAqB;AACnB,UAAMC,SAAS,GAAG,KAAKC,YAAL,EAAlB;AACA,WAAKC,UAAL,GAAkB,IAAIC,eAAaH,SAAb,CAAJ,CAA4B,IAA5B,CAAlB;AACA,WAAKI,MAAL,GAAc,KAAKF,UAAL,CAAgBG,UAAhB,EAAd;AACD;;;WACD,yBAAuB;AACrB,WAAKD,MAAL,GAAc,KAAKF,UAAL,CAAgBI,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,KAAKR,YAAL,EAAb;AACA,UAAMW,aAAa,GAAG;AACpBC,QAAAA,MAAM,EAAE,EADY;AAEpBC,QAAAA,QAAQ,EAAE,EAFU;AAGpBC,QAAAA,UAAU,EAAE;AAHQ,OAAtB;AAKA,aAAOH,aAAa,CAACH,IAAD,CAApB;AACD;;;WAED,wBAA0C;AAExC,cAAQ,KAAKO,WAAL,CAAiBC,MAAjB,CAAwBR,IAAhC;AACE,aAAK,QAAL;AACE,iBAAO,QAAP;;AACF,aAAK,YAAL;AACE,iBAAO,YAAP;;AACF;AACE,iBAAO,QAAP;AANJ;AASD;;;EA1CqCS,oB","sourcesContent":["import { IRasterLayerStyleOptions } from '../core/interface';\nimport LayerGroup from '../core/LayerGroup';\nimport RasterModels, { RasterModelType } from './models/index';\nexport default class RaterLayer extends LayerGroup<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 rasterTile: {},\n };\n return defaultConfig[type];\n }\n\n protected getModelType(): RasterModelType {\n // 根据 source 的类型判断 model type\n switch (this.layerSource.parser.type) {\n case 'raster':\n return 'raster';\n case 'rasterTile':\n return 'rasterTile';\n default:\n return 'raster';\n }\n // return 'raster';\n }\n}\n"],"file":"index.js"}
@@ -7,14 +7,14 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports.default = void 0;
9
9
 
10
- var _tileModel = _interopRequireDefault(require("../../tile/models/tileModel"));
10
+ var _rasteTile = _interopRequireDefault(require("./raste-tile"));
11
11
 
12
12
  var _raster = _interopRequireDefault(require("./raster"));
13
13
 
14
14
  var RasterModels = {
15
15
  raster: _raster.default,
16
16
  raster3d: _raster.default,
17
- rasterTile: _tileModel.default
17
+ rasterTile: _rasteTile.default
18
18
  };
19
19
  var _default = RasterModels;
20
20
  exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/raster/models/index.ts"],"names":["RasterModels","raster","RasterModel","raster3d","rasterTile","RasterTileModel"],"mappings":";;;;;;;;;AAAA;;AACA;;AAGA,IAAMA,YAA+C,GAAG;AACtDC,EAAAA,MAAM,EAAEC,eAD8C;AAEtDC,EAAAA,QAAQ,EAAED,eAF4C;AAGtDE,EAAAA,UAAU,EAAEC;AAH0C,CAAxD;eAMeL,Y","sourcesContent":["import RasterTileModel from '../../tile/models/tileModel';\nimport RasterModel from './raster';\nexport type RasterModelType = 'raster' | 'raster3d' | 'rasterTile';\n\nconst RasterModels: { [key in RasterModelType]: any } = {\n raster: RasterModel,\n raster3d: RasterModel,\n rasterTile: RasterTileModel,\n};\n\nexport default RasterModels;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/raster/models/index.ts"],"names":["RasterModels","raster","RasterModel","raster3d","rasterTile","RasterTileModel"],"mappings":";;;;;;;;;AAAA;;AACA;;AAGA,IAAMA,YAA+C,GAAG;AACtDC,EAAAA,MAAM,EAAEC,eAD8C;AAEtDC,EAAAA,QAAQ,EAAED,eAF4C;AAGtDE,EAAAA,UAAU,EAAEC;AAH0C,CAAxD;eAMeL,Y","sourcesContent":["import RasterTileModel from './raste-tile';\nimport RasterModel from './raster';\nexport type RasterModelType = 'raster' | 'raster3d' | 'rasterTile';\n\nconst RasterModels: { [key in RasterModelType]: any } = {\n raster: RasterModel,\n raster3d: RasterModel,\n rasterTile: RasterTileModel,\n};\n\nexport default RasterModels;\n"],"file":"index.js"}
@@ -0,0 +1,294 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+
12
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
+
14
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
+
16
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
+
18
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
+
20
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
+
22
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
+
24
+ var _l7Core = require("@antv/l7-core");
25
+
26
+ var _BaseModel2 = _interopRequireDefault(require("../../core/BaseModel"));
27
+
28
+ var _image = _interopRequireDefault(require("../../image"));
29
+
30
+ var _line = _interopRequireDefault(require("../../line"));
31
+
32
+ var _point = _interopRequireDefault(require("../../point"));
33
+
34
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
35
+
36
+ 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; } }
37
+
38
+ var RasterTileModel = function (_BaseModel) {
39
+ (0, _inherits2.default)(RasterTileModel, _BaseModel);
40
+
41
+ var _super = _createSuper(RasterTileModel);
42
+
43
+ function RasterTileModel() {
44
+ var _this;
45
+
46
+ (0, _classCallCheck2.default)(this, RasterTileModel);
47
+
48
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
49
+ args[_key] = arguments[_key];
50
+ }
51
+
52
+ _this = _super.call.apply(_super, [this].concat(args));
53
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "initedTileset", false);
54
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "tilesetManager", void 0);
55
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "showGrid", false);
56
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "subGridLayer", void 0);
57
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "subTextLayer", void 0);
58
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "lastViewStates", void 0);
59
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "timer", void 0);
60
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "renderSubLayers", function () {
61
+ if (!_this.tilesetManager) {
62
+ return;
63
+ }
64
+
65
+ var rasteTileLayer = _this.layer;
66
+
67
+ _this.tilesetManager.tiles.filter(function (tile) {
68
+ return tile.isLoaded;
69
+ }).map(function (tile) {
70
+ if (!tile.layer) {
71
+ tile.layer = _this.creatSubLayer(tile);
72
+ rasteTileLayer.addChild(tile.layer);
73
+ } else {
74
+ tile.layer.updateLayerConfig({
75
+ visible: tile.isVisible
76
+ });
77
+ }
78
+
79
+ return tile.layer;
80
+ });
81
+
82
+ if (_this.showGrid) {
83
+ if (!rasteTileLayer.hasChild(_this.subGridLayer)) {
84
+ rasteTileLayer.addChild(_this.subGridLayer);
85
+ }
86
+
87
+ if (!rasteTileLayer.hasChild(_this.subTextLayer)) {
88
+ rasteTileLayer.addChild(_this.subTextLayer);
89
+ }
90
+ }
91
+
92
+ _this.layerService.renderLayers();
93
+
94
+ if (_this.tilesetManager.isLoaded) {
95
+ rasteTileLayer.emit('tiles-loaded', _this.tilesetManager.currentTiles);
96
+ }
97
+ });
98
+ return _this;
99
+ }
100
+
101
+ (0, _createClass2.default)(RasterTileModel, [{
102
+ key: "getUninforms",
103
+ value: function getUninforms() {
104
+ return {};
105
+ }
106
+ }, {
107
+ key: "initModels",
108
+ value: function initModels() {
109
+ var _this$tilesetManager;
110
+
111
+ var source = this.layer.getSource();
112
+ this.tilesetManager = source.tileset;
113
+
114
+ if (!this.initedTileset) {
115
+ this.bindTilesetEvent();
116
+ this.initedTileset = true;
117
+ }
118
+
119
+ var _this$getCurrentView = this.getCurrentView(),
120
+ latLonBounds = _this$getCurrentView.latLonBounds,
121
+ zoom = _this$getCurrentView.zoom;
122
+
123
+ (_this$tilesetManager = this.tilesetManager) === null || _this$tilesetManager === void 0 ? void 0 : _this$tilesetManager.update(zoom, latLonBounds);
124
+
125
+ if (this.showGrid) {
126
+ this.renderSubGridLayer();
127
+ }
128
+
129
+ return this.buildModels();
130
+ }
131
+ }, {
132
+ key: "buildModels",
133
+ value: function buildModels() {
134
+ return [];
135
+ }
136
+ }, {
137
+ key: "clearModels",
138
+ value: function clearModels() {}
139
+ }, {
140
+ key: "renderSubGridLayer",
141
+ value: function renderSubGridLayer() {
142
+ if (!this.tilesetManager) {
143
+ return;
144
+ }
145
+
146
+ var features = this.tilesetManager.currentTiles.map(function (tile) {
147
+ return tile.bboxPolygon;
148
+ });
149
+ var data = {
150
+ type: 'FeatureCollection',
151
+ features: features
152
+ };
153
+
154
+ if (this.subGridLayer) {
155
+ this.subGridLayer.setData(data);
156
+ this.subTextLayer.setData(data);
157
+ return;
158
+ }
159
+
160
+ this.subGridLayer = new _line.default({
161
+ autoFit: false
162
+ }).source(data).size(1).color('red').shape('simple').style({
163
+ lineType: 'dash',
164
+ dashArray: [1, 2]
165
+ });
166
+ this.subTextLayer = new _point.default({
167
+ autoFit: false
168
+ }).source(data).size(14).color('red').shape('meta', 'text').style({
169
+ opacity: 1,
170
+ strokeWidth: 1,
171
+ stroke: '#fff'
172
+ });
173
+ this.subGridLayer.setContainer((0, _l7Core.createLayerContainer)(this.layer.sceneContainer), this.layer.sceneContainer);
174
+ this.subTextLayer.setContainer((0, _l7Core.createLayerContainer)(this.layer.sceneContainer), this.layer.sceneContainer);
175
+ this.subGridLayer.init();
176
+ this.subTextLayer.init();
177
+ }
178
+ }, {
179
+ key: "registerBuiltinAttributes",
180
+ value: function registerBuiltinAttributes() {}
181
+ }, {
182
+ key: "bindTilesetEvent",
183
+ value: function bindTilesetEvent() {
184
+ var _this2 = this;
185
+
186
+ if (!this.tilesetManager) {
187
+ return;
188
+ }
189
+
190
+ this.tilesetManager.on('tile-loaded', function (tile) {});
191
+ this.tilesetManager.on('tile-unload', function (tile) {
192
+ _this2.destroySubLayer(tile);
193
+ });
194
+ this.tilesetManager.on('tile-error', function (error, tile) {});
195
+ this.tilesetManager.on('tile-update', this.renderSubLayers);
196
+ this.mapService.on('mapchange', function (e) {
197
+ var _this2$getCurrentView = _this2.getCurrentView(),
198
+ latLonBounds = _this2$getCurrentView.latLonBounds,
199
+ zoom = _this2$getCurrentView.zoom;
200
+
201
+ if (_this2.mapService.version === 'GAODE1.x') {
202
+ var _this2$layer$getLayer = _this2.layer.getLayerConfig(),
203
+ visible = _this2$layer$getLayer.visible;
204
+
205
+ if (zoom < 3 && visible) {
206
+ _this2.layer.updateLayerConfig({
207
+ visible: false
208
+ });
209
+
210
+ _this2.layerService.updateLayerRenderList();
211
+ } else if (zoom >= 3 && !visible) {
212
+ _this2.layer.updateLayerConfig({
213
+ visible: true
214
+ });
215
+
216
+ _this2.layerService.updateLayerRenderList();
217
+ }
218
+ }
219
+
220
+ if (_this2.lastViewStates && _this2.lastViewStates.zoom === zoom && _this2.lastViewStates.latLonBounds.toString() === latLonBounds.toString()) {
221
+ return;
222
+ }
223
+
224
+ _this2.lastViewStates = {
225
+ zoom: zoom,
226
+ latLonBounds: latLonBounds
227
+ };
228
+
229
+ if (_this2.timer) {
230
+ clearTimeout(_this2.timer);
231
+ _this2.timer = null;
232
+ }
233
+
234
+ _this2.timer = setTimeout(function () {
235
+ var _this2$tilesetManager;
236
+
237
+ (_this2$tilesetManager = _this2.tilesetManager) === null || _this2$tilesetManager === void 0 ? void 0 : _this2$tilesetManager.update(zoom, latLonBounds);
238
+
239
+ if (_this2.showGrid) {
240
+ _this2.renderSubGridLayer();
241
+ }
242
+ }, 250);
243
+ });
244
+ }
245
+ }, {
246
+ key: "creatSubLayer",
247
+ value: function creatSubLayer(tile) {
248
+ var _ref = this.layer.getLayerConfig(),
249
+ _ref$opacity = _ref.opacity,
250
+ opacity = _ref$opacity === void 0 ? 1 : _ref$opacity,
251
+ _ref$zIndex = _ref.zIndex,
252
+ zIndex = _ref$zIndex === void 0 ? 0 : _ref$zIndex;
253
+
254
+ var layer = new _image.default({
255
+ visible: tile.isVisible,
256
+ zIndex: zIndex
257
+ }).source(tile.data, {
258
+ parser: {
259
+ type: 'image',
260
+ extent: tile.bounds
261
+ }
262
+ }).style({
263
+ opacity: opacity
264
+ });
265
+ var container = (0, _l7Core.createLayerContainer)(this.layer.sceneContainer);
266
+ layer.setContainer(container, this.layer.sceneContainer);
267
+ layer.init();
268
+ return layer;
269
+ }
270
+ }, {
271
+ key: "destroySubLayer",
272
+ value: function destroySubLayer(tile) {
273
+ if (tile.layer) {
274
+ var layerGroup = this.layer;
275
+ layerGroup.removeChild(tile.layer);
276
+ }
277
+ }
278
+ }, {
279
+ key: "getCurrentView",
280
+ value: function getCurrentView() {
281
+ var bounds = this.mapService.getBounds();
282
+ var latLonBounds = [bounds[0][0], bounds[0][1], bounds[1][0], bounds[1][1]];
283
+ var zoom = this.mapService.getZoom();
284
+ return {
285
+ latLonBounds: latLonBounds,
286
+ zoom: zoom
287
+ };
288
+ }
289
+ }]);
290
+ return RasterTileModel;
291
+ }(_BaseModel2.default);
292
+
293
+ exports.default = RasterTileModel;
294
+ //# sourceMappingURL=raste-tile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/raster/models/raste-tile.ts"],"names":["RasterTileModel","tilesetManager","rasteTileLayer","layer","tiles","filter","tile","isLoaded","map","creatSubLayer","addChild","updateLayerConfig","visible","isVisible","showGrid","hasChild","subGridLayer","subTextLayer","layerService","renderLayers","emit","currentTiles","source","getSource","tileset","initedTileset","bindTilesetEvent","getCurrentView","latLonBounds","zoom","update","renderSubGridLayer","buildModels","features","bboxPolygon","data","type","setData","LineLayer","autoFit","size","color","shape","style","lineType","dashArray","PointLayer","opacity","strokeWidth","stroke","setContainer","sceneContainer","init","on","destroySubLayer","error","renderSubLayers","mapService","e","version","getLayerConfig","updateLayerRenderList","lastViewStates","toString","timer","clearTimeout","setTimeout","zIndex","ImageLayer","parser","extent","bounds","container","layerGroup","removeChild","getBounds","getZoom","BaseModel"],"mappings":"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","sourcesContent":["import {\n createLayerContainer,\n ILayer,\n ILayerGroup,\n IModelUniform,\n} from '@antv/l7-core';\nimport { Tile, TilesetManager } from '@antv/l7-utils';\nimport { Container } from 'inversify';\nimport BaseModel from '../../core/BaseModel';\nimport { IRasterTileLayerStyleOptions } from '../../core/interface';\nimport ImageLayer from '../../image';\nimport LineLayer from '../../line';\nimport PointLayer from '../../point';\n\nexport default class RasterTileModel extends BaseModel {\n // 瓦片是否加载成功\n public initedTileset = false;\n // 瓦片数据管理器\n public tilesetManager: TilesetManager | undefined;\n // 是否开启瓦片网格子图层,用于调试\n public showGrid = false;\n // 瓦片网格子图层,用于调试\n private subGridLayer: ILayer;\n // 瓦片网格文本子图层,用于调试\n private subTextLayer: ILayer;\n // 上一次视野状态\n private lastViewStates: {\n zoom: number;\n latLonBounds: [number, number, number, number];\n };\n private timer: any;\n\n public getUninforms(): IModelUniform {\n return {};\n }\n\n public initModels() {\n const source = this.layer.getSource();\n this.tilesetManager = source.tileset;\n\n if (!this.initedTileset) {\n this.bindTilesetEvent();\n this.initedTileset = true;\n }\n\n const { latLonBounds, zoom } = this.getCurrentView();\n this.tilesetManager?.update(zoom, latLonBounds);\n\n if (this.showGrid) {\n this.renderSubGridLayer();\n }\n\n return this.buildModels();\n }\n\n public buildModels() {\n return [];\n }\n\n public clearModels() {\n //\n }\n\n // 渲染瓦片网格图层方便调试\n public renderSubGridLayer() {\n if (!this.tilesetManager) {\n return;\n }\n\n const features = this.tilesetManager.currentTiles.map(\n (tile) => tile.bboxPolygon,\n );\n\n const data = { type: 'FeatureCollection', features };\n\n if (this.subGridLayer) {\n this.subGridLayer.setData(data);\n this.subTextLayer.setData(data);\n return;\n }\n\n this.subGridLayer = new LineLayer({ autoFit: false })\n .source(data)\n .size(1)\n .color('red')\n .shape('simple')\n .style({ lineType: 'dash', dashArray: [1, 2] });\n\n this.subTextLayer = new PointLayer({ autoFit: false })\n .source(data)\n .size(14)\n .color('red')\n .shape('meta', 'text')\n .style({\n opacity: 1,\n strokeWidth: 1,\n stroke: '#fff',\n });\n\n this.subGridLayer.setContainer(\n createLayerContainer(this.layer.sceneContainer as Container),\n this.layer.sceneContainer as Container,\n );\n this.subTextLayer.setContainer(\n createLayerContainer(this.layer.sceneContainer as Container),\n this.layer.sceneContainer as Container,\n );\n this.subGridLayer.init();\n this.subTextLayer.init();\n }\n\n protected registerBuiltinAttributes() {\n //\n }\n\n // 监听瓦片管理器\n private bindTilesetEvent() {\n if (!this.tilesetManager) {\n return;\n }\n // 瓦片数据加载成功\n this.tilesetManager.on('tile-loaded', (tile: Tile) => {\n // todo: 将事件抛出,图层上可以监听使用\n });\n\n // 瓦片数据从缓存删除或被执行重新加载\n this.tilesetManager.on('tile-unload', (tile: Tile) => {\n // todo: 将事件抛出,图层上可以监听使用\n this.destroySubLayer(tile);\n });\n\n // 瓦片数据加载失败\n this.tilesetManager.on('tile-error', (error, tile: Tile) => {\n // todo: 将事件抛出,图层上可以监听使用\n });\n\n // 瓦片显隐状态更新\n this.tilesetManager.on('tile-update', this.renderSubLayers);\n\n // 地图视野发生改变\n this.mapService.on('mapchange', (e) => {\n const { latLonBounds, zoom } = this.getCurrentView();\n\n if (this.mapService.version === 'GAODE1.x') {\n const { visible } = this.layer.getLayerConfig();\n if (zoom < 3 && visible) {\n this.layer.updateLayerConfig({ visible: false });\n this.layerService.updateLayerRenderList();\n } else if (zoom >= 3 && !visible) {\n this.layer.updateLayerConfig({ visible: true });\n this.layerService.updateLayerRenderList();\n }\n }\n\n if (\n this.lastViewStates &&\n this.lastViewStates.zoom === zoom &&\n this.lastViewStates.latLonBounds.toString() === latLonBounds.toString()\n ) {\n return;\n }\n this.lastViewStates = { zoom, latLonBounds };\n\n if (this.timer) {\n clearTimeout(this.timer);\n this.timer = null;\n }\n\n this.timer = setTimeout(() => {\n this.tilesetManager?.update(zoom, latLonBounds);\n if (this.showGrid) {\n this.renderSubGridLayer();\n }\n }, 250);\n });\n }\n\n // 创建子图层\n private creatSubLayer(tile: Tile) {\n const {\n opacity = 1,\n zIndex = 0,\n } = this.layer.getLayerConfig() as IRasterTileLayerStyleOptions;\n const layer = new ImageLayer({\n visible: tile.isVisible,\n zIndex,\n })\n .source(tile.data, {\n parser: {\n type: 'image',\n extent: tile.bounds,\n },\n })\n .style({\n opacity,\n });\n const container = createLayerContainer(\n this.layer.sceneContainer as Container,\n );\n layer.setContainer(container, this.layer.sceneContainer as Container);\n layer.init();\n\n return layer;\n }\n\n // 更新子图层\n private renderSubLayers = () => {\n if (!this.tilesetManager) {\n return;\n }\n\n const rasteTileLayer = this.layer as ILayerGroup;\n\n this.tilesetManager.tiles\n .filter((tile) => tile.isLoaded)\n .map((tile) => {\n if (!tile.layer) {\n tile.layer = this.creatSubLayer(tile);\n rasteTileLayer.addChild(tile.layer);\n } else {\n // 显隐藏控制\n tile.layer.updateLayerConfig({\n visible: tile.isVisible,\n });\n }\n return tile.layer;\n });\n\n if (this.showGrid) {\n if (!rasteTileLayer.hasChild(this.subGridLayer)) {\n rasteTileLayer.addChild(this.subGridLayer);\n }\n if (!rasteTileLayer.hasChild(this.subTextLayer)) {\n rasteTileLayer.addChild(this.subTextLayer);\n }\n }\n\n this.layerService.renderLayers();\n\n if (this.tilesetManager.isLoaded) {\n // 将事件抛出,图层上可以使用瓦片\n rasteTileLayer.emit('tiles-loaded', this.tilesetManager.currentTiles);\n }\n };\n\n // 摧毁子图层\n private destroySubLayer(tile: Tile) {\n if (tile.layer) {\n const layerGroup = this.layer as ILayerGroup;\n layerGroup.removeChild(tile.layer);\n }\n }\n\n // 获取当前视野参数\n private getCurrentView() {\n const bounds = this.mapService.getBounds();\n const latLonBounds: [number, number, number, number] = [\n bounds[0][0],\n bounds[0][1],\n bounds[1][0],\n bounds[1][1],\n ];\n const zoom = this.mapService.getZoom();\n\n return { latLonBounds, zoom };\n }\n}\n"],"file":"raste-tile.js"}
@@ -21,8 +21,6 @@ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/ge
21
21
 
22
22
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
23
 
24
- var _isEqual2 = _interopRequireDefault(require("lodash/isEqual"));
25
-
26
24
  var _l7Core = require("@antv/l7-core");
27
25
 
28
26
  var _l7Utils = require("@antv/l7-utils");
@@ -55,7 +53,6 @@ var RasterModel = function (_BaseModel) {
55
53
  _this = _super.call.apply(_super, [this].concat(args));
56
54
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "texture", void 0);
57
55
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "colorTexture", void 0);
58
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "rampColors", void 0);
59
56
  return _this;
60
57
  }
61
58
 
@@ -72,14 +69,9 @@ var RasterModel = function (_BaseModel) {
72
69
  _ref$noDataValue = _ref.noDataValue,
73
70
  noDataValue = _ref$noDataValue === void 0 ? -9999999 : _ref$noDataValue,
74
71
  _ref$domain = _ref.domain,
75
- domain = _ref$domain === void 0 ? [0, 1] : _ref$domain,
76
- rampColors = _ref.rampColors;
77
-
78
- if (!(0, _isEqual2.default)(this.rampColors, rampColors)) {
79
- this.updateColorTexure();
80
- this.rampColors = rampColors;
81
- }
72
+ domain = _ref$domain === void 0 ? [0, 1] : _ref$domain;
82
73
 
74
+ this.updateColorTexure();
83
75
  return {
84
76
  u_opacity: opacity || 1,
85
77
  u_texture: this.texture,
@@ -93,13 +85,13 @@ var RasterModel = function (_BaseModel) {
93
85
  }, {
94
86
  key: "initModels",
95
87
  value: function initModels() {
88
+ this.layer.isLayerGroup = false;
89
+
96
90
  var _ref2 = this.layer.getLayerConfig(),
97
91
  _ref2$mask = _ref2.mask,
98
92
  mask = _ref2$mask === void 0 ? false : _ref2$mask,
99
93
  _ref2$maskInside = _ref2.maskInside,
100
- maskInside = _ref2$maskInside === void 0 ? true : _ref2$maskInside,
101
- rampColorsData = _ref2.rampColorsData,
102
- rampColors = _ref2.rampColors;
94
+ maskInside = _ref2$maskInside === void 0 ? true : _ref2$maskInside;
103
95
 
104
96
  var source = this.layer.getSource();
105
97
  var createTexture2D = this.rendererService.createTexture2D;
@@ -111,7 +103,11 @@ var RasterModel = function (_BaseModel) {
111
103
  format: _l7Core.gl.LUMINANCE,
112
104
  type: _l7Core.gl.FLOAT
113
105
  });
114
- var imageData = rampColorsData ? rampColorsData : (0, _l7Utils.generateColorRamp)(rampColors);
106
+
107
+ var _ref3 = this.layer.getLayerConfig(),
108
+ rampColors = _ref3.rampColors;
109
+
110
+ var imageData = (0, _l7Utils.generateColorRamp)(rampColors);
115
111
  this.colorTexture = createTexture2D({
116
112
  data: imageData.data,
117
113
  width: imageData.width,
@@ -136,14 +132,6 @@ var RasterModel = function (_BaseModel) {
136
132
  value: function buildModels() {
137
133
  return this.initModels();
138
134
  }
139
- }, {
140
- key: "clearModels",
141
- value: function clearModels() {
142
- var _this$texture, _this$colorTexture;
143
-
144
- (_this$texture = this.texture) === null || _this$texture === void 0 ? void 0 : _this$texture.destroy();
145
- (_this$colorTexture = this.colorTexture) === null || _this$colorTexture === void 0 ? void 0 : _this$colorTexture.destroy();
146
- }
147
135
  }, {
148
136
  key: "registerBuiltinAttributes",
149
137
  value: function registerBuiltinAttributes() {
@@ -169,8 +157,8 @@ var RasterModel = function (_BaseModel) {
169
157
  value: function updateColorTexure() {
170
158
  var createTexture2D = this.rendererService.createTexture2D;
171
159
 
172
- var _ref3 = this.layer.getLayerConfig(),
173
- rampColors = _ref3.rampColors;
160
+ var _ref4 = this.layer.getLayerConfig(),
161
+ rampColors = _ref4.rampColors;
174
162
 
175
163
  var imageData = (0, _l7Utils.generateColorRamp)(rampColors);
176
164
  this.colorTexture = createTexture2D({
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/raster/models/raster.ts"],"names":["RasterModel","layer","getLayerConfig","opacity","clampLow","clampHigh","noDataValue","domain","rampColors","updateColorTexure","u_opacity","u_texture","texture","u_domain","u_clampLow","u_clampHigh","u_noDataValue","u_colorTexture","colorTexture","mask","maskInside","rampColorsData","source","getSource","createTexture2D","rendererService","parserDataItem","data","dataArray","width","height","format","gl","LUMINANCE","type","FLOAT","imageData","flipY","buildLayerModel","moduleName","vertexShader","rasterVert","fragmentShader","rasterFrag","triangulation","RasterImageTriangulation","primitive","TRIANGLES","depth","enable","blend","getBlend","stencil","initModels","destroy","styleAttributeService","registerStyleAttribute","name","AttributeType","Attribute","descriptor","buffer","usage","DYNAMIC_DRAW","size","update","feature","featureIdx","vertex","attributeIdx","BaseModel"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAQA;;AAEA;;AAEA;;;;;;;;;IAGqBA,W;;;;;;;;;;;;;;;;;;;;;;;WAInB,wBAAsB;AACpB,iBAOI,KAAKC,KAAL,CAAWC,cAAX,EAPJ;AAAA,8BACEC,OADF;AAAA,UACEA,OADF,6BACY,CADZ;AAAA,+BAEEC,QAFF;AAAA,UAEEA,QAFF,8BAEa,IAFb;AAAA,gCAGEC,SAHF;AAAA,UAGEA,SAHF,+BAGc,IAHd;AAAA,kCAIEC,WAJF;AAAA,UAIEA,WAJF,iCAIgB,CAAC,OAJjB;AAAA,6BAKEC,MALF;AAAA,UAKEA,MALF,4BAKW,CAAC,CAAD,EAAI,CAAJ,CALX;AAAA,UAMEC,UANF,QAMEA,UANF;;AAQA,UAAI,CAAC,uBAAQ,KAAKA,UAAb,EAAyBA,UAAzB,CAAL,EAA2C;AACzC,aAAKC,iBAAL;AACA,aAAKD,UAAL,GAAkBA,UAAlB;AACD;;AAED,aAAO;AACLE,QAAAA,SAAS,EAAEP,OAAO,IAAI,CADjB;AAELQ,QAAAA,SAAS,EAAE,KAAKC,OAFX;AAGLC,QAAAA,QAAQ,EAAEN,MAHL;AAILO,QAAAA,UAAU,EAAEV,QAJP;AAKLW,QAAAA,WAAW,EAAE,OAAOV,SAAP,KAAqB,WAArB,GAAmCA,SAAnC,GAA+CD,QALvD;AAMLY,QAAAA,aAAa,EAAEV,WANV;AAOLW,QAAAA,cAAc,EAAE,KAAKC;AAPhB,OAAP;AASD;;;WAED,sBAAoB;AAClB,kBAKI,KAAKjB,KAAL,CAAWC,cAAX,EALJ;AAAA,6BACEiB,IADF;AAAA,UACEA,IADF,2BACS,KADT;AAAA,mCAEEC,UAFF;AAAA,UAEEA,UAFF,iCAEe,IAFf;AAAA,UAGEC,cAHF,SAGEA,cAHF;AAAA,UAIEb,UAJF,SAIEA,UAJF;;AAMA,UAAMc,MAAM,GAAG,KAAKrB,KAAL,CAAWsB,SAAX,EAAf;AACA,UAAQC,eAAR,GAA4B,KAAKC,eAAjC,CAAQD,eAAR;AACA,UAAME,cAAc,GAAGJ,MAAM,CAACK,IAAP,CAAYC,SAAZ,CAAsB,CAAtB,CAAvB;AACA,WAAKhB,OAAL,GAAeY,eAAe,CAAC;AAC7BG,QAAAA,IAAI,EAAED,cAAc,CAACC,IADQ;AAE7BE,QAAAA,KAAK,EAAEH,cAAc,CAACG,KAFO;AAG7BC,QAAAA,MAAM,EAAEJ,cAAc,CAACI,MAHM;AAI7BC,QAAAA,MAAM,EAAEC,WAAGC,SAJkB;AAK7BC,QAAAA,IAAI,EAAEF,WAAGG;AALoB,OAAD,CAA9B;AAQA,UAAMC,SAAS,GAAGf,cAAc,GAC5BA,cAD4B,GAE5B,gCAAkBb,UAAlB,CAFJ;AAGA,WAAKU,YAAL,GAAoBM,eAAe,CAAC;AAClCG,QAAAA,IAAI,EAAES,SAAS,CAACT,IADkB;AAElCE,QAAAA,KAAK,EAAEO,SAAS,CAACP,KAFiB;AAGlCC,QAAAA,MAAM,EAAEM,SAAS,CAACN,MAHgB;AAIlCO,QAAAA,KAAK,EAAE;AAJ2B,OAAD,CAAnC;AAMA,aAAO,CACL,KAAKpC,KAAL,CAAWqC,eAAX,CAA2B;AACzBC,QAAAA,UAAU,EAAE,iBADa;AAEzBC,QAAAA,YAAY,EAAEC,UAFW;AAGzBC,QAAAA,cAAc,EAAEC,UAHS;AAIzBC,QAAAA,aAAa,EAAEC,uCAJU;AAKzBC,QAAAA,SAAS,EAAEd,WAAGe,SALW;AAMzBC,QAAAA,KAAK,EAAE;AAAEC,UAAAA,MAAM,EAAE;AAAV,SANkB;AAOzBC,QAAAA,KAAK,EAAE,KAAKC,QAAL,EAPkB;AAQzBC,QAAAA,OAAO,EAAE,sBAAQjC,IAAR,EAAcC,UAAd;AARgB,OAA3B,CADK,CAAP;AAYD;;;WAED,uBAAqB;AACnB,aAAO,KAAKiC,UAAL,EAAP;AACD;;;WAED,uBAA2B;AAAA;;AACzB,4BAAKzC,OAAL,gEAAc0C,OAAd;AACA,iCAAKpC,YAAL,0EAAmBoC,OAAnB;AACD;;;WAED,qCAAsC;AAEpC,WAAKC,qBAAL,CAA2BC,sBAA3B,CAAkD;AAChDC,QAAAA,IAAI,EAAE,IAD0C;AAEhDvB,QAAAA,IAAI,EAAEwB,sBAAcC,SAF4B;AAGhDC,QAAAA,UAAU,EAAE;AACVH,UAAAA,IAAI,EAAE,MADI;AAEVI,UAAAA,MAAM,EAAE;AAENC,YAAAA,KAAK,EAAE9B,WAAG+B,YAFJ;AAGNpC,YAAAA,IAAI,EAAE,EAHA;AAINO,YAAAA,IAAI,EAAEF,WAAGG;AAJH,WAFE;AAQV6B,UAAAA,IAAI,EAAE,CARI;AASVC,UAAAA,MAAM,EAAE,gBACNC,OADM,EAENC,UAFM,EAGNC,MAHM,EAINC,YAJM,EAKH;AACH,mBAAO,CAACD,MAAM,CAAC,CAAD,CAAP,EAAYA,MAAM,CAAC,CAAD,CAAlB,CAAP;AACD;AAhBS;AAHoC,OAAlD;AAsBD;;;WAED,6BAA4B;AAC1B,UAAQ5C,eAAR,GAA4B,KAAKC,eAAjC,CAAQD,eAAR;;AACA,kBAEI,KAAKvB,KAAL,CAAWC,cAAX,EAFJ;AAAA,UACEM,UADF,SACEA,UADF;;AAGA,UAAM4B,SAAS,GAAG,gCAAkB5B,UAAlB,CAAlB;AACA,WAAKU,YAAL,GAAoBM,eAAe,CAAC;AAClCG,QAAAA,IAAI,EAAES,SAAS,CAACT,IADkB;AAElCE,QAAAA,KAAK,EAAEO,SAAS,CAACP,KAFiB;AAGlCC,QAAAA,MAAM,EAAEM,SAAS,CAACN,MAHgB;AAIlCO,QAAAA,KAAK,EAAE;AAJ2B,OAAD,CAAnC;AAMD;;;EArHsCiC,mB","sourcesContent":["import {\n AttributeType,\n gl,\n IEncodeFeature,\n ITexture2D,\n lazyInject,\n TYPES,\n} from '@antv/l7-core';\nimport { generateColorRamp, getMask, IColorRamp } from '@antv/l7-utils';\nimport { isEqual } from 'lodash';\nimport BaseModel from '../../core/BaseModel';\nimport { IRasterLayerStyleOptions } from '../../core/interface';\nimport { RasterImageTriangulation } from '../../core/triangulation';\nimport rasterFrag from '../shaders/raster_2d_frag.glsl';\nimport rasterVert from '../shaders/raster_2d_vert.glsl';\nexport default class RasterModel extends BaseModel {\n protected texture: ITexture2D;\n protected colorTexture: ITexture2D;\n private rampColors: any;\n public getUninforms() {\n const {\n opacity = 1,\n clampLow = true,\n clampHigh = true,\n noDataValue = -9999999,\n domain = [0, 1],\n rampColors,\n } = this.layer.getLayerConfig() as IRasterLayerStyleOptions;\n if (!isEqual(this.rampColors, rampColors)) {\n this.updateColorTexure();\n this.rampColors = rampColors;\n }\n\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 {\n mask = false,\n maskInside = true,\n rampColorsData,\n rampColors,\n } = this.layer.getLayerConfig() as IRasterLayerStyleOptions;\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 imageData = rampColorsData\n ? rampColorsData\n : 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 stencil: getMask(mask, maskInside),\n }),\n ];\n }\n\n public buildModels() {\n return this.initModels();\n }\n\n public clearModels(): void {\n this.texture?.destroy();\n this.colorTexture?.destroy();\n }\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"}
1
+ {"version":3,"sources":["../../../src/raster/models/raster.ts"],"names":["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","isLayerGroup","mask","maskInside","source","getSource","createTexture2D","rendererService","parserDataItem","data","dataArray","width","height","format","gl","LUMINANCE","type","FLOAT","rampColors","imageData","flipY","buildLayerModel","moduleName","vertexShader","rasterVert","fragmentShader","rasterFrag","triangulation","RasterImageTriangulation","primitive","TRIANGLES","depth","enable","blend","getBlend","stencil","initModels","styleAttributeService","registerStyleAttribute","name","AttributeType","Attribute","descriptor","buffer","usage","DYNAMIC_DRAW","size","update","feature","featureIdx","vertex","attributeIdx","BaseModel"],"mappings":"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","sourcesContent":["import {\n AttributeType,\n gl,\n IEncodeFeature,\n ITexture2D,\n lazyInject,\n TYPES,\n} from '@antv/l7-core';\nimport { generateColorRamp, getMask, IColorRamp } from '@antv/l7-utils';\nimport BaseModel from '../../core/BaseModel';\nimport { IRasterLayerStyleOptions } from '../../core/interface';\nimport { RasterImageTriangulation } from '../../core/triangulation';\nimport rasterFrag from '../shaders/raster_2d_frag.glsl';\nimport rasterVert from '../shaders/raster_2d_vert.glsl';\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 // 指定当前 layer 当作普通的 layer 进行渲染\n this.layer.isLayerGroup = false;\n\n const {\n mask = false,\n maskInside = true,\n } = this.layer.getLayerConfig() as IRasterLayerStyleOptions;\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 stencil: getMask(mask, maskInside),\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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@antv/l7-layers",
3
- "version": "2.9.12",
3
+ "version": "2.9.15",
4
4
  "description": "L7's collection of built-in layers",
5
5
  "main": "lib/index.js",
6
6
  "module": "es/index.js",
@@ -25,17 +25,15 @@
25
25
  "author": "xiaoiver",
26
26
  "license": "ISC",
27
27
  "dependencies": {
28
- "@antv/l7-core": "2.9.12",
29
- "@antv/l7-source": "2.9.12",
30
- "@antv/l7-utils": "2.9.12",
28
+ "@antv/l7-core": "2.9.15",
29
+ "@antv/l7-source": "2.9.15",
30
+ "@antv/l7-utils": "2.9.15",
31
31
  "@babel/runtime": "^7.7.7",
32
32
  "@mapbox/martini": "^0.2.0",
33
- "@turf/helpers": "^6.1.4",
34
33
  "@turf/meta": "^6.0.2",
35
- "@turf/union": "^6.5.0",
36
34
  "d3-array": "1",
37
35
  "d3-color": "^1.4.0",
38
- "d3-interpolate": "1.0.0",
36
+ "d3-interpolate": "1.4.0",
39
37
  "d3-scale": "2",
40
38
  "earcut": "^2.2.1",
41
39
  "eventemitter3": "^4.0.0",
@@ -51,13 +49,13 @@
51
49
  "devDependencies": {
52
50
  "@types/d3-array": "^2.0.0",
53
51
  "@types/d3-color": "^1.2.2",
54
- "@types/d3-interpolate": "1.1.6",
52
+ "@types/d3-interpolate": "1.4.0",
55
53
  "@types/d3-scale": "^2.1.1",
56
54
  "@types/earcut": "^2.1.0",
57
55
  "@types/gl-matrix": "^2.4.5",
58
56
  "@types/lodash": "^4.14.138"
59
57
  },
60
- "gitHead": "1f0e90a83c1f52a2ae35d3c25e0cb84ee2be25ed",
58
+ "gitHead": "c49301900faaeb2be20978b861291500e5eaeda1",
61
59
  "publishConfig": {
62
60
  "access": "public"
63
61
  }