Files
XCharts/Runtime/Serie/SerieContext.cs

114 lines
3.3 KiB
C#
Raw Normal View History

2021-11-23 13:20:07 +08:00
using System.Collections.Generic;
2021-12-08 08:31:32 +08:00
using UnityEngine;
2021-11-23 13:20:07 +08:00
2022-02-19 22:37:57 +08:00
namespace XCharts.Runtime
2021-11-23 13:20:07 +08:00
{
2021-12-08 08:31:32 +08:00
public struct PointInfo
{
public Vector3 position;
public bool isIgnoreBreak;
public PointInfo(Vector3 pos, bool ignore)
{
this.position = pos;
this.isIgnoreBreak = ignore;
}
}
2022-03-31 21:54:34 +08:00
2021-11-23 13:20:07 +08:00
public class SerieContext
{
/// <summary>
/// 鼠标是否进入serie
/// </summary>
public bool pointerEnter;
/// <summary>
/// 鼠标当前指示的数据项索引(单个)
/// </summary>
public int pointerItemDataIndex = -1;
/// <summary>
/// 鼠标所在轴线上的数据项索引(可能有多个)
/// </summary>
public List<int> pointerAxisDataIndexs = new List<int>();
2021-12-23 13:23:18 +08:00
public bool isTriggerByAxis = false;
public int dataZoomStartIndex = 0;
2022-03-31 21:54:34 +08:00
2021-12-08 13:36:02 +08:00
/// <summary>
/// 中心点
/// </summary>
2022-03-31 21:54:34 +08:00
public Vector3 center;
2021-12-08 13:36:02 +08:00
/// <summary>
/// 线段终点
/// </summary>
public Vector3 lineEndPostion;
public double lineEndValue;
/// <summary>
2021-12-08 13:36:02 +08:00
/// 内半径
/// </summary>
2022-03-31 21:54:34 +08:00
public float insideRadius;
2021-12-08 13:36:02 +08:00
/// <summary>
/// 外半径
/// </summary>
2022-03-31 21:54:34 +08:00
public float outsideRadius;
2022-04-07 08:35:03 +08:00
public float startAngle;
2021-12-08 13:36:02 +08:00
/// <summary>
/// 最大值
/// </summary>
2022-03-31 21:54:34 +08:00
public double dataMax;
2021-12-08 13:36:02 +08:00
/// <summary>
/// 最小值
/// </summary>
2022-03-31 21:54:34 +08:00
public double dataMin;
public double checkValue;
2021-12-08 13:36:02 +08:00
/// <summary>
/// 左下角坐标X
/// </summary>
2022-03-31 21:54:34 +08:00
public float x;
2021-12-08 13:36:02 +08:00
/// <summary>
/// 左下角坐标Y
/// </summary>
2022-03-31 21:54:34 +08:00
public float y;
2021-12-08 13:36:02 +08:00
/// <summary>
/// 宽
/// </summary>
2022-03-31 21:54:34 +08:00
public float width;
2021-12-08 13:36:02 +08:00
/// <summary>
/// 高
/// </summary>
2022-03-31 21:54:34 +08:00
public float height;
2021-12-08 13:36:02 +08:00
/// <summary>
/// 矩形区域
/// </summary>
2022-03-31 21:54:34 +08:00
public Rect rect;
2021-12-08 13:36:02 +08:00
/// <summary>
/// 绘制顶点数
/// </summary>
2022-03-31 21:54:34 +08:00
public int vertCount;
2021-12-08 13:36:02 +08:00
/// <summary>
/// theme的颜色索引
/// </summary>
public int colorIndex;
/// <summary>
2021-12-08 13:36:02 +08:00
/// 数据对应的位置坐标。
/// </summary>
public List<Vector3> dataPoints = new List<Vector3>();
/// <summary>
/// 数据对应的位置坐标是否忽略忽略时连线是透明的dataIgnore 和 dataPoints 一一对应。
/// </summary>
2021-12-23 13:23:18 +08:00
public List<bool> dataIgnores = new List<bool>();
2021-12-08 13:36:02 +08:00
/// <summary>
/// 数据对应的index索引。dataIndexs 和 dataPoints 一一对应。
/// </summary>
public List<int> dataIndexs = new List<int>();
/// <summary>
2021-12-08 13:36:02 +08:00
/// 排序后的数据
/// </summary>
public List<SerieData> sortedData = new List<SerieData>();
2022-03-04 22:17:32 +08:00
public List<SerieData> rootData = new List<SerieData>();
2021-12-08 13:36:02 +08:00
/// <summary>
/// 绘制点
/// </summary>
2022-02-12 20:10:29 +08:00
public List<PointInfo> drawPoints = new List<PointInfo>();
2021-12-19 20:53:55 +08:00
public SerieParams param = new SerieParams();
2022-05-22 22:17:38 +08:00
public ChartLabel titleObject { get; set; }
2021-11-23 13:20:07 +08:00
}
}