@@ -21,14 +21,14 @@ type LabelHitGeometry = {
2121 /** Per-label: labelWidth / 2 — half-extent for 0° and 90° hit bounds */
2222 halfWidths : number [ ] ;
2323
24- /** Per-label: rightUpperCorner.x = targetX + cornerAnchorDX[i] */
25- cornerAnchorDX : number [ ] ;
24+ /** rightUpperCorner.x = targetX + cornerAnchorDX */
25+ cornerAnchorDX : number ;
2626
27- /** Per-label: rightUpperCorner.y = labelY + cornerAnchorDY[i] */
28- cornerAnchorDY : number [ ] ;
27+ /** rightUpperCorner.y = labelY + cornerAnchorDY */
28+ cornerAnchorDY : number ;
2929
30- /** Per-label: yMin90 = labelY + yMin90Offsets[i] */
31- yMin90Offsets : number [ ] ;
30+ /** yMin90 = labelY + yMin90Offset */
31+ yMin90Offset : number ;
3232
3333 /** Per-label: yMax90 = labelY + yMax90Offsets[i] */
3434 yMax90Offsets : number [ ] ;
@@ -76,9 +76,9 @@ function useLabelHitTesting({fontMgr, fontSize, truncatedLabelWidths, labelRotat
7676 iconSin : variables . iconSizeExtraSmall * sinA ,
7777 labelSins : truncatedLabelWidths . map ( ( w ) => w * sinA ) ,
7878 halfWidths : truncatedLabelWidths . map ( ( w ) => w / 2 ) ,
79- cornerAnchorDX : truncatedLabelWidths . map ( ( ) => - iconThirdSin ) ,
80- cornerAnchorDY : truncatedLabelWidths . map ( ( ) => iconThirdSin ) ,
81- yMin90Offsets : truncatedLabelWidths . map ( ( ) => padding ) ,
79+ cornerAnchorDX : - iconThirdSin ,
80+ cornerAnchorDY : iconThirdSin ,
81+ yMin90Offset : padding ,
8282 yMax90Offsets : truncatedLabelWidths . map ( ( w ) => w + padding ) ,
8383 } ;
8484 }
@@ -94,17 +94,15 @@ function useLabelHitTesting({fontMgr, fontSize, truncatedLabelWidths, labelRotat
9494 return false ;
9595 }
9696
97- const { labelYOffset, iconSin, labelSins, halfWidths, cornerAnchorDX, cornerAnchorDY, yMin90Offsets , yMax90Offsets} = labelHitGeometry ;
97+ const { labelYOffset, iconSin, labelSins, halfWidths, cornerAnchorDX, cornerAnchorDY, yMin90Offset , yMax90Offsets} = labelHitGeometry ;
9898 const padding = variables . iconSizeExtraSmall / 2 ;
9999 const halfWidth = halfWidths . at ( activeIndex ) ?? 0 ;
100100 const labelY = args . chartBottom + labelYOffset ;
101101
102102 let corners45 : Array < { x : number ; y : number } > | undefined ;
103103 if ( angleRad > 0 && angleRad < DIAGONAL_ANGLE_RADIAN_THRESHOLD ) {
104104 const labelSin = labelSins . at ( activeIndex ) ?? 0 ;
105- const anchorDX = cornerAnchorDX . at ( activeIndex ) ?? 0 ;
106- const anchorDY = cornerAnchorDY . at ( activeIndex ) ?? 0 ;
107- const rightUpperCorner = { x : args . targetX + anchorDX , y : labelY + anchorDY } ;
105+ const rightUpperCorner = { x : args . targetX + cornerAnchorDX , y : labelY + cornerAnchorDY } ;
108106 const rightLowerCorner = { x : rightUpperCorner . x + iconSin , y : rightUpperCorner . y + iconSin } ;
109107 const leftUpperCorner = { x : rightUpperCorner . x - labelSin , y : rightUpperCorner . y + labelSin } ;
110108 const leftLowerCorner = { x : rightLowerCorner . x - labelSin , y : rightLowerCorner . y + labelSin } ;
@@ -120,7 +118,7 @@ function useLabelHitTesting({fontMgr, fontSize, truncatedLabelWidths, labelRotat
120118 halfWidth,
121119 padding,
122120 corners45,
123- yMin90 : labelY + ( yMin90Offsets . at ( activeIndex ) ?? 0 ) ,
121+ yMin90 : labelY + yMin90Offset ,
124122 yMax90 : labelY + ( yMax90Offsets . at ( activeIndex ) ?? 0 ) ,
125123 } ) ;
126124 } ;
0 commit comments