当前位置: 首页 > news >正文

建设银行 北京招聘网站看那种片哪个网站好用

建设银行 北京招聘网站,看那种片哪个网站好用,软件开发费和网站建设,企业qq收费标准获得视口宽高 拖动视口会改变屏幕宽高数值 MousePosition 屏幕坐标系的原点在左下角,MousePosition返回Z为0也就是纵深为0的Vector3 但是如果鼠标超出屏幕范围不会做限制,所以可能出现负数或者大于屏幕宽高的情况,做鼠标拖拽物体时需要注…

获得视口宽高

拖动视口会改变屏幕宽高数值
在这里插入图片描述

MousePosition

屏幕坐标系的原点在左下角,MousePosition返回Z为0也就是纵深为0的Vector3

但是如果鼠标超出屏幕范围不会做限制,所以可能出现负数或者大于屏幕宽高的情况,做鼠标拖拽物体时需要注意是否需要跟随超出屏幕
在这里插入图片描述
下面这个写法是不对的,获得鼠标的屏幕位置纵深将一直为0,屏幕坐标转世界坐标其实是根据距离摄像机的平面确定的(z轴),所以需要先确定z轴后转世界坐标系

GetMouseWorldPosition = Camera.main.ScreenToWorldPoint(GetMousePosition);

利用射线检测物体转屏幕坐标

不会出现超出屏幕坐标系的情况

if (Physics.Raycast(Camera.main.ScreenPointToRay(Input.mousePosition), out RaycastHit hit))
{GetObjectPosition = Camera.main.WorldToScreenPoint(hit.point);
}

获得带纵深的屏幕坐标系,xy值为根据屏幕大小决定,z为距离摄像机的位置与本身的世界坐标系z无关
在这里插入图片描述

UI坐标

Canvas的世界坐标z值是距离摄像机的距离,那么子物体的世界坐标z值也是与摄像机的距离
在这里插入图片描述

实现拖曳UI

屏幕坐标XY是根据屏幕宽高决定,Z是相对摄像机的距离,将屏幕坐标看成一个个屏幕即可
世界坐标是根据世界原点确定,与屏幕坐标的Z值参考不一样

using UnityEngine;
using UnityEngine.EventSystems;[RequireComponent(typeof(EventTrigger))]
public class DragUI : MonoBehaviour
{private EventTrigger m_eventTrigger;private RectTransform m_rectTransform;private Vector3 m_targetPosition;private Vector3 m_offsetPosition;void Start(){m_eventTrigger = GetComponent<EventTrigger>();m_rectTransform = GetComponent<RectTransform>();EventTrigger.Entry onDragEntry = new EventTrigger.Entry();onDragEntry.eventID = EventTriggerType.Drag;onDragEntry.callback.AddListener((data) => { OnDrag(); });EventTrigger.Entry enterDragEntry = new EventTrigger.Entry();enterDragEntry.eventID = EventTriggerType.BeginDrag;enterDragEntry.callback.AddListener((data) => { EnterDrag(); });m_eventTrigger.triggers.Add(onDragEntry);m_eventTrigger.triggers.Add(enterDragEntry);}private void EnterDrag(){m_offsetPosition = GetScreenMousePosition() - m_rectTransform.transform.position;}// 拖拽时移动UIprivate void OnDrag(){// 屏幕坐标转世界坐标m_targetPosition = GetScreenMousePosition();m_rectTransform.transform.position = m_targetPosition - m_offsetPosition;}// 获得鼠标世界坐标private Vector3 GetScreenMousePosition(){// 与摄像机的距离float distanceCamera = m_rectTransform.transform.position.z;// 鼠标位置(确定了平面的Z)Vector3 screenMousePos = Input.mousePosition + new Vector3(0f, 0f, distanceCamera);// 屏幕坐标转世界坐标Vector3 worldMousePos = Camera.main.ScreenToWorldPoint(screenMousePos);Debug.Log(worldMousePos);return worldMousePos;}
}
http://www.yayakq.cn/news/645466/

相关文章:

  • python网站开发案例wordpress改 cms
  • 统一手机网站西宁网站建设报价
  • 宁夏网站设计在哪里郑州网站建设公司咨询
  • 专业模板建站价格用dw做网站的菜单栏
  • 好站站网站建设做网站多钱
  • 网站建设优秀网推广合作
  • 939网站建设陕西咸阳网站建设
  • 怎么做百度联盟网站科技九洲君
  • 佛山家居企业网站建设微信运营推广方式
  • 做网站优化有什么途径大兴模版网站搭建哪家好
  • 南京建设局的网站wordpress与阿里服务器区分
  • 网络调查问卷在哪个网站做深南花园裙楼 网站建设
  • 设计商业网站应该做到什么网络服务推广
  • 广西建设学院网站首页wordpress+android
  • 免费网站排名优化软件网站建设数据中心
  • 网站建设柒金手指下拉二一网页设计公司网站设计
  • wordpress主机模板嘉兴网站关键字优化
  • 专做电子产品评测的网站百度权重查询入口
  • 不更新网站如何做排名装修网线用几类
  • 花生壳网站建设wordpress 幻灯片插件
  • 电影网站开发郑州最好的建站公司
  • 蛋糕网站模板培训心得体会范文大全1000
  • 大企业网站建设公司移动互联网开发平台基于linux安卓
  • 网上做兼职的网站有哪些成都网站制作沈阳
  • 工行网站跟建设网站区别个人主页展示店铺
  • 防制网站怎么做新出的app推广在哪找
  • 网站中下拉列表框怎么做手机版的网站怎样做呢
  • 服装网站建设项目规划书典型的o2o网站有哪些
  • 局域网网站开发你眼中的网络营销是什么
  • 上海城乡建设网站首页wordpress记事本插件