MCPcopy Create free account
hub / github.com/ChartGPU/ChartGPU / resolveRadiiCss

Function resolveRadiiCss

src/renderers/createPieRenderer.ts:103–121  ·  view source on GitHub ↗
(
  radius: PieRadius | undefined,
  maxRadiusCss: number
)

Source from the content-addressed store, hash-verified

101): radius is readonly [inner: number | string, outer: number | string] => Array.isArray(radius);
102
103const resolveRadiiCss = (
104 radius: PieRadius | undefined,
105 maxRadiusCss: number
106): { readonly inner: number; readonly outer: number } => {
107 // Default similar to common chart libs.
108 if (radius == null) return { inner: 0, outer: maxRadiusCss * 0.7 };
109
110 if (isRadiusTuple(radius)) {
111 const inner = parseNumberOrPercent(radius[0], maxRadiusCss);
112 const outer = parseNumberOrPercent(radius[1], maxRadiusCss);
113 const innerCss = Math.max(0, Number.isFinite(inner) ? inner! : 0);
114 const outerCss = Math.max(innerCss, Number.isFinite(outer) ? outer! : maxRadiusCss * 0.7);
115 return { inner: innerCss, outer: Math.min(maxRadiusCss, outerCss) };
116 }
117
118 const outer = parseNumberOrPercent(radius, maxRadiusCss);
119 const outerCss = Math.max(0, Number.isFinite(outer) ? outer! : maxRadiusCss * 0.7);
120 return { inner: 0, outer: Math.min(maxRadiusCss, outerCss) };
121};
122
123const computePlotScissorDevicePx = (
124 gridArea: GridArea

Callers 1

prepareFunction · 0.85

Calls 2

isRadiusTupleFunction · 0.85
parseNumberOrPercentFunction · 0.70

Tested by

no test coverage detected