using System.Collections.Generic; using UnityEngine; namespace XCharts.Runtime { /// /// Angle axis of Polar Coordinate. /// |极坐标系的角度轴。 /// [System.Serializable] [RequireChartComponent(typeof(PolarCoord))] [ComponentHandler(typeof(AngleAxisHandler), true)] public class AngleAxis : Axis { [SerializeField] private float m_StartAngle = 0; /// /// Starting angle of axis. 0 degrees by default, standing for right position of center. /// |起始刻度的角度,默认为 0 度,即圆心的正右方。 /// public float startAngle { get { return m_StartAngle; } set { if (PropertyUtil.SetStruct(ref m_StartAngle, value)) SetAllDirty(); } } public float GetValueAngle(float value) { return (value + context.startAngle + 360) % 360; } public override void SetDefaultValue() { m_Show = true; m_Type = AxisType.Value; m_SplitNumber = 12; m_StartAngle = 0; m_BoundaryGap = false; m_Data = new List(12); splitLine.show = true; splitLine.lineStyle.type = LineStyle.Type.Solid; axisLabel.textLimit.enable = false; minMaxType = AxisMinMaxType.Custom; min = 0; max = 360; } } }