2019-10-22 04:09:04 +08:00
|
|
|
/******************************************/
|
|
|
|
|
/* */
|
|
|
|
|
/* Copyright (c) 2018 monitor1394 */
|
|
|
|
|
/* https://github.com/monitor1394 */
|
|
|
|
|
/* */
|
|
|
|
|
/******************************************/
|
|
|
|
|
|
2019-07-13 16:38:38 +08:00
|
|
|
using UnityEngine;
|
|
|
|
|
|
|
|
|
|
namespace XCharts
|
|
|
|
|
{
|
2019-08-01 23:49:30 +08:00
|
|
|
/// <summary>
|
|
|
|
|
/// Settings related to axis line.
|
|
|
|
|
/// 坐标轴的分隔线。
|
|
|
|
|
/// </summary>
|
2020-03-05 20:25:19 +08:00
|
|
|
[System.Serializable]
|
2019-10-14 18:13:08 +08:00
|
|
|
public class AxisLine : SubComponent
|
2019-07-13 16:38:38 +08:00
|
|
|
{
|
|
|
|
|
[SerializeField] private bool m_Show;
|
2019-07-14 14:34:18 +08:00
|
|
|
[SerializeField] private bool m_OnZero;
|
2019-08-01 23:49:30 +08:00
|
|
|
[SerializeField] private float m_Width = 0.6f;
|
2019-07-13 16:38:38 +08:00
|
|
|
[SerializeField] private bool m_Symbol;
|
|
|
|
|
[SerializeField] private float m_SymbolWidth;
|
|
|
|
|
[SerializeField] private float m_SymbolHeight;
|
|
|
|
|
[SerializeField] private float m_SymbolOffset;
|
|
|
|
|
[SerializeField] private float m_SymbolDent;
|
|
|
|
|
|
2019-08-01 23:49:30 +08:00
|
|
|
/// <summary>
|
|
|
|
|
/// Set this to false to prevent the axis line from showing.
|
|
|
|
|
/// 是否显示坐标轴轴线。
|
|
|
|
|
/// </summary>
|
2020-03-05 20:25:19 +08:00
|
|
|
public bool show
|
|
|
|
|
{
|
|
|
|
|
get { return m_Show; }
|
|
|
|
|
set { if (PropertyUtility.SetStruct(ref m_Show, value)) SetVerticesDirty(); }
|
|
|
|
|
}
|
2019-08-01 23:49:30 +08:00
|
|
|
/// <summary>
|
|
|
|
|
/// When mutiple axes exists, this option can be used to specify which axis can be "onZero" to.
|
|
|
|
|
/// X 轴或者 Y 轴的轴线是否在另一个轴的 0 刻度上,只有在另一个轴为数值轴且包含 0 刻度时有效。
|
|
|
|
|
/// </summary>
|
2020-03-05 20:25:19 +08:00
|
|
|
public bool onZero
|
|
|
|
|
{
|
|
|
|
|
get { return m_OnZero; }
|
|
|
|
|
set { if (PropertyUtility.SetStruct(ref m_Show, value)) SetVerticesDirty(); }
|
|
|
|
|
}
|
2019-08-01 23:49:30 +08:00
|
|
|
/// <summary>
|
|
|
|
|
/// line style line width.
|
|
|
|
|
/// 坐标轴线线宽。
|
|
|
|
|
/// </summary>
|
2020-03-05 20:25:19 +08:00
|
|
|
public float width
|
|
|
|
|
{
|
|
|
|
|
get { return m_Width; }
|
|
|
|
|
set { if (PropertyUtility.SetStruct(ref m_Width, value)) SetVerticesDirty(); }
|
|
|
|
|
}
|
2019-08-01 23:49:30 +08:00
|
|
|
/// <summary>
|
|
|
|
|
/// Whether to show the arrow symbol of axis.
|
|
|
|
|
/// 是否显示箭头。
|
|
|
|
|
/// </summary>
|
2020-03-05 20:25:19 +08:00
|
|
|
public bool symbol
|
|
|
|
|
{
|
|
|
|
|
get { return m_Symbol; }
|
|
|
|
|
set { if (PropertyUtility.SetStruct(ref m_Symbol, value)) SetVerticesDirty(); }
|
|
|
|
|
}
|
2019-08-01 23:49:30 +08:00
|
|
|
/// <summary>
|
|
|
|
|
/// the width of arrow symbol.
|
|
|
|
|
/// 箭头宽。
|
|
|
|
|
/// </summary>
|
2020-03-05 20:25:19 +08:00
|
|
|
public float symbolWidth
|
|
|
|
|
{
|
|
|
|
|
get { return m_SymbolWidth; }
|
|
|
|
|
set { if (PropertyUtility.SetStruct(ref m_SymbolWidth, value)) SetVerticesDirty(); }
|
|
|
|
|
}
|
2019-08-01 23:49:30 +08:00
|
|
|
/// <summary>
|
|
|
|
|
/// the height of arrow symbol.
|
|
|
|
|
/// 箭头高。
|
|
|
|
|
/// </summary>
|
2020-03-05 20:25:19 +08:00
|
|
|
public float symbolHeight
|
|
|
|
|
{
|
|
|
|
|
get { return m_SymbolHeight; }
|
|
|
|
|
set { if (PropertyUtility.SetStruct(ref m_SymbolHeight, value)) SetVerticesDirty(); }
|
|
|
|
|
}
|
2019-08-01 23:49:30 +08:00
|
|
|
/// <summary>
|
|
|
|
|
/// the offset of arrow symbol.
|
|
|
|
|
/// 箭头偏移。
|
|
|
|
|
/// </summary>
|
2020-03-05 20:25:19 +08:00
|
|
|
public float symbolOffset
|
|
|
|
|
{
|
|
|
|
|
get { return m_SymbolOffset; }
|
|
|
|
|
set { if (PropertyUtility.SetStruct(ref m_SymbolOffset, value)) SetVerticesDirty(); }
|
|
|
|
|
}
|
2019-08-01 23:49:30 +08:00
|
|
|
/// <summary>
|
|
|
|
|
/// the dent of arrow symbol.
|
|
|
|
|
/// 箭头的凹陷程度。
|
|
|
|
|
/// </summary>
|
2020-03-05 20:25:19 +08:00
|
|
|
public float symbolDent
|
|
|
|
|
{
|
|
|
|
|
get { return m_SymbolDent; }
|
|
|
|
|
set { if (PropertyUtility.SetStruct(ref m_SymbolDent, value)) SetVerticesDirty(); }
|
|
|
|
|
}
|
2019-07-13 16:38:38 +08:00
|
|
|
|
|
|
|
|
public static AxisLine defaultAxisLine
|
|
|
|
|
{
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
var axisLine = new AxisLine
|
|
|
|
|
{
|
|
|
|
|
m_Show = true,
|
2019-07-14 14:34:18 +08:00
|
|
|
m_OnZero = true,
|
2019-08-01 23:49:30 +08:00
|
|
|
m_Width = 0.7f,
|
2019-07-13 16:38:38 +08:00
|
|
|
m_Symbol = false,
|
|
|
|
|
m_SymbolWidth = 10,
|
|
|
|
|
m_SymbolHeight = 15,
|
2020-02-11 20:37:34 +08:00
|
|
|
m_SymbolOffset = -5f,
|
2019-07-13 16:38:38 +08:00
|
|
|
m_SymbolDent = 3,
|
|
|
|
|
};
|
|
|
|
|
return axisLine;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|