mirror of
https://github.com/XCharts-Team/XCharts.git
synced 2026-05-20 07:20:08 +00:00
修复Scatter散点图渐出动画异常的问题
This commit is contained in:
@@ -309,14 +309,20 @@ namespace XCharts.Runtime
|
||||
|
||||
internal float CheckItemProgress(int dataIndex, float destProgress, ref bool isEnd, float startProgress, bool m_UnscaledTime)
|
||||
{
|
||||
if (m_Reverse)
|
||||
{
|
||||
var temp = startProgress;
|
||||
startProgress = destProgress;
|
||||
destProgress = temp;
|
||||
}
|
||||
var currHig = GetDataCurrProgress(dataIndex, startProgress, destProgress, ref isEnd);
|
||||
if (IsFinish())
|
||||
{
|
||||
return reverse ? startProgress : destProgress;
|
||||
return destProgress;
|
||||
}
|
||||
else if (IsInDelay() || IsInIndexDelay(dataIndex))
|
||||
{
|
||||
return reverse ? destProgress : startProgress;
|
||||
return startProgress;
|
||||
}
|
||||
else if (context.pause)
|
||||
{
|
||||
@@ -326,7 +332,7 @@ namespace XCharts.Runtime
|
||||
{
|
||||
var duration = GetCurrAnimationDuration(dataIndex);
|
||||
var delta = (destProgress - startProgress) / duration * (m_UnscaledTime ? Time.unscaledDeltaTime : Time.deltaTime);
|
||||
currHig = currHig + (reverse ? -delta : delta);
|
||||
currHig += delta;
|
||||
if (reverse)
|
||||
{
|
||||
if ((destProgress > 0 && currHig <= 0) || (destProgress < 0 && currHig >= 0))
|
||||
|
||||
@@ -350,13 +350,9 @@ namespace XCharts.Runtime
|
||||
#endif
|
||||
if (!m_Enable)
|
||||
return true;
|
||||
foreach (var animation in animations)
|
||||
{
|
||||
if (animation.context.start && animation.context.end)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
var animation = activedAnimation;
|
||||
if (animation != null && animation.context.end)
|
||||
return true;
|
||||
if (IsSerieAnimation())
|
||||
{
|
||||
if (m_FadeOut.context.start) return m_FadeOut.context.currProgress <= m_FadeOut.context.destProgress;
|
||||
@@ -365,7 +361,8 @@ namespace XCharts.Runtime
|
||||
}
|
||||
else if (IsDataAnimation())
|
||||
{
|
||||
return false;
|
||||
if (animation == null) return true;
|
||||
else return animation.context.end;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
@@ -462,7 +459,11 @@ namespace XCharts.Runtime
|
||||
{
|
||||
isEnd = false;
|
||||
var anim = activedAnimation;
|
||||
if (anim == null) return destProgress;
|
||||
if (anim == null)
|
||||
{
|
||||
isEnd = true;
|
||||
return destProgress;
|
||||
}
|
||||
return anim.CheckItemProgress(dataIndex, destProgress, ref isEnd, startProgress, m_UnscaledTime);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user