using UnityEngine; namespace XCharts.Runtime { /// /// animation style of axis. /// ||坐标轴动画配置。 /// [System.Serializable] [Since("v3.9.0")] public class AxisAnimation : ChildComponent { [SerializeField] private bool m_Show = true; [SerializeField] private float m_Duration; [SerializeField] private bool m_UnscaledTime; /// /// whether to enable animation. /// ||是否开启动画。 /// public bool show { get { return m_Show; } set { if (PropertyUtil.SetStruct(ref m_Show, value)) SetComponentDirty(); } } /// /// the duration of animation (ms). When it is set to 0, the animation duration will be automatically calculated according to the serie. /// ||动画时长(ms)。 默认设置为0时,会自动获取serie的动画时长。 /// public float duration { get { return m_Duration; } set { if (PropertyUtil.SetStruct(ref m_Duration, value)) SetComponentDirty(); } } /// /// Animation updates independently of Time.timeScale. /// ||动画是否受TimeScaled的影响。默认为 false 受TimeScaled的影响。 /// public bool unscaledTime { get { return m_UnscaledTime; } set { if (PropertyUtil.SetStruct(ref m_UnscaledTime, value)) SetComponentDirty(); } } public AxisAnimation Clone() { var animation = new AxisAnimation { show = show, duration = duration, unscaledTime = unscaledTime }; return animation; } public void Copy(AxisAnimation animation) { show = animation.show; duration = animation.duration; unscaledTime = animation.unscaledTime; } } }