@deck.gl/aggregation-layers 9.0.0-alpha.7 → 9.0.0-beta.10

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 (364) hide show
  1. package/{typed → dist}/aggregation-layer.d.ts.map +1 -1
  2. package/dist/aggregation-layer.js +153 -0
  3. package/{typed → dist}/contour-layer/contour-layer.d.ts +1 -1
  4. package/dist/contour-layer/contour-layer.d.ts.map +1 -0
  5. package/dist/contour-layer/contour-layer.js +240 -0
  6. package/dist/contour-layer/contour-utils.js +64 -0
  7. package/dist/contour-layer/marching-squares-codes.js +337 -0
  8. package/dist/contour-layer/marching-squares.js +147 -0
  9. package/{typed → dist}/cpu-grid-layer/cpu-grid-layer.d.ts +3 -3
  10. package/dist/cpu-grid-layer/cpu-grid-layer.d.ts.map +1 -0
  11. package/dist/cpu-grid-layer/cpu-grid-layer.js +129 -0
  12. package/dist/cpu-grid-layer/grid-aggregator.js +141 -0
  13. package/dist/dist.dev.js +1447 -10846
  14. package/dist/gpu-grid-layer/gpu-grid-cell-layer-fragment.glsl.js +30 -0
  15. package/dist/gpu-grid-layer/gpu-grid-cell-layer-vertex.glsl.js +112 -0
  16. package/{typed → dist}/gpu-grid-layer/gpu-grid-cell-layer.d.ts +1 -1
  17. package/dist/gpu-grid-layer/gpu-grid-cell-layer.d.ts.map +1 -0
  18. package/dist/gpu-grid-layer/gpu-grid-cell-layer.js +145 -0
  19. package/{typed → dist}/gpu-grid-layer/gpu-grid-layer.d.ts +4 -4
  20. package/dist/gpu-grid-layer/gpu-grid-layer.d.ts.map +1 -0
  21. package/dist/gpu-grid-layer/gpu-grid-layer.js +288 -0
  22. package/{typed → dist}/grid-aggregation-layer.d.ts +3 -3
  23. package/dist/grid-aggregation-layer.d.ts.map +1 -0
  24. package/dist/grid-aggregation-layer.js +172 -0
  25. package/{typed → dist}/grid-layer/grid-layer.d.ts +2 -2
  26. package/dist/grid-layer/grid-layer.d.ts.map +1 -0
  27. package/dist/grid-layer/grid-layer.js +63 -0
  28. package/{typed → dist}/heatmap-layer/heatmap-layer-utils.d.ts +0 -9
  29. package/dist/heatmap-layer/heatmap-layer-utils.d.ts.map +1 -0
  30. package/dist/heatmap-layer/heatmap-layer-utils.js +63 -0
  31. package/{typed → dist}/heatmap-layer/heatmap-layer.d.ts +5 -6
  32. package/dist/heatmap-layer/heatmap-layer.d.ts.map +1 -0
  33. package/dist/heatmap-layer/heatmap-layer.js +455 -0
  34. package/dist/heatmap-layer/max-fs.glsl.js +9 -0
  35. package/dist/heatmap-layer/max-vs.glsl.d.ts +3 -0
  36. package/{typed → dist}/heatmap-layer/max-vs.glsl.d.ts.map +1 -1
  37. package/dist/heatmap-layer/max-vs.glsl.js +15 -0
  38. package/dist/heatmap-layer/triangle-layer-fragment.glsl.d.ts +3 -0
  39. package/dist/heatmap-layer/triangle-layer-fragment.glsl.js +51 -0
  40. package/dist/heatmap-layer/triangle-layer-vertex.glsl.js +47 -0
  41. package/{typed → dist}/heatmap-layer/triangle-layer.d.ts +10 -2
  42. package/dist/heatmap-layer/triangle-layer.d.ts.map +1 -0
  43. package/dist/heatmap-layer/triangle-layer.js +59 -0
  44. package/dist/heatmap-layer/weights-fs.glsl.js +17 -0
  45. package/dist/heatmap-layer/weights-vs.glsl.d.ts +3 -0
  46. package/{typed → dist}/heatmap-layer/weights-vs.glsl.d.ts.map +1 -1
  47. package/dist/heatmap-layer/weights-vs.glsl.js +21 -0
  48. package/dist/hexagon-layer/hexagon-aggregator.js +112 -0
  49. package/{typed → dist}/hexagon-layer/hexagon-layer.d.ts +4 -4
  50. package/dist/hexagon-layer/hexagon-layer.d.ts.map +1 -0
  51. package/dist/hexagon-layer/hexagon-layer.js +173 -0
  52. package/dist/index.cjs +4327 -0
  53. package/dist/index.cjs.map +7 -0
  54. package/dist/index.d.ts +20 -0
  55. package/dist/index.d.ts.map +1 -0
  56. package/dist/index.js +32 -0
  57. package/{typed → dist}/screen-grid-layer/screen-grid-cell-layer.d.ts +2 -3
  58. package/dist/screen-grid-layer/screen-grid-cell-layer.d.ts.map +1 -0
  59. package/dist/screen-grid-layer/screen-grid-cell-layer.js +163 -0
  60. package/dist/screen-grid-layer/screen-grid-layer-fragment.glsl.js +35 -0
  61. package/dist/screen-grid-layer/screen-grid-layer-vertex.glsl.js +72 -0
  62. package/{typed → dist}/screen-grid-layer/screen-grid-layer.d.ts +1 -4
  63. package/dist/screen-grid-layer/screen-grid-layer.d.ts.map +1 -0
  64. package/dist/screen-grid-layer/screen-grid-layer.js +209 -0
  65. package/dist/types.js +1 -0
  66. package/dist/utils/aggregation-operation-utils.js +94 -0
  67. package/{typed → dist}/utils/bin-sorter.d.ts +1 -1
  68. package/dist/utils/bin-sorter.js +167 -0
  69. package/dist/utils/color-utils.js +53 -0
  70. package/dist/utils/cpu-aggregator.js +421 -0
  71. package/dist/utils/gpu-grid-aggregation/aggregate-all-fs.glsl.js +36 -0
  72. package/dist/utils/gpu-grid-aggregation/aggregate-all-vs.glsl.js +42 -0
  73. package/dist/utils/gpu-grid-aggregation/aggregate-to-grid-fs.glsl.js +30 -0
  74. package/dist/utils/gpu-grid-aggregation/aggregate-to-grid-vs.glsl.js +61 -0
  75. package/dist/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.js +41 -0
  76. package/dist/utils/gpu-grid-aggregation/gpu-grid-aggregator-utils.js +1 -0
  77. package/{typed → dist}/utils/gpu-grid-aggregation/gpu-grid-aggregator.d.ts.map +1 -1
  78. package/dist/utils/gpu-grid-aggregation/gpu-grid-aggregator.js +555 -0
  79. package/dist/utils/gpu-grid-aggregation/transform-mean-vs.glsl.js +32 -0
  80. package/dist/utils/grid-aggregation-utils.js +114 -0
  81. package/dist/utils/prop-utils.js +28 -0
  82. package/{typed → dist}/utils/resource-utils.d.ts.map +1 -1
  83. package/dist/utils/resource-utils.js +38 -0
  84. package/dist/utils/scale-utils.js +184 -0
  85. package/dist.min.js +299 -555
  86. package/package.json +19 -14
  87. package/src/aggregation-layer.ts +3 -1
  88. package/src/contour-layer/contour-layer.ts +4 -5
  89. package/src/cpu-grid-layer/cpu-grid-layer.ts +1 -2
  90. package/src/gpu-grid-layer/gpu-grid-cell-layer.ts +1 -1
  91. package/src/gpu-grid-layer/gpu-grid-layer.ts +3 -3
  92. package/src/grid-layer/grid-layer.ts +4 -2
  93. package/src/heatmap-layer/heatmap-layer-utils.ts +0 -23
  94. package/src/heatmap-layer/heatmap-layer.ts +92 -128
  95. package/src/heatmap-layer/max-vs.glsl.ts +11 -5
  96. package/src/heatmap-layer/triangle-layer-fragment.glsl.ts +2 -2
  97. package/src/heatmap-layer/triangle-layer.ts +17 -24
  98. package/src/heatmap-layer/weights-vs.glsl.ts +4 -2
  99. package/src/hexagon-layer/hexagon-layer.ts +2 -3
  100. package/src/screen-grid-layer/screen-grid-cell-layer.ts +0 -4
  101. package/src/screen-grid-layer/screen-grid-layer.ts +2 -12
  102. package/src/utils/cpu-aggregator.ts +1 -1
  103. package/src/utils/gpu-grid-aggregation/gpu-grid-aggregator.ts +14 -28
  104. package/src/utils/resource-utils.ts +2 -8
  105. package/dist/es5/aggregation-layer.js +0 -213
  106. package/dist/es5/aggregation-layer.js.map +0 -1
  107. package/dist/es5/contour-layer/contour-layer.js +0 -353
  108. package/dist/es5/contour-layer/contour-layer.js.map +0 -1
  109. package/dist/es5/contour-layer/contour-utils.js +0 -110
  110. package/dist/es5/contour-layer/contour-utils.js.map +0 -1
  111. package/dist/es5/contour-layer/marching-squares-codes.js +0 -152
  112. package/dist/es5/contour-layer/marching-squares-codes.js.map +0 -1
  113. package/dist/es5/contour-layer/marching-squares.js +0 -168
  114. package/dist/es5/contour-layer/marching-squares.js.map +0 -1
  115. package/dist/es5/cpu-grid-layer/cpu-grid-layer.js +0 -235
  116. package/dist/es5/cpu-grid-layer/cpu-grid-layer.js.map +0 -1
  117. package/dist/es5/cpu-grid-layer/grid-aggregator.js +0 -180
  118. package/dist/es5/cpu-grid-layer/grid-aggregator.js.map +0 -1
  119. package/dist/es5/gpu-grid-layer/gpu-grid-cell-layer-fragment.glsl.js +0 -9
  120. package/dist/es5/gpu-grid-layer/gpu-grid-cell-layer-fragment.glsl.js.map +0 -1
  121. package/dist/es5/gpu-grid-layer/gpu-grid-cell-layer-vertex.glsl.js +0 -9
  122. package/dist/es5/gpu-grid-layer/gpu-grid-cell-layer-vertex.glsl.js.map +0 -1
  123. package/dist/es5/gpu-grid-layer/gpu-grid-cell-layer.js +0 -247
  124. package/dist/es5/gpu-grid-layer/gpu-grid-cell-layer.js.map +0 -1
  125. package/dist/es5/gpu-grid-layer/gpu-grid-layer.js +0 -424
  126. package/dist/es5/gpu-grid-layer/gpu-grid-layer.js.map +0 -1
  127. package/dist/es5/grid-aggregation-layer.js +0 -280
  128. package/dist/es5/grid-aggregation-layer.js.map +0 -1
  129. package/dist/es5/grid-layer/grid-layer.js +0 -125
  130. package/dist/es5/grid-layer/grid-layer.js.map +0 -1
  131. package/dist/es5/heatmap-layer/heatmap-layer-utils.js +0 -122
  132. package/dist/es5/heatmap-layer/heatmap-layer-utils.js.map +0 -1
  133. package/dist/es5/heatmap-layer/heatmap-layer.js +0 -672
  134. package/dist/es5/heatmap-layer/heatmap-layer.js.map +0 -1
  135. package/dist/es5/heatmap-layer/max-fs.glsl.js +0 -9
  136. package/dist/es5/heatmap-layer/max-fs.glsl.js.map +0 -1
  137. package/dist/es5/heatmap-layer/max-vs.glsl.js +0 -9
  138. package/dist/es5/heatmap-layer/max-vs.glsl.js.map +0 -1
  139. package/dist/es5/heatmap-layer/triangle-layer-fragment.glsl.js +0 -9
  140. package/dist/es5/heatmap-layer/triangle-layer-fragment.glsl.js.map +0 -1
  141. package/dist/es5/heatmap-layer/triangle-layer-vertex.glsl.js +0 -9
  142. package/dist/es5/heatmap-layer/triangle-layer-vertex.glsl.js.map +0 -1
  143. package/dist/es5/heatmap-layer/triangle-layer.js +0 -122
  144. package/dist/es5/heatmap-layer/triangle-layer.js.map +0 -1
  145. package/dist/es5/heatmap-layer/weights-fs.glsl.js +0 -9
  146. package/dist/es5/heatmap-layer/weights-fs.glsl.js.map +0 -1
  147. package/dist/es5/heatmap-layer/weights-vs.glsl.js +0 -9
  148. package/dist/es5/heatmap-layer/weights-vs.glsl.js.map +0 -1
  149. package/dist/es5/hexagon-layer/hexagon-aggregator.js +0 -118
  150. package/dist/es5/hexagon-layer/hexagon-aggregator.js.map +0 -1
  151. package/dist/es5/hexagon-layer/hexagon-layer.js +0 -289
  152. package/dist/es5/hexagon-layer/hexagon-layer.js.map +0 -1
  153. package/dist/es5/index.js +0 -104
  154. package/dist/es5/index.js.map +0 -1
  155. package/dist/es5/screen-grid-layer/screen-grid-cell-layer.js +0 -244
  156. package/dist/es5/screen-grid-layer/screen-grid-cell-layer.js.map +0 -1
  157. package/dist/es5/screen-grid-layer/screen-grid-layer-fragment.glsl.js +0 -9
  158. package/dist/es5/screen-grid-layer/screen-grid-layer-fragment.glsl.js.map +0 -1
  159. package/dist/es5/screen-grid-layer/screen-grid-layer-vertex.glsl.js +0 -9
  160. package/dist/es5/screen-grid-layer/screen-grid-layer-vertex.glsl.js.map +0 -1
  161. package/dist/es5/screen-grid-layer/screen-grid-layer.js +0 -317
  162. package/dist/es5/screen-grid-layer/screen-grid-layer.js.map +0 -1
  163. package/dist/es5/types.js +0 -2
  164. package/dist/es5/types.js.map +0 -1
  165. package/dist/es5/utils/aggregation-operation-utils.js +0 -123
  166. package/dist/es5/utils/aggregation-operation-utils.js.map +0 -1
  167. package/dist/es5/utils/bin-sorter.js +0 -248
  168. package/dist/es5/utils/bin-sorter.js.map +0 -1
  169. package/dist/es5/utils/color-utils.js +0 -39
  170. package/dist/es5/utils/color-utils.js.map +0 -1
  171. package/dist/es5/utils/cpu-aggregator.js +0 -496
  172. package/dist/es5/utils/cpu-aggregator.js.map +0 -1
  173. package/dist/es5/utils/gpu-grid-aggregation/aggregate-all-fs.glsl.js +0 -9
  174. package/dist/es5/utils/gpu-grid-aggregation/aggregate-all-fs.glsl.js.map +0 -1
  175. package/dist/es5/utils/gpu-grid-aggregation/aggregate-all-vs.glsl.js +0 -9
  176. package/dist/es5/utils/gpu-grid-aggregation/aggregate-all-vs.glsl.js.map +0 -1
  177. package/dist/es5/utils/gpu-grid-aggregation/aggregate-to-grid-fs.glsl.js +0 -9
  178. package/dist/es5/utils/gpu-grid-aggregation/aggregate-to-grid-fs.glsl.js.map +0 -1
  179. package/dist/es5/utils/gpu-grid-aggregation/aggregate-to-grid-vs.glsl.js +0 -9
  180. package/dist/es5/utils/gpu-grid-aggregation/aggregate-to-grid-vs.glsl.js.map +0 -1
  181. package/dist/es5/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.js +0 -63
  182. package/dist/es5/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.js.map +0 -1
  183. package/dist/es5/utils/gpu-grid-aggregation/gpu-grid-aggregator-utils.js +0 -2
  184. package/dist/es5/utils/gpu-grid-aggregation/gpu-grid-aggregator-utils.js.map +0 -1
  185. package/dist/es5/utils/gpu-grid-aggregation/gpu-grid-aggregator.js +0 -732
  186. package/dist/es5/utils/gpu-grid-aggregation/gpu-grid-aggregator.js.map +0 -1
  187. package/dist/es5/utils/gpu-grid-aggregation/gpu-grid-aggregator.md +0 -155
  188. package/dist/es5/utils/gpu-grid-aggregation/transform-mean-vs.glsl.js +0 -9
  189. package/dist/es5/utils/gpu-grid-aggregation/transform-mean-vs.glsl.js.map +0 -1
  190. package/dist/es5/utils/grid-aggregation-utils.js +0 -118
  191. package/dist/es5/utils/grid-aggregation-utils.js.map +0 -1
  192. package/dist/es5/utils/prop-utils.js +0 -19
  193. package/dist/es5/utils/prop-utils.js.map +0 -1
  194. package/dist/es5/utils/resource-utils.js +0 -61
  195. package/dist/es5/utils/resource-utils.js.map +0 -1
  196. package/dist/es5/utils/scale-utils.js +0 -254
  197. package/dist/es5/utils/scale-utils.js.map +0 -1
  198. package/dist/esm/aggregation-layer.js +0 -154
  199. package/dist/esm/aggregation-layer.js.map +0 -1
  200. package/dist/esm/contour-layer/contour-layer.js +0 -316
  201. package/dist/esm/contour-layer/contour-layer.js.map +0 -1
  202. package/dist/esm/contour-layer/contour-utils.js +0 -81
  203. package/dist/esm/contour-layer/contour-utils.js.map +0 -1
  204. package/dist/esm/contour-layer/marching-squares-codes.js +0 -219
  205. package/dist/esm/contour-layer/marching-squares-codes.js.map +0 -1
  206. package/dist/esm/contour-layer/marching-squares.js +0 -151
  207. package/dist/esm/contour-layer/marching-squares.js.map +0 -1
  208. package/dist/esm/cpu-grid-layer/cpu-grid-layer.js +0 -186
  209. package/dist/esm/cpu-grid-layer/cpu-grid-layer.js.map +0 -1
  210. package/dist/esm/cpu-grid-layer/grid-aggregator.js +0 -142
  211. package/dist/esm/cpu-grid-layer/grid-aggregator.js.map +0 -1
  212. package/dist/esm/gpu-grid-layer/gpu-grid-cell-layer-fragment.glsl.js +0 -16
  213. package/dist/esm/gpu-grid-layer/gpu-grid-cell-layer-fragment.glsl.js.map +0 -1
  214. package/dist/esm/gpu-grid-layer/gpu-grid-cell-layer-vertex.glsl.js +0 -122
  215. package/dist/esm/gpu-grid-layer/gpu-grid-cell-layer-vertex.glsl.js.map +0 -1
  216. package/dist/esm/gpu-grid-layer/gpu-grid-cell-layer.js +0 -196
  217. package/dist/esm/gpu-grid-layer/gpu-grid-cell-layer.js.map +0 -1
  218. package/dist/esm/gpu-grid-layer/gpu-grid-layer.js +0 -399
  219. package/dist/esm/gpu-grid-layer/gpu-grid-layer.js.map +0 -1
  220. package/dist/esm/grid-aggregation-layer.js +0 -240
  221. package/dist/esm/grid-aggregation-layer.js.map +0 -1
  222. package/dist/esm/grid-layer/grid-layer.js +0 -80
  223. package/dist/esm/grid-layer/grid-layer.js.map +0 -1
  224. package/dist/esm/heatmap-layer/heatmap-layer-utils.js +0 -68
  225. package/dist/esm/heatmap-layer/heatmap-layer-utils.js.map +0 -1
  226. package/dist/esm/heatmap-layer/heatmap-layer.js +0 -626
  227. package/dist/esm/heatmap-layer/heatmap-layer.js.map +0 -1
  228. package/dist/esm/heatmap-layer/max-fs.glsl.js +0 -10
  229. package/dist/esm/heatmap-layer/max-fs.glsl.js.map +0 -1
  230. package/dist/esm/heatmap-layer/max-vs.glsl.js +0 -14
  231. package/dist/esm/heatmap-layer/max-vs.glsl.js.map +0 -1
  232. package/dist/esm/heatmap-layer/triangle-layer-fragment.glsl.js +0 -43
  233. package/dist/esm/heatmap-layer/triangle-layer-fragment.glsl.js.map +0 -1
  234. package/dist/esm/heatmap-layer/triangle-layer-vertex.glsl.js +0 -33
  235. package/dist/esm/heatmap-layer/triangle-layer-vertex.glsl.js.map +0 -1
  236. package/dist/esm/heatmap-layer/triangle-layer.js +0 -80
  237. package/dist/esm/heatmap-layer/triangle-layer.js.map +0 -1
  238. package/dist/esm/heatmap-layer/weights-fs.glsl.js +0 -22
  239. package/dist/esm/heatmap-layer/weights-fs.glsl.js.map +0 -1
  240. package/dist/esm/heatmap-layer/weights-vs.glsl.js +0 -25
  241. package/dist/esm/heatmap-layer/weights-vs.glsl.js.map +0 -1
  242. package/dist/esm/hexagon-layer/hexagon-aggregator.js +0 -87
  243. package/dist/esm/hexagon-layer/hexagon-aggregator.js.map +0 -1
  244. package/dist/esm/hexagon-layer/hexagon-layer.js +0 -232
  245. package/dist/esm/hexagon-layer/hexagon-layer.js.map +0 -1
  246. package/dist/esm/index.js +0 -13
  247. package/dist/esm/index.js.map +0 -1
  248. package/dist/esm/screen-grid-layer/screen-grid-cell-layer.js +0 -203
  249. package/dist/esm/screen-grid-layer/screen-grid-cell-layer.js.map +0 -1
  250. package/dist/esm/screen-grid-layer/screen-grid-layer-fragment.glsl.js +0 -21
  251. package/dist/esm/screen-grid-layer/screen-grid-layer-fragment.glsl.js.map +0 -1
  252. package/dist/esm/screen-grid-layer/screen-grid-layer-vertex.glsl.js +0 -66
  253. package/dist/esm/screen-grid-layer/screen-grid-layer-vertex.glsl.js.map +0 -1
  254. package/dist/esm/screen-grid-layer/screen-grid-layer.js +0 -285
  255. package/dist/esm/screen-grid-layer/screen-grid-layer.js.map +0 -1
  256. package/dist/esm/types.js +0 -2
  257. package/dist/esm/types.js.map +0 -1
  258. package/dist/esm/utils/aggregation-operation-utils.js +0 -91
  259. package/dist/esm/utils/aggregation-operation-utils.js.map +0 -1
  260. package/dist/esm/utils/bin-sorter.js +0 -165
  261. package/dist/esm/utils/bin-sorter.js.map +0 -1
  262. package/dist/esm/utils/color-utils.js +0 -28
  263. package/dist/esm/utils/color-utils.js.map +0 -1
  264. package/dist/esm/utils/cpu-aggregator.js +0 -487
  265. package/dist/esm/utils/cpu-aggregator.js.map +0 -1
  266. package/dist/esm/utils/gpu-grid-aggregation/aggregate-all-fs.glsl.js +0 -21
  267. package/dist/esm/utils/gpu-grid-aggregation/aggregate-all-fs.glsl.js.map +0 -1
  268. package/dist/esm/utils/gpu-grid-aggregation/aggregate-all-vs.glsl.js +0 -35
  269. package/dist/esm/utils/gpu-grid-aggregation/aggregate-all-vs.glsl.js.map +0 -1
  270. package/dist/esm/utils/gpu-grid-aggregation/aggregate-to-grid-fs.glsl.js +0 -16
  271. package/dist/esm/utils/gpu-grid-aggregation/aggregate-to-grid-fs.glsl.js.map +0 -1
  272. package/dist/esm/utils/gpu-grid-aggregation/aggregate-to-grid-vs.glsl.js +0 -60
  273. package/dist/esm/utils/gpu-grid-aggregation/aggregate-to-grid-vs.glsl.js.map +0 -1
  274. package/dist/esm/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.js +0 -42
  275. package/dist/esm/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.js.map +0 -1
  276. package/dist/esm/utils/gpu-grid-aggregation/gpu-grid-aggregator-utils.js +0 -2
  277. package/dist/esm/utils/gpu-grid-aggregation/gpu-grid-aggregator-utils.js.map +0 -1
  278. package/dist/esm/utils/gpu-grid-aggregation/gpu-grid-aggregator.js +0 -720
  279. package/dist/esm/utils/gpu-grid-aggregation/gpu-grid-aggregator.js.map +0 -1
  280. package/dist/esm/utils/gpu-grid-aggregation/gpu-grid-aggregator.md +0 -155
  281. package/dist/esm/utils/gpu-grid-aggregation/transform-mean-vs.glsl.js +0 -19
  282. package/dist/esm/utils/gpu-grid-aggregation/transform-mean-vs.glsl.js.map +0 -1
  283. package/dist/esm/utils/grid-aggregation-utils.js +0 -109
  284. package/dist/esm/utils/grid-aggregation-utils.js.map +0 -1
  285. package/dist/esm/utils/prop-utils.js +0 -12
  286. package/dist/esm/utils/prop-utils.js.map +0 -1
  287. package/dist/esm/utils/resource-utils.js +0 -45
  288. package/dist/esm/utils/resource-utils.js.map +0 -1
  289. package/dist/esm/utils/scale-utils.js +0 -192
  290. package/dist/esm/utils/scale-utils.js.map +0 -1
  291. package/typed/contour-layer/contour-layer.d.ts.map +0 -1
  292. package/typed/cpu-grid-layer/cpu-grid-layer.d.ts.map +0 -1
  293. package/typed/gpu-grid-layer/gpu-grid-cell-layer.d.ts.map +0 -1
  294. package/typed/gpu-grid-layer/gpu-grid-layer.d.ts.map +0 -1
  295. package/typed/grid-aggregation-layer.d.ts.map +0 -1
  296. package/typed/grid-layer/grid-layer.d.ts.map +0 -1
  297. package/typed/heatmap-layer/heatmap-layer-utils.d.ts.map +0 -1
  298. package/typed/heatmap-layer/heatmap-layer.d.ts.map +0 -1
  299. package/typed/heatmap-layer/max-vs.glsl.d.ts +0 -3
  300. package/typed/heatmap-layer/triangle-layer-fragment.glsl.d.ts +0 -3
  301. package/typed/heatmap-layer/triangle-layer.d.ts.map +0 -1
  302. package/typed/heatmap-layer/weights-vs.glsl.d.ts +0 -3
  303. package/typed/hexagon-layer/hexagon-layer.d.ts.map +0 -1
  304. package/typed/index.d.ts +0 -20
  305. package/typed/index.d.ts.map +0 -1
  306. package/typed/screen-grid-layer/screen-grid-cell-layer.d.ts.map +0 -1
  307. package/typed/screen-grid-layer/screen-grid-layer.d.ts.map +0 -1
  308. /package/{typed → dist}/aggregation-layer.d.ts +0 -0
  309. /package/{typed → dist}/contour-layer/contour-utils.d.ts +0 -0
  310. /package/{typed → dist}/contour-layer/contour-utils.d.ts.map +0 -0
  311. /package/{typed → dist}/contour-layer/marching-squares-codes.d.ts +0 -0
  312. /package/{typed → dist}/contour-layer/marching-squares-codes.d.ts.map +0 -0
  313. /package/{typed → dist}/contour-layer/marching-squares.d.ts +0 -0
  314. /package/{typed → dist}/contour-layer/marching-squares.d.ts.map +0 -0
  315. /package/{typed → dist}/cpu-grid-layer/grid-aggregator.d.ts +0 -0
  316. /package/{typed → dist}/cpu-grid-layer/grid-aggregator.d.ts.map +0 -0
  317. /package/{typed → dist}/gpu-grid-layer/gpu-grid-cell-layer-fragment.glsl.d.ts +0 -0
  318. /package/{typed → dist}/gpu-grid-layer/gpu-grid-cell-layer-fragment.glsl.d.ts.map +0 -0
  319. /package/{typed → dist}/gpu-grid-layer/gpu-grid-cell-layer-vertex.glsl.d.ts +0 -0
  320. /package/{typed → dist}/gpu-grid-layer/gpu-grid-cell-layer-vertex.glsl.d.ts.map +0 -0
  321. /package/{typed → dist}/heatmap-layer/max-fs.glsl.d.ts +0 -0
  322. /package/{typed → dist}/heatmap-layer/max-fs.glsl.d.ts.map +0 -0
  323. /package/{typed → dist}/heatmap-layer/triangle-layer-fragment.glsl.d.ts.map +0 -0
  324. /package/{typed → dist}/heatmap-layer/triangle-layer-vertex.glsl.d.ts +0 -0
  325. /package/{typed → dist}/heatmap-layer/triangle-layer-vertex.glsl.d.ts.map +0 -0
  326. /package/{typed → dist}/heatmap-layer/weights-fs.glsl.d.ts +0 -0
  327. /package/{typed → dist}/heatmap-layer/weights-fs.glsl.d.ts.map +0 -0
  328. /package/{typed → dist}/hexagon-layer/hexagon-aggregator.d.ts +0 -0
  329. /package/{typed → dist}/hexagon-layer/hexagon-aggregator.d.ts.map +0 -0
  330. /package/{typed → dist}/screen-grid-layer/screen-grid-layer-fragment.glsl.d.ts +0 -0
  331. /package/{typed → dist}/screen-grid-layer/screen-grid-layer-fragment.glsl.d.ts.map +0 -0
  332. /package/{typed → dist}/screen-grid-layer/screen-grid-layer-vertex.glsl.d.ts +0 -0
  333. /package/{typed → dist}/screen-grid-layer/screen-grid-layer-vertex.glsl.d.ts.map +0 -0
  334. /package/{typed → dist}/types.d.ts +0 -0
  335. /package/{typed → dist}/types.d.ts.map +0 -0
  336. /package/{typed → dist}/utils/aggregation-operation-utils.d.ts +0 -0
  337. /package/{typed → dist}/utils/aggregation-operation-utils.d.ts.map +0 -0
  338. /package/{typed → dist}/utils/bin-sorter.d.ts.map +0 -0
  339. /package/{typed → dist}/utils/color-utils.d.ts +0 -0
  340. /package/{typed → dist}/utils/color-utils.d.ts.map +0 -0
  341. /package/{typed → dist}/utils/cpu-aggregator.d.ts +0 -0
  342. /package/{typed → dist}/utils/cpu-aggregator.d.ts.map +0 -0
  343. /package/{typed → dist}/utils/gpu-grid-aggregation/aggregate-all-fs.glsl.d.ts +0 -0
  344. /package/{typed → dist}/utils/gpu-grid-aggregation/aggregate-all-fs.glsl.d.ts.map +0 -0
  345. /package/{typed → dist}/utils/gpu-grid-aggregation/aggregate-all-vs.glsl.d.ts +0 -0
  346. /package/{typed → dist}/utils/gpu-grid-aggregation/aggregate-all-vs.glsl.d.ts.map +0 -0
  347. /package/{typed → dist}/utils/gpu-grid-aggregation/aggregate-to-grid-fs.glsl.d.ts +0 -0
  348. /package/{typed → dist}/utils/gpu-grid-aggregation/aggregate-to-grid-fs.glsl.d.ts.map +0 -0
  349. /package/{typed → dist}/utils/gpu-grid-aggregation/aggregate-to-grid-vs.glsl.d.ts +0 -0
  350. /package/{typed → dist}/utils/gpu-grid-aggregation/aggregate-to-grid-vs.glsl.d.ts.map +0 -0
  351. /package/{typed → dist}/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.d.ts +0 -0
  352. /package/{typed → dist}/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.d.ts.map +0 -0
  353. /package/{typed → dist}/utils/gpu-grid-aggregation/gpu-grid-aggregator-utils.d.ts +0 -0
  354. /package/{typed → dist}/utils/gpu-grid-aggregation/gpu-grid-aggregator-utils.d.ts.map +0 -0
  355. /package/{typed → dist}/utils/gpu-grid-aggregation/gpu-grid-aggregator.d.ts +0 -0
  356. /package/{typed → dist}/utils/gpu-grid-aggregation/transform-mean-vs.glsl.d.ts +0 -0
  357. /package/{typed → dist}/utils/gpu-grid-aggregation/transform-mean-vs.glsl.d.ts.map +0 -0
  358. /package/{typed → dist}/utils/grid-aggregation-utils.d.ts +0 -0
  359. /package/{typed → dist}/utils/grid-aggregation-utils.d.ts.map +0 -0
  360. /package/{typed → dist}/utils/prop-utils.d.ts +0 -0
  361. /package/{typed → dist}/utils/prop-utils.d.ts.map +0 -0
  362. /package/{typed → dist}/utils/resource-utils.d.ts +0 -0
  363. /package/{typed → dist}/utils/scale-utils.d.ts +0 -0
  364. /package/{typed → dist}/utils/scale-utils.d.ts.map +0 -0
@@ -1,152 +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.ISOBANDS_CODE_OFFSET_MAP = exports.ISOLINES_CODE_OFFSET_MAP = void 0;
9
-
10
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
-
12
- var _ISOBANDS_CODE_OFFSET;
13
-
14
- var HALF = 0.5;
15
- var ONE6TH = 1 / 6;
16
- var OFFSET = {
17
- N: [0, HALF],
18
- E: [HALF, 0],
19
- S: [0, -HALF],
20
- W: [-HALF, 0],
21
- NE: [HALF, HALF],
22
- NW: [-HALF, HALF],
23
- SE: [HALF, -HALF],
24
- SW: [-HALF, -HALF]
25
- };
26
- var SW_TRIANGLE = [OFFSET.W, OFFSET.SW, OFFSET.S];
27
- var SE_TRIANGLE = [OFFSET.S, OFFSET.SE, OFFSET.E];
28
- var NE_TRIANGLE = [OFFSET.E, OFFSET.NE, OFFSET.N];
29
- var NW_TRIANGLE = [OFFSET.NW, OFFSET.W, OFFSET.N];
30
- var SW_TRAPEZOID = [[-HALF, ONE6TH], [-HALF, -ONE6TH], [-ONE6TH, -HALF], [ONE6TH, -HALF]];
31
- var SE_TRAPEZOID = [[-ONE6TH, -HALF], [ONE6TH, -HALF], [HALF, -ONE6TH], [HALF, ONE6TH]];
32
- var NE_TRAPEZOID = [[HALF, -ONE6TH], [HALF, ONE6TH], [ONE6TH, HALF], [-ONE6TH, HALF]];
33
- var NW_TRAPEZOID = [[-HALF, ONE6TH], [-HALF, -ONE6TH], [ONE6TH, HALF], [-ONE6TH, HALF]];
34
- var S_RECTANGLE = [OFFSET.W, OFFSET.SW, OFFSET.SE, OFFSET.E];
35
- var E_RECTANGLE = [OFFSET.S, OFFSET.SE, OFFSET.NE, OFFSET.N];
36
- var N_RECTANGLE = [OFFSET.NW, OFFSET.W, OFFSET.E, OFFSET.NE];
37
- var W_RECTANGLE = [OFFSET.NW, OFFSET.SW, OFFSET.S, OFFSET.N];
38
- var EW_RECTANGEL = [[-HALF, ONE6TH], [-HALF, -ONE6TH], [HALF, -ONE6TH], [HALF, ONE6TH]];
39
- var SN_RECTANGEL = [[-ONE6TH, -HALF], [ONE6TH, -HALF], [ONE6TH, HALF], [-ONE6TH, HALF]];
40
- var SQUARE = [OFFSET.NW, OFFSET.SW, OFFSET.SE, OFFSET.NE];
41
- var SW_PENTAGON = [OFFSET.NW, OFFSET.SW, OFFSET.SE, OFFSET.E, OFFSET.N];
42
- var SE_PENTAGON = [OFFSET.W, OFFSET.SW, OFFSET.SE, OFFSET.NE, OFFSET.N];
43
- var NE_PENTAGON = [OFFSET.NW, OFFSET.W, OFFSET.S, OFFSET.SE, OFFSET.NE];
44
- var NW_PENTAGON = [OFFSET.NW, OFFSET.SW, OFFSET.S, OFFSET.E, OFFSET.NE];
45
- var NW_N_PENTAGON = [OFFSET.NW, OFFSET.W, [HALF, -ONE6TH], [HALF, ONE6TH], OFFSET.N];
46
- var NE_E_PENTAGON = [[-ONE6TH, -HALF], [ONE6TH, -HALF], OFFSET.E, OFFSET.NE, OFFSET.N];
47
- var SE_S_PENTAGON = [[-HALF, ONE6TH], [-HALF, -ONE6TH], OFFSET.S, OFFSET.SE, OFFSET.E];
48
- var SW_W_PENTAGON = [OFFSET.W, OFFSET.SW, OFFSET.S, [ONE6TH, HALF], [-ONE6TH, HALF]];
49
- var NW_W_PENTAGON = [OFFSET.NW, OFFSET.W, [-ONE6TH, -HALF], [ONE6TH, -HALF], OFFSET.N];
50
- var NE_N_PENTAGON = [[-HALF, ONE6TH], [-HALF, -ONE6TH], OFFSET.E, OFFSET.NE, OFFSET.N];
51
- var SE_E_PENTAGON = [OFFSET.S, OFFSET.SE, OFFSET.E, [ONE6TH, HALF], [-ONE6TH, HALF]];
52
- var SW_S_PENTAGON = [OFFSET.W, OFFSET.SW, OFFSET.S, [HALF, -ONE6TH], [HALF, ONE6TH]];
53
- var S_HEXAGON = [OFFSET.W, OFFSET.SW, OFFSET.SE, OFFSET.E, [ONE6TH, HALF], [-ONE6TH, HALF]];
54
- var E_HEXAGON = [[-HALF, ONE6TH], [-HALF, -ONE6TH], OFFSET.S, OFFSET.SE, OFFSET.NE, OFFSET.N];
55
- var N_HEXAGON = [OFFSET.NW, OFFSET.W, [-ONE6TH, -HALF], [ONE6TH, -HALF], OFFSET.E, OFFSET.NE];
56
- var W_HEXAGON = [OFFSET.NW, OFFSET.SW, OFFSET.S, [HALF, -ONE6TH], [HALF, ONE6TH], OFFSET.N];
57
- var SW_NE_HEXAGON = [OFFSET.W, OFFSET.SW, OFFSET.S, OFFSET.E, OFFSET.NE, OFFSET.N];
58
- var NW_SE_HEXAGON = [OFFSET.NW, OFFSET.W, OFFSET.S, OFFSET.SE, OFFSET.E, OFFSET.N];
59
- var NE_HEPTAGON = [[-HALF, ONE6TH], [-HALF, -ONE6TH], [-ONE6TH, -HALF], [ONE6TH, -HALF], OFFSET.E, OFFSET.NE, OFFSET.N];
60
- var SW_HEPTAGON = [OFFSET.W, OFFSET.SW, OFFSET.S, [HALF, -ONE6TH], [HALF, ONE6TH], [ONE6TH, HALF], [-ONE6TH, HALF]];
61
- var NW_HEPTAGON = [OFFSET.NW, OFFSET.W, [-ONE6TH, -HALF], [ONE6TH, -HALF], [HALF, -ONE6TH], [HALF, ONE6TH], OFFSET.N];
62
- var SE_HEPTAGON = [[-HALF, ONE6TH], [-HALF, -ONE6TH], OFFSET.S, OFFSET.SE, OFFSET.E, [ONE6TH, HALF], [-ONE6TH, HALF]];
63
- var OCTAGON = [[-HALF, ONE6TH], [-HALF, -ONE6TH], [-ONE6TH, -HALF], [ONE6TH, -HALF], [HALF, -ONE6TH], [HALF, ONE6TH], [ONE6TH, HALF], [-ONE6TH, HALF]];
64
- var ISOLINES_CODE_OFFSET_MAP = {
65
- 0: [],
66
- 1: [[OFFSET.W, OFFSET.S]],
67
- 2: [[OFFSET.S, OFFSET.E]],
68
- 3: [[OFFSET.W, OFFSET.E]],
69
- 4: [[OFFSET.N, OFFSET.E]],
70
- 5: {
71
- 0: [[OFFSET.W, OFFSET.S], [OFFSET.N, OFFSET.E]],
72
- 1: [[OFFSET.W, OFFSET.N], [OFFSET.S, OFFSET.E]]
73
- },
74
- 6: [[OFFSET.N, OFFSET.S]],
75
- 7: [[OFFSET.W, OFFSET.N]],
76
- 8: [[OFFSET.W, OFFSET.N]],
77
- 9: [[OFFSET.N, OFFSET.S]],
78
- 10: {
79
- 0: [[OFFSET.W, OFFSET.N], [OFFSET.S, OFFSET.E]],
80
- 1: [[OFFSET.W, OFFSET.S], [OFFSET.N, OFFSET.E]]
81
- },
82
- 11: [[OFFSET.N, OFFSET.E]],
83
- 12: [[OFFSET.W, OFFSET.E]],
84
- 13: [[OFFSET.S, OFFSET.E]],
85
- 14: [[OFFSET.W, OFFSET.S]],
86
- 15: []
87
- };
88
- exports.ISOLINES_CODE_OFFSET_MAP = ISOLINES_CODE_OFFSET_MAP;
89
-
90
- function ternaryToIndex(ternary) {
91
- return parseInt(ternary, 4);
92
- }
93
-
94
- var ISOBANDS_CODE_OFFSET_MAP = (_ISOBANDS_CODE_OFFSET = {}, (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0000'), []), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2222'), []), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2221'), [SW_TRIANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2212'), [SE_TRIANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2122'), [NE_TRIANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1222'), [NW_TRIANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0001'), [SW_TRIANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0010'), [SE_TRIANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0100'), [NE_TRIANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1000'), [NW_TRIANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2220'), [SW_TRAPEZOID]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2202'), [SE_TRAPEZOID]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2022'), [NE_TRAPEZOID]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0222'), [NW_TRAPEZOID]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0002'), [SW_TRAPEZOID]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0020'), [SE_TRAPEZOID]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0200'), [NE_TRAPEZOID]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2000'), [NW_TRAPEZOID]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0011'), [S_RECTANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0110'), [E_RECTANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1100'), [N_RECTANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1001'), [W_RECTANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2211'), [S_RECTANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2112'), [E_RECTANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1122'), [N_RECTANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1221'), [W_RECTANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2200'), [EW_RECTANGEL]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2002'), [SN_RECTANGEL]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0022'), [EW_RECTANGEL]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0220'), [SN_RECTANGEL]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1111'), [SQUARE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1211'), [SW_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2111'), [SE_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1112'), [NE_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1121'), [NW_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1011'), [SW_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0111'), [SE_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1110'), [NE_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1101'), [NW_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1200'), [NW_N_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0120'), [NE_E_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0012'), [SE_S_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2001'), [SW_W_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1022'), [NW_N_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2102'), [NE_E_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2210'), [SE_S_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0221'), [SW_W_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1002'), [NW_W_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2100'), [NE_N_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0210'), [SE_E_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0021'), [SW_S_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1220'), [NW_W_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0122'), [NE_N_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2012'), [SE_E_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2201'), [SW_S_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0211'), [S_HEXAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2110'), [E_HEXAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1102'), [N_HEXAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1021'), [W_HEXAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2011'), [S_HEXAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0112'), [E_HEXAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1120'), [N_HEXAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1201'), [W_HEXAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2101'), [SW_NE_HEXAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0121'), [SW_NE_HEXAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1012'), [NW_SE_HEXAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1210'), [NW_SE_HEXAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0101'), {
95
- 0: [SW_TRIANGLE, NE_TRIANGLE],
96
- 1: [SW_NE_HEXAGON],
97
- 2: [SW_NE_HEXAGON]
98
- }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1010'), {
99
- 0: [NW_TRIANGLE, SE_TRIANGLE],
100
- 1: [NW_SE_HEXAGON],
101
- 2: [NW_SE_HEXAGON]
102
- }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2121'), {
103
- 0: [SW_NE_HEXAGON],
104
- 1: [SW_NE_HEXAGON],
105
- 2: [SW_TRIANGLE, NE_TRIANGLE]
106
- }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1212'), {
107
- 0: [NW_SE_HEXAGON],
108
- 1: [NW_SE_HEXAGON],
109
- 2: [NW_TRIANGLE, SE_TRIANGLE]
110
- }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2120'), {
111
- 0: [NE_HEPTAGON],
112
- 1: [NE_HEPTAGON],
113
- 2: [SW_TRAPEZOID, NE_TRIANGLE]
114
- }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2021'), {
115
- 0: [SW_HEPTAGON],
116
- 1: [SW_HEPTAGON],
117
- 2: [SW_TRIANGLE, NE_TRAPEZOID]
118
- }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1202'), {
119
- 0: [NW_HEPTAGON],
120
- 1: [NW_HEPTAGON],
121
- 2: [NW_TRIANGLE, SE_TRAPEZOID]
122
- }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0212'), {
123
- 0: [SE_HEPTAGON],
124
- 1: [SE_HEPTAGON],
125
- 2: [SE_TRIANGLE, NW_TRAPEZOID]
126
- }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0102'), {
127
- 0: [SW_TRAPEZOID, NE_TRIANGLE],
128
- 1: [NE_HEPTAGON],
129
- 2: [NE_HEPTAGON]
130
- }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0201'), {
131
- 0: [SW_TRIANGLE, NE_TRAPEZOID],
132
- 1: [SW_HEPTAGON],
133
- 2: [SW_HEPTAGON]
134
- }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1020'), {
135
- 0: [NW_TRIANGLE, SE_TRAPEZOID],
136
- 1: [NW_HEPTAGON],
137
- 2: [NW_HEPTAGON]
138
- }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2010'), {
139
- 0: [SE_TRIANGLE, NW_TRAPEZOID],
140
- 1: [SE_HEPTAGON],
141
- 2: [SE_HEPTAGON]
142
- }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2020'), {
143
- 0: [NW_TRAPEZOID, SE_TRAPEZOID],
144
- 1: [OCTAGON],
145
- 2: [SW_TRAPEZOID, NE_TRAPEZOID]
146
- }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0202'), {
147
- 0: [NE_TRAPEZOID, SW_TRAPEZOID],
148
- 1: [OCTAGON],
149
- 2: [NW_TRAPEZOID, SE_TRAPEZOID]
150
- }), _ISOBANDS_CODE_OFFSET);
151
- exports.ISOBANDS_CODE_OFFSET_MAP = ISOBANDS_CODE_OFFSET_MAP;
152
- //# sourceMappingURL=marching-squares-codes.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/contour-layer/marching-squares-codes.ts"],"names":["HALF","ONE6TH","OFFSET","N","E","S","W","NE","NW","SE","SW","SW_TRIANGLE","SE_TRIANGLE","NE_TRIANGLE","NW_TRIANGLE","SW_TRAPEZOID","SE_TRAPEZOID","NE_TRAPEZOID","NW_TRAPEZOID","S_RECTANGLE","E_RECTANGLE","N_RECTANGLE","W_RECTANGLE","EW_RECTANGEL","SN_RECTANGEL","SQUARE","SW_PENTAGON","SE_PENTAGON","NE_PENTAGON","NW_PENTAGON","NW_N_PENTAGON","NE_E_PENTAGON","SE_S_PENTAGON","SW_W_PENTAGON","NW_W_PENTAGON","NE_N_PENTAGON","SE_E_PENTAGON","SW_S_PENTAGON","S_HEXAGON","E_HEXAGON","N_HEXAGON","W_HEXAGON","SW_NE_HEXAGON","NW_SE_HEXAGON","NE_HEPTAGON","SW_HEPTAGON","NW_HEPTAGON","SE_HEPTAGON","OCTAGON","ISOLINES_CODE_OFFSET_MAP","ternaryToIndex","ternary","parseInt","ISOBANDS_CODE_OFFSET_MAP"],"mappings":"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","sourcesContent":["// Code to Offsets Map needed to implement Marching Squares algorithm\n// Ref: https://en.wikipedia.org/wiki/Marching_squares\n\n// Table to map code to the intersection offsets\n// All offsets are relative to the center of marching cell (which is top right corner of grid-cell, and center of marching-square)\nconst HALF = 0.5;\nconst ONE6TH = 1 / 6;\nconst OFFSET = {\n N: [0, HALF], // NORTH\n E: [HALF, 0], // EAST\n S: [0, -HALF], // SOUTH\n W: [-HALF, 0], // WEST\n\n // CORNERS\n NE: [HALF, HALF],\n NW: [-HALF, HALF],\n SE: [HALF, -HALF],\n SW: [-HALF, -HALF]\n};\n\n// NOTE: vertices are ordered in CCW direction, starting from NW corner\n\n// Triangles\nconst SW_TRIANGLE = [OFFSET.W, OFFSET.SW, OFFSET.S];\nconst SE_TRIANGLE = [OFFSET.S, OFFSET.SE, OFFSET.E];\nconst NE_TRIANGLE = [OFFSET.E, OFFSET.NE, OFFSET.N];\nconst NW_TRIANGLE = [OFFSET.NW, OFFSET.W, OFFSET.N];\n\n// Trapezoids\nconst SW_TRAPEZOID = [\n [-HALF, ONE6TH],\n [-HALF, -ONE6TH],\n [-ONE6TH, -HALF],\n [ONE6TH, -HALF]\n];\nconst SE_TRAPEZOID = [\n [-ONE6TH, -HALF],\n [ONE6TH, -HALF],\n [HALF, -ONE6TH],\n [HALF, ONE6TH]\n];\nconst NE_TRAPEZOID = [\n [HALF, -ONE6TH],\n [HALF, ONE6TH],\n [ONE6TH, HALF],\n [-ONE6TH, HALF]\n];\nconst NW_TRAPEZOID = [\n [-HALF, ONE6TH],\n [-HALF, -ONE6TH],\n [ONE6TH, HALF],\n [-ONE6TH, HALF]\n];\n\n// Rectangles\nconst S_RECTANGLE = [OFFSET.W, OFFSET.SW, OFFSET.SE, OFFSET.E];\nconst E_RECTANGLE = [OFFSET.S, OFFSET.SE, OFFSET.NE, OFFSET.N];\nconst N_RECTANGLE = [OFFSET.NW, OFFSET.W, OFFSET.E, OFFSET.NE];\nconst W_RECTANGLE = [OFFSET.NW, OFFSET.SW, OFFSET.S, OFFSET.N];\nconst EW_RECTANGEL = [\n [-HALF, ONE6TH],\n [-HALF, -ONE6TH],\n [HALF, -ONE6TH],\n [HALF, ONE6TH]\n];\nconst SN_RECTANGEL = [\n [-ONE6TH, -HALF],\n [ONE6TH, -HALF],\n [ONE6TH, HALF],\n [-ONE6TH, HALF]\n];\n\n// Square\nconst SQUARE = [OFFSET.NW, OFFSET.SW, OFFSET.SE, OFFSET.NE];\n\n// Pentagons\nconst SW_PENTAGON = [OFFSET.NW, OFFSET.SW, OFFSET.SE, OFFSET.E, OFFSET.N];\nconst SE_PENTAGON = [OFFSET.W, OFFSET.SW, OFFSET.SE, OFFSET.NE, OFFSET.N];\nconst NE_PENTAGON = [OFFSET.NW, OFFSET.W, OFFSET.S, OFFSET.SE, OFFSET.NE];\nconst NW_PENTAGON = [OFFSET.NW, OFFSET.SW, OFFSET.S, OFFSET.E, OFFSET.NE];\n\nconst NW_N_PENTAGON = [OFFSET.NW, OFFSET.W, [HALF, -ONE6TH], [HALF, ONE6TH], OFFSET.N];\nconst NE_E_PENTAGON = [[-ONE6TH, -HALF], [ONE6TH, -HALF], OFFSET.E, OFFSET.NE, OFFSET.N];\nconst SE_S_PENTAGON = [[-HALF, ONE6TH], [-HALF, -ONE6TH], OFFSET.S, OFFSET.SE, OFFSET.E];\nconst SW_W_PENTAGON = [OFFSET.W, OFFSET.SW, OFFSET.S, [ONE6TH, HALF], [-ONE6TH, HALF]];\n\nconst NW_W_PENTAGON = [OFFSET.NW, OFFSET.W, [-ONE6TH, -HALF], [ONE6TH, -HALF], OFFSET.N];\nconst NE_N_PENTAGON = [[-HALF, ONE6TH], [-HALF, -ONE6TH], OFFSET.E, OFFSET.NE, OFFSET.N];\nconst SE_E_PENTAGON = [OFFSET.S, OFFSET.SE, OFFSET.E, [ONE6TH, HALF], [-ONE6TH, HALF]];\nconst SW_S_PENTAGON = [OFFSET.W, OFFSET.SW, OFFSET.S, [HALF, -ONE6TH], [HALF, ONE6TH]];\n\n// Hexagon\nconst S_HEXAGON = [OFFSET.W, OFFSET.SW, OFFSET.SE, OFFSET.E, [ONE6TH, HALF], [-ONE6TH, HALF]];\nconst E_HEXAGON = [[-HALF, ONE6TH], [-HALF, -ONE6TH], OFFSET.S, OFFSET.SE, OFFSET.NE, OFFSET.N];\nconst N_HEXAGON = [OFFSET.NW, OFFSET.W, [-ONE6TH, -HALF], [ONE6TH, -HALF], OFFSET.E, OFFSET.NE];\nconst W_HEXAGON = [OFFSET.NW, OFFSET.SW, OFFSET.S, [HALF, -ONE6TH], [HALF, ONE6TH], OFFSET.N];\nconst SW_NE_HEXAGON = [OFFSET.W, OFFSET.SW, OFFSET.S, OFFSET.E, OFFSET.NE, OFFSET.N];\nconst NW_SE_HEXAGON = [OFFSET.NW, OFFSET.W, OFFSET.S, OFFSET.SE, OFFSET.E, OFFSET.N];\n\n// Heptagon (7-sided)\nconst NE_HEPTAGON = [\n [-HALF, ONE6TH],\n [-HALF, -ONE6TH],\n [-ONE6TH, -HALF],\n [ONE6TH, -HALF],\n OFFSET.E,\n OFFSET.NE,\n OFFSET.N\n];\nconst SW_HEPTAGON = [\n OFFSET.W,\n OFFSET.SW,\n OFFSET.S,\n [HALF, -ONE6TH],\n [HALF, ONE6TH],\n [ONE6TH, HALF],\n [-ONE6TH, HALF]\n];\nconst NW_HEPTAGON = [\n OFFSET.NW,\n OFFSET.W,\n [-ONE6TH, -HALF],\n [ONE6TH, -HALF],\n [HALF, -ONE6TH],\n [HALF, ONE6TH],\n OFFSET.N\n];\nconst SE_HEPTAGON = [\n [-HALF, ONE6TH],\n [-HALF, -ONE6TH],\n OFFSET.S,\n OFFSET.SE,\n OFFSET.E,\n [ONE6TH, HALF],\n [-ONE6TH, HALF]\n];\n\n// Octagon\nconst OCTAGON = [\n [-HALF, ONE6TH],\n [-HALF, -ONE6TH],\n [-ONE6TH, -HALF],\n [ONE6TH, -HALF],\n [HALF, -ONE6TH],\n [HALF, ONE6TH],\n [ONE6TH, HALF],\n [-ONE6TH, HALF]\n];\n\n// Note: above wiki page invertes white/black dots for generating the code, we don't\nexport const ISOLINES_CODE_OFFSET_MAP = {\n // key is equal to the code of 4 vertices (invert the code specified in wiki)\n // value can be an array or an Object\n // Array : [line] or [line, line], where each line is [start-point, end-point], and each point is [x, y]\n // Object : to handle saddle cases, whos output depends on mean value of all 4 corners\n // key: code of mean value (0 or 1)\n // value: Array , as above defines one or two line segments\n 0: [],\n 1: [[OFFSET.W, OFFSET.S]],\n 2: [[OFFSET.S, OFFSET.E]],\n 3: [[OFFSET.W, OFFSET.E]],\n 4: [[OFFSET.N, OFFSET.E]],\n 5: {\n 0: [\n [OFFSET.W, OFFSET.S],\n [OFFSET.N, OFFSET.E]\n ],\n 1: [\n [OFFSET.W, OFFSET.N],\n [OFFSET.S, OFFSET.E]\n ]\n },\n 6: [[OFFSET.N, OFFSET.S]],\n 7: [[OFFSET.W, OFFSET.N]],\n 8: [[OFFSET.W, OFFSET.N]],\n 9: [[OFFSET.N, OFFSET.S]],\n 10: {\n 0: [\n [OFFSET.W, OFFSET.N],\n [OFFSET.S, OFFSET.E]\n ],\n 1: [\n [OFFSET.W, OFFSET.S],\n [OFFSET.N, OFFSET.E]\n ]\n },\n 11: [[OFFSET.N, OFFSET.E]],\n 12: [[OFFSET.W, OFFSET.E]],\n 13: [[OFFSET.S, OFFSET.E]],\n 14: [[OFFSET.W, OFFSET.S]],\n 15: []\n};\n\nfunction ternaryToIndex(ternary) {\n return parseInt(ternary, 4);\n}\n\nexport const ISOBANDS_CODE_OFFSET_MAP = {\n // Below list of cases, follow the same order as in above mentioned wiki page.\n // Each case has its code on first commented line // T,TR,R,C\n // where T: Top, TR: Top-right, R: Right and C: current, each will be either 0, 1 or 2\n // final code is binary representation of above code , where takes 2 digits\n // for example: code 2-2-2-1 => 10-10-10-01 => 10101001 => 169\n\n // no contours\n [ternaryToIndex('0000')]: [],\n [ternaryToIndex('2222')]: [],\n\n // single triangle\n [ternaryToIndex('2221')]: [SW_TRIANGLE],\n [ternaryToIndex('2212')]: [SE_TRIANGLE],\n [ternaryToIndex('2122')]: [NE_TRIANGLE],\n [ternaryToIndex('1222')]: [NW_TRIANGLE],\n [ternaryToIndex('0001')]: [SW_TRIANGLE],\n [ternaryToIndex('0010')]: [SE_TRIANGLE],\n [ternaryToIndex('0100')]: [NE_TRIANGLE],\n [ternaryToIndex('1000')]: [NW_TRIANGLE],\n\n // single trapezoid\n [ternaryToIndex('2220')]: [SW_TRAPEZOID],\n [ternaryToIndex('2202')]: [SE_TRAPEZOID],\n [ternaryToIndex('2022')]: [NE_TRAPEZOID],\n [ternaryToIndex('0222')]: [NW_TRAPEZOID],\n [ternaryToIndex('0002')]: [SW_TRAPEZOID],\n [ternaryToIndex('0020')]: [SE_TRAPEZOID],\n [ternaryToIndex('0200')]: [NE_TRAPEZOID],\n [ternaryToIndex('2000')]: [NW_TRAPEZOID],\n\n // single rectangle\n [ternaryToIndex('0011')]: [S_RECTANGLE],\n [ternaryToIndex('0110')]: [E_RECTANGLE],\n [ternaryToIndex('1100')]: [N_RECTANGLE],\n [ternaryToIndex('1001')]: [W_RECTANGLE],\n [ternaryToIndex('2211')]: [S_RECTANGLE],\n [ternaryToIndex('2112')]: [E_RECTANGLE],\n [ternaryToIndex('1122')]: [N_RECTANGLE],\n [ternaryToIndex('1221')]: [W_RECTANGLE],\n [ternaryToIndex('2200')]: [EW_RECTANGEL],\n [ternaryToIndex('2002')]: [SN_RECTANGEL],\n [ternaryToIndex('0022')]: [EW_RECTANGEL],\n [ternaryToIndex('0220')]: [SN_RECTANGEL],\n\n // single square\n // 1111\n [ternaryToIndex('1111')]: [SQUARE],\n\n // single pentagon\n [ternaryToIndex('1211')]: [SW_PENTAGON],\n [ternaryToIndex('2111')]: [SE_PENTAGON],\n [ternaryToIndex('1112')]: [NE_PENTAGON],\n [ternaryToIndex('1121')]: [NW_PENTAGON],\n [ternaryToIndex('1011')]: [SW_PENTAGON],\n [ternaryToIndex('0111')]: [SE_PENTAGON],\n [ternaryToIndex('1110')]: [NE_PENTAGON],\n [ternaryToIndex('1101')]: [NW_PENTAGON],\n [ternaryToIndex('1200')]: [NW_N_PENTAGON],\n [ternaryToIndex('0120')]: [NE_E_PENTAGON],\n [ternaryToIndex('0012')]: [SE_S_PENTAGON],\n [ternaryToIndex('2001')]: [SW_W_PENTAGON],\n [ternaryToIndex('1022')]: [NW_N_PENTAGON],\n [ternaryToIndex('2102')]: [NE_E_PENTAGON],\n [ternaryToIndex('2210')]: [SE_S_PENTAGON],\n [ternaryToIndex('0221')]: [SW_W_PENTAGON],\n [ternaryToIndex('1002')]: [NW_W_PENTAGON],\n [ternaryToIndex('2100')]: [NE_N_PENTAGON],\n [ternaryToIndex('0210')]: [SE_E_PENTAGON],\n [ternaryToIndex('0021')]: [SW_S_PENTAGON],\n [ternaryToIndex('1220')]: [NW_W_PENTAGON],\n [ternaryToIndex('0122')]: [NE_N_PENTAGON],\n [ternaryToIndex('2012')]: [SE_E_PENTAGON],\n [ternaryToIndex('2201')]: [SW_S_PENTAGON],\n\n // single hexagon\n [ternaryToIndex('0211')]: [S_HEXAGON],\n [ternaryToIndex('2110')]: [E_HEXAGON],\n [ternaryToIndex('1102')]: [N_HEXAGON],\n [ternaryToIndex('1021')]: [W_HEXAGON],\n [ternaryToIndex('2011')]: [S_HEXAGON],\n [ternaryToIndex('0112')]: [E_HEXAGON],\n [ternaryToIndex('1120')]: [N_HEXAGON],\n [ternaryToIndex('1201')]: [W_HEXAGON],\n [ternaryToIndex('2101')]: [SW_NE_HEXAGON],\n [ternaryToIndex('0121')]: [SW_NE_HEXAGON],\n [ternaryToIndex('1012')]: [NW_SE_HEXAGON],\n [ternaryToIndex('1210')]: [NW_SE_HEXAGON],\n\n // 6-sided polygons based on mean weight\n // NOTE: merges mean value codes for extreme changes (as per above Wiki doc)\n [ternaryToIndex('0101')]: {\n 0: [SW_TRIANGLE, NE_TRIANGLE],\n 1: [SW_NE_HEXAGON],\n 2: [SW_NE_HEXAGON]\n },\n [ternaryToIndex('1010')]: {\n 0: [NW_TRIANGLE, SE_TRIANGLE],\n 1: [NW_SE_HEXAGON],\n 2: [NW_SE_HEXAGON]\n },\n [ternaryToIndex('2121')]: {\n 0: [SW_NE_HEXAGON],\n 1: [SW_NE_HEXAGON],\n 2: [SW_TRIANGLE, NE_TRIANGLE]\n },\n [ternaryToIndex('1212')]: {\n 0: [NW_SE_HEXAGON],\n 1: [NW_SE_HEXAGON],\n 2: [NW_TRIANGLE, SE_TRIANGLE]\n },\n\n // 7-sided polygons based on mean weight\n [ternaryToIndex('2120')]: {\n 0: [NE_HEPTAGON],\n 1: [NE_HEPTAGON],\n 2: [SW_TRAPEZOID, NE_TRIANGLE]\n },\n [ternaryToIndex('2021')]: {\n 0: [SW_HEPTAGON],\n 1: [SW_HEPTAGON],\n 2: [SW_TRIANGLE, NE_TRAPEZOID]\n },\n [ternaryToIndex('1202')]: {\n 0: [NW_HEPTAGON],\n 1: [NW_HEPTAGON],\n 2: [NW_TRIANGLE, SE_TRAPEZOID]\n },\n [ternaryToIndex('0212')]: {\n 0: [SE_HEPTAGON],\n 1: [SE_HEPTAGON],\n 2: [SE_TRIANGLE, NW_TRAPEZOID]\n },\n [ternaryToIndex('0102')]: {\n 0: [SW_TRAPEZOID, NE_TRIANGLE],\n 1: [NE_HEPTAGON],\n 2: [NE_HEPTAGON]\n },\n [ternaryToIndex('0201')]: {\n 0: [SW_TRIANGLE, NE_TRAPEZOID],\n 1: [SW_HEPTAGON],\n 2: [SW_HEPTAGON]\n },\n [ternaryToIndex('1020')]: {\n 0: [NW_TRIANGLE, SE_TRAPEZOID],\n 1: [NW_HEPTAGON],\n 2: [NW_HEPTAGON]\n },\n [ternaryToIndex('2010')]: {\n 0: [SE_TRIANGLE, NW_TRAPEZOID],\n 1: [SE_HEPTAGON],\n 2: [SE_HEPTAGON]\n },\n\n // 8-sided polygons based on mean weight\n [ternaryToIndex('2020')]: {\n 0: [NW_TRAPEZOID, SE_TRAPEZOID],\n 1: [OCTAGON],\n 2: [SW_TRAPEZOID, NE_TRAPEZOID]\n },\n [ternaryToIndex('0202')]: {\n 0: [NE_TRAPEZOID, SW_TRAPEZOID],\n 1: [OCTAGON],\n 2: [NW_TRAPEZOID, SE_TRAPEZOID]\n }\n};\n"],"file":"marching-squares-codes.js"}
@@ -1,168 +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.getCode = getCode;
9
- exports.getVertices = getVertices;
10
- exports.CONTOUR_TYPE = void 0;
11
-
12
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
-
14
- var _core = require("@deck.gl/core");
15
-
16
- var _marchingSquaresCodes = require("./marching-squares-codes");
17
-
18
- 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; }
19
-
20
- 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; }
21
-
22
- var CONTOUR_TYPE = {
23
- ISO_LINES: 1,
24
- ISO_BANDS: 2
25
- };
26
- exports.CONTOUR_TYPE = CONTOUR_TYPE;
27
- var DEFAULT_THRESHOLD_DATA = {
28
- zIndex: 0,
29
- zOffset: 0.005
30
- };
31
-
32
- function getVertexCode(weight, threshold) {
33
- if (Array.isArray(threshold)) {
34
- if (weight < threshold[0]) {
35
- return 0;
36
- }
37
-
38
- return weight < threshold[1] ? 1 : 2;
39
- }
40
-
41
- return weight >= threshold ? 1 : 0;
42
- }
43
-
44
- function getCode(opts) {
45
- var cellWeights = opts.cellWeights,
46
- x = opts.x,
47
- y = opts.y,
48
- width = opts.width,
49
- height = opts.height;
50
- var threshold = opts.threshold;
51
-
52
- if (opts.thresholdValue) {
53
- _core.log.deprecated('thresholdValue', 'threshold')();
54
-
55
- threshold = opts.thresholdValue;
56
- }
57
-
58
- var isLeftBoundary = x < 0;
59
- var isRightBoundary = x >= width - 1;
60
- var isBottomBoundary = y < 0;
61
- var isTopBoundary = y >= height - 1;
62
- var isBoundary = isLeftBoundary || isRightBoundary || isBottomBoundary || isTopBoundary;
63
- var weights = {};
64
- var codes = {};
65
-
66
- if (isLeftBoundary || isTopBoundary) {
67
- codes.top = 0;
68
- } else {
69
- weights.top = cellWeights[(y + 1) * width + x];
70
- codes.top = getVertexCode(weights.top, threshold);
71
- }
72
-
73
- if (isRightBoundary || isTopBoundary) {
74
- codes.topRight = 0;
75
- } else {
76
- weights.topRight = cellWeights[(y + 1) * width + x + 1];
77
- codes.topRight = getVertexCode(weights.topRight, threshold);
78
- }
79
-
80
- if (isRightBoundary || isBottomBoundary) {
81
- codes.right = 0;
82
- } else {
83
- weights.right = cellWeights[y * width + x + 1];
84
- codes.right = getVertexCode(weights.right, threshold);
85
- }
86
-
87
- if (isLeftBoundary || isBottomBoundary) {
88
- codes.current = 0;
89
- } else {
90
- weights.current = cellWeights[y * width + x];
91
- codes.current = getVertexCode(weights.current, threshold);
92
- }
93
-
94
- var top = codes.top,
95
- topRight = codes.topRight,
96
- right = codes.right,
97
- current = codes.current;
98
- var code = -1;
99
-
100
- if (Number.isFinite(threshold)) {
101
- code = top << 3 | topRight << 2 | right << 1 | current;
102
- }
103
-
104
- if (Array.isArray(threshold)) {
105
- code = top << 6 | topRight << 4 | right << 2 | current;
106
- }
107
-
108
- var meanCode = 0;
109
-
110
- if (!isBoundary) {
111
- meanCode = getVertexCode((weights.top + weights.topRight + weights.right + weights.current) / 4, threshold);
112
- }
113
-
114
- return {
115
- code: code,
116
- meanCode: meanCode
117
- };
118
- }
119
-
120
- function getVertices(opts) {
121
- var gridOrigin = opts.gridOrigin,
122
- cellSize = opts.cellSize,
123
- x = opts.x,
124
- y = opts.y,
125
- code = opts.code,
126
- meanCode = opts.meanCode,
127
- _opts$type = opts.type,
128
- type = _opts$type === void 0 ? CONTOUR_TYPE.ISO_LINES : _opts$type;
129
-
130
- var thresholdData = _objectSpread(_objectSpread({}, DEFAULT_THRESHOLD_DATA), opts.thresholdData);
131
-
132
- var offsets = type === CONTOUR_TYPE.ISO_BANDS ? _marchingSquaresCodes.ISOBANDS_CODE_OFFSET_MAP[code] : _marchingSquaresCodes.ISOLINES_CODE_OFFSET_MAP[code];
133
-
134
- if (!Array.isArray(offsets)) {
135
- offsets = offsets[meanCode];
136
- }
137
-
138
- var vZ = thresholdData.zIndex * thresholdData.zOffset;
139
- var rX = (x + 1) * cellSize[0];
140
- var rY = (y + 1) * cellSize[1];
141
- var refVertexX = gridOrigin[0] + rX;
142
- var refVertexY = gridOrigin[1] + rY;
143
-
144
- if (type === CONTOUR_TYPE.ISO_BANDS) {
145
- var polygons = [];
146
- offsets.forEach(function (polygonOffsets) {
147
- var polygon = [];
148
- polygonOffsets.forEach(function (xyOffset) {
149
- var vX = refVertexX + xyOffset[0] * cellSize[0];
150
- var vY = refVertexY + xyOffset[1] * cellSize[1];
151
- polygon.push([vX, vY, vZ]);
152
- });
153
- polygons.push(polygon);
154
- });
155
- return polygons;
156
- }
157
-
158
- var lines = [];
159
- offsets.forEach(function (xyOffsets) {
160
- xyOffsets.forEach(function (offset) {
161
- var vX = refVertexX + offset[0] * cellSize[0];
162
- var vY = refVertexY + offset[1] * cellSize[1];
163
- lines.push([vX, vY, vZ]);
164
- });
165
- });
166
- return lines;
167
- }
168
- //# sourceMappingURL=marching-squares.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/contour-layer/marching-squares.ts"],"names":["CONTOUR_TYPE","ISO_LINES","ISO_BANDS","DEFAULT_THRESHOLD_DATA","zIndex","zOffset","getVertexCode","weight","threshold","Array","isArray","getCode","opts","cellWeights","x","y","width","height","thresholdValue","log","deprecated","isLeftBoundary","isRightBoundary","isBottomBoundary","isTopBoundary","isBoundary","weights","codes","top","topRight","right","current","code","Number","isFinite","meanCode","getVertices","gridOrigin","cellSize","type","thresholdData","offsets","ISOBANDS_CODE_OFFSET_MAP","ISOLINES_CODE_OFFSET_MAP","vZ","rX","rY","refVertexX","refVertexY","polygons","forEach","polygonOffsets","polygon","xyOffset","vX","vY","push","lines","xyOffsets","offset"],"mappings":"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","sourcesContent":["// All utility methods needed to implement Marching Squares algorithm\n// Ref: https://en.wikipedia.org/wiki/Marching_squares\n\nimport {log} from '@deck.gl/core';\nimport {ISOLINES_CODE_OFFSET_MAP, ISOBANDS_CODE_OFFSET_MAP} from './marching-squares-codes';\n\nexport const CONTOUR_TYPE = {\n ISO_LINES: 1,\n ISO_BANDS: 2\n};\n\nconst DEFAULT_THRESHOLD_DATA = {\n zIndex: 0,\n zOffset: 0.005\n};\n\n// Utility methods\n\nfunction getVertexCode(weight: number, threshold: number | number[]): number {\n // threshold must be a single value or a range (array of size 2)\n\n // Iso-bands\n if (Array.isArray(threshold)) {\n if (weight < threshold[0]) {\n return 0;\n }\n return weight < threshold[1] ? 1 : 2;\n }\n // Iso-lines\n return weight >= threshold ? 1 : 0;\n}\n\n// Returns marching square code for given cell\n/* eslint-disable complexity, max-statements*/\nexport function getCode(opts) {\n // Assumptions\n // Origin is on bottom-left , and X increase to right, Y to top\n // When processing one cell, we process 4 cells, by extending row to top and on column to right\n // to create a 2X2 cell grid\n const {cellWeights, x, y, width, height} = opts;\n let threshold = opts.threshold;\n if (opts.thresholdValue) {\n log.deprecated('thresholdValue', 'threshold')();\n threshold = opts.thresholdValue;\n }\n\n const isLeftBoundary = x < 0;\n const isRightBoundary = x >= width - 1;\n const isBottomBoundary = y < 0;\n const isTopBoundary = y >= height - 1;\n const isBoundary = isLeftBoundary || isRightBoundary || isBottomBoundary || isTopBoundary;\n\n const weights: Record<string, number> = {};\n const codes: Record<string, number> = {};\n\n // TOP\n if (isLeftBoundary || isTopBoundary) {\n codes.top = 0;\n } else {\n weights.top = cellWeights[(y + 1) * width + x];\n codes.top = getVertexCode(weights.top, threshold);\n }\n\n // TOP-RIGHT\n if (isRightBoundary || isTopBoundary) {\n codes.topRight = 0;\n } else {\n weights.topRight = cellWeights[(y + 1) * width + x + 1];\n codes.topRight = getVertexCode(weights.topRight, threshold);\n }\n\n // RIGHT\n if (isRightBoundary || isBottomBoundary) {\n codes.right = 0;\n } else {\n weights.right = cellWeights[y * width + x + 1];\n codes.right = getVertexCode(weights.right, threshold);\n }\n\n // CURRENT\n if (isLeftBoundary || isBottomBoundary) {\n codes.current = 0;\n } else {\n weights.current = cellWeights[y * width + x];\n codes.current = getVertexCode(weights.current, threshold);\n }\n\n const {top, topRight, right, current} = codes;\n let code = -1;\n if (Number.isFinite(threshold)) {\n code = (top << 3) | (topRight << 2) | (right << 1) | current;\n }\n if (Array.isArray(threshold)) {\n code = (top << 6) | (topRight << 4) | (right << 2) | current;\n }\n\n let meanCode = 0;\n // meanCode is only needed for saddle cases, and they should\n // only occur when we are not processing a cell on boundary\n // because when on a boundary either, bottom-row, top-row, left-column or right-column will have both 0 codes\n if (!isBoundary) {\n meanCode = getVertexCode(\n (weights.top + weights.topRight + weights.right + weights.current) / 4,\n threshold\n );\n }\n return {code, meanCode};\n}\n/* eslint-enable complexity, max-statements*/\n\n// Returns intersection vertices for given cellindex\n// [x, y] refers current marching cell, reference vertex is always top-right corner\nexport function getVertices(opts) {\n const {gridOrigin, cellSize, x, y, code, meanCode, type = CONTOUR_TYPE.ISO_LINES} = opts;\n const thresholdData = {...DEFAULT_THRESHOLD_DATA, ...opts.thresholdData};\n let offsets =\n type === CONTOUR_TYPE.ISO_BANDS\n ? ISOBANDS_CODE_OFFSET_MAP[code]\n : ISOLINES_CODE_OFFSET_MAP[code];\n\n // handle saddle cases\n if (!Array.isArray(offsets)) {\n offsets = offsets[meanCode];\n }\n\n // Reference vertex is at top-right move to top-right corner\n\n const vZ = thresholdData.zIndex * thresholdData.zOffset;\n const rX = (x + 1) * cellSize[0];\n const rY = (y + 1) * cellSize[1];\n\n const refVertexX = gridOrigin[0] + rX;\n const refVertexY = gridOrigin[1] + rY;\n\n // offsets format\n // ISO_LINES: [[1A, 1B], [2A, 2B]],\n // ISO_BANDS: [[1A, 1B, 1C, ...], [2A, 2B, 2C, ...]],\n\n // vertices format\n\n // ISO_LINES: [[x1A, y1A], [x1B, y1B], [x2A, x2B], ...],\n\n // ISO_BANDS: => confirms to SolidPolygonLayer's simple polygon format\n // [\n // [[x1A, y1A], [x1B, y1B], [x1C, y1C] ... ],\n // ...\n // ]\n\n if (type === CONTOUR_TYPE.ISO_BANDS) {\n const polygons: number[][][] = [];\n offsets.forEach(polygonOffsets => {\n const polygon: number[][] = [];\n polygonOffsets.forEach(xyOffset => {\n const vX = refVertexX + xyOffset[0] * cellSize[0];\n const vY = refVertexY + xyOffset[1] * cellSize[1];\n polygon.push([vX, vY, vZ]);\n });\n polygons.push(polygon);\n });\n return polygons;\n }\n\n // default case is ISO_LINES\n const lines: number[][] = [];\n offsets.forEach(xyOffsets => {\n xyOffsets.forEach(offset => {\n const vX = refVertexX + offset[0] * cellSize[0];\n const vY = refVertexY + offset[1] * cellSize[1];\n lines.push([vX, vY, vZ]);\n });\n });\n return lines;\n}\n"],"file":"marching-squares.js"}
@@ -1,235 +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 _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
-
12
- var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
13
-
14
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
-
16
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
17
-
18
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
19
-
20
- var _constants = require("@luma.gl/constants");
21
-
22
- var _layers = require("@deck.gl/layers");
23
-
24
- var _colorUtils = require("../utils/color-utils");
25
-
26
- var _gridAggregator = require("./grid-aggregator");
27
-
28
- var _cpuAggregator = _interopRequireDefault(require("../utils/cpu-aggregator"));
29
-
30
- var _aggregationLayer = _interopRequireDefault(require("../aggregation-layer"));
31
-
32
- 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); }; }
33
-
34
- 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; } }
35
-
36
- function nop() {}
37
-
38
- var defaultProps = {
39
- colorDomain: null,
40
- colorRange: _colorUtils.defaultColorRange,
41
- getColorValue: {
42
- type: 'accessor',
43
- value: null
44
- },
45
- getColorWeight: {
46
- type: 'accessor',
47
- value: 1
48
- },
49
- colorAggregation: 'SUM',
50
- lowerPercentile: {
51
- type: 'number',
52
- min: 0,
53
- max: 100,
54
- value: 0
55
- },
56
- upperPercentile: {
57
- type: 'number',
58
- min: 0,
59
- max: 100,
60
- value: 100
61
- },
62
- colorScaleType: 'quantize',
63
- onSetColorDomain: nop,
64
- elevationDomain: null,
65
- elevationRange: [0, 1000],
66
- getElevationValue: {
67
- type: 'accessor',
68
- value: null
69
- },
70
- getElevationWeight: {
71
- type: 'accessor',
72
- value: 1
73
- },
74
- elevationAggregation: 'SUM',
75
- elevationLowerPercentile: {
76
- type: 'number',
77
- min: 0,
78
- max: 100,
79
- value: 0
80
- },
81
- elevationUpperPercentile: {
82
- type: 'number',
83
- min: 0,
84
- max: 100,
85
- value: 100
86
- },
87
- elevationScale: {
88
- type: 'number',
89
- min: 0,
90
- value: 1
91
- },
92
- elevationScaleType: 'linear',
93
- onSetElevationDomain: nop,
94
- gridAggregator: _gridAggregator.pointToDensityGridDataCPU,
95
- cellSize: {
96
- type: 'number',
97
- min: 0,
98
- max: 1000,
99
- value: 1000
100
- },
101
- coverage: {
102
- type: 'number',
103
- min: 0,
104
- max: 1,
105
- value: 1
106
- },
107
- getPosition: {
108
- type: 'accessor',
109
- value: function value(x) {
110
- return x.position;
111
- }
112
- },
113
- extruded: false,
114
- material: true,
115
- _filterData: {
116
- type: 'function',
117
- value: null,
118
- optional: true
119
- }
120
- };
121
-
122
- var CPUGridLayer = function (_AggregationLayer) {
123
- (0, _inherits2.default)(CPUGridLayer, _AggregationLayer);
124
-
125
- var _super = _createSuper(CPUGridLayer);
126
-
127
- function CPUGridLayer() {
128
- var _this;
129
-
130
- (0, _classCallCheck2.default)(this, CPUGridLayer);
131
-
132
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
133
- args[_key] = arguments[_key];
134
- }
135
-
136
- _this = _super.call.apply(_super, [this].concat(args));
137
- _this.state = void 0;
138
- return _this;
139
- }
140
-
141
- var _proto = CPUGridLayer.prototype;
142
-
143
- _proto.initializeState = function initializeState() {
144
- var cpuAggregator = new _cpuAggregator.default({
145
- getAggregator: function getAggregator(props) {
146
- return props.gridAggregator;
147
- },
148
- getCellSize: function getCellSize(props) {
149
- return props.cellSize;
150
- }
151
- });
152
- this.state = {
153
- cpuAggregator: cpuAggregator,
154
- aggregatorState: cpuAggregator.state
155
- };
156
- var attributeManager = this.getAttributeManager();
157
- attributeManager.add({
158
- positions: {
159
- size: 3,
160
- type: 5130,
161
- accessor: 'getPosition'
162
- }
163
- });
164
- };
165
-
166
- _proto.updateState = function updateState(opts) {
167
- (0, _get2.default)((0, _getPrototypeOf2.default)(CPUGridLayer.prototype), "updateState", this).call(this, opts);
168
- this.setState({
169
- aggregatorState: this.state.cpuAggregator.updateState(opts, {
170
- viewport: this.context.viewport,
171
- attributes: this.getAttributes(),
172
- numInstances: this.getNumInstances()
173
- })
174
- });
175
- };
176
-
177
- _proto.getPickingInfo = function getPickingInfo(_ref) {
178
- var info = _ref.info;
179
- return this.state.cpuAggregator.getPickingInfo({
180
- info: info
181
- });
182
- };
183
-
184
- _proto._onGetSublayerColor = function _onGetSublayerColor(cell) {
185
- return this.state.cpuAggregator.getAccessor('fillColor')(cell);
186
- };
187
-
188
- _proto._onGetSublayerElevation = function _onGetSublayerElevation(cell) {
189
- return this.state.cpuAggregator.getAccessor('elevation')(cell);
190
- };
191
-
192
- _proto._getSublayerUpdateTriggers = function _getSublayerUpdateTriggers() {
193
- return this.state.cpuAggregator.getUpdateTriggers(this.props);
194
- };
195
-
196
- _proto.renderLayers = function renderLayers() {
197
- var _this$props = this.props,
198
- elevationScale = _this$props.elevationScale,
199
- extruded = _this$props.extruded,
200
- cellSize = _this$props.cellSize,
201
- coverage = _this$props.coverage,
202
- material = _this$props.material,
203
- transitions = _this$props.transitions;
204
- var cpuAggregator = this.state.cpuAggregator;
205
- var SubLayerClass = this.getSubLayerClass('grid-cell', _layers.GridCellLayer);
206
-
207
- var updateTriggers = this._getSublayerUpdateTriggers();
208
-
209
- return new SubLayerClass({
210
- cellSize: cellSize,
211
- coverage: coverage,
212
- material: material,
213
- elevationScale: elevationScale,
214
- extruded: extruded,
215
- getFillColor: this._onGetSublayerColor.bind(this),
216
- getElevation: this._onGetSublayerElevation.bind(this),
217
- transitions: transitions && {
218
- getFillColor: transitions.getColorValue || transitions.getColorWeight,
219
- getElevation: transitions.getElevationValue || transitions.getElevationWeight
220
- }
221
- }, this.getSubLayerProps({
222
- id: 'grid-cell',
223
- updateTriggers: updateTriggers
224
- }), {
225
- data: cpuAggregator.state.layerData.data
226
- });
227
- };
228
-
229
- return CPUGridLayer;
230
- }(_aggregationLayer.default);
231
-
232
- exports.default = CPUGridLayer;
233
- CPUGridLayer.layerName = 'CPUGridLayer';
234
- CPUGridLayer.defaultProps = defaultProps;
235
- //# sourceMappingURL=cpu-grid-layer.js.map