From 612c6f5ce7634769f215507c8a0a41f77e3a57c3 Mon Sep 17 00:00:00 2001 From: monitor1394 Date: Mon, 14 Oct 2019 09:46:27 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0SerieData=E7=9A=84radius?= =?UTF-8?q?=E8=87=AA=E5=AE=9A=E4=B9=89=E6=95=B0=E6=8D=AE=E9=A1=B9=E7=9A=84?= =?UTF-8?q?=E5=8D=8A=E5=BE=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Demo/Scripts/Demo30_Pie.cs | 20 ++++++++++++++++++++ Demo/Scripts/Demo30_Pie.cs.meta | 11 +++++++++++ Scripts/UI/Internal/SerieData.cs | 21 +++++++++++++++++++-- 3 files changed, 50 insertions(+), 2 deletions(-) create mode 100644 Demo/Scripts/Demo30_Pie.cs create mode 100644 Demo/Scripts/Demo30_Pie.cs.meta diff --git a/Demo/Scripts/Demo30_Pie.cs b/Demo/Scripts/Demo30_Pie.cs new file mode 100644 index 00000000..64a686ad --- /dev/null +++ b/Demo/Scripts/Demo30_Pie.cs @@ -0,0 +1,20 @@ +using System.Collections.Generic; +using UnityEngine; +using XCharts; + +[DisallowMultipleComponent] +[ExecuteInEditMode] +public class Demo30_Pie : MonoBehaviour +{ + private PieChart chart; + + void Awake() + { + chart = gameObject.GetComponent(); + if (chart == null) return; + + var serie = chart.series.GetSerie(0); + var serieData = serie.GetSerieData(0); + serieData.radius = 100; + } +} diff --git a/Demo/Scripts/Demo30_Pie.cs.meta b/Demo/Scripts/Demo30_Pie.cs.meta new file mode 100644 index 00000000..435f0712 --- /dev/null +++ b/Demo/Scripts/Demo30_Pie.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 00a8daeea9dce492c8c1ed93c90ae409 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Scripts/UI/Internal/SerieData.cs b/Scripts/UI/Internal/SerieData.cs index 9137789d..a404466c 100644 --- a/Scripts/UI/Internal/SerieData.cs +++ b/Scripts/UI/Internal/SerieData.cs @@ -14,6 +14,7 @@ namespace XCharts { [SerializeField] private string m_Name; [SerializeField] private bool m_Selected; + [SerializeField] private float m_Radius; [SerializeField] private bool m_ShowIcon; [SerializeField] private Sprite m_IconImage; [SerializeField] private Color m_IconColor = Color.white; @@ -27,6 +28,7 @@ namespace XCharts private bool m_LabelAutoSize; private float m_LabelPaddingLeftRight; private float m_LabelPaddingTopBottom; + private float m_RtPieOutsideRadius; public int index { get; set; } /// @@ -40,6 +42,10 @@ namespace XCharts /// public string legendName { get { return string.IsNullOrEmpty(name) ? ChartCached.IntToStr(index) : name; } } /// + /// 自定义半径。可用在饼图中自定义某个数据项的半径。 + /// + public float radius { get { return m_Radius; } set { m_Radius = value; } } + /// /// Whether the data item is selected. /// 该数据项是否被选中。 /// @@ -135,11 +141,22 @@ namespace XCharts /// /// 饼图数据项的内半径 /// - public float pieInsideRadius{get;set;} + public float pieInsideRadius { get; set; } /// /// 饼图数据项的外半径 /// - public float pieOutsideRadius { get; set; } + public float pieOutsideRadius + { + get + { + if (radius > 0) return radius; + else return m_RtPieOutsideRadius; + } + set + { + m_RtPieOutsideRadius = value; + } + } /// /// 饼图数据项的偏移半径 ///