修复Pie有0数据时Label的位置异常的问题

This commit is contained in:
monitor1394
2023-10-21 22:08:03 +08:00
parent 985f70c3c9
commit 573f9efcaf
2 changed files with 8 additions and 5 deletions

View File

@@ -69,6 +69,7 @@ slug: /changelog
## master
* (2023.10.21) 修复`Pie`有0数据时`Label`的位置异常的问题
* (2023.10.21) 增加`Axis`的对数轴支持子刻度
* (2023.10.19) 修复`Pie`设置玫瑰图时引导线异常的问题
* (2023.10.15) 修复`Line`设置`Animation``AlongPath`时动画异常的问题 (#281)

View File

@@ -46,9 +46,9 @@ namespace XCharts.Runtime
if (labelLine != null && labelLine.show && serieData.labelObject != null)
{
var currAngle = serieData.context.halfAngle - serie.context.startAngle;
var isRight = currAngle % 360 < 180;
var isLeft = currAngle > 180 || (currAngle == 0 && serieData.context.startAngle > 0);
var textOffset = serieData.labelObject.text.GetPreferredWidth() / 2;
return serieData.context.labelPosition + (isRight ? Vector3.right : Vector3.left) * textOffset;
return serieData.context.labelPosition + (isLeft ? Vector3.left : Vector3.right) * textOffset;
}
else
{
@@ -62,9 +62,11 @@ namespace XCharts.Runtime
if (label.autoOffset)
{
var currAngle = serieData.context.halfAngle - serie.context.startAngle;
var isRight = currAngle % 360 < 180;
if (isRight) return offset;
else return new Vector3(-offset.x, offset.y, offset.z);
var isLeft = currAngle > 180 || (currAngle == 0 && serieData.context.startAngle > 0);
if (isLeft)
return new Vector3(-offset.x, offset.y, offset.z);
else
return offset;
}
else
{