mirror of
https://github.com/XCharts-Team/XCharts.git
synced 2026-05-18 22:40:10 +00:00
增加RadarChart、ScatterChart和HeatmapChart的起始动画效果
This commit is contained in:
@@ -206,10 +206,12 @@ namespace XCharts
|
||||
int indicatorNum = radar.indicatorList.Count;
|
||||
var angle = 2 * Mathf.PI / indicatorNum;
|
||||
Vector3 p = radar.centerPos;
|
||||
serie.animation.InitProgress(1,0,1);
|
||||
if (!IsActive(i))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
var rate = serie.animation.GetCurrRate();
|
||||
for (int j = 0; j < serie.data.Count; j++)
|
||||
{
|
||||
var serieData = serie.data[j];
|
||||
@@ -263,6 +265,7 @@ namespace XCharts
|
||||
var radius = max < 0 ? radar.actualRadius - radar.actualRadius * value / max
|
||||
: radar.actualRadius * value / max;
|
||||
var currAngle = n * angle;
|
||||
radius *= rate;
|
||||
if (n == 0)
|
||||
{
|
||||
startPoint = new Vector3(p.x + radius * Mathf.Sin(currAngle),
|
||||
@@ -304,6 +307,13 @@ namespace XCharts
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!serie.animation.IsFinish())
|
||||
{
|
||||
float duration = serie.animation.duration > 0 ? (float)serie.animation.duration / 1000 : 1;
|
||||
float speed = 1 / duration;
|
||||
serie.animation.CheckProgress(Time.deltaTime * speed);
|
||||
RefreshChart();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user