77 lines
1.9 KiB
C#
77 lines
1.9 KiB
C#
|
|
using UnityEngine;
|
|||
|
|
using UnityEngine.UI;
|
|||
|
|
using QFramework;
|
|||
|
|
using System;
|
|||
|
|
|
|||
|
|
namespace QFramework.Example
|
|||
|
|
{
|
|||
|
|
public class UIBody3DMouseData : UIPanelData
|
|||
|
|
{
|
|||
|
|
}
|
|||
|
|
public partial class UIBody3DMouse : UIPanel
|
|||
|
|
{
|
|||
|
|
UIDragItem dragItem;
|
|||
|
|
protected override void OnInit(IUIData uiData = null)
|
|||
|
|
{
|
|||
|
|
mData = uiData as UIBody3DMouseData ?? new UIBody3DMouseData();
|
|||
|
|
dragItem = Content.GetComponent<UIDragItem>();
|
|||
|
|
|
|||
|
|
SelectBtn.onClick.AddListener(() =>
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
private void OnEndDrag()
|
|||
|
|
{
|
|||
|
|
Show3DCamera.instance.lockMove = false;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
private void OnBeginDrag()
|
|||
|
|
{
|
|||
|
|
Show3DCamera.instance.lockMove = true;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
protected override void OnOpen(IUIData uiData = null)
|
|||
|
|
{
|
|||
|
|
dragItem?.OnBeginDragEvent.AddListener(OnBeginDrag);
|
|||
|
|
dragItem?.OnEndDragEvent.AddListener(OnEndDrag);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
private void Update()
|
|||
|
|
{
|
|||
|
|
if (Point != null && Camera.main != null)
|
|||
|
|
{
|
|||
|
|
// <20><>ȡImage<67><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD><C4B5><EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD>
|
|||
|
|
Vector2 imageCenter = new Vector2(Point.rectTransform.position.x, Point.rectTransform.position.y);
|
|||
|
|
|
|||
|
|
// <20><><EFBFBD><EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>
|
|||
|
|
Ray ray = Camera.main.ScreenPointToRay(imageCenter);
|
|||
|
|
RaycastHit hit;
|
|||
|
|
|
|||
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><DFBC><EFBFBD>
|
|||
|
|
if (Physics.Raycast(ray, out hit))
|
|||
|
|
{
|
|||
|
|
// <20><>ӡ<EFBFBD><D3A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
Debug.LogError("<22><><EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: " + hit.collider.gameObject.name);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
protected override void OnShow()
|
|||
|
|
{
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
protected override void OnHide()
|
|||
|
|
{
|
|||
|
|
dragItem?.OnBeginDragEvent.RemoveListener(OnBeginDrag);
|
|||
|
|
dragItem?.OnEndDragEvent.RemoveListener(OnEndDrag);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
protected override void OnClose()
|
|||
|
|
{
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|