1 | import { c as H, p as sn } from "./constant-2fe7eae5.js";
|
2 | import { aD as en, aE as y, S as ln, aF as M, aG as D, aH as z, aI as b, aJ as an, aK as rn, aL as t, aM as un, aN as on, aO as tn } from "./mermaid-9357f3d0.js";
|
3 | function fn(l) {
|
4 | return l.innerRadius;
|
5 | }
|
6 | function cn(l) {
|
7 | return l.outerRadius;
|
8 | }
|
9 | function yn(l) {
|
10 | return l.startAngle;
|
11 | }
|
12 | function gn(l) {
|
13 | return l.endAngle;
|
14 | }
|
15 | function mn(l) {
|
16 | return l && l.padAngle;
|
17 | }
|
18 | function pn(l, x, O, E, h, v, J, a) {
|
19 | var s = O - l, n = E - x, m = J - h, i = a - v, r = i * s - m * n;
|
20 | if (!(r * r < y))
|
21 | return r = (m * (x - v) - i * (l - h)) / r, [l + r * s, x + r * n];
|
22 | }
|
23 | function V(l, x, O, E, h, v, J) {
|
24 | var a = l - O, s = x - E, n = (J ? v : -v) / z(a * a + s * s), m = n * s, i = -n * a, r = l + m, f = x + i, c = O + m, S = E + i, o = (r + c) / 2, q = (f + S) / 2, p = c - r, g = S - f, A = p * p + g * g, w = h - v, P = r * S - c * f, F = (g < 0 ? -1 : 1) * z(tn(0, w * w * A - P * P)), G = (P * g - p * F) / A, d = (-P * p - g * F) / A, R = (P * g + p * F) / A, T = (-P * p + g * F) / A, e = G - o, u = d - q, K = R - o, L = T - q;
|
25 | return e * e + u * u > K * K + L * L && (G = R, d = T), {
|
26 | cx: G,
|
27 | cy: d,
|
28 | x01: -m,
|
29 | y01: -i,
|
30 | x11: G * (h / w - 1),
|
31 | y11: d * (h / w - 1)
|
32 | };
|
33 | }
|
34 | function hn() {
|
35 | var l = fn, x = cn, O = H(0), E = null, h = yn, v = gn, J = mn, a = null;
|
36 | function s() {
|
37 | var n, m, i = +l.apply(this, arguments), r = +x.apply(this, arguments), f = h.apply(this, arguments) - en, c = v.apply(this, arguments) - en, S = an(c - f), o = c > f;
|
38 | if (a || (a = n = sn()), r < i && (m = r, r = i, i = m), !(r > y))
|
39 | a.moveTo(0, 0);
|
40 | else if (S > ln - y)
|
41 | a.moveTo(r * M(f), r * D(f)), a.arc(0, 0, r, f, c, !o), i > y && (a.moveTo(i * M(c), i * D(c)), a.arc(0, 0, i, c, f, o));
|
42 | else {
|
43 | var q = f, p = c, g = f, A = c, w = S, P = S, F = J.apply(this, arguments) / 2, G = F > y && (E ? +E.apply(this, arguments) : z(i * i + r * r)), d = b(an(r - i) / 2, +O.apply(this, arguments)), R = d, T = d, e, u;
|
44 | if (G > y) {
|
45 | var K = un(G / i * D(F)), L = un(G / r * D(F));
|
46 | (w -= K * 2) > y ? (K *= o ? 1 : -1, g += K, A -= K) : (w = 0, g = A = (f + c) / 2), (P -= L * 2) > y ? (L *= o ? 1 : -1, q += L, p -= L) : (P = 0, q = p = (f + c) / 2);
|
47 | }
|
48 | var N = r * M(q), j = r * D(q), B = i * M(A), C = i * D(A);
|
49 | if (d > y) {
|
50 | var Q = r * M(p), U = r * D(p), W = i * M(g), X = i * D(g), I;
|
51 | if (S < rn && (I = pn(N, j, W, X, Q, U, B, C))) {
|
52 | var Y = N - I[0], Z = j - I[1], $ = Q - I[0], k = U - I[1], _ = 1 / D(on((Y * $ + Z * k) / (z(Y * Y + Z * Z) * z($ * $ + k * k))) / 2), nn = z(I[0] * I[0] + I[1] * I[1]);
|
53 | R = b(d, (i - nn) / (_ - 1)), T = b(d, (r - nn) / (_ + 1));
|
54 | }
|
55 | }
|
56 | P > y ? T > y ? (e = V(W, X, N, j, r, T, o), u = V(Q, U, B, C, r, T, o), a.moveTo(e.cx + e.x01, e.cy + e.y01), T < d ? a.arc(e.cx, e.cy, T, t(e.y01, e.x01), t(u.y01, u.x01), !o) : (a.arc(e.cx, e.cy, T, t(e.y01, e.x01), t(e.y11, e.x11), !o), a.arc(0, 0, r, t(e.cy + e.y11, e.cx + e.x11), t(u.cy + u.y11, u.cx + u.x11), !o), a.arc(u.cx, u.cy, T, t(u.y11, u.x11), t(u.y01, u.x01), !o))) : (a.moveTo(N, j), a.arc(0, 0, r, q, p, !o)) : a.moveTo(N, j), !(i > y) || !(w > y) ? a.lineTo(B, C) : R > y ? (e = V(B, C, Q, U, i, -R, o), u = V(N, j, W, X, i, -R, o), a.lineTo(e.cx + e.x01, e.cy + e.y01), R < d ? a.arc(e.cx, e.cy, R, t(e.y01, e.x01), t(u.y01, u.x01), !o) : (a.arc(e.cx, e.cy, R, t(e.y01, e.x01), t(e.y11, e.x11), !o), a.arc(0, 0, i, t(e.cy + e.y11, e.cx + e.x11), t(u.cy + u.y11, u.cx + u.x11), o), a.arc(u.cx, u.cy, R, t(u.y11, u.x11), t(u.y01, u.x01), !o))) : a.arc(0, 0, i, A, g, o);
|
57 | }
|
58 | if (a.closePath(), n)
|
59 | return a = null, n + "" || null;
|
60 | }
|
61 | return s.centroid = function() {
|
62 | var n = (+l.apply(this, arguments) + +x.apply(this, arguments)) / 2, m = (+h.apply(this, arguments) + +v.apply(this, arguments)) / 2 - rn / 2;
|
63 | return [M(m) * n, D(m) * n];
|
64 | }, s.innerRadius = function(n) {
|
65 | return arguments.length ? (l = typeof n == "function" ? n : H(+n), s) : l;
|
66 | }, s.outerRadius = function(n) {
|
67 | return arguments.length ? (x = typeof n == "function" ? n : H(+n), s) : x;
|
68 | }, s.cornerRadius = function(n) {
|
69 | return arguments.length ? (O = typeof n == "function" ? n : H(+n), s) : O;
|
70 | }, s.padRadius = function(n) {
|
71 | return arguments.length ? (E = n == null ? null : typeof n == "function" ? n : H(+n), s) : E;
|
72 | }, s.startAngle = function(n) {
|
73 | return arguments.length ? (h = typeof n == "function" ? n : H(+n), s) : h;
|
74 | }, s.endAngle = function(n) {
|
75 | return arguments.length ? (v = typeof n == "function" ? n : H(+n), s) : v;
|
76 | }, s.padAngle = function(n) {
|
77 | return arguments.length ? (J = typeof n == "function" ? n : H(+n), s) : J;
|
78 | }, s.context = function(n) {
|
79 | return arguments.length ? (a = n ?? null, s) : a;
|
80 | }, s;
|
81 | }
|
82 | export {
|
83 | hn as d
|
84 | };
|