@deck.gl/aggregation-layers 9.0.0-beta.2 → 9.0.0-beta.4

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 (335) hide show
  1. package/dist/aggregation-layer.js +153 -0
  2. package/{typed → dist}/contour-layer/contour-layer.d.ts +1 -1
  3. package/dist/contour-layer/contour-layer.d.ts.map +1 -0
  4. package/dist/contour-layer/contour-layer.js +241 -0
  5. package/dist/contour-layer/contour-utils.js +64 -0
  6. package/dist/contour-layer/marching-squares-codes.js +337 -0
  7. package/dist/contour-layer/marching-squares.js +147 -0
  8. package/{typed → dist}/cpu-grid-layer/cpu-grid-layer.d.ts +3 -3
  9. package/dist/cpu-grid-layer/cpu-grid-layer.d.ts.map +1 -0
  10. package/dist/cpu-grid-layer/cpu-grid-layer.js +130 -0
  11. package/dist/cpu-grid-layer/grid-aggregator.js +141 -0
  12. package/dist/dist.dev.js +1296 -13614
  13. package/dist/gpu-grid-layer/gpu-grid-cell-layer-fragment.glsl.js +34 -0
  14. package/dist/{esm/gpu-grid-layer → gpu-grid-layer}/gpu-grid-cell-layer-vertex.glsl.js +20 -1
  15. package/{typed → dist}/gpu-grid-layer/gpu-grid-cell-layer.d.ts +1 -1
  16. package/dist/gpu-grid-layer/gpu-grid-cell-layer.d.ts.map +1 -0
  17. package/dist/gpu-grid-layer/gpu-grid-cell-layer.js +145 -0
  18. package/{typed → dist}/gpu-grid-layer/gpu-grid-layer.d.ts +3 -3
  19. package/dist/gpu-grid-layer/gpu-grid-layer.d.ts.map +1 -0
  20. package/dist/gpu-grid-layer/gpu-grid-layer.js +288 -0
  21. package/{typed → dist}/grid-aggregation-layer.d.ts +3 -3
  22. package/dist/grid-aggregation-layer.d.ts.map +1 -0
  23. package/dist/grid-aggregation-layer.js +172 -0
  24. package/{typed → dist}/grid-layer/grid-layer.d.ts +2 -2
  25. package/dist/grid-layer/grid-layer.d.ts.map +1 -0
  26. package/dist/grid-layer/grid-layer.js +63 -0
  27. package/dist/heatmap-layer/heatmap-layer-utils.js +63 -0
  28. package/{typed → dist}/heatmap-layer/heatmap-layer.d.ts +1 -1
  29. package/dist/heatmap-layer/heatmap-layer.d.ts.map +1 -0
  30. package/dist/heatmap-layer/heatmap-layer.js +471 -0
  31. package/dist/{esm/heatmap-layer → heatmap-layer}/max-fs.glsl.js +0 -1
  32. package/dist/{esm/heatmap-layer → heatmap-layer}/max-vs.glsl.js +0 -1
  33. package/dist/heatmap-layer/triangle-layer-fragment.glsl.js +61 -0
  34. package/dist/heatmap-layer/triangle-layer-vertex.glsl.js +52 -0
  35. package/dist/heatmap-layer/triangle-layer.js +59 -0
  36. package/dist/{esm/heatmap-layer → heatmap-layer}/weights-fs.glsl.js +0 -1
  37. package/dist/{esm/heatmap-layer → heatmap-layer}/weights-vs.glsl.js +0 -1
  38. package/dist/hexagon-layer/hexagon-aggregator.js +112 -0
  39. package/{typed → dist}/hexagon-layer/hexagon-layer.d.ts +3 -3
  40. package/dist/hexagon-layer/hexagon-layer.d.ts.map +1 -0
  41. package/dist/hexagon-layer/hexagon-layer.js +174 -0
  42. package/dist/index.cjs +4494 -0
  43. package/dist/index.cjs.map +7 -0
  44. package/dist/index.d.ts +20 -0
  45. package/dist/index.d.ts.map +1 -0
  46. package/dist/index.js +32 -0
  47. package/{typed → dist}/screen-grid-layer/screen-grid-cell-layer.d.ts +1 -1
  48. package/dist/screen-grid-layer/screen-grid-cell-layer.d.ts.map +1 -0
  49. package/dist/screen-grid-layer/screen-grid-cell-layer.js +166 -0
  50. package/dist/screen-grid-layer/screen-grid-layer-fragment.glsl.js +40 -0
  51. package/dist/{esm/screen-grid-layer → screen-grid-layer}/screen-grid-layer-vertex.glsl.js +19 -1
  52. package/{typed → dist}/screen-grid-layer/screen-grid-layer.d.ts +1 -1
  53. package/dist/screen-grid-layer/screen-grid-layer.d.ts.map +1 -0
  54. package/dist/screen-grid-layer/screen-grid-layer.js +216 -0
  55. package/dist/types.js +1 -0
  56. package/dist/utils/aggregation-operation-utils.js +94 -0
  57. package/dist/utils/bin-sorter.js +167 -0
  58. package/dist/utils/color-utils.js +53 -0
  59. package/dist/utils/cpu-aggregator.js +421 -0
  60. package/dist/utils/gpu-grid-aggregation/aggregate-all-fs.glsl.js +39 -0
  61. package/dist/utils/gpu-grid-aggregation/aggregate-all-vs.glsl.js +53 -0
  62. package/dist/utils/gpu-grid-aggregation/aggregate-to-grid-fs.glsl.js +34 -0
  63. package/dist/{esm/utils → utils}/gpu-grid-aggregation/aggregate-to-grid-vs.glsl.js +19 -1
  64. package/dist/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.js +41 -0
  65. package/dist/utils/gpu-grid-aggregation/gpu-grid-aggregator-utils.js +1 -0
  66. package/{typed → dist}/utils/gpu-grid-aggregation/gpu-grid-aggregator.d.ts.map +1 -1
  67. package/dist/utils/gpu-grid-aggregation/gpu-grid-aggregator.js +566 -0
  68. package/dist/utils/gpu-grid-aggregation/transform-mean-vs.glsl.js +37 -0
  69. package/dist/utils/grid-aggregation-utils.js +114 -0
  70. package/dist/utils/prop-utils.js +28 -0
  71. package/dist/utils/resource-utils.js +38 -0
  72. package/dist/utils/scale-utils.js +184 -0
  73. package/dist.min.js +60 -174
  74. package/package.json +18 -11
  75. package/src/utils/gpu-grid-aggregation/gpu-grid-aggregator.ts +10 -13
  76. package/dist/es5/aggregation-layer.js +0 -215
  77. package/dist/es5/aggregation-layer.js.map +0 -1
  78. package/dist/es5/contour-layer/contour-layer.js +0 -353
  79. package/dist/es5/contour-layer/contour-layer.js.map +0 -1
  80. package/dist/es5/contour-layer/contour-utils.js +0 -110
  81. package/dist/es5/contour-layer/contour-utils.js.map +0 -1
  82. package/dist/es5/contour-layer/marching-squares-codes.js +0 -152
  83. package/dist/es5/contour-layer/marching-squares-codes.js.map +0 -1
  84. package/dist/es5/contour-layer/marching-squares.js +0 -168
  85. package/dist/es5/contour-layer/marching-squares.js.map +0 -1
  86. package/dist/es5/cpu-grid-layer/cpu-grid-layer.js +0 -235
  87. package/dist/es5/cpu-grid-layer/cpu-grid-layer.js.map +0 -1
  88. package/dist/es5/cpu-grid-layer/grid-aggregator.js +0 -180
  89. package/dist/es5/cpu-grid-layer/grid-aggregator.js.map +0 -1
  90. package/dist/es5/gpu-grid-layer/gpu-grid-cell-layer-fragment.glsl.js +0 -9
  91. package/dist/es5/gpu-grid-layer/gpu-grid-cell-layer-fragment.glsl.js.map +0 -1
  92. package/dist/es5/gpu-grid-layer/gpu-grid-cell-layer-vertex.glsl.js +0 -9
  93. package/dist/es5/gpu-grid-layer/gpu-grid-cell-layer-vertex.glsl.js.map +0 -1
  94. package/dist/es5/gpu-grid-layer/gpu-grid-cell-layer.js +0 -247
  95. package/dist/es5/gpu-grid-layer/gpu-grid-cell-layer.js.map +0 -1
  96. package/dist/es5/gpu-grid-layer/gpu-grid-layer.js +0 -424
  97. package/dist/es5/gpu-grid-layer/gpu-grid-layer.js.map +0 -1
  98. package/dist/es5/grid-aggregation-layer.js +0 -280
  99. package/dist/es5/grid-aggregation-layer.js.map +0 -1
  100. package/dist/es5/grid-layer/grid-layer.js +0 -125
  101. package/dist/es5/grid-layer/grid-layer.js.map +0 -1
  102. package/dist/es5/heatmap-layer/heatmap-layer-utils.js +0 -107
  103. package/dist/es5/heatmap-layer/heatmap-layer-utils.js.map +0 -1
  104. package/dist/es5/heatmap-layer/heatmap-layer.js +0 -678
  105. package/dist/es5/heatmap-layer/heatmap-layer.js.map +0 -1
  106. package/dist/es5/heatmap-layer/max-fs.glsl.js +0 -9
  107. package/dist/es5/heatmap-layer/max-fs.glsl.js.map +0 -1
  108. package/dist/es5/heatmap-layer/max-vs.glsl.js +0 -9
  109. package/dist/es5/heatmap-layer/max-vs.glsl.js.map +0 -1
  110. package/dist/es5/heatmap-layer/triangle-layer-fragment.glsl.js +0 -9
  111. package/dist/es5/heatmap-layer/triangle-layer-fragment.glsl.js.map +0 -1
  112. package/dist/es5/heatmap-layer/triangle-layer-vertex.glsl.js +0 -9
  113. package/dist/es5/heatmap-layer/triangle-layer-vertex.glsl.js.map +0 -1
  114. package/dist/es5/heatmap-layer/triangle-layer.js +0 -121
  115. package/dist/es5/heatmap-layer/triangle-layer.js.map +0 -1
  116. package/dist/es5/heatmap-layer/weights-fs.glsl.js +0 -9
  117. package/dist/es5/heatmap-layer/weights-fs.glsl.js.map +0 -1
  118. package/dist/es5/heatmap-layer/weights-vs.glsl.js +0 -9
  119. package/dist/es5/heatmap-layer/weights-vs.glsl.js.map +0 -1
  120. package/dist/es5/hexagon-layer/hexagon-aggregator.js +0 -118
  121. package/dist/es5/hexagon-layer/hexagon-aggregator.js.map +0 -1
  122. package/dist/es5/hexagon-layer/hexagon-layer.js +0 -289
  123. package/dist/es5/hexagon-layer/hexagon-layer.js.map +0 -1
  124. package/dist/es5/index.js +0 -104
  125. package/dist/es5/index.js.map +0 -1
  126. package/dist/es5/screen-grid-layer/screen-grid-cell-layer.js +0 -244
  127. package/dist/es5/screen-grid-layer/screen-grid-cell-layer.js.map +0 -1
  128. package/dist/es5/screen-grid-layer/screen-grid-layer-fragment.glsl.js +0 -9
  129. package/dist/es5/screen-grid-layer/screen-grid-layer-fragment.glsl.js.map +0 -1
  130. package/dist/es5/screen-grid-layer/screen-grid-layer-vertex.glsl.js +0 -9
  131. package/dist/es5/screen-grid-layer/screen-grid-layer-vertex.glsl.js.map +0 -1
  132. package/dist/es5/screen-grid-layer/screen-grid-layer.js +0 -317
  133. package/dist/es5/screen-grid-layer/screen-grid-layer.js.map +0 -1
  134. package/dist/es5/types.js +0 -2
  135. package/dist/es5/types.js.map +0 -1
  136. package/dist/es5/utils/aggregation-operation-utils.js +0 -123
  137. package/dist/es5/utils/aggregation-operation-utils.js.map +0 -1
  138. package/dist/es5/utils/bin-sorter.js +0 -248
  139. package/dist/es5/utils/bin-sorter.js.map +0 -1
  140. package/dist/es5/utils/color-utils.js +0 -39
  141. package/dist/es5/utils/color-utils.js.map +0 -1
  142. package/dist/es5/utils/cpu-aggregator.js +0 -496
  143. package/dist/es5/utils/cpu-aggregator.js.map +0 -1
  144. package/dist/es5/utils/gpu-grid-aggregation/aggregate-all-fs.glsl.js +0 -9
  145. package/dist/es5/utils/gpu-grid-aggregation/aggregate-all-fs.glsl.js.map +0 -1
  146. package/dist/es5/utils/gpu-grid-aggregation/aggregate-all-vs.glsl.js +0 -9
  147. package/dist/es5/utils/gpu-grid-aggregation/aggregate-all-vs.glsl.js.map +0 -1
  148. package/dist/es5/utils/gpu-grid-aggregation/aggregate-to-grid-fs.glsl.js +0 -9
  149. package/dist/es5/utils/gpu-grid-aggregation/aggregate-to-grid-fs.glsl.js.map +0 -1
  150. package/dist/es5/utils/gpu-grid-aggregation/aggregate-to-grid-vs.glsl.js +0 -9
  151. package/dist/es5/utils/gpu-grid-aggregation/aggregate-to-grid-vs.glsl.js.map +0 -1
  152. package/dist/es5/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.js +0 -63
  153. package/dist/es5/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.js.map +0 -1
  154. package/dist/es5/utils/gpu-grid-aggregation/gpu-grid-aggregator-utils.js +0 -2
  155. package/dist/es5/utils/gpu-grid-aggregation/gpu-grid-aggregator-utils.js.map +0 -1
  156. package/dist/es5/utils/gpu-grid-aggregation/gpu-grid-aggregator.js +0 -732
  157. package/dist/es5/utils/gpu-grid-aggregation/gpu-grid-aggregator.js.map +0 -1
  158. package/dist/es5/utils/gpu-grid-aggregation/gpu-grid-aggregator.md +0 -155
  159. package/dist/es5/utils/gpu-grid-aggregation/transform-mean-vs.glsl.js +0 -9
  160. package/dist/es5/utils/gpu-grid-aggregation/transform-mean-vs.glsl.js.map +0 -1
  161. package/dist/es5/utils/grid-aggregation-utils.js +0 -118
  162. package/dist/es5/utils/grid-aggregation-utils.js.map +0 -1
  163. package/dist/es5/utils/prop-utils.js +0 -19
  164. package/dist/es5/utils/prop-utils.js.map +0 -1
  165. package/dist/es5/utils/resource-utils.js +0 -59
  166. package/dist/es5/utils/resource-utils.js.map +0 -1
  167. package/dist/es5/utils/scale-utils.js +0 -254
  168. package/dist/es5/utils/scale-utils.js.map +0 -1
  169. package/dist/esm/aggregation-layer.js +0 -156
  170. package/dist/esm/aggregation-layer.js.map +0 -1
  171. package/dist/esm/contour-layer/contour-layer.js +0 -316
  172. package/dist/esm/contour-layer/contour-layer.js.map +0 -1
  173. package/dist/esm/contour-layer/contour-utils.js +0 -81
  174. package/dist/esm/contour-layer/contour-utils.js.map +0 -1
  175. package/dist/esm/contour-layer/marching-squares-codes.js +0 -219
  176. package/dist/esm/contour-layer/marching-squares-codes.js.map +0 -1
  177. package/dist/esm/contour-layer/marching-squares.js +0 -151
  178. package/dist/esm/contour-layer/marching-squares.js.map +0 -1
  179. package/dist/esm/cpu-grid-layer/cpu-grid-layer.js +0 -186
  180. package/dist/esm/cpu-grid-layer/cpu-grid-layer.js.map +0 -1
  181. package/dist/esm/cpu-grid-layer/grid-aggregator.js +0 -142
  182. package/dist/esm/cpu-grid-layer/grid-aggregator.js.map +0 -1
  183. package/dist/esm/gpu-grid-layer/gpu-grid-cell-layer-fragment.glsl.js +0 -16
  184. package/dist/esm/gpu-grid-layer/gpu-grid-cell-layer-fragment.glsl.js.map +0 -1
  185. package/dist/esm/gpu-grid-layer/gpu-grid-cell-layer-vertex.glsl.js.map +0 -1
  186. package/dist/esm/gpu-grid-layer/gpu-grid-cell-layer.js +0 -196
  187. package/dist/esm/gpu-grid-layer/gpu-grid-cell-layer.js.map +0 -1
  188. package/dist/esm/gpu-grid-layer/gpu-grid-layer.js +0 -399
  189. package/dist/esm/gpu-grid-layer/gpu-grid-layer.js.map +0 -1
  190. package/dist/esm/grid-aggregation-layer.js +0 -240
  191. package/dist/esm/grid-aggregation-layer.js.map +0 -1
  192. package/dist/esm/grid-layer/grid-layer.js +0 -80
  193. package/dist/esm/grid-layer/grid-layer.js.map +0 -1
  194. package/dist/esm/heatmap-layer/heatmap-layer-utils.js +0 -55
  195. package/dist/esm/heatmap-layer/heatmap-layer-utils.js.map +0 -1
  196. package/dist/esm/heatmap-layer/heatmap-layer.js +0 -638
  197. package/dist/esm/heatmap-layer/heatmap-layer.js.map +0 -1
  198. package/dist/esm/heatmap-layer/max-fs.glsl.js.map +0 -1
  199. package/dist/esm/heatmap-layer/max-vs.glsl.js.map +0 -1
  200. package/dist/esm/heatmap-layer/triangle-layer-fragment.glsl.js +0 -43
  201. package/dist/esm/heatmap-layer/triangle-layer-fragment.glsl.js.map +0 -1
  202. package/dist/esm/heatmap-layer/triangle-layer-vertex.glsl.js +0 -33
  203. package/dist/esm/heatmap-layer/triangle-layer-vertex.glsl.js.map +0 -1
  204. package/dist/esm/heatmap-layer/triangle-layer.js +0 -78
  205. package/dist/esm/heatmap-layer/triangle-layer.js.map +0 -1
  206. package/dist/esm/heatmap-layer/weights-fs.glsl.js.map +0 -1
  207. package/dist/esm/heatmap-layer/weights-vs.glsl.js.map +0 -1
  208. package/dist/esm/hexagon-layer/hexagon-aggregator.js +0 -87
  209. package/dist/esm/hexagon-layer/hexagon-aggregator.js.map +0 -1
  210. package/dist/esm/hexagon-layer/hexagon-layer.js +0 -232
  211. package/dist/esm/hexagon-layer/hexagon-layer.js.map +0 -1
  212. package/dist/esm/index.js +0 -13
  213. package/dist/esm/index.js.map +0 -1
  214. package/dist/esm/screen-grid-layer/screen-grid-cell-layer.js +0 -203
  215. package/dist/esm/screen-grid-layer/screen-grid-cell-layer.js.map +0 -1
  216. package/dist/esm/screen-grid-layer/screen-grid-layer-fragment.glsl.js +0 -21
  217. package/dist/esm/screen-grid-layer/screen-grid-layer-fragment.glsl.js.map +0 -1
  218. package/dist/esm/screen-grid-layer/screen-grid-layer-vertex.glsl.js.map +0 -1
  219. package/dist/esm/screen-grid-layer/screen-grid-layer.js +0 -285
  220. package/dist/esm/screen-grid-layer/screen-grid-layer.js.map +0 -1
  221. package/dist/esm/types.js +0 -2
  222. package/dist/esm/types.js.map +0 -1
  223. package/dist/esm/utils/aggregation-operation-utils.js +0 -91
  224. package/dist/esm/utils/aggregation-operation-utils.js.map +0 -1
  225. package/dist/esm/utils/bin-sorter.js +0 -165
  226. package/dist/esm/utils/bin-sorter.js.map +0 -1
  227. package/dist/esm/utils/color-utils.js +0 -28
  228. package/dist/esm/utils/color-utils.js.map +0 -1
  229. package/dist/esm/utils/cpu-aggregator.js +0 -487
  230. package/dist/esm/utils/cpu-aggregator.js.map +0 -1
  231. package/dist/esm/utils/gpu-grid-aggregation/aggregate-all-fs.glsl.js +0 -21
  232. package/dist/esm/utils/gpu-grid-aggregation/aggregate-all-fs.glsl.js.map +0 -1
  233. package/dist/esm/utils/gpu-grid-aggregation/aggregate-all-vs.glsl.js +0 -35
  234. package/dist/esm/utils/gpu-grid-aggregation/aggregate-all-vs.glsl.js.map +0 -1
  235. package/dist/esm/utils/gpu-grid-aggregation/aggregate-to-grid-fs.glsl.js +0 -16
  236. package/dist/esm/utils/gpu-grid-aggregation/aggregate-to-grid-fs.glsl.js.map +0 -1
  237. package/dist/esm/utils/gpu-grid-aggregation/aggregate-to-grid-vs.glsl.js.map +0 -1
  238. package/dist/esm/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.js +0 -42
  239. package/dist/esm/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.js.map +0 -1
  240. package/dist/esm/utils/gpu-grid-aggregation/gpu-grid-aggregator-utils.js +0 -2
  241. package/dist/esm/utils/gpu-grid-aggregation/gpu-grid-aggregator-utils.js.map +0 -1
  242. package/dist/esm/utils/gpu-grid-aggregation/gpu-grid-aggregator.js +0 -720
  243. package/dist/esm/utils/gpu-grid-aggregation/gpu-grid-aggregator.js.map +0 -1
  244. package/dist/esm/utils/gpu-grid-aggregation/gpu-grid-aggregator.md +0 -155
  245. package/dist/esm/utils/gpu-grid-aggregation/transform-mean-vs.glsl.js +0 -19
  246. package/dist/esm/utils/gpu-grid-aggregation/transform-mean-vs.glsl.js.map +0 -1
  247. package/dist/esm/utils/grid-aggregation-utils.js +0 -109
  248. package/dist/esm/utils/grid-aggregation-utils.js.map +0 -1
  249. package/dist/esm/utils/prop-utils.js +0 -12
  250. package/dist/esm/utils/prop-utils.js.map +0 -1
  251. package/dist/esm/utils/resource-utils.js +0 -44
  252. package/dist/esm/utils/resource-utils.js.map +0 -1
  253. package/dist/esm/utils/scale-utils.js +0 -192
  254. package/dist/esm/utils/scale-utils.js.map +0 -1
  255. package/typed/contour-layer/contour-layer.d.ts.map +0 -1
  256. package/typed/cpu-grid-layer/cpu-grid-layer.d.ts.map +0 -1
  257. package/typed/gpu-grid-layer/gpu-grid-cell-layer.d.ts.map +0 -1
  258. package/typed/gpu-grid-layer/gpu-grid-layer.d.ts.map +0 -1
  259. package/typed/grid-aggregation-layer.d.ts.map +0 -1
  260. package/typed/grid-layer/grid-layer.d.ts.map +0 -1
  261. package/typed/heatmap-layer/heatmap-layer.d.ts.map +0 -1
  262. package/typed/hexagon-layer/hexagon-layer.d.ts.map +0 -1
  263. package/typed/index.d.ts +0 -20
  264. package/typed/index.d.ts.map +0 -1
  265. package/typed/screen-grid-layer/screen-grid-cell-layer.d.ts.map +0 -1
  266. package/typed/screen-grid-layer/screen-grid-layer.d.ts.map +0 -1
  267. /package/{typed → dist}/aggregation-layer.d.ts +0 -0
  268. /package/{typed → dist}/aggregation-layer.d.ts.map +0 -0
  269. /package/{typed → dist}/contour-layer/contour-utils.d.ts +0 -0
  270. /package/{typed → dist}/contour-layer/contour-utils.d.ts.map +0 -0
  271. /package/{typed → dist}/contour-layer/marching-squares-codes.d.ts +0 -0
  272. /package/{typed → dist}/contour-layer/marching-squares-codes.d.ts.map +0 -0
  273. /package/{typed → dist}/contour-layer/marching-squares.d.ts +0 -0
  274. /package/{typed → dist}/contour-layer/marching-squares.d.ts.map +0 -0
  275. /package/{typed → dist}/cpu-grid-layer/grid-aggregator.d.ts +0 -0
  276. /package/{typed → dist}/cpu-grid-layer/grid-aggregator.d.ts.map +0 -0
  277. /package/{typed → dist}/gpu-grid-layer/gpu-grid-cell-layer-fragment.glsl.d.ts +0 -0
  278. /package/{typed → dist}/gpu-grid-layer/gpu-grid-cell-layer-fragment.glsl.d.ts.map +0 -0
  279. /package/{typed → dist}/gpu-grid-layer/gpu-grid-cell-layer-vertex.glsl.d.ts +0 -0
  280. /package/{typed → dist}/gpu-grid-layer/gpu-grid-cell-layer-vertex.glsl.d.ts.map +0 -0
  281. /package/{typed → dist}/heatmap-layer/heatmap-layer-utils.d.ts +0 -0
  282. /package/{typed → dist}/heatmap-layer/heatmap-layer-utils.d.ts.map +0 -0
  283. /package/{typed → dist}/heatmap-layer/max-fs.glsl.d.ts +0 -0
  284. /package/{typed → dist}/heatmap-layer/max-fs.glsl.d.ts.map +0 -0
  285. /package/{typed → dist}/heatmap-layer/max-vs.glsl.d.ts +0 -0
  286. /package/{typed → dist}/heatmap-layer/max-vs.glsl.d.ts.map +0 -0
  287. /package/{typed → dist}/heatmap-layer/triangle-layer-fragment.glsl.d.ts +0 -0
  288. /package/{typed → dist}/heatmap-layer/triangle-layer-fragment.glsl.d.ts.map +0 -0
  289. /package/{typed → dist}/heatmap-layer/triangle-layer-vertex.glsl.d.ts +0 -0
  290. /package/{typed → dist}/heatmap-layer/triangle-layer-vertex.glsl.d.ts.map +0 -0
  291. /package/{typed → dist}/heatmap-layer/triangle-layer.d.ts +0 -0
  292. /package/{typed → dist}/heatmap-layer/triangle-layer.d.ts.map +0 -0
  293. /package/{typed → dist}/heatmap-layer/weights-fs.glsl.d.ts +0 -0
  294. /package/{typed → dist}/heatmap-layer/weights-fs.glsl.d.ts.map +0 -0
  295. /package/{typed → dist}/heatmap-layer/weights-vs.glsl.d.ts +0 -0
  296. /package/{typed → dist}/heatmap-layer/weights-vs.glsl.d.ts.map +0 -0
  297. /package/{typed → dist}/hexagon-layer/hexagon-aggregator.d.ts +0 -0
  298. /package/{typed → dist}/hexagon-layer/hexagon-aggregator.d.ts.map +0 -0
  299. /package/{typed → dist}/screen-grid-layer/screen-grid-layer-fragment.glsl.d.ts +0 -0
  300. /package/{typed → dist}/screen-grid-layer/screen-grid-layer-fragment.glsl.d.ts.map +0 -0
  301. /package/{typed → dist}/screen-grid-layer/screen-grid-layer-vertex.glsl.d.ts +0 -0
  302. /package/{typed → dist}/screen-grid-layer/screen-grid-layer-vertex.glsl.d.ts.map +0 -0
  303. /package/{typed → dist}/types.d.ts +0 -0
  304. /package/{typed → dist}/types.d.ts.map +0 -0
  305. /package/{typed → dist}/utils/aggregation-operation-utils.d.ts +0 -0
  306. /package/{typed → dist}/utils/aggregation-operation-utils.d.ts.map +0 -0
  307. /package/{typed → dist}/utils/bin-sorter.d.ts +0 -0
  308. /package/{typed → dist}/utils/bin-sorter.d.ts.map +0 -0
  309. /package/{typed → dist}/utils/color-utils.d.ts +0 -0
  310. /package/{typed → dist}/utils/color-utils.d.ts.map +0 -0
  311. /package/{typed → dist}/utils/cpu-aggregator.d.ts +0 -0
  312. /package/{typed → dist}/utils/cpu-aggregator.d.ts.map +0 -0
  313. /package/{typed → dist}/utils/gpu-grid-aggregation/aggregate-all-fs.glsl.d.ts +0 -0
  314. /package/{typed → dist}/utils/gpu-grid-aggregation/aggregate-all-fs.glsl.d.ts.map +0 -0
  315. /package/{typed → dist}/utils/gpu-grid-aggregation/aggregate-all-vs.glsl.d.ts +0 -0
  316. /package/{typed → dist}/utils/gpu-grid-aggregation/aggregate-all-vs.glsl.d.ts.map +0 -0
  317. /package/{typed → dist}/utils/gpu-grid-aggregation/aggregate-to-grid-fs.glsl.d.ts +0 -0
  318. /package/{typed → dist}/utils/gpu-grid-aggregation/aggregate-to-grid-fs.glsl.d.ts.map +0 -0
  319. /package/{typed → dist}/utils/gpu-grid-aggregation/aggregate-to-grid-vs.glsl.d.ts +0 -0
  320. /package/{typed → dist}/utils/gpu-grid-aggregation/aggregate-to-grid-vs.glsl.d.ts.map +0 -0
  321. /package/{typed → dist}/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.d.ts +0 -0
  322. /package/{typed → dist}/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.d.ts.map +0 -0
  323. /package/{typed → dist}/utils/gpu-grid-aggregation/gpu-grid-aggregator-utils.d.ts +0 -0
  324. /package/{typed → dist}/utils/gpu-grid-aggregation/gpu-grid-aggregator-utils.d.ts.map +0 -0
  325. /package/{typed → dist}/utils/gpu-grid-aggregation/gpu-grid-aggregator.d.ts +0 -0
  326. /package/{typed → dist}/utils/gpu-grid-aggregation/transform-mean-vs.glsl.d.ts +0 -0
  327. /package/{typed → dist}/utils/gpu-grid-aggregation/transform-mean-vs.glsl.d.ts.map +0 -0
  328. /package/{typed → dist}/utils/grid-aggregation-utils.d.ts +0 -0
  329. /package/{typed → dist}/utils/grid-aggregation-utils.d.ts.map +0 -0
  330. /package/{typed → dist}/utils/prop-utils.d.ts +0 -0
  331. /package/{typed → dist}/utils/prop-utils.d.ts.map +0 -0
  332. /package/{typed → dist}/utils/resource-utils.d.ts +0 -0
  333. /package/{typed → dist}/utils/resource-utils.d.ts.map +0 -0
  334. /package/{typed → dist}/utils/scale-utils.d.ts +0 -0
  335. /package/{typed → dist}/utils/scale-utils.d.ts.map +0 -0
@@ -1,678 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
-
10
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
-
12
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
-
14
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
15
-
16
- var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
17
-
18
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
19
-
20
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
21
-
22
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
23
-
24
- var _heatmapLayerUtils = require("./heatmap-layer-utils");
25
-
26
- var _constants = require("@luma.gl/constants");
27
-
28
- var _engine = require("@luma.gl/engine");
29
-
30
- var _core = require("@deck.gl/core");
31
-
32
- var _triangleLayer = _interopRequireDefault(require("./triangle-layer"));
33
-
34
- var _aggregationLayer = _interopRequireDefault(require("../aggregation-layer"));
35
-
36
- var _colorUtils = require("../utils/color-utils");
37
-
38
- var _weightsVs = _interopRequireDefault(require("./weights-vs.glsl"));
39
-
40
- var _weightsFs = _interopRequireDefault(require("./weights-fs.glsl"));
41
-
42
- var _maxVs = _interopRequireDefault(require("./max-vs.glsl"));
43
-
44
- var _maxFs = _interopRequireDefault(require("./max-fs.glsl"));
45
-
46
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
47
-
48
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
49
-
50
- 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); }; }
51
-
52
- 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; } }
53
-
54
- var RESOLUTION = 2;
55
- var TEXTURE_PROPS = {
56
- format: 'rgba8unorm',
57
- mipmaps: false,
58
- sampler: {
59
- minFilter: 'linear',
60
- magFilter: 'linear',
61
- addressModeU: 'clamp-to-edge',
62
- addressModeV: 'clamp-to-edge'
63
- }
64
- };
65
- var DEFAULT_COLOR_DOMAIN = [0, 0];
66
- var AGGREGATION_MODE = {
67
- SUM: 0,
68
- MEAN: 1
69
- };
70
- var defaultProps = {
71
- getPosition: {
72
- type: 'accessor',
73
- value: function value(x) {
74
- return x.position;
75
- }
76
- },
77
- getWeight: {
78
- type: 'accessor',
79
- value: 1
80
- },
81
- intensity: {
82
- type: 'number',
83
- min: 0,
84
- value: 1
85
- },
86
- radiusPixels: {
87
- type: 'number',
88
- min: 1,
89
- max: 100,
90
- value: 50
91
- },
92
- colorRange: _colorUtils.defaultColorRange,
93
- threshold: {
94
- type: 'number',
95
- min: 0,
96
- max: 1,
97
- value: 0.05
98
- },
99
- colorDomain: {
100
- type: 'array',
101
- value: null,
102
- optional: true
103
- },
104
- aggregation: 'SUM',
105
- weightsTextureSize: {
106
- type: 'number',
107
- min: 128,
108
- max: 2048,
109
- value: 2048
110
- },
111
- debounceTimeout: {
112
- type: 'number',
113
- min: 0,
114
- max: 1000,
115
- value: 500
116
- }
117
- };
118
- var REQUIRED_FEATURES = ['blend-minmax-webgl1', 'texture-formats-float32-webgl1'];
119
- var FLOAT_TARGET_FEATURES = ['texture-renderable-float32-webgl', 'texture-blend-float-webgl1'];
120
- var DIMENSIONS = {
121
- data: {
122
- props: ['radiusPixels']
123
- }
124
- };
125
-
126
- var HeatmapLayer = function (_AggregationLayer) {
127
- (0, _inherits2.default)(HeatmapLayer, _AggregationLayer);
128
-
129
- var _super = _createSuper(HeatmapLayer);
130
-
131
- function HeatmapLayer() {
132
- var _this;
133
-
134
- (0, _classCallCheck2.default)(this, HeatmapLayer);
135
-
136
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
137
- args[_key] = arguments[_key];
138
- }
139
-
140
- _this = _super.call.apply(_super, [this].concat(args));
141
- _this.state = void 0;
142
- return _this;
143
- }
144
-
145
- var _proto = HeatmapLayer.prototype;
146
-
147
- _proto.initializeState = function initializeState() {
148
- var _this2 = this;
149
-
150
- if (!REQUIRED_FEATURES.every(function (feature) {
151
- return _this2.context.device.features.has(feature);
152
- })) {
153
- this.setState({
154
- supported: false
155
- });
156
-
157
- _core.log.error("HeatmapLayer: ".concat(this.id, " is not supported on this browser"))();
158
-
159
- return;
160
- }
161
-
162
- (0, _get2.default)((0, _getPrototypeOf2.default)(HeatmapLayer.prototype), "initializeAggregationLayer", this).call(this, DIMENSIONS);
163
- this.setState({
164
- supported: true,
165
- colorDomain: DEFAULT_COLOR_DOMAIN
166
- });
167
-
168
- this._setupTextureParams();
169
-
170
- this._setupAttributes();
171
-
172
- this._setupResources();
173
- };
174
-
175
- _proto.shouldUpdateState = function shouldUpdateState(_ref) {
176
- var changeFlags = _ref.changeFlags;
177
- return changeFlags.somethingChanged;
178
- };
179
-
180
- _proto.updateState = function updateState(opts) {
181
- if (!this.state.supported) {
182
- return;
183
- }
184
-
185
- (0, _get2.default)((0, _getPrototypeOf2.default)(HeatmapLayer.prototype), "updateState", this).call(this, opts);
186
-
187
- this._updateHeatmapState(opts);
188
- };
189
-
190
- _proto._updateHeatmapState = function _updateHeatmapState(opts) {
191
- var props = opts.props,
192
- oldProps = opts.oldProps;
193
-
194
- var changeFlags = this._getChangeFlags(opts);
195
-
196
- if (changeFlags.dataChanged || changeFlags.viewportChanged) {
197
- changeFlags.boundsChanged = this._updateBounds(changeFlags.dataChanged);
198
-
199
- this._updateTextureRenderingBounds();
200
- }
201
-
202
- if (changeFlags.dataChanged || changeFlags.boundsChanged) {
203
- clearTimeout(this.state.updateTimer);
204
- this.setState({
205
- isWeightMapDirty: true
206
- });
207
- } else if (changeFlags.viewportZoomChanged) {
208
- this._debouncedUpdateWeightmap();
209
- }
210
-
211
- if (props.colorRange !== oldProps.colorRange) {
212
- this._updateColorTexture(opts);
213
- }
214
-
215
- if (this.state.isWeightMapDirty) {
216
- this._updateWeightmap();
217
- }
218
-
219
- this.setState({
220
- zoom: opts.context.viewport.zoom
221
- });
222
- };
223
-
224
- _proto.renderLayers = function renderLayers() {
225
- if (!this.state.supported) {
226
- return [];
227
- }
228
-
229
- var _this$state = this.state,
230
- weightsTexture = _this$state.weightsTexture,
231
- triPositionBuffer = _this$state.triPositionBuffer,
232
- triTexCoordBuffer = _this$state.triTexCoordBuffer,
233
- maxWeightsTexture = _this$state.maxWeightsTexture,
234
- colorTexture = _this$state.colorTexture,
235
- colorDomain = _this$state.colorDomain;
236
- var _this$props = this.props,
237
- updateTriggers = _this$props.updateTriggers,
238
- intensity = _this$props.intensity,
239
- threshold = _this$props.threshold,
240
- aggregation = _this$props.aggregation;
241
- var TriangleLayerClass = this.getSubLayerClass('triangle', _triangleLayer.default);
242
- return new TriangleLayerClass(this.getSubLayerProps({
243
- id: 'triangle-layer',
244
- updateTriggers: updateTriggers
245
- }), {
246
- coordinateSystem: _core.COORDINATE_SYSTEM.DEFAULT,
247
- data: {
248
- attributes: {
249
- positions: triPositionBuffer,
250
- texCoords: triTexCoordBuffer
251
- }
252
- },
253
- vertexCount: 4,
254
- maxTexture: maxWeightsTexture,
255
- colorTexture: colorTexture,
256
- aggregationMode: AGGREGATION_MODE[aggregation] || 0,
257
- weightsTexture: weightsTexture,
258
- intensity: intensity,
259
- threshold: threshold,
260
- colorDomain: colorDomain
261
- });
262
- };
263
-
264
- _proto.finalizeState = function finalizeState(context) {
265
- (0, _get2.default)((0, _getPrototypeOf2.default)(HeatmapLayer.prototype), "finalizeState", this).call(this, context);
266
- var _this$state2 = this.state,
267
- weightsTransform = _this$state2.weightsTransform,
268
- weightsTexture = _this$state2.weightsTexture,
269
- maxWeightTransform = _this$state2.maxWeightTransform,
270
- maxWeightsTexture = _this$state2.maxWeightsTexture,
271
- triPositionBuffer = _this$state2.triPositionBuffer,
272
- triTexCoordBuffer = _this$state2.triTexCoordBuffer,
273
- colorTexture = _this$state2.colorTexture,
274
- updateTimer = _this$state2.updateTimer;
275
- weightsTransform === null || weightsTransform === void 0 ? void 0 : weightsTransform.destroy();
276
- weightsTexture === null || weightsTexture === void 0 ? void 0 : weightsTexture.destroy();
277
- maxWeightTransform === null || maxWeightTransform === void 0 ? void 0 : maxWeightTransform.destroy();
278
- maxWeightsTexture === null || maxWeightsTexture === void 0 ? void 0 : maxWeightsTexture.destroy();
279
- triPositionBuffer === null || triPositionBuffer === void 0 ? void 0 : triPositionBuffer.destroy();
280
- triTexCoordBuffer === null || triTexCoordBuffer === void 0 ? void 0 : triTexCoordBuffer.destroy();
281
- colorTexture === null || colorTexture === void 0 ? void 0 : colorTexture.destroy();
282
-
283
- if (updateTimer) {
284
- clearTimeout(updateTimer);
285
- }
286
- };
287
-
288
- _proto._getAttributeManager = function _getAttributeManager() {
289
- return new _core.AttributeManager(this.context.device, {
290
- id: this.props.id,
291
- stats: this.context.stats
292
- });
293
- };
294
-
295
- _proto._getChangeFlags = function _getChangeFlags(opts) {
296
- var changeFlags = {};
297
- var dimensions = this.state.dimensions;
298
- changeFlags.dataChanged = this.isAttributeChanged() && 'attribute changed' || this.isAggregationDirty(opts, {
299
- compareAll: true,
300
- dimension: dimensions.data
301
- }) && 'aggregation is dirty';
302
- changeFlags.viewportChanged = opts.changeFlags.viewportChanged;
303
- var zoom = this.state.zoom;
304
-
305
- if (!opts.context.viewport || opts.context.viewport.zoom !== zoom) {
306
- changeFlags.viewportZoomChanged = true;
307
- }
308
-
309
- return changeFlags;
310
- };
311
-
312
- _proto._createTextures = function _createTextures() {
313
- var _this$state3 = this.state,
314
- textureSize = _this$state3.textureSize,
315
- format = _this$state3.format;
316
- this.setState({
317
- weightsTexture: this.context.device.createTexture(_objectSpread(_objectSpread({}, TEXTURE_PROPS), {}, {
318
- width: textureSize,
319
- height: textureSize,
320
- format: format
321
- })),
322
- maxWeightsTexture: this.context.device.createTexture(_objectSpread(_objectSpread({}, TEXTURE_PROPS), {}, {
323
- width: 1,
324
- height: 1,
325
- format: format
326
- }))
327
- });
328
- };
329
-
330
- _proto._setupAttributes = function _setupAttributes() {
331
- var attributeManager = this.getAttributeManager();
332
- attributeManager.add({
333
- positions: {
334
- size: 3,
335
- type: 5130,
336
- accessor: 'getPosition'
337
- },
338
- weights: {
339
- size: 1,
340
- accessor: 'getWeight'
341
- }
342
- });
343
- this.setState({
344
- positionAttributeName: 'positions'
345
- });
346
- };
347
-
348
- _proto._setupTextureParams = function _setupTextureParams() {
349
- var device = this.context.device;
350
- var weightsTextureSize = this.props.weightsTextureSize;
351
- var textureSize = Math.min(weightsTextureSize, device.limits.maxTextureDimension2D);
352
- var floatTargetSupport = FLOAT_TARGET_FEATURES.every(function (feature) {
353
- return device.features.has(feature);
354
- });
355
- var format = floatTargetSupport ? 'rgba32float' : 'rgba8unorm';
356
- var weightsScale = floatTargetSupport ? 1 : 1 / 255;
357
- this.setState({
358
- textureSize: textureSize,
359
- format: format,
360
- weightsScale: weightsScale
361
- });
362
-
363
- if (!floatTargetSupport) {
364
- _core.log.warn("HeatmapLayer: ".concat(this.id, " rendering to float texture not supported, falling back to low precision format"))();
365
- }
366
- };
367
-
368
- _proto._createWeightsTransform = function _createWeightsTransform(shaders) {
369
- var _weightsTransform;
370
-
371
- var weightsTransform = this.state.weightsTransform;
372
- var weightsTexture = this.state.weightsTexture;
373
- var attributeManager = this.getAttributeManager();
374
- (_weightsTransform = weightsTransform) === null || _weightsTransform === void 0 ? void 0 : _weightsTransform.destroy();
375
- weightsTransform = new _engine.TextureTransform(this.context.device, _objectSpread({
376
- id: "".concat(this.id, "-weights-transform"),
377
- bufferLayout: attributeManager.getBufferLayouts(),
378
- vertexCount: 1,
379
- targetTexture: weightsTexture,
380
- parameters: {
381
- depthWriteEnabled: false,
382
- blendColorOperation: 'add',
383
- blendColorSrcFactor: 'one',
384
- blendColorDstFactor: 'one',
385
- blendAlphaSrcFactor: 'one',
386
- blendAlphaDstFactor: 'one'
387
- },
388
- topology: 'point-list'
389
- }, shaders));
390
- this.setState({
391
- weightsTransform: weightsTransform
392
- });
393
- };
394
-
395
- _proto._setupResources = function _setupResources() {
396
- this._createTextures();
397
-
398
- var device = this.context.device;
399
- var _this$state4 = this.state,
400
- textureSize = _this$state4.textureSize,
401
- weightsTexture = _this$state4.weightsTexture,
402
- maxWeightsTexture = _this$state4.maxWeightsTexture;
403
- var weightsTransformShaders = this.getShaders({
404
- vs: _weightsVs.default,
405
- fs: _weightsFs.default
406
- });
407
-
408
- this._createWeightsTransform(weightsTransformShaders);
409
-
410
- var maxWeightsTransformShaders = this.getShaders({
411
- vs: _maxVs.default,
412
- fs: _maxFs.default
413
- });
414
- var maxWeightTransform = new _engine.TextureTransform(device, _objectSpread(_objectSpread({
415
- id: "".concat(this.id, "-max-weights-transform"),
416
- bindings: {
417
- inTexture: weightsTexture
418
- },
419
- uniforms: {
420
- textureSize: textureSize
421
- },
422
- targetTexture: maxWeightsTexture
423
- }, maxWeightsTransformShaders), {}, {
424
- vertexCount: textureSize * textureSize,
425
- topology: 'point-list',
426
- parameters: {
427
- depthWriteEnabled: false,
428
- blendColorOperation: 'max',
429
- blendAlphaOperation: 'max',
430
- blendColorSrcFactor: 'one',
431
- blendColorDstFactor: 'one',
432
- blendAlphaSrcFactor: 'one',
433
- blendAlphaDstFactor: 'one'
434
- }
435
- }));
436
- this.setState({
437
- weightsTexture: weightsTexture,
438
- maxWeightsTexture: maxWeightsTexture,
439
- maxWeightTransform: maxWeightTransform,
440
- zoom: null,
441
- triPositionBuffer: device.createBuffer({
442
- byteLength: 48
443
- }),
444
- triTexCoordBuffer: device.createBuffer({
445
- byteLength: 48
446
- })
447
- });
448
- };
449
-
450
- _proto.updateShaders = function updateShaders(shaderOptions) {
451
- this._createWeightsTransform(_objectSpread({
452
- vs: _weightsVs.default,
453
- fs: _weightsFs.default
454
- }, shaderOptions));
455
- };
456
-
457
- _proto._updateMaxWeightValue = function _updateMaxWeightValue() {
458
- var _this$state5 = this.state,
459
- maxWeightTransform = _this$state5.maxWeightTransform,
460
- textureSize = _this$state5.textureSize;
461
- maxWeightTransform.run({
462
- parameters: {
463
- viewport: [0, 0, 1, 1]
464
- },
465
- clearColor: [0, 0, 0, 0]
466
- });
467
- };
468
-
469
- _proto._updateBounds = function _updateBounds() {
470
- var forceUpdate = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
471
- var viewport = this.context.viewport;
472
- var viewportCorners = [viewport.unproject([0, 0]), viewport.unproject([viewport.width, 0]), viewport.unproject([viewport.width, viewport.height]), viewport.unproject([0, viewport.height])].map(function (p) {
473
- return p.map(Math.fround);
474
- });
475
- var visibleWorldBounds = (0, _heatmapLayerUtils.getBounds)(viewportCorners);
476
- var newState = {
477
- visibleWorldBounds: visibleWorldBounds,
478
- viewportCorners: viewportCorners
479
- };
480
- var boundsChanged = false;
481
-
482
- if (forceUpdate || !this.state.worldBounds || !(0, _heatmapLayerUtils.boundsContain)(this.state.worldBounds, visibleWorldBounds)) {
483
- var scaledCommonBounds = this._worldToCommonBounds(visibleWorldBounds);
484
-
485
- var worldBounds = this._commonToWorldBounds(scaledCommonBounds);
486
-
487
- if (this.props.coordinateSystem === _core.COORDINATE_SYSTEM.LNGLAT) {
488
- worldBounds[1] = Math.max(worldBounds[1], -85.051129);
489
- worldBounds[3] = Math.min(worldBounds[3], 85.051129);
490
- worldBounds[0] = Math.max(worldBounds[0], -360);
491
- worldBounds[2] = Math.min(worldBounds[2], 360);
492
- }
493
-
494
- var normalizedCommonBounds = this._worldToCommonBounds(worldBounds);
495
-
496
- newState.worldBounds = worldBounds;
497
- newState.normalizedCommonBounds = normalizedCommonBounds;
498
- boundsChanged = true;
499
- }
500
-
501
- this.setState(newState);
502
- return boundsChanged;
503
- };
504
-
505
- _proto._updateTextureRenderingBounds = function _updateTextureRenderingBounds() {
506
- var _this$state6 = this.state,
507
- triPositionBuffer = _this$state6.triPositionBuffer,
508
- triTexCoordBuffer = _this$state6.triTexCoordBuffer,
509
- normalizedCommonBounds = _this$state6.normalizedCommonBounds,
510
- viewportCorners = _this$state6.viewportCorners;
511
- var viewport = this.context.viewport;
512
- triPositionBuffer.write((0, _heatmapLayerUtils.packVertices)(viewportCorners, 3));
513
- var textureBounds = viewportCorners.map(function (p) {
514
- return (0, _heatmapLayerUtils.getTextureCoordinates)(viewport.projectPosition(p), normalizedCommonBounds);
515
- });
516
- triTexCoordBuffer.write((0, _heatmapLayerUtils.packVertices)(textureBounds, 2));
517
- };
518
-
519
- _proto._updateColorTexture = function _updateColorTexture(opts) {
520
- var _colorTexture;
521
-
522
- var colorRange = opts.props.colorRange;
523
- var colorTexture = this.state.colorTexture;
524
- var colors = (0, _colorUtils.colorRangeToFlatArray)(colorRange, false, Uint8Array);
525
-
526
- if (colorTexture && ((_colorTexture = colorTexture) === null || _colorTexture === void 0 ? void 0 : _colorTexture.width) === colorRange.length) {
527
- colorTexture.setSubImageData({
528
- data: colors
529
- });
530
- } else {
531
- var _colorTexture2;
532
-
533
- (_colorTexture2 = colorTexture) === null || _colorTexture2 === void 0 ? void 0 : _colorTexture2.destroy();
534
- colorTexture = this.context.device.createTexture(_objectSpread(_objectSpread({}, TEXTURE_PROPS), {}, {
535
- data: colors,
536
- width: colorRange.length,
537
- height: 1
538
- }));
539
- }
540
-
541
- this.setState({
542
- colorTexture: colorTexture
543
- });
544
- };
545
-
546
- _proto._updateWeightmap = function _updateWeightmap() {
547
- var _this$props2 = this.props,
548
- radiusPixels = _this$props2.radiusPixels,
549
- colorDomain = _this$props2.colorDomain,
550
- aggregation = _this$props2.aggregation;
551
- var _this$state7 = this.state,
552
- worldBounds = _this$state7.worldBounds,
553
- textureSize = _this$state7.textureSize,
554
- weightsScale = _this$state7.weightsScale;
555
- var weightsTransform = this.state.weightsTransform;
556
- this.state.isWeightMapDirty = false;
557
-
558
- var commonBounds = this._worldToCommonBounds(worldBounds, {
559
- useLayerCoordinateSystem: true
560
- });
561
-
562
- if (colorDomain && aggregation === 'SUM') {
563
- var viewport = this.context.viewport;
564
- var metersPerPixel = viewport.distanceScales.metersPerUnit[2] * (commonBounds[2] - commonBounds[0]) / textureSize;
565
- this.state.colorDomain = colorDomain.map(function (x) {
566
- return x * metersPerPixel * weightsScale;
567
- });
568
- } else {
569
- this.state.colorDomain = colorDomain || DEFAULT_COLOR_DOMAIN;
570
- }
571
-
572
- var attributeManager = this.getAttributeManager();
573
- var attributes = attributeManager.getAttributes();
574
- var moduleSettings = this.getModuleSettings();
575
- var positions = attributes.positions.buffer;
576
- var uniforms = {
577
- radiusPixels: radiusPixels,
578
- commonBounds: commonBounds,
579
- textureWidth: textureSize,
580
- weightsScale: weightsScale
581
- };
582
- var weights = attributes.weights.buffer;
583
- weightsTransform.model.setAttributes({
584
- positions: positions,
585
- weights: weights
586
- });
587
- weightsTransform.model.setVertexCount(this.getNumInstances());
588
- weightsTransform.model.setUniforms(uniforms);
589
- weightsTransform.model.updateModuleSettings(moduleSettings);
590
- weightsTransform.run({
591
- parameters: {
592
- viewport: [0, 0, textureSize, textureSize]
593
- },
594
- clearColor: [0, 0, 0, 0]
595
- });
596
-
597
- this._updateMaxWeightValue();
598
- };
599
-
600
- _proto._debouncedUpdateWeightmap = function _debouncedUpdateWeightmap() {
601
- var fromTimer = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
602
- var updateTimer = this.state.updateTimer;
603
- var debounceTimeout = this.props.debounceTimeout;
604
-
605
- if (fromTimer) {
606
- updateTimer = null;
607
-
608
- this._updateBounds(true);
609
-
610
- this._updateTextureRenderingBounds();
611
-
612
- this.setState({
613
- isWeightMapDirty: true
614
- });
615
- } else {
616
- this.setState({
617
- isWeightMapDirty: false
618
- });
619
- clearTimeout(updateTimer);
620
- updateTimer = setTimeout(this._debouncedUpdateWeightmap.bind(this, true), debounceTimeout);
621
- }
622
-
623
- this.setState({
624
- updateTimer: updateTimer
625
- });
626
- };
627
-
628
- _proto._worldToCommonBounds = function _worldToCommonBounds(worldBounds) {
629
- var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
630
- var _opts$useLayerCoordin = opts.useLayerCoordinateSystem,
631
- useLayerCoordinateSystem = _opts$useLayerCoordin === void 0 ? false : _opts$useLayerCoordin;
632
-
633
- var _worldBounds = (0, _slicedToArray2.default)(worldBounds, 4),
634
- minLong = _worldBounds[0],
635
- minLat = _worldBounds[1],
636
- maxLong = _worldBounds[2],
637
- maxLat = _worldBounds[3];
638
-
639
- var viewport = this.context.viewport;
640
- var textureSize = this.state.textureSize;
641
- var coordinateSystem = this.props.coordinateSystem;
642
- var offsetMode = useLayerCoordinateSystem && (coordinateSystem === _core.COORDINATE_SYSTEM.LNGLAT_OFFSETS || coordinateSystem === _core.COORDINATE_SYSTEM.METER_OFFSETS);
643
- var offsetOriginCommon = offsetMode ? viewport.projectPosition(this.props.coordinateOrigin) : [0, 0];
644
- var size = textureSize * RESOLUTION / viewport.scale;
645
- var bottomLeftCommon;
646
- var topRightCommon;
647
-
648
- if (useLayerCoordinateSystem && !offsetMode) {
649
- bottomLeftCommon = this.projectPosition([minLong, minLat, 0]);
650
- topRightCommon = this.projectPosition([maxLong, maxLat, 0]);
651
- } else {
652
- bottomLeftCommon = viewport.projectPosition([minLong, minLat, 0]);
653
- topRightCommon = viewport.projectPosition([maxLong, maxLat, 0]);
654
- }
655
-
656
- return (0, _heatmapLayerUtils.scaleToAspectRatio)([bottomLeftCommon[0] - offsetOriginCommon[0], bottomLeftCommon[1] - offsetOriginCommon[1], topRightCommon[0] - offsetOriginCommon[0], topRightCommon[1] - offsetOriginCommon[1]], size, size);
657
- };
658
-
659
- _proto._commonToWorldBounds = function _commonToWorldBounds(commonBounds) {
660
- var _commonBounds = (0, _slicedToArray2.default)(commonBounds, 4),
661
- xMin = _commonBounds[0],
662
- yMin = _commonBounds[1],
663
- xMax = _commonBounds[2],
664
- yMax = _commonBounds[3];
665
-
666
- var viewport = this.context.viewport;
667
- var bottomLeftWorld = viewport.unprojectPosition([xMin, yMin]);
668
- var topRightWorld = viewport.unprojectPosition([xMax, yMax]);
669
- return bottomLeftWorld.slice(0, 2).concat(topRightWorld.slice(0, 2));
670
- };
671
-
672
- return HeatmapLayer;
673
- }(_aggregationLayer.default);
674
-
675
- exports.default = HeatmapLayer;
676
- HeatmapLayer.layerName = 'HeatmapLayer';
677
- HeatmapLayer.defaultProps = defaultProps;
678
- //# sourceMappingURL=heatmap-layer.js.map