增加GridCoord3D3D坐标系

This commit is contained in:
monitor1394
2024-04-22 22:25:12 +08:00
parent e2120b3da6
commit 120c6d5408
55 changed files with 2062 additions and 51 deletions

View File

@@ -285,7 +285,7 @@ namespace XCharts.Runtime
maxCount -= serie.context.dataZoomStartIndexOffset;
var scaleWid = AxisHelper.GetDataWidth(axis, axisLength, maxCount, dataZoom);
var scaleRelativedWid = AxisHelper.GetDataWidth(relativedAxis, axisRelativedLength, maxCount, dataZoom);
int rate = LineHelper.GetDataAverageRate(serie, m_SerieGrid, maxCount, false);
int rate = LineHelper.GetDataAverageRate(serie, axisLength, maxCount, false);
var totalAverage = serie.sampleAverage > 0 ?
serie.sampleAverage :
DataHelper.DataAverage(ref showData, serie.sampleType, serie.minShow, maxCount, rate);

View File

@@ -5,17 +5,16 @@ using XUGL;
namespace XCharts.Runtime
{
internal static class LineHelper
public static class LineHelper
{
private static List<Vector3> s_CurvesPosList = new List<Vector3>();
public static int GetDataAverageRate(Serie serie, GridCoord grid, int maxCount, bool isYAxis)
public static int GetDataAverageRate(Serie serie, float axisLength, int maxCount, bool isYAxis)
{
var sampleDist = serie.sampleDist;
var rate = 0;
var width = isYAxis ? grid.context.height : grid.context.width;
if (sampleDist > 0)
rate = (int)((maxCount - serie.minShow) / (width / sampleDist));
rate = (int)((maxCount - serie.minShow) / (axisLength / sampleDist));
if (rate < 1)
rate = 1;
return rate;

View File

@@ -169,7 +169,7 @@ namespace XCharts.Runtime
var scaleWid = AxisHelper.GetDataWidth(axis, axisLength, maxCount, dataZoom);
var scaleRelativedWid = AxisHelper.GetDataWidth(relativedAxis, axisRelativedLength, maxCount, dataZoom);
int rate = LineHelper.GetDataAverageRate(serie, m_SerieGrid, maxCount, false);
int rate = LineHelper.GetDataAverageRate(serie, axisLength, maxCount, false);
var totalAverage = serie.sampleAverage > 0 ?
serie.sampleAverage :
DataHelper.DataAverage(ref showData, serie.sampleType, serie.minShow, maxCount, rate);