{"version":3,"sources":["node_modules/@arcgis/core/renderers/support/heatmapUtils.js"],"sourcesContent":["/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.28/esri/copyright.txt for details.\n*/\nimport { clamp as t } from \"../../core/mathUtils.js\";\nimport { px2pt as r, pt2px as n } from \"../../core/screenUtils.js\";\nimport { l as o } from \"../../chunks/vec4.js\";\nimport { c as e } from \"../../chunks/vec4f64.js\";\nconst a = 2.4;\nfunction i(t) {\n return r(t * a);\n}\nfunction c(t) {\n return n(t) / a;\n}\nfunction f(r, n, e, a) {\n let {\n color: i,\n ratio: c\n } = n,\n {\n color: f,\n ratio: u\n } = e;\n if (u === c) {\n const t = 1e-6;\n 1 === u ? c -= t : u += t;\n }\n const s = t((a - c) / (u - c), 0, 1);\n o(r, i.toArray(), f.toArray(), s);\n}\nfunction u(t) {\n const r = 512,\n n = new Uint8ClampedArray(4 * r);\n if (t = t.filter(({\n ratio: t\n }) => t >= 0 && t <= 1).sort((t, r) => t.ratio - r.ratio).map(({\n color: t,\n ratio: r\n }) => ({\n color: t,\n ratio: Math.max(r, .001)\n })), t.length < 1) return n;\n let o = t[0],\n a = t[0],\n i = 1;\n const c = e();\n for (let e = 0; e < r; e++) {\n const u = (e + .5) / r;\n for (; u > a.ratio && i < t.length;) o = a, a = t[i++];\n f(c, o, a, u), n.set(c, 4 * e);\n }\n return n;\n}\nfunction s(t, r, o, e) {\n const {\n radius: a,\n fieldOffset: i,\n field: c\n } = r,\n f = Math.round(n(a)),\n u = new Float64Array(o * e);\n let s,\n l = Number.NEGATIVE_INFINITY;\n const h = d(c, i),\n y = new Set();\n for (const n of t) {\n const t = n.getCursor();\n for (; t.next();) {\n const r = t.getObjectId();\n if (y.has(r)) continue;\n y.add(r);\n const n = t.readLegacyPointGeometry(),\n a = 128;\n if (n.x < -a || n.x >= o + a || n.y < -a || n.y > e + a) continue;\n const i = +h(t),\n c = Math.max(0, Math.round(n.x) - f),\n d = Math.max(0, Math.round(n.y) - f),\n g = Math.min(e, Math.round(n.y) + f),\n A = Math.min(o, Math.round(n.x) + f);\n for (let t = d; t < g; t++) for (let r = c; r < A; r++) {\n const e = t * o + r,\n a = m(n.x - r, n.y - t, f);\n s = u[e] += a * i, s > l && (l = s);\n }\n }\n }\n return {\n matrix: u.buffer,\n max: l\n };\n}\nfunction l(t, r, n, o, e, a) {\n t.canvas.width = t.canvas.height = r, t.clearRect(0, 0, r, r);\n const i = t.getImageData(0, 0, r, r);\n n && o && i.data.set(new Uint8ClampedArray(h(r, n, o, e, a))), t.putImageData(i, 0, 0);\n}\nfunction h(r, n, o, e, a) {\n const i = new Uint32Array(r * r),\n c = \"buffer\" in n ? n : new Float64Array(n),\n f = \"buffer\" in o ? new Uint32Array(o.buffer) : new Uint32Array(new Uint8Array(o).buffer),\n u = f.length / (a - e);\n for (let s = 0; s < c.length; s++) {\n const r = c[s],\n n = Math.floor((r - e) * u);\n i[s] = f[t(n, 0, f.length - 1)];\n }\n return i.buffer;\n}\nfunction m(t, r, n) {\n const o = Math.sqrt(t ** 2 + r ** 2) / n;\n return o > 1 ? 0 : 3 / (Math.PI * n ** 2) * (1 - o ** 2) ** 2;\n}\nfunction y(t, r) {\n return \"function\" == typeof t ? t : t ? \"string\" == typeof r ? r => -1 * +r[t] : n => +n[t] + r : () => 1;\n}\nfunction d(t, r) {\n return null != t ? \"string\" == typeof r ? r => -1 * +r.readAttribute(t) : n => +n.readAttribute(t) + r : t => 1;\n}\nexport { s as calculateHeatmapIntensityInfoReaders, h as createHeatmapImageData, y as createValueFunction, d as createValueFunctionCursor, l as drawHeatmap, m as evaluateDensityKernel, i as gaussianBlurRadiusPxToKernelDensityRadiusPt, u as generateGradient, c as kernelDensityRadiusPtToGaussianBlurRadiusPx, a as magicKernelDensityRadiusInflationFactor };"],"mappings":"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","names":["i","n","e","a","c","f","u","s","t","r","l","h","y","d"],"x_google_ignoreList":[0]}