完善Pie饼图的交互动画效果

This commit is contained in:
monitor1394
2023-07-27 07:17:37 +08:00
parent 758d578ad2
commit 0c09d40654
7 changed files with 37 additions and 24 deletions

View File

@@ -27,7 +27,7 @@ namespace XCharts.Runtime
m_LastCheckContextFlag = needCheck;
serie.context.pointerItemDataIndex = -1;
serie.context.pointerEnter = false;
serie.interact.SetValue(ref needAnimation1, lineWidth, false);
serie.interact.SetValue(ref needAnimation1, lineWidth);
foreach (var serieData in serie.data)
{
var symbol = SerieHelper.GetSerieSymbol(serie, serieData);
@@ -53,7 +53,7 @@ namespace XCharts.Runtime
if (m_LegendEnter)
{
serie.context.pointerEnter = true;
serie.interact.SetValue(ref needInteract, lineWidth, true, serie.animation.interaction.GetWidth(lineWidth));
serie.interact.SetValue(ref needInteract, serie.animation.interaction.GetWidth(lineWidth));
for (int i = 0; i < serie.dataCount; i++)
{
var serieData = serie.data[i];

View File

@@ -27,7 +27,7 @@ namespace XCharts.Runtime
m_LastCheckContextFlag = needCheck;
serie.context.pointerItemDataIndex = -1;
serie.context.pointerEnter = false;
serie.interact.SetValue(ref needAnimation1, lineWidth, false);
serie.interact.SetValue(ref needAnimation1, lineWidth);
foreach (var serieData in serie.data)
{
var symbol = SerieHelper.GetSerieSymbol(serie, serieData);
@@ -53,7 +53,7 @@ namespace XCharts.Runtime
if (m_LegendEnter)
{
serie.context.pointerEnter = true;
serie.interact.SetValue(ref needInteract, lineWidth, true, serie.animation.interaction.GetWidth(lineWidth));
serie.interact.SetValue(ref needInteract, serie.animation.interaction.GetWidth(lineWidth));
for (int i = 0; i < serie.dataCount; i++)
{
var serieData = serie.data[i];

View File

@@ -61,7 +61,7 @@ namespace XCharts.Runtime
if (m_LegendEnter)
{
serie.context.pointerEnter = true;
serie.interact.SetValue(ref needInteract, lineWidth, true, serie.animation.interaction.GetWidth(lineWidth));
serie.interact.SetValue(ref needInteract, serie.animation.interaction.GetWidth(lineWidth));
for (int i = 0; i < serie.dataCount; i++)
{
var serieData = serie.data[i];
@@ -73,7 +73,7 @@ namespace XCharts.Runtime
else if (serie.context.isTriggerByAxis)
{
serie.context.pointerEnter = false;
serie.interact.SetValue(ref needInteract, lineWidth, true, serie.animation.interaction.GetWidth(lineWidth));
serie.interact.SetValue(ref needInteract, serie.animation.interaction.GetWidth(lineWidth));
for (int i = 0; i < serie.dataCount; i++)
{
var serieData = serie.data[i];
@@ -116,7 +116,7 @@ namespace XCharts.Runtime
needInteract = true;
}
if (serie.context.pointerItemDataIndex >= 0)
serie.interact.SetValue(ref needInteract, lineWidth, true, serie.animation.interaction.GetWidth(lineWidth));
serie.interact.SetValue(ref needInteract, serie.animation.interaction.GetWidth(lineWidth));
else
serie.interact.SetValue(ref needInteract, lineWidth);
}

View File

@@ -27,7 +27,7 @@ namespace XCharts.Runtime
m_LastCheckContextFlag = needCheck;
serie.context.pointerItemDataIndex = -1;
serie.context.pointerEnter = false;
serie.interact.SetValue(ref needAnimation1, lineWidth, false);
serie.interact.SetValue(ref needAnimation1, lineWidth);
foreach (var serieData in serie.data)
{
var symbol = SerieHelper.GetSerieSymbol(serie, serieData);
@@ -53,7 +53,7 @@ namespace XCharts.Runtime
if (m_LegendEnter)
{
serie.context.pointerEnter = true;
serie.interact.SetValue(ref needInteract, lineWidth, true, serie.animation.interaction.GetWidth(lineWidth));
serie.interact.SetValue(ref needInteract, serie.animation.interaction.GetWidth(lineWidth));
for (int i = 0; i < serie.dataCount; i++)
{
var serieData = serie.data[i];

View File

@@ -46,7 +46,7 @@ namespace XCharts.Runtime
m_LastCheckContextFlag = needCheck;
serie.context.pointerItemDataIndex = -1;
serie.context.pointerEnter = false;
serie.interact.SetValue(ref needAnimation1, lineWidth, false);
serie.interact.SetValue(ref needAnimation1, lineWidth);
foreach (var serieData in serie.data)
{
var symbol = SerieHelper.GetSerieSymbol(serie, serieData);
@@ -72,7 +72,7 @@ namespace XCharts.Runtime
if (m_LegendEnter)
{
serie.context.pointerEnter = true;
serie.interact.SetValue(ref needInteract, lineWidth, true, serie.animation.interaction.GetWidth(lineWidth));
serie.interact.SetValue(ref needInteract, serie.animation.interaction.GetWidth(lineWidth));
for (int i = 0; i < serie.dataCount; i++)
{
var serieData = serie.data[i];
@@ -84,7 +84,7 @@ namespace XCharts.Runtime
else if (serie.context.isTriggerByAxis)
{
serie.context.pointerEnter = true;
serie.interact.SetValue(ref needInteract, lineWidth, true, serie.animation.interaction.GetWidth(lineWidth));
serie.interact.SetValue(ref needInteract, serie.animation.interaction.GetWidth(lineWidth));
for (int i = 0; i < serie.dataCount; i++)
{
var serieData = serie.data[i];
@@ -119,7 +119,7 @@ namespace XCharts.Runtime
{
serie.context.pointerEnter = true;
serie.context.pointerItemDataIndex = serieData.index;
serie.interact.SetValue(ref needInteract, lineWidth, true);
serie.interact.SetValue(ref needInteract, serie.animation.interaction.GetWidth(lineWidth));
}
}
if (lastIndex != serie.context.pointerItemDataIndex)

View File

@@ -127,7 +127,7 @@ namespace XCharts.Runtime
if (m_LegendEnter)
{
serieData.context.highlight = true;
serieData.interact.SetValue(ref needInteract, symbolSize, serieData.context.highlight);
serieData.interact.SetValue(ref needInteract, serie.animation.interaction.GetRadius(symbolSize));
}
else
{
@@ -164,7 +164,10 @@ namespace XCharts.Runtime
}
}
}
serieData.interact.SetValue(ref needInteract, symbolSize, serieData.context.highlight);
if (serieData.context.highlight)
serieData.interact.SetValue(ref needInteract, serie.animation.interaction.GetRadius(symbolSize));
else
serieData.interact.SetValue(ref needInteract, symbolSize);
}
}
break;