mirror of
https://github.com/XCharts-Team/XCharts.git
synced 2026-05-24 18:00:26 +00:00
增加onPointerClickPie和onPointerClickBar回调
This commit is contained in:
@@ -1,6 +1,8 @@
|
|||||||
|
|
||||||
# 更新日志
|
# 更新日志
|
||||||
|
|
||||||
|
* (2020.08.29) Added the `onPointerClickPie` of `PieChart`, a callback function of click pie area.
|
||||||
|
* (2020.08.29) Added the `onPointerClickBar` of `BarChart`, a callback function of click bar.
|
||||||
* (2020.08.24) Release `V1.6.0` version
|
* (2020.08.24) Release `V1.6.0` version
|
||||||
* (2020.08.23) Refactor code, replace `Color` with `Color32` for reduce implicit conversion (Can cause custom colors to lose, reference [Q&A 29](https://github.com/monitor1394/unity-ugui-XCharts/blob/master/Assets/XCharts/Documentation/xcharts-questions-and-answers-EN.md) to upgrade)
|
* (2020.08.23) Refactor code, replace `Color` with `Color32` for reduce implicit conversion (Can cause custom colors to lose, reference [Q&A 29](https://github.com/monitor1394/unity-ugui-XCharts/blob/master/Assets/XCharts/Documentation/xcharts-questions-and-answers-EN.md) to upgrade)
|
||||||
* (2020.08.15) Optimize `PieChart` drawing performance effect #85
|
* (2020.08.15) Optimize `PieChart` drawing performance effect #85
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
|
|
||||||
# 更新日志
|
# 更新日志
|
||||||
|
|
||||||
|
* (2020.08.29) 增加`PieChart`的`onPointerClickPie`点击扇形图扇区回调
|
||||||
|
* (2020.08.29) 增加`BarChart`的`onPointerClickBar`点击柱形图柱条回调
|
||||||
* (2020.08.24) 发布`v1.6.0`版本
|
* (2020.08.24) 发布`v1.6.0`版本
|
||||||
* (2020.08.23) 重构代码,将与绘制相关的`Color`改为`Color32`,减少隐式转换(更新后会导致自定义的颜色丢失,可参考[问答29](https://github.com/monitor1394/unity-ugui-XCharts/blob/master/Assets/XCharts/Documentation/XCharts问答.md)进行升级)
|
* (2020.08.23) 重构代码,将与绘制相关的`Color`改为`Color32`,减少隐式转换(更新后会导致自定义的颜色丢失,可参考[问答29](https://github.com/monitor1394/unity-ugui-XCharts/blob/master/Assets/XCharts/Documentation/XCharts问答.md)进行升级)
|
||||||
* (2020.08.15) 优化`PieChart`绘制表现效果#85
|
* (2020.08.15) 优化`PieChart`绘制表现效果#85
|
||||||
|
|||||||
@@ -103,10 +103,14 @@
|
|||||||
* 继承自 `BaseChart`。
|
* 继承自 `BaseChart`。
|
||||||
* 继承自 `CoordinateChart`。
|
* 继承自 `CoordinateChart`。
|
||||||
|
|
||||||
|
* `BarChart.onPointerClickBar`:点击柱条回调。参数:`eventData`, `dataIndex`
|
||||||
|
|
||||||
## `PieChart`
|
## `PieChart`
|
||||||
|
|
||||||
* 继承自 `BaseChart`。
|
* 继承自 `BaseChart`。
|
||||||
|
|
||||||
|
* `PieChart.onPointerClickPie`:点击柱条回调。参数:`eventData`, `serieIndex`, `dataIndex`
|
||||||
|
|
||||||
## `RadarChart`
|
## `RadarChart`
|
||||||
|
|
||||||
* 继承自 `BaseChart`。
|
* 继承自 `BaseChart`。
|
||||||
|
|||||||
@@ -103,10 +103,14 @@
|
|||||||
* 继承自 `BaseChart`。
|
* 继承自 `BaseChart`。
|
||||||
* 继承自 `CoordinateChart`。
|
* 继承自 `CoordinateChart`。
|
||||||
|
|
||||||
|
* `BarChart.onPointerClickBar`:点击柱条回调。参数:`eventData`, `dataIndex`
|
||||||
|
|
||||||
## `PieChart`
|
## `PieChart`
|
||||||
|
|
||||||
* 继承自 `BaseChart`。
|
* 继承自 `BaseChart`。
|
||||||
|
|
||||||
|
* `PieChart.onPointerClickPie`:点击柱条回调。参数:`eventData`, `serieIndex`, `dataIndex`
|
||||||
|
|
||||||
## `RadarChart`
|
## `RadarChart`
|
||||||
|
|
||||||
* 继承自 `BaseChart`。
|
* 继承自 `BaseChart`。
|
||||||
|
|||||||
@@ -31,32 +31,32 @@ namespace XCharts.Examples
|
|||||||
chart.onScroll = OnScroll;
|
chart.onScroll = OnScroll;
|
||||||
}
|
}
|
||||||
|
|
||||||
void OnPointerEnter(BaseGraph chart, PointerEventData eventData)
|
void OnPointerEnter(PointerEventData eventData, BaseGraph chart)
|
||||||
{
|
{
|
||||||
//Debug.LogError("enter:" + chart);
|
//Debug.LogError("enter:" + chart);
|
||||||
}
|
}
|
||||||
|
|
||||||
void OnPointerExit(BaseGraph chart, PointerEventData eventData)
|
void OnPointerExit(PointerEventData eventData, BaseGraph chart)
|
||||||
{
|
{
|
||||||
//Debug.LogError("exit:" + chart);
|
//Debug.LogError("exit:" + chart);
|
||||||
}
|
}
|
||||||
|
|
||||||
void OnPointerDown(BaseGraph chart, PointerEventData eventData)
|
void OnPointerDown(PointerEventData eventData, BaseGraph chart)
|
||||||
{
|
{
|
||||||
//Debug.LogError("down:" + chart);
|
//Debug.LogError("down:" + chart);
|
||||||
}
|
}
|
||||||
|
|
||||||
void OnPointerUp(BaseGraph chart, PointerEventData eventData)
|
void OnPointerUp(PointerEventData eventData, BaseGraph chart)
|
||||||
{
|
{
|
||||||
//Debug.LogError("up:" + chart);
|
//Debug.LogError("up:" + chart);
|
||||||
}
|
}
|
||||||
|
|
||||||
void OnPointerClick(BaseGraph chart, PointerEventData eventData)
|
void OnPointerClick(PointerEventData eventData, BaseGraph chart)
|
||||||
{
|
{
|
||||||
//Debug.LogError("click:" + chart);
|
//Debug.LogError("click:" + chart);
|
||||||
}
|
}
|
||||||
|
|
||||||
void OnScroll(BaseGraph chart, PointerEventData eventData)
|
void OnScroll(PointerEventData eventData, BaseGraph chart)
|
||||||
{
|
{
|
||||||
//Debug.LogError("scroll:" + chart);
|
//Debug.LogError("scroll:" + chart);
|
||||||
}
|
}
|
||||||
|
|||||||
22
Assets/XCharts/Runtime/API/BarChart_API.cs
Normal file
22
Assets/XCharts/Runtime/API/BarChart_API.cs
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
/******************************************/
|
||||||
|
/* */
|
||||||
|
/* Copyright (c) 2018 monitor1394 */
|
||||||
|
/* https://github.com/monitor1394 */
|
||||||
|
/* */
|
||||||
|
/******************************************/
|
||||||
|
|
||||||
|
using UnityEngine;
|
||||||
|
using System;
|
||||||
|
using UnityEngine.EventSystems;
|
||||||
|
|
||||||
|
namespace XCharts
|
||||||
|
{
|
||||||
|
public partial class BarChart
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// the callback function of click bar.
|
||||||
|
/// 点击柱形图柱条回调。参数:eventData, dataIndex
|
||||||
|
/// </summary>
|
||||||
|
public Action<PointerEventData, int> onPointerClickBar { set { m_OnPointerClickBar = value; m_ForceOpenRaycastTarget = true; } }
|
||||||
|
}
|
||||||
|
}
|
||||||
11
Assets/XCharts/Runtime/API/BarChart_API.cs.meta
Normal file
11
Assets/XCharts/Runtime/API/BarChart_API.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 73ae9e0b481fc4587828be9149026b0f
|
||||||
|
MonoImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -65,39 +65,39 @@ namespace XCharts
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// 鼠标点击回调。
|
/// 鼠标点击回调。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public Action<BaseGraph, PointerEventData> onPointerClick { set { m_OnPointerClick = value; m_ForceOpenRaycastTarget = true; } }
|
public Action<PointerEventData, BaseGraph> onPointerClick { set { m_OnPointerClick = value; m_ForceOpenRaycastTarget = true; } }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 鼠标按下回调。
|
/// 鼠标按下回调。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public Action<BaseGraph, PointerEventData> onPointerDown { set { m_OnPointerDown = value; m_ForceOpenRaycastTarget = true; } }
|
public Action<PointerEventData, BaseGraph> onPointerDown { set { m_OnPointerDown = value; m_ForceOpenRaycastTarget = true; } }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 鼠标弹起回调。
|
/// 鼠标弹起回调。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public Action<BaseGraph, PointerEventData> onPointerUp { set { m_OnPointerUp = value; m_ForceOpenRaycastTarget = true; } }
|
public Action<PointerEventData, BaseGraph> onPointerUp { set { m_OnPointerUp = value; m_ForceOpenRaycastTarget = true; } }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 鼠标进入回调。
|
/// 鼠标进入回调。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public Action<BaseGraph, PointerEventData> onPointerEnter { set { m_OnPointerEnter = value; m_ForceOpenRaycastTarget = true; } }
|
public Action<PointerEventData, BaseGraph> onPointerEnter { set { m_OnPointerEnter = value; m_ForceOpenRaycastTarget = true; } }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 鼠标退出回调。
|
/// 鼠标退出回调。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public Action<BaseGraph, PointerEventData> onPointerExit { set { m_OnPointerExit = value; m_ForceOpenRaycastTarget = true; } }
|
public Action<PointerEventData, BaseGraph> onPointerExit { set { m_OnPointerExit = value; m_ForceOpenRaycastTarget = true; } }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 鼠标开始拖拽回调。
|
/// 鼠标开始拖拽回调。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public Action<BaseGraph, PointerEventData> onBeginDrag { set { m_OnBeginDrag = value; m_ForceOpenRaycastTarget = true; } }
|
public Action<PointerEventData, BaseGraph> onBeginDrag { set { m_OnBeginDrag = value; m_ForceOpenRaycastTarget = true; } }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 鼠标拖拽回调。
|
/// 鼠标拖拽回调。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public Action<BaseGraph, PointerEventData> onDrag { set { m_OnDrag = value; m_ForceOpenRaycastTarget = true; } }
|
public Action<PointerEventData, BaseGraph> onDrag { set { m_OnDrag = value; m_ForceOpenRaycastTarget = true; } }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 鼠标结束拖拽回调。
|
/// 鼠标结束拖拽回调。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public Action<BaseGraph, PointerEventData> onEndDrag { set { m_OnEndDrag = value; m_ForceOpenRaycastTarget = true; } }
|
public Action<PointerEventData, BaseGraph> onEndDrag { set { m_OnEndDrag = value; m_ForceOpenRaycastTarget = true; } }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 鼠标滚动回调。
|
/// 鼠标滚动回调。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public Action<BaseGraph, PointerEventData> onScroll { set { m_OnScroll = value; m_ForceOpenRaycastTarget = true; } }
|
public Action<PointerEventData, BaseGraph> onScroll { set { m_OnScroll = value; m_ForceOpenRaycastTarget = true; } }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 设置图形的宽高(在非stretch pivot下才有效,其他情况需要自己调整RectTransform)
|
/// 设置图形的宽高(在非stretch pivot下才有效,其他情况需要自己调整RectTransform)
|
||||||
|
|||||||
22
Assets/XCharts/Runtime/API/PieChart_API.cs
Normal file
22
Assets/XCharts/Runtime/API/PieChart_API.cs
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
/******************************************/
|
||||||
|
/* */
|
||||||
|
/* Copyright (c) 2018 monitor1394 */
|
||||||
|
/* https://github.com/monitor1394 */
|
||||||
|
/* */
|
||||||
|
/******************************************/
|
||||||
|
|
||||||
|
using UnityEngine;
|
||||||
|
using System;
|
||||||
|
using UnityEngine.EventSystems;
|
||||||
|
|
||||||
|
namespace XCharts
|
||||||
|
{
|
||||||
|
public partial class PieChart
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// the callback function of click pie area.
|
||||||
|
/// 点击饼图区域回调。参数:PointerEventData,SerieIndex,SerieDataIndex
|
||||||
|
/// </summary>
|
||||||
|
public Action<PointerEventData, int, int> onPointerClickPie { set { m_OnPointerClickPie = value; m_ForceOpenRaycastTarget = true; } }
|
||||||
|
}
|
||||||
|
}
|
||||||
11
Assets/XCharts/Runtime/API/PieChart_API.cs.meta
Normal file
11
Assets/XCharts/Runtime/API/PieChart_API.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 85c7f8858dca444f88830d61b9af3700
|
||||||
|
MonoImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -5,7 +5,9 @@
|
|||||||
/* */
|
/* */
|
||||||
/******************************************/
|
/******************************************/
|
||||||
|
|
||||||
|
using System;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
using UnityEngine.EventSystems;
|
||||||
|
|
||||||
namespace XCharts
|
namespace XCharts
|
||||||
{
|
{
|
||||||
@@ -13,9 +15,15 @@ namespace XCharts
|
|||||||
[ExecuteInEditMode]
|
[ExecuteInEditMode]
|
||||||
[RequireComponent(typeof(RectTransform))]
|
[RequireComponent(typeof(RectTransform))]
|
||||||
[DisallowMultipleComponent]
|
[DisallowMultipleComponent]
|
||||||
public class BarChart : CoordinateChart
|
public partial class BarChart : CoordinateChart
|
||||||
{
|
{
|
||||||
|
protected Action<PointerEventData, int> m_OnPointerClickBar;
|
||||||
|
|
||||||
|
protected override void Awake()
|
||||||
|
{
|
||||||
|
base.Awake();
|
||||||
|
raycastTarget = false;
|
||||||
|
}
|
||||||
#if UNITY_EDITOR
|
#if UNITY_EDITOR
|
||||||
protected override void Reset()
|
protected override void Reset()
|
||||||
{
|
{
|
||||||
@@ -27,9 +35,22 @@ namespace XCharts
|
|||||||
for (int i = 0; i < 5; i++)
|
for (int i = 0; i < 5; i++)
|
||||||
{
|
{
|
||||||
AddXAxisData("x" + (i + 1));
|
AddXAxisData("x" + (i + 1));
|
||||||
AddData(0, Random.Range(10, 90));
|
AddData(0, UnityEngine.Random.Range(10, 90));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
public override void OnPointerDown(PointerEventData eventData)
|
||||||
|
{
|
||||||
|
base.OnPointerDown(eventData);
|
||||||
|
if (m_OnPointerClickBar == null) return;
|
||||||
|
if (pointerPos == Vector2.zero) return;
|
||||||
|
UpdateTooltipValue(pointerPos);
|
||||||
|
var dataIndex = m_Tooltip.runtimeDataIndex[0];
|
||||||
|
if (dataIndex >= 0)
|
||||||
|
{
|
||||||
|
m_OnPointerClickBar(eventData, dataIndex);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -33,15 +33,15 @@ namespace XCharts
|
|||||||
protected bool m_IsControlledByLayout = false;
|
protected bool m_IsControlledByLayout = false;
|
||||||
protected Vector3 m_LastLocalPosition;
|
protected Vector3 m_LastLocalPosition;
|
||||||
|
|
||||||
protected Action<BaseGraph, PointerEventData> m_OnPointerClick;
|
protected Action<PointerEventData, BaseGraph> m_OnPointerClick;
|
||||||
protected Action<BaseGraph, PointerEventData> m_OnPointerDown;
|
protected Action<PointerEventData, BaseGraph> m_OnPointerDown;
|
||||||
protected Action<BaseGraph, PointerEventData> m_OnPointerUp;
|
protected Action<PointerEventData, BaseGraph> m_OnPointerUp;
|
||||||
protected Action<BaseGraph, PointerEventData> m_OnPointerEnter;
|
protected Action<PointerEventData, BaseGraph> m_OnPointerEnter;
|
||||||
protected Action<BaseGraph, PointerEventData> m_OnPointerExit;
|
protected Action<PointerEventData, BaseGraph> m_OnPointerExit;
|
||||||
protected Action<BaseGraph, PointerEventData> m_OnBeginDrag;
|
protected Action<PointerEventData, BaseGraph> m_OnBeginDrag;
|
||||||
protected Action<BaseGraph, PointerEventData> m_OnDrag;
|
protected Action<PointerEventData, BaseGraph> m_OnDrag;
|
||||||
protected Action<BaseGraph, PointerEventData> m_OnEndDrag;
|
protected Action<PointerEventData, BaseGraph> m_OnEndDrag;
|
||||||
protected Action<BaseGraph, PointerEventData> m_OnScroll;
|
protected Action<PointerEventData, BaseGraph> m_OnScroll;
|
||||||
|
|
||||||
protected Vector2 chartAnchorMax { get { return m_GraphMinAnchor; } }
|
protected Vector2 chartAnchorMax { get { return m_GraphMinAnchor; } }
|
||||||
protected Vector2 chartAnchorMin { get { return m_GraphMaxAnchor; } }
|
protected Vector2 chartAnchorMin { get { return m_GraphMaxAnchor; } }
|
||||||
@@ -228,53 +228,53 @@ namespace XCharts
|
|||||||
|
|
||||||
public virtual void OnPointerClick(PointerEventData eventData)
|
public virtual void OnPointerClick(PointerEventData eventData)
|
||||||
{
|
{
|
||||||
if (m_OnPointerClick != null) m_OnPointerClick(this, eventData);
|
if (m_OnPointerClick != null) m_OnPointerClick(eventData, this);
|
||||||
}
|
}
|
||||||
|
|
||||||
public virtual void OnPointerDown(PointerEventData eventData)
|
public virtual void OnPointerDown(PointerEventData eventData)
|
||||||
{
|
{
|
||||||
if (m_OnPointerDown != null) m_OnPointerDown(this, eventData);
|
if (m_OnPointerDown != null) m_OnPointerDown(eventData, this);
|
||||||
}
|
}
|
||||||
|
|
||||||
public virtual void OnPointerUp(PointerEventData eventData)
|
public virtual void OnPointerUp(PointerEventData eventData)
|
||||||
{
|
{
|
||||||
if (m_OnPointerUp != null) m_OnPointerUp(this, eventData);
|
if (m_OnPointerUp != null) m_OnPointerUp(eventData, this);
|
||||||
}
|
}
|
||||||
|
|
||||||
public virtual void OnPointerEnter(PointerEventData eventData)
|
public virtual void OnPointerEnter(PointerEventData eventData)
|
||||||
{
|
{
|
||||||
isPointerInChart = true;
|
isPointerInChart = true;
|
||||||
if (m_OnPointerEnter != null) m_OnPointerEnter(this, eventData);
|
if (m_OnPointerEnter != null) m_OnPointerEnter(eventData, this);
|
||||||
}
|
}
|
||||||
|
|
||||||
public virtual void OnPointerExit(PointerEventData eventData)
|
public virtual void OnPointerExit(PointerEventData eventData)
|
||||||
{
|
{
|
||||||
isPointerInChart = false;
|
isPointerInChart = false;
|
||||||
if (m_OnPointerExit != null) m_OnPointerExit(this, eventData);
|
if (m_OnPointerExit != null) m_OnPointerExit(eventData, this);
|
||||||
}
|
}
|
||||||
|
|
||||||
public virtual void OnBeginDrag(PointerEventData eventData)
|
public virtual void OnBeginDrag(PointerEventData eventData)
|
||||||
{
|
{
|
||||||
if (m_ScrollRect != null) m_ScrollRect.OnBeginDrag(eventData);
|
if (m_ScrollRect != null) m_ScrollRect.OnBeginDrag(eventData);
|
||||||
if (m_OnBeginDrag != null) m_OnBeginDrag(this, eventData);
|
if (m_OnBeginDrag != null) m_OnBeginDrag(eventData, this);
|
||||||
}
|
}
|
||||||
|
|
||||||
public virtual void OnEndDrag(PointerEventData eventData)
|
public virtual void OnEndDrag(PointerEventData eventData)
|
||||||
{
|
{
|
||||||
if (m_ScrollRect != null) m_ScrollRect.OnEndDrag(eventData);
|
if (m_ScrollRect != null) m_ScrollRect.OnEndDrag(eventData);
|
||||||
if (m_OnEndDrag != null) m_OnEndDrag(this, eventData);
|
if (m_OnEndDrag != null) m_OnEndDrag(eventData, this);
|
||||||
}
|
}
|
||||||
|
|
||||||
public virtual void OnDrag(PointerEventData eventData)
|
public virtual void OnDrag(PointerEventData eventData)
|
||||||
{
|
{
|
||||||
if (m_ScrollRect != null) m_ScrollRect.OnDrag(eventData);
|
if (m_ScrollRect != null) m_ScrollRect.OnDrag(eventData);
|
||||||
if (m_OnDrag != null) m_OnDrag(this, eventData);
|
if (m_OnDrag != null) m_OnDrag(eventData, this);
|
||||||
}
|
}
|
||||||
|
|
||||||
public virtual void OnScroll(PointerEventData eventData)
|
public virtual void OnScroll(PointerEventData eventData)
|
||||||
{
|
{
|
||||||
if (m_ScrollRect != null) m_ScrollRect.OnScroll(eventData);
|
if (m_ScrollRect != null) m_ScrollRect.OnScroll(eventData);
|
||||||
if (m_OnScroll != null) m_OnScroll(this, eventData);
|
if (m_OnScroll != null) m_OnScroll(eventData, this);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -250,111 +250,7 @@ namespace XCharts
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
var isCartesian = IsValue();
|
UpdateTooltipValue(local);
|
||||||
int dataCount = m_Series.list.Count > 0 ? m_Series.list[0].GetDataList(dataZoom).Count : 0;
|
|
||||||
for (int i = 0; i < m_XAxises.Count; i++)
|
|
||||||
{
|
|
||||||
var xAxis = m_XAxises[i];
|
|
||||||
var yAxis = m_YAxises[i];
|
|
||||||
if (!xAxis.show && !yAxis.show) continue;
|
|
||||||
if (isCartesian && xAxis.show && yAxis.show)
|
|
||||||
{
|
|
||||||
var yRate = (yAxis.runtimeMaxValue - yAxis.runtimeMinValue) / m_CoordinateHeight;
|
|
||||||
var xRate = (xAxis.runtimeMaxValue - xAxis.runtimeMinValue) / m_CoordinateWidth;
|
|
||||||
var yValue = yRate * (local.y - m_CoordinateY - yAxis.runtimeZeroYOffset);
|
|
||||||
if (yAxis.runtimeMinValue > 0) yValue += yAxis.runtimeMinValue;
|
|
||||||
m_Tooltip.runtimeYValues[i] = yValue;
|
|
||||||
var xValue = xRate * (local.x - m_CoordinateX - xAxis.runtimeZeroXOffset);
|
|
||||||
if (xAxis.runtimeMinValue > 0) xValue += xAxis.runtimeMinValue;
|
|
||||||
m_Tooltip.runtimeXValues[i] = xValue;
|
|
||||||
|
|
||||||
for (int j = 0; j < m_Series.Count; j++)
|
|
||||||
{
|
|
||||||
var serie = m_Series.GetSerie(j);
|
|
||||||
for (int n = 0; n < serie.data.Count; n++)
|
|
||||||
{
|
|
||||||
var serieData = serie.data[n];
|
|
||||||
var xdata = serieData.GetData(0, xAxis.inverse);
|
|
||||||
var ydata = serieData.GetData(1, yAxis.inverse);
|
|
||||||
var symbol = SerieHelper.GetSerieSymbol(serie, serieData);
|
|
||||||
var symbolSize = symbol.GetSize(serieData == null ? null : serieData.data);
|
|
||||||
if (Mathf.Abs(xValue - xdata) / xRate < symbolSize
|
|
||||||
&& Mathf.Abs(yValue - ydata) / yRate < symbolSize)
|
|
||||||
{
|
|
||||||
m_Tooltip.runtimeDataIndex[i] = n;
|
|
||||||
serieData.highlighted = true;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
serieData.highlighted = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else if (IsCategory())
|
|
||||||
{
|
|
||||||
|
|
||||||
for (int j = 0; j < xAxis.GetDataNumber(m_DataZoom); j++)
|
|
||||||
{
|
|
||||||
float splitWid = AxisHelper.GetDataWidth(xAxis, m_CoordinateWidth, dataCount, m_DataZoom);
|
|
||||||
float pX = m_CoordinateX + j * splitWid;
|
|
||||||
if ((xAxis.boundaryGap && (local.x > pX && local.x <= pX + splitWid)) ||
|
|
||||||
(!xAxis.boundaryGap && (local.x > pX - splitWid / 2 && local.x <= pX + splitWid / 2)))
|
|
||||||
{
|
|
||||||
m_Tooltip.runtimeXValues[i] = j;
|
|
||||||
m_Tooltip.runtimeDataIndex[i] = j;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
for (int j = 0; j < yAxis.GetDataNumber(m_DataZoom); j++)
|
|
||||||
{
|
|
||||||
float splitWid = AxisHelper.GetDataWidth(yAxis, m_CoordinateHeight, dataCount, m_DataZoom);
|
|
||||||
float pY = m_CoordinateY + j * splitWid;
|
|
||||||
if ((yAxis.boundaryGap && (local.y > pY && local.y <= pY + splitWid)) ||
|
|
||||||
(!yAxis.boundaryGap && (local.y > pY - splitWid / 2 && local.y <= pY + splitWid / 2)))
|
|
||||||
{
|
|
||||||
m_Tooltip.runtimeYValues[i] = j;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else if (xAxis.IsCategory())
|
|
||||||
{
|
|
||||||
var value = (yAxis.runtimeMaxValue - yAxis.runtimeMinValue) * (local.y - m_CoordinateY - yAxis.runtimeZeroYOffset) / m_CoordinateHeight;
|
|
||||||
if (yAxis.runtimeMinValue > 0) value += yAxis.runtimeMinValue;
|
|
||||||
m_Tooltip.runtimeYValues[i] = value;
|
|
||||||
for (int j = 0; j < xAxis.GetDataNumber(m_DataZoom); j++)
|
|
||||||
{
|
|
||||||
float splitWid = AxisHelper.GetDataWidth(xAxis, m_CoordinateWidth, dataCount, m_DataZoom);
|
|
||||||
float pX = m_CoordinateX + j * splitWid;
|
|
||||||
if ((xAxis.boundaryGap && (local.x > pX && local.x <= pX + splitWid)) ||
|
|
||||||
(!xAxis.boundaryGap && (local.x > pX - splitWid / 2 && local.x <= pX + splitWid / 2)))
|
|
||||||
{
|
|
||||||
m_Tooltip.runtimeXValues[i] = j;
|
|
||||||
m_Tooltip.runtimeDataIndex[i] = j;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else if (yAxis.IsCategory())
|
|
||||||
{
|
|
||||||
var value = (xAxis.runtimeMaxValue - xAxis.runtimeMinValue) * (local.x - m_CoordinateX - xAxis.runtimeZeroXOffset) / m_CoordinateWidth;
|
|
||||||
if (xAxis.runtimeMinValue > 0) value += xAxis.runtimeMinValue;
|
|
||||||
m_Tooltip.runtimeXValues[i] = value;
|
|
||||||
for (int j = 0; j < yAxis.GetDataNumber(m_DataZoom); j++)
|
|
||||||
{
|
|
||||||
float splitWid = AxisHelper.GetDataWidth(yAxis, m_CoordinateHeight, dataCount, m_DataZoom);
|
|
||||||
float pY = m_CoordinateY + j * splitWid;
|
|
||||||
if ((yAxis.boundaryGap && (local.y > pY && local.y <= pY + splitWid)) ||
|
|
||||||
(!yAxis.boundaryGap && (local.y > pY - splitWid / 2 && local.y <= pY + splitWid / 2)))
|
|
||||||
{
|
|
||||||
m_Tooltip.runtimeYValues[i] = j;
|
|
||||||
m_Tooltip.runtimeDataIndex[i] = j;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if (m_Tooltip.IsSelected())
|
if (m_Tooltip.IsSelected())
|
||||||
{
|
{
|
||||||
@@ -373,6 +269,115 @@ namespace XCharts
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected void UpdateTooltipValue(Vector2 local)
|
||||||
|
{
|
||||||
|
var isCartesian = IsValue();
|
||||||
|
int dataCount = m_Series.list.Count > 0 ? m_Series.list[0].GetDataList(dataZoom).Count : 0;
|
||||||
|
for (int i = 0; i < m_XAxises.Count; i++)
|
||||||
|
{
|
||||||
|
var xAxis = m_XAxises[i];
|
||||||
|
var yAxis = m_YAxises[i];
|
||||||
|
if (!xAxis.show && !yAxis.show) continue;
|
||||||
|
if (isCartesian && xAxis.show && yAxis.show)
|
||||||
|
{
|
||||||
|
var yRate = (yAxis.runtimeMaxValue - yAxis.runtimeMinValue) / m_CoordinateHeight;
|
||||||
|
var xRate = (xAxis.runtimeMaxValue - xAxis.runtimeMinValue) / m_CoordinateWidth;
|
||||||
|
var yValue = yRate * (local.y - m_CoordinateY - yAxis.runtimeZeroYOffset);
|
||||||
|
if (yAxis.runtimeMinValue > 0) yValue += yAxis.runtimeMinValue;
|
||||||
|
m_Tooltip.runtimeYValues[i] = yValue;
|
||||||
|
var xValue = xRate * (local.x - m_CoordinateX - xAxis.runtimeZeroXOffset);
|
||||||
|
if (xAxis.runtimeMinValue > 0) xValue += xAxis.runtimeMinValue;
|
||||||
|
m_Tooltip.runtimeXValues[i] = xValue;
|
||||||
|
|
||||||
|
for (int j = 0; j < m_Series.Count; j++)
|
||||||
|
{
|
||||||
|
var serie = m_Series.GetSerie(j);
|
||||||
|
for (int n = 0; n < serie.data.Count; n++)
|
||||||
|
{
|
||||||
|
var serieData = serie.data[n];
|
||||||
|
var xdata = serieData.GetData(0, xAxis.inverse);
|
||||||
|
var ydata = serieData.GetData(1, yAxis.inverse);
|
||||||
|
var symbol = SerieHelper.GetSerieSymbol(serie, serieData);
|
||||||
|
var symbolSize = symbol.GetSize(serieData == null ? null : serieData.data);
|
||||||
|
if (Mathf.Abs(xValue - xdata) / xRate < symbolSize
|
||||||
|
&& Mathf.Abs(yValue - ydata) / yRate < symbolSize)
|
||||||
|
{
|
||||||
|
m_Tooltip.runtimeDataIndex[i] = n;
|
||||||
|
serieData.highlighted = true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
serieData.highlighted = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (IsCategory())
|
||||||
|
{
|
||||||
|
|
||||||
|
for (int j = 0; j < xAxis.GetDataNumber(m_DataZoom); j++)
|
||||||
|
{
|
||||||
|
float splitWid = AxisHelper.GetDataWidth(xAxis, m_CoordinateWidth, dataCount, m_DataZoom);
|
||||||
|
float pX = m_CoordinateX + j * splitWid;
|
||||||
|
if ((xAxis.boundaryGap && (local.x > pX && local.x <= pX + splitWid)) ||
|
||||||
|
(!xAxis.boundaryGap && (local.x > pX - splitWid / 2 && local.x <= pX + splitWid / 2)))
|
||||||
|
{
|
||||||
|
m_Tooltip.runtimeXValues[i] = j;
|
||||||
|
m_Tooltip.runtimeDataIndex[i] = j;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for (int j = 0; j < yAxis.GetDataNumber(m_DataZoom); j++)
|
||||||
|
{
|
||||||
|
float splitWid = AxisHelper.GetDataWidth(yAxis, m_CoordinateHeight, dataCount, m_DataZoom);
|
||||||
|
float pY = m_CoordinateY + j * splitWid;
|
||||||
|
if ((yAxis.boundaryGap && (local.y > pY && local.y <= pY + splitWid)) ||
|
||||||
|
(!yAxis.boundaryGap && (local.y > pY - splitWid / 2 && local.y <= pY + splitWid / 2)))
|
||||||
|
{
|
||||||
|
m_Tooltip.runtimeYValues[i] = j;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (xAxis.IsCategory())
|
||||||
|
{
|
||||||
|
var value = (yAxis.runtimeMaxValue - yAxis.runtimeMinValue) * (local.y - m_CoordinateY - yAxis.runtimeZeroYOffset) / m_CoordinateHeight;
|
||||||
|
if (yAxis.runtimeMinValue > 0) value += yAxis.runtimeMinValue;
|
||||||
|
m_Tooltip.runtimeYValues[i] = value;
|
||||||
|
for (int j = 0; j < xAxis.GetDataNumber(m_DataZoom); j++)
|
||||||
|
{
|
||||||
|
float splitWid = AxisHelper.GetDataWidth(xAxis, m_CoordinateWidth, dataCount, m_DataZoom);
|
||||||
|
float pX = m_CoordinateX + j * splitWid;
|
||||||
|
if ((xAxis.boundaryGap && (local.x > pX && local.x <= pX + splitWid)) ||
|
||||||
|
(!xAxis.boundaryGap && (local.x > pX - splitWid / 2 && local.x <= pX + splitWid / 2)))
|
||||||
|
{
|
||||||
|
m_Tooltip.runtimeXValues[i] = j;
|
||||||
|
m_Tooltip.runtimeDataIndex[i] = j;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (yAxis.IsCategory())
|
||||||
|
{
|
||||||
|
var value = (xAxis.runtimeMaxValue - xAxis.runtimeMinValue) * (local.x - m_CoordinateX - xAxis.runtimeZeroXOffset) / m_CoordinateWidth;
|
||||||
|
if (xAxis.runtimeMinValue > 0) value += xAxis.runtimeMinValue;
|
||||||
|
m_Tooltip.runtimeXValues[i] = value;
|
||||||
|
for (int j = 0; j < yAxis.GetDataNumber(m_DataZoom); j++)
|
||||||
|
{
|
||||||
|
float splitWid = AxisHelper.GetDataWidth(yAxis, m_CoordinateHeight, dataCount, m_DataZoom);
|
||||||
|
float pY = m_CoordinateY + j * splitWid;
|
||||||
|
if ((yAxis.boundaryGap && (local.y > pY && local.y <= pY + splitWid)) ||
|
||||||
|
(!yAxis.boundaryGap && (local.y > pY - splitWid / 2 && local.y <= pY + splitWid / 2)))
|
||||||
|
{
|
||||||
|
m_Tooltip.runtimeYValues[i] = j;
|
||||||
|
m_Tooltip.runtimeDataIndex[i] = j;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected StringBuilder sb = new StringBuilder(100);
|
protected StringBuilder sb = new StringBuilder(100);
|
||||||
protected override void UpdateTooltip()
|
protected override void UpdateTooltip()
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -5,6 +5,7 @@
|
|||||||
/* */
|
/* */
|
||||||
/******************************************/
|
/******************************************/
|
||||||
|
|
||||||
|
using System;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using UnityEngine.EventSystems;
|
using UnityEngine.EventSystems;
|
||||||
using UnityEngine.UI;
|
using UnityEngine.UI;
|
||||||
@@ -15,11 +16,13 @@ namespace XCharts
|
|||||||
[ExecuteInEditMode]
|
[ExecuteInEditMode]
|
||||||
[RequireComponent(typeof(RectTransform))]
|
[RequireComponent(typeof(RectTransform))]
|
||||||
[DisallowMultipleComponent]
|
[DisallowMultipleComponent]
|
||||||
public class PieChart : BaseChart
|
public partial class PieChart : BaseChart
|
||||||
{
|
{
|
||||||
private bool isDrawPie;
|
private bool isDrawPie;
|
||||||
private bool m_IsEnterLegendButtom;
|
private bool m_IsEnterLegendButtom;
|
||||||
|
|
||||||
|
protected Action<PointerEventData, int, int> m_OnPointerClickPie;
|
||||||
|
|
||||||
protected override void Awake()
|
protected override void Awake()
|
||||||
{
|
{
|
||||||
base.Awake();
|
base.Awake();
|
||||||
@@ -529,28 +532,28 @@ namespace XCharts
|
|||||||
public override void OnPointerDown(PointerEventData eventData)
|
public override void OnPointerDown(PointerEventData eventData)
|
||||||
{
|
{
|
||||||
base.OnPointerDown(eventData);
|
base.OnPointerDown(eventData);
|
||||||
|
if (pointerPos == Vector2.zero) return;
|
||||||
Vector2 local;
|
var refresh = false;
|
||||||
if (!RectTransformUtility.ScreenPointToLocalPointInRectangle(rectTransform,
|
|
||||||
eventData.position, canvas.worldCamera, out local))
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
for (int i = 0; i < m_Series.Count; i++)
|
for (int i = 0; i < m_Series.Count; i++)
|
||||||
{
|
{
|
||||||
var serie = m_Series.GetSerie(i);
|
var serie = m_Series.GetSerie(i);
|
||||||
if (serie.type != SerieType.Pie) continue;
|
if (serie.type != SerieType.Pie) continue;
|
||||||
var index = GetPosPieIndex(serie, local);
|
var index = GetPosPieIndex(serie, pointerPos);
|
||||||
if (index >= 0)
|
if (index >= 0)
|
||||||
{
|
{
|
||||||
|
refresh = true;
|
||||||
for (int j = 0; j < serie.data.Count; j++)
|
for (int j = 0; j < serie.data.Count; j++)
|
||||||
{
|
{
|
||||||
if (j == index) serie.data[j].selected = !serie.data[j].selected;
|
if (j == index) serie.data[j].selected = !serie.data[j].selected;
|
||||||
else serie.data[j].selected = false;
|
else serie.data[j].selected = false;
|
||||||
}
|
}
|
||||||
|
if (m_OnPointerClickPie != null)
|
||||||
|
{
|
||||||
|
m_OnPointerClickPie(eventData, i, index);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
RefreshChart();
|
if (refresh) RefreshChart();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,9 +9,9 @@
|
|||||||
|
|
||||||
你可以通过以下几种方式获取 `XCharts`。
|
你可以通过以下几种方式获取 `XCharts`。
|
||||||
|
|
||||||
如果你只是想运行 `Demo` 查看效果,可以在 [Github](https://github.com/monitor1394/unity-ugui-XCharts)上的 [Clone or download](https://github.com/monitor1394/unity-ugui-XCharts/archive/master.zip)下载整个项目或去 [release](https://github.com/monitor1394/unity-ugui-XCharts/releases)下载稳定版本,将源码工程解压后用`unity`打开即可。
|
如果你只是想运行 `Demo` 查看效果,可以在 [Github](https://github.com/monitor1394/unity-ugui-XCharts)上的 [Code](https://github.com/monitor1394/unity-ugui-XCharts)下载整个项目或去 [release](https://github.com/monitor1394/unity-ugui-XCharts/releases)下载稳定版本,将源码工程解压后用`unity`打开即可。如果访问Github不稳定的话,可以从[国内镜像](https://gitee.com/monitor1394/unity-ugui-XCharts)下载。
|
||||||
|
|
||||||
如果你要将 `XCharts` 加入你的项目中,可以在[Github](https://github.com/monitor1394/unity-ugui-XCharts)上下载最新的 [release](https://github.com/monitor1394/unity-ugui-XCharts/releases)稳定版本,这里一般会包含`XCharts`和`XChartsDemo`两个`unitypackage`,将 `XCharts` 通过 Unity 导入到你的项目中,`XChartsDemo` 是示例Demo,可视情况导入。或下载 Source code 解压后将内部的 `XCharts` 文件夹拷贝到你项目的 `Assets` 目录下。
|
如果你要将 `XCharts` 加入你的项目中,可以在[Github](https://github.com/monitor1394/unity-ugui-XCharts)上下载最新的 [release](https://github.com/monitor1394/unity-ugui-XCharts/releases)稳定版本,这里一般会包含`XCharts`和`XChartsDemo`两个`unitypackage`,将 `XCharts` 通过 `Unity` 导入到你的项目中,`XChartsDemo` 是示例`Demo`,可视情况导入。或下载 `Source Code` 解压后将内部的 `XCharts` 文件夹拷贝到你项目的 `Assets` 目录下。
|
||||||
|
|
||||||
如果你是`Unity 2018.3`及以上版本,可通过Package Manager来安装XCharts包,通过此方式导入的包只包含`XCharts`核心部分,不包含`XChartsDemo`示例`Demo`部分。具体操作步骤如下:
|
如果你是`Unity 2018.3`及以上版本,可通过Package Manager来安装XCharts包,通过此方式导入的包只包含`XCharts`核心部分,不包含`XChartsDemo`示例`Demo`部分。具体操作步骤如下:
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,6 @@ PlayerSettings:
|
|||||||
productGUID: 8d45a4151f4b362428c99c10f0901f14
|
productGUID: 8d45a4151f4b362428c99c10f0901f14
|
||||||
AndroidProfiler: 0
|
AndroidProfiler: 0
|
||||||
AndroidFilterTouchesWhenObscured: 0
|
AndroidFilterTouchesWhenObscured: 0
|
||||||
AndroidEnableSustainedPerformanceMode: 0
|
|
||||||
defaultScreenOrientation: 4
|
defaultScreenOrientation: 4
|
||||||
targetDevice: 2
|
targetDevice: 2
|
||||||
useOnDemandResources: 0
|
useOnDemandResources: 0
|
||||||
@@ -52,6 +51,7 @@ PlayerSettings:
|
|||||||
m_StackTraceTypes: 010000000100000001000000010000000100000001000000
|
m_StackTraceTypes: 010000000100000001000000010000000100000001000000
|
||||||
iosShowActivityIndicatorOnLoading: -1
|
iosShowActivityIndicatorOnLoading: -1
|
||||||
androidShowActivityIndicatorOnLoading: -1
|
androidShowActivityIndicatorOnLoading: -1
|
||||||
|
tizenShowActivityIndicatorOnLoading: -1
|
||||||
iosAppInBackgroundBehavior: 0
|
iosAppInBackgroundBehavior: 0
|
||||||
displayResolutionDialog: 1
|
displayResolutionDialog: 1
|
||||||
iosAllowHTTPDownload: 1
|
iosAllowHTTPDownload: 1
|
||||||
@@ -63,9 +63,8 @@ PlayerSettings:
|
|||||||
use32BitDisplayBuffer: 1
|
use32BitDisplayBuffer: 1
|
||||||
preserveFramebufferAlpha: 0
|
preserveFramebufferAlpha: 0
|
||||||
disableDepthAndStencilBuffers: 0
|
disableDepthAndStencilBuffers: 0
|
||||||
androidStartInFullscreen: 1
|
|
||||||
androidRenderOutsideSafeArea: 0
|
|
||||||
androidBlitType: 0
|
androidBlitType: 0
|
||||||
|
defaultIsFullScreen: 1
|
||||||
defaultIsNativeResolution: 1
|
defaultIsNativeResolution: 1
|
||||||
macRetinaSupport: 1
|
macRetinaSupport: 1
|
||||||
runInBackground: 0
|
runInBackground: 0
|
||||||
@@ -92,12 +91,16 @@ PlayerSettings:
|
|||||||
visibleInBackground: 1
|
visibleInBackground: 1
|
||||||
allowFullscreenSwitch: 1
|
allowFullscreenSwitch: 1
|
||||||
graphicsJobMode: 0
|
graphicsJobMode: 0
|
||||||
fullscreenMode: 1
|
macFullscreenMode: 2
|
||||||
|
d3d11FullscreenMode: 1
|
||||||
xboxSpeechDB: 0
|
xboxSpeechDB: 0
|
||||||
xboxEnableHeadOrientation: 0
|
xboxEnableHeadOrientation: 0
|
||||||
xboxEnableGuest: 0
|
xboxEnableGuest: 0
|
||||||
xboxEnablePIXSampling: 0
|
xboxEnablePIXSampling: 0
|
||||||
metalFramebufferOnly: 0
|
metalFramebufferOnly: 0
|
||||||
|
n3dsDisableStereoscopicView: 0
|
||||||
|
n3dsEnableSharedListOpt: 1
|
||||||
|
n3dsEnableVSync: 0
|
||||||
xboxOneResolution: 0
|
xboxOneResolution: 0
|
||||||
xboxOneSResolution: 0
|
xboxOneSResolution: 0
|
||||||
xboxOneXResolution: 3
|
xboxOneXResolution: 3
|
||||||
@@ -105,13 +108,18 @@ PlayerSettings:
|
|||||||
xboxOneLoggingLevel: 1
|
xboxOneLoggingLevel: 1
|
||||||
xboxOneDisableEsram: 0
|
xboxOneDisableEsram: 0
|
||||||
xboxOnePresentImmediateThreshold: 0
|
xboxOnePresentImmediateThreshold: 0
|
||||||
switchQueueCommandMemory: 1048576
|
videoMemoryForVertexBuffers: 0
|
||||||
switchQueueControlMemory: 16384
|
psp2PowerMode: 0
|
||||||
switchQueueComputeMemory: 262144
|
psp2AcquireBGM: 1
|
||||||
switchNVNShaderPoolsGranularity: 33554432
|
wiiUTVResolution: 0
|
||||||
switchNVNDefaultPoolsGranularity: 16777216
|
wiiUGamePadMSAA: 1
|
||||||
switchNVNOtherPoolsGranularity: 16777216
|
wiiUSupportsNunchuk: 0
|
||||||
vulkanEnableSetSRGBWrite: 0
|
wiiUSupportsClassicController: 0
|
||||||
|
wiiUSupportsBalanceBoard: 0
|
||||||
|
wiiUSupportsMotionPlus: 0
|
||||||
|
wiiUSupportsProController: 0
|
||||||
|
wiiUAllowScreenCapture: 1
|
||||||
|
wiiUControllerCount: 0
|
||||||
m_SupportedAspectRatios:
|
m_SupportedAspectRatios:
|
||||||
4:3: 1
|
4:3: 1
|
||||||
5:4: 1
|
5:4: 1
|
||||||
@@ -125,7 +133,6 @@ PlayerSettings:
|
|||||||
m_HolographicPauseOnTrackingLoss: 1
|
m_HolographicPauseOnTrackingLoss: 1
|
||||||
xboxOneDisableKinectGpuReservation: 0
|
xboxOneDisableKinectGpuReservation: 0
|
||||||
xboxOneEnable7thCore: 0
|
xboxOneEnable7thCore: 0
|
||||||
isWsaHolographicRemotingEnabled: 0
|
|
||||||
vrSettings:
|
vrSettings:
|
||||||
cardboard:
|
cardboard:
|
||||||
depthFormat: 0
|
depthFormat: 0
|
||||||
@@ -143,9 +150,7 @@ PlayerSettings:
|
|||||||
oculus:
|
oculus:
|
||||||
sharedDepthBuffer: 1
|
sharedDepthBuffer: 1
|
||||||
dashSupport: 1
|
dashSupport: 1
|
||||||
enable360StereoCapture: 0
|
|
||||||
protectGraphicsMemory: 0
|
protectGraphicsMemory: 0
|
||||||
enableFrameTimingStats: 0
|
|
||||||
useHDRDisplay: 0
|
useHDRDisplay: 0
|
||||||
m_ColorGamuts: 00000000
|
m_ColorGamuts: 00000000
|
||||||
targetPixelDensity: 30
|
targetPixelDensity: 30
|
||||||
@@ -169,7 +174,9 @@ PlayerSettings:
|
|||||||
APKExpansionFiles: 0
|
APKExpansionFiles: 0
|
||||||
keepLoadedShadersAlive: 0
|
keepLoadedShadersAlive: 0
|
||||||
StripUnusedMeshComponents: 0
|
StripUnusedMeshComponents: 0
|
||||||
VertexChannelCompressionMask: 214
|
VertexChannelCompressionMask:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 4294901998
|
||||||
iPhoneSdkVersion: 988
|
iPhoneSdkVersion: 988
|
||||||
iOSTargetOSVersionString: 9.0
|
iOSTargetOSVersionString: 9.0
|
||||||
tvOSSdkVersion: 0
|
tvOSSdkVersion: 0
|
||||||
@@ -198,7 +205,6 @@ PlayerSettings:
|
|||||||
tvOSSmallIconLayers: []
|
tvOSSmallIconLayers: []
|
||||||
tvOSSmallIconLayers2x: []
|
tvOSSmallIconLayers2x: []
|
||||||
tvOSLargeIconLayers: []
|
tvOSLargeIconLayers: []
|
||||||
tvOSLargeIconLayers2x: []
|
|
||||||
tvOSTopShelfImageLayers: []
|
tvOSTopShelfImageLayers: []
|
||||||
tvOSTopShelfImageLayers2x: []
|
tvOSTopShelfImageLayers2x: []
|
||||||
tvOSTopShelfImageWideLayers: []
|
tvOSTopShelfImageWideLayers: []
|
||||||
@@ -232,21 +238,13 @@ PlayerSettings:
|
|||||||
appleDeveloperTeamID:
|
appleDeveloperTeamID:
|
||||||
iOSManualSigningProvisioningProfileID:
|
iOSManualSigningProvisioningProfileID:
|
||||||
tvOSManualSigningProvisioningProfileID:
|
tvOSManualSigningProvisioningProfileID:
|
||||||
iOSManualSigningProvisioningProfileType: 0
|
|
||||||
tvOSManualSigningProvisioningProfileType: 0
|
|
||||||
appleEnableAutomaticSigning: 0
|
appleEnableAutomaticSigning: 0
|
||||||
iOSRequireARKit: 0
|
|
||||||
iOSAutomaticallyDetectAndAddCapabilities: 1
|
|
||||||
appleEnableProMotion: 0
|
|
||||||
clonedFromGUID: 00000000000000000000000000000000
|
clonedFromGUID: 00000000000000000000000000000000
|
||||||
templatePackageId:
|
|
||||||
templateDefaultScene:
|
|
||||||
AndroidTargetArchitectures: 5
|
AndroidTargetArchitectures: 5
|
||||||
AndroidSplashScreenScale: 0
|
AndroidSplashScreenScale: 0
|
||||||
androidSplashScreen: {fileID: 0}
|
androidSplashScreen: {fileID: 0}
|
||||||
AndroidKeystoreName:
|
AndroidKeystoreName:
|
||||||
AndroidKeyaliasName:
|
AndroidKeyaliasName:
|
||||||
AndroidBuildApkPerCpuArchitecture: 0
|
|
||||||
AndroidTVCompatibility: 1
|
AndroidTVCompatibility: 1
|
||||||
AndroidIsGame: 1
|
AndroidIsGame: 1
|
||||||
AndroidEnableTango: 0
|
AndroidEnableTango: 0
|
||||||
@@ -259,7 +257,6 @@ PlayerSettings:
|
|||||||
androidGamepadSupportLevel: 0
|
androidGamepadSupportLevel: 0
|
||||||
resolutionDialogBanner: {fileID: 0}
|
resolutionDialogBanner: {fileID: 0}
|
||||||
m_BuildTargetIcons: []
|
m_BuildTargetIcons: []
|
||||||
m_BuildTargetPlatformIcons: []
|
|
||||||
m_BuildTargetBatching: []
|
m_BuildTargetBatching: []
|
||||||
m_BuildTargetGraphicsAPIs: []
|
m_BuildTargetGraphicsAPIs: []
|
||||||
m_BuildTargetVRSettings: []
|
m_BuildTargetVRSettings: []
|
||||||
@@ -278,9 +275,25 @@ PlayerSettings:
|
|||||||
m_EncodingQuality: 1
|
m_EncodingQuality: 1
|
||||||
- m_BuildTarget: PS4
|
- m_BuildTarget: PS4
|
||||||
m_EncodingQuality: 1
|
m_EncodingQuality: 1
|
||||||
m_BuildTargetGroupLightmapSettings: []
|
wiiUTitleID: 0005000011000000
|
||||||
|
wiiUGroupID: 00010000
|
||||||
|
wiiUCommonSaveSize: 4096
|
||||||
|
wiiUAccountSaveSize: 2048
|
||||||
|
wiiUOlvAccessKey: 0
|
||||||
|
wiiUTinCode: 0
|
||||||
|
wiiUJoinGameId: 0
|
||||||
|
wiiUJoinGameModeMask: 0000000000000000
|
||||||
|
wiiUCommonBossSize: 0
|
||||||
|
wiiUAccountBossSize: 0
|
||||||
|
wiiUAddOnUniqueIDs: []
|
||||||
|
wiiUMainThreadStackSize: 3072
|
||||||
|
wiiULoaderThreadStackSize: 1024
|
||||||
|
wiiUSystemHeapSize: 128
|
||||||
|
wiiUTVStartupScreen: {fileID: 0}
|
||||||
|
wiiUGamePadStartupScreen: {fileID: 0}
|
||||||
|
wiiUDrcBufferDisabled: 0
|
||||||
|
wiiUProfilerLibPath:
|
||||||
playModeTestRunnerEnabled: 0
|
playModeTestRunnerEnabled: 0
|
||||||
runPlayModeTestAsEditModeTest: 0
|
|
||||||
actionOnDotNetUnhandledException: 1
|
actionOnDotNetUnhandledException: 1
|
||||||
enableInternalProfiler: 0
|
enableInternalProfiler: 0
|
||||||
logObjCUncaughtExceptions: 1
|
logObjCUncaughtExceptions: 1
|
||||||
@@ -401,11 +414,7 @@ PlayerSettings:
|
|||||||
switchAllowsRuntimeAddOnContentInstall: 0
|
switchAllowsRuntimeAddOnContentInstall: 0
|
||||||
switchDataLossConfirmation: 0
|
switchDataLossConfirmation: 0
|
||||||
switchUserAccountLockEnabled: 0
|
switchUserAccountLockEnabled: 0
|
||||||
switchSystemResourceMemory: 16777216
|
|
||||||
switchSupportedNpadStyles: 3
|
switchSupportedNpadStyles: 3
|
||||||
switchNativeFsCacheSize: 32
|
|
||||||
switchIsHoldTypeHorizontal: 0
|
|
||||||
switchSupportedNpadCount: 8
|
|
||||||
switchSocketConfigEnabled: 0
|
switchSocketConfigEnabled: 0
|
||||||
switchTcpInitialSendBufferSize: 32
|
switchTcpInitialSendBufferSize: 32
|
||||||
switchTcpInitialReceiveBufferSize: 64
|
switchTcpInitialReceiveBufferSize: 64
|
||||||
@@ -461,8 +470,6 @@ PlayerSettings:
|
|||||||
ps4pnFriends: 1
|
ps4pnFriends: 1
|
||||||
ps4pnGameCustomData: 1
|
ps4pnGameCustomData: 1
|
||||||
playerPrefsSupport: 0
|
playerPrefsSupport: 0
|
||||||
enableApplicationExit: 0
|
|
||||||
resetTempFolder: 1
|
|
||||||
restrictedAudioUsageRights: 0
|
restrictedAudioUsageRights: 0
|
||||||
ps4UseResolutionFallback: 0
|
ps4UseResolutionFallback: 0
|
||||||
ps4ReprojectionSupport: 0
|
ps4ReprojectionSupport: 0
|
||||||
@@ -486,6 +493,54 @@ PlayerSettings:
|
|||||||
ps4attribEyeToEyeDistanceSettingVR: 0
|
ps4attribEyeToEyeDistanceSettingVR: 0
|
||||||
ps4IncludedModules: []
|
ps4IncludedModules: []
|
||||||
monoEnv:
|
monoEnv:
|
||||||
|
psp2Splashimage: {fileID: 0}
|
||||||
|
psp2NPTrophyPackPath:
|
||||||
|
psp2NPSupportGBMorGJP: 0
|
||||||
|
psp2NPAgeRating: 12
|
||||||
|
psp2NPTitleDatPath:
|
||||||
|
psp2NPCommsID:
|
||||||
|
psp2NPCommunicationsID:
|
||||||
|
psp2NPCommsPassphrase:
|
||||||
|
psp2NPCommsSig:
|
||||||
|
psp2ParamSfxPath:
|
||||||
|
psp2ManualPath:
|
||||||
|
psp2LiveAreaGatePath:
|
||||||
|
psp2LiveAreaBackroundPath:
|
||||||
|
psp2LiveAreaPath:
|
||||||
|
psp2LiveAreaTrialPath:
|
||||||
|
psp2PatchChangeInfoPath:
|
||||||
|
psp2PatchOriginalPackage:
|
||||||
|
psp2PackagePassword: 5PN2qmWqBlQ9wQj99nsQzldVI5ZuGXbE
|
||||||
|
psp2KeystoneFile:
|
||||||
|
psp2MemoryExpansionMode: 0
|
||||||
|
psp2DRMType: 0
|
||||||
|
psp2StorageType: 0
|
||||||
|
psp2MediaCapacity: 0
|
||||||
|
psp2DLCConfigPath:
|
||||||
|
psp2ThumbnailPath:
|
||||||
|
psp2BackgroundPath:
|
||||||
|
psp2SoundPath:
|
||||||
|
psp2TrophyCommId:
|
||||||
|
psp2TrophyPackagePath:
|
||||||
|
psp2PackagedResourcesPath:
|
||||||
|
psp2SaveDataQuota: 10240
|
||||||
|
psp2ParentalLevel: 1
|
||||||
|
psp2ShortTitle: Not Set
|
||||||
|
psp2ContentID: IV0000-ABCD12345_00-0123456789ABCDEF
|
||||||
|
psp2Category: 0
|
||||||
|
psp2MasterVersion: 01.00
|
||||||
|
psp2AppVersion: 01.00
|
||||||
|
psp2TVBootMode: 0
|
||||||
|
psp2EnterButtonAssignment: 2
|
||||||
|
psp2TVDisableEmu: 0
|
||||||
|
psp2AllowTwitterDialog: 1
|
||||||
|
psp2Upgradable: 0
|
||||||
|
psp2HealthWarning: 0
|
||||||
|
psp2UseLibLocation: 0
|
||||||
|
psp2InfoBarOnStartup: 0
|
||||||
|
psp2InfoBarColor: 0
|
||||||
|
psp2ScriptOptimizationLevel: 0
|
||||||
|
psmSplashimage: {fileID: 0}
|
||||||
splashScreenBackgroundSourceLandscape: {fileID: 0}
|
splashScreenBackgroundSourceLandscape: {fileID: 0}
|
||||||
splashScreenBackgroundSourcePortrait: {fileID: 0}
|
splashScreenBackgroundSourcePortrait: {fileID: 0}
|
||||||
spritePackerPolicy:
|
spritePackerPolicy:
|
||||||
@@ -499,16 +554,12 @@ PlayerSettings:
|
|||||||
webGLTemplate: APPLICATION:Default
|
webGLTemplate: APPLICATION:Default
|
||||||
webGLAnalyzeBuildSize: 0
|
webGLAnalyzeBuildSize: 0
|
||||||
webGLUseEmbeddedResources: 0
|
webGLUseEmbeddedResources: 0
|
||||||
|
webGLUseWasm: 0
|
||||||
webGLCompressionFormat: 1
|
webGLCompressionFormat: 1
|
||||||
webGLLinkerTarget: 1
|
|
||||||
webGLThreadsSupport: 0
|
|
||||||
scriptingDefineSymbols: {}
|
scriptingDefineSymbols: {}
|
||||||
platformArchitecture: {}
|
platformArchitecture: {}
|
||||||
scriptingBackend: {}
|
scriptingBackend: {}
|
||||||
il2cppCompilerConfiguration: {}
|
|
||||||
managedStrippingLevel: {}
|
|
||||||
incrementalIl2cppBuild: {}
|
incrementalIl2cppBuild: {}
|
||||||
allowUnsafeCode: 0
|
|
||||||
additionalIl2CppArgs:
|
additionalIl2CppArgs:
|
||||||
scriptingRuntimeVersion: 0
|
scriptingRuntimeVersion: 0
|
||||||
apiCompatibilityLevelPerPlatform: {}
|
apiCompatibilityLevelPerPlatform: {}
|
||||||
@@ -524,12 +575,11 @@ PlayerSettings:
|
|||||||
metroApplicationDescription: XChart
|
metroApplicationDescription: XChart
|
||||||
wsaImages: {}
|
wsaImages: {}
|
||||||
metroTileShortName:
|
metroTileShortName:
|
||||||
|
metroCommandLineArgsFile:
|
||||||
metroTileShowName: 0
|
metroTileShowName: 0
|
||||||
metroMediumTileShowName: 0
|
metroMediumTileShowName: 0
|
||||||
metroLargeTileShowName: 0
|
metroLargeTileShowName: 0
|
||||||
metroWideTileShowName: 0
|
metroWideTileShowName: 0
|
||||||
metroSupportStreamingInstall: 0
|
|
||||||
metroLastRequiredScene: 0
|
|
||||||
metroDefaultTileSize: 1
|
metroDefaultTileSize: 1
|
||||||
metroTileForegroundText: 2
|
metroTileForegroundText: 2
|
||||||
metroTileBackgroundColor: {r: 0.13333334, g: 0.17254902, b: 0.21568628, a: 0}
|
metroTileBackgroundColor: {r: 0.13333334, g: 0.17254902, b: 0.21568628, a: 0}
|
||||||
@@ -537,11 +587,29 @@ PlayerSettings:
|
|||||||
a: 1}
|
a: 1}
|
||||||
metroSplashScreenUseBackgroundColor: 0
|
metroSplashScreenUseBackgroundColor: 0
|
||||||
platformCapabilities: {}
|
platformCapabilities: {}
|
||||||
metroTargetDeviceFamilies: {}
|
|
||||||
metroFTAName:
|
metroFTAName:
|
||||||
metroFTAFileTypes: []
|
metroFTAFileTypes: []
|
||||||
metroProtocolName:
|
metroProtocolName:
|
||||||
metroCompilationOverrides: 1
|
metroCompilationOverrides: 1
|
||||||
|
tizenProductDescription:
|
||||||
|
tizenProductURL:
|
||||||
|
tizenSigningProfileName:
|
||||||
|
tizenGPSPermissions: 0
|
||||||
|
tizenMicrophonePermissions: 0
|
||||||
|
tizenDeploymentTarget:
|
||||||
|
tizenDeploymentTargetType: -1
|
||||||
|
tizenMinOSVersion: 1
|
||||||
|
n3dsUseExtSaveData: 0
|
||||||
|
n3dsCompressStaticMem: 1
|
||||||
|
n3dsExtSaveDataNumber: 0x12345
|
||||||
|
n3dsStackSize: 131072
|
||||||
|
n3dsTargetPlatform: 2
|
||||||
|
n3dsRegion: 7
|
||||||
|
n3dsMediaSize: 0
|
||||||
|
n3dsLogoStyle: 3
|
||||||
|
n3dsTitle: GameName
|
||||||
|
n3dsProductCode:
|
||||||
|
n3dsApplicationId: 0xFF3FF
|
||||||
XboxOneProductId:
|
XboxOneProductId:
|
||||||
XboxOneUpdateKey:
|
XboxOneUpdateKey:
|
||||||
XboxOneSandboxId:
|
XboxOneSandboxId:
|
||||||
@@ -551,7 +619,6 @@ PlayerSettings:
|
|||||||
XboxOneGameOsOverridePath:
|
XboxOneGameOsOverridePath:
|
||||||
XboxOnePackagingOverridePath:
|
XboxOnePackagingOverridePath:
|
||||||
XboxOneAppManifestOverridePath:
|
XboxOneAppManifestOverridePath:
|
||||||
XboxOneVersion: 1.0.0.0
|
|
||||||
XboxOnePackageEncryption: 0
|
XboxOnePackageEncryption: 0
|
||||||
XboxOnePackageUpdateGranularity: 2
|
XboxOnePackageUpdateGranularity: 2
|
||||||
XboxOneDescription:
|
XboxOneDescription:
|
||||||
@@ -567,36 +634,16 @@ PlayerSettings:
|
|||||||
XboxOnePersistentLocalStorageSize: 0
|
XboxOnePersistentLocalStorageSize: 0
|
||||||
XboxOneXTitleMemory: 8
|
XboxOneXTitleMemory: 8
|
||||||
xboxOneScriptCompiler: 0
|
xboxOneScriptCompiler: 0
|
||||||
XboxOneOverrideIdentityName:
|
|
||||||
vrEditorSettings:
|
vrEditorSettings:
|
||||||
daydream:
|
daydream:
|
||||||
daydreamIconForeground: {fileID: 0}
|
daydreamIconForeground: {fileID: 0}
|
||||||
daydreamIconBackground: {fileID: 0}
|
daydreamIconBackground: {fileID: 0}
|
||||||
cloudServicesEnabled: {}
|
cloudServicesEnabled: {}
|
||||||
luminIcon:
|
|
||||||
m_Name:
|
|
||||||
m_ModelFolderPath:
|
|
||||||
m_PortalFolderPath:
|
|
||||||
luminCert:
|
|
||||||
m_CertPath:
|
|
||||||
m_PrivateKeyPath:
|
|
||||||
luminIsChannelApp: 0
|
|
||||||
luminVersion:
|
|
||||||
m_VersionCode: 1
|
|
||||||
m_VersionName:
|
|
||||||
facebookSdkVersion: 7.9.4
|
facebookSdkVersion: 7.9.4
|
||||||
facebookAppId:
|
apiCompatibilityLevel: 3
|
||||||
facebookCookies: 1
|
|
||||||
facebookLogging: 1
|
|
||||||
facebookStatus: 1
|
|
||||||
facebookXfbml: 0
|
|
||||||
facebookFrictionlessRequests: 1
|
|
||||||
apiCompatibilityLevel: 6
|
|
||||||
cloudProjectId: 3b1850f7-c289-4929-a842-faf5ef85f8ca
|
cloudProjectId: 3b1850f7-c289-4929-a842-faf5ef85f8ca
|
||||||
framebufferDepthMemorylessMode: 0
|
|
||||||
projectName: XChart
|
projectName: XChart
|
||||||
organizationId: huang-qingzhen
|
organizationId: huang-qingzhen
|
||||||
cloudEnabled: 0
|
cloudEnabled: 0
|
||||||
enableNativePlatformBackendsForNewInputSystem: 0
|
enableNativePlatformBackendsForNewInputSystem: 0
|
||||||
disableOldInputManagerSupport: 0
|
disableOldInputManagerSupport: 0
|
||||||
legacyClampBlendShapeWeights: 1
|
|
||||||
|
|||||||
Reference in New Issue
Block a user