graph chart引入&骑行结果弹窗
This commit is contained in:
1 parent
40d118cea3
commit
96f3644b5b
2374 files changed
+485161
-2410
No files matched your search
@@ -143,8 +143,12 @@ namespace Assets.Scenes.Ride.Scripts
|
||||
UIManager.AddEvent(cancelQuitButton.gameObject, UnityEngine.EventSystems.EventTriggerType.PointerClick, CancelQuit);
|
||||
UIManager.AddEvent(closeQuitButton.gameObject, UnityEngine.EventSystems.EventTriggerType.PointerClick, CloseQuit);
|
||||
UIManager.AddEvent(viewButton.gameObject, UnityEngine.EventSystems.EventTriggerType.PointerClick, ChangeView);
|
||||
UIManager.AddEvent(singleButton.gameObject, UnityEngine.EventSystems.EventTriggerType.PointerEnter, OnPointEnter);
|
||||
UIManager.AddEvent(shadowButton.gameObject, UnityEngine.EventSystems.EventTriggerType.PointerEnter, OnPointEnter);
|
||||
UIManager.AddEvent(singleButton.gameObject, UnityEngine.EventSystems.EventTriggerType.PointerExit, OnPointExit);
|
||||
UIManager.AddEvent(shadowButton.gameObject, UnityEngine.EventSystems.EventTriggerType.PointerExit, OnPointExit);
|
||||
|
||||
|
||||
|
||||
//startBtn.onClick.AddListener(StartRide);
|
||||
//simpleBtn.onClick.AddListener(ClearPanel);
|
||||
//pauseButton.onClick.AddListener(PauseRide);
|
||||
@@ -160,6 +164,29 @@ namespace Assets.Scenes.Ride.Scripts
|
||||
#endregion
|
||||
}
|
||||
|
||||
float? localY;
|
||||
void OnPointEnter(BaseEventData pointerEventData)
|
||||
{
|
||||
var button = ((PointerEventData)pointerEventData).pointerEnter.GetComponent<Button>();
|
||||
if (button != null)
|
||||
{
|
||||
var enterTransform = button.transform;
|
||||
if (localY == null)
|
||||
{
|
||||
localY = enterTransform.localPosition.y;
|
||||
}
|
||||
enterTransform.DOLocalMoveY(localY.Value + 5f, 0.5f);
|
||||
}
|
||||
}
|
||||
void OnPointExit(BaseEventData pointerEventData)
|
||||
{
|
||||
var button =((PointerEventData)pointerEventData).pointerEnter.GetComponent<Button>();
|
||||
if (button != null)
|
||||
{
|
||||
var enterTransform = button.transform;
|
||||
enterTransform.DOLocalMoveY(localY.Value, 0.5f);
|
||||
}
|
||||
}
|
||||
void Start()
|
||||
{
|
||||
playerController = FindObjectOfType<PlayerController>();
|
||||
@@ -293,13 +320,16 @@ namespace Assets.Scenes.Ride.Scripts
|
||||
}
|
||||
private void SaveRide(BaseEventData baseEventData)
|
||||
{
|
||||
mainController.SetQuit();
|
||||
if (playerController.TotalTicks > 0 && !mainController.isQuit )
|
||||
{
|
||||
mainController.SetQuit();
|
||||
playerController.Upload();
|
||||
quitPanel.SetActive(false);
|
||||
}
|
||||
SceneManager.LoadScene("MainScene");
|
||||
else
|
||||
{
|
||||
SceneManager.LoadScene("MainScene");
|
||||
}
|
||||
}
|
||||
private void CancelQuit(BaseEventData baseEventData)
|
||||
{
|
||||
@@ -367,35 +397,54 @@ namespace Assets.Scenes.Ride.Scripts
|
||||
//初始化海拔图
|
||||
void RenderChart()
|
||||
{
|
||||
elevationChart.ClearData();
|
||||
elevationList = mainController.GetLineChartData();
|
||||
totalCount = elevationList.Length;
|
||||
maxCacheDataNumber = Math.Min(totalCount, maxCacheDataNumber);
|
||||
elevationChart.SetMaxCache(maxCacheDataNumber);
|
||||
//elevationChart.ClearData();
|
||||
//elevationList = mainController.GetLineChartData();
|
||||
//totalCount = elevationList.Length;
|
||||
//maxCacheDataNumber = Math.Min(totalCount, maxCacheDataNumber);
|
||||
//elevationChart.SetMaxCache(maxCacheDataNumber);
|
||||
////for (int i = 0; i < maxCacheDataNumber; i++)
|
||||
////{
|
||||
//// elevationChart.AddData(0, elevationList[i]);
|
||||
////}
|
||||
////elevationChart.RefreshChart();
|
||||
//ElevationToScreenPoint();
|
||||
//var endIndex = playerController.CurrentIndex;
|
||||
//var s = endIndex / maxCacheDataNumber;
|
||||
//var v = endIndex % maxCacheDataNumber;
|
||||
|
||||
//maxCacheDataNumber = Math.Min(totalCount-s* maxCacheDataNumber, maxCacheDataNumber);
|
||||
|
||||
//for (int i = 0; i < maxCacheDataNumber; i++)
|
||||
//{
|
||||
// elevationChart.AddData(0, elevationList[i]);
|
||||
// initCount++;
|
||||
// if (initCount > maxCacheDataNumber) break;
|
||||
// AddOneData(s * maxCacheDataNumber + v + i);
|
||||
//}
|
||||
//elevationChart.RefreshChart();
|
||||
ElevationToScreenPoint();
|
||||
var endIndex = playerController.CurrentIndex;
|
||||
var s = endIndex / maxCacheDataNumber;
|
||||
var v = endIndex % maxCacheDataNumber;
|
||||
|
||||
maxCacheDataNumber = Math.Min(totalCount-s* maxCacheDataNumber, maxCacheDataNumber);
|
||||
|
||||
for (int i = 0; i < maxCacheDataNumber; i++)
|
||||
//elevationChart.RefreshChart();
|
||||
var mapData = mainController.GetMapData();
|
||||
double x = 0;
|
||||
Dictionary<double, double> dataSource = new Dictionary<double, double>();
|
||||
List<double> dd = new List<double>();
|
||||
var one = mapData.List.Where(c => c.Distance == 0).Count();
|
||||
foreach (var item in mapData.List)
|
||||
{
|
||||
initCount++;
|
||||
if (initCount > maxCacheDataNumber) break;
|
||||
AddOneData(s * maxCacheDataNumber + v + i);
|
||||
x += item.Distance;
|
||||
if (!dataSource.ContainsKey(x))
|
||||
{
|
||||
dataSource.Add(x, item.Elevation);
|
||||
}
|
||||
dd.Add(item.Elevation);
|
||||
}
|
||||
|
||||
elevationChart.RefreshChart();
|
||||
var sc = transform.Find("Panel/GraphChart").GetComponent<ChartDataSourceScript>();
|
||||
sc.SetDataSource(dd.ToArray());
|
||||
|
||||
if (App.CurrentUser != null)
|
||||
{
|
||||
Utils.DisplayImage(StartCoroutine, img, App.CurrentUser.WxHeadImg);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
//长路线动态更新chart
|
||||
private int initCount;
|
||||
|
||||
Reference in new issue
Block a user