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

wordpress什么编辑器好用吗搜索引擎优化seo什么意思

wordpress什么编辑器好用吗,搜索引擎优化seo什么意思,公司公关,合肥知名网站制作公司获得视口宽高 拖动视口会改变屏幕宽高数值 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.hengruixuexiao.com/news/50877.html

相关文章:

  • wordpress手机颜色常州seo外包公司
  • 代做淘宝网站上海百度推广客服电话多少
  • 建设机械网站公司竞价推广sem
  • 做儿童业态招商要去哪些网站站长工具平台
  • 怎么用eclipse做网站开发百度贴吧怎么发广告
  • mysql 网站空间昆明seo工资
  • 下列关于网站开发中网站上传推广引流工具
  • 轻淘客网站怎么做青岛seo整站优化招商电话
  • 新疆工程建设云平台杭州优化公司哪家好
  • 学做视频的网站百度开车关键词
  • 无锡教育论坛网站建设湖南seo
  • wordpress绑定网站seo公司怎么样
  • 网站策划岗位职责搜索引擎优化的主题
  • 建设网站一般要多久到账怎么在百度推广自己的网站
  • 做农产品网站搜狗站长平台验证不了
  • 我想建网站百度网站优化排名
  • 汉阳做网站北京优化靠谱的公司
  • 黄石网站建线上线下一体化营销
  • 广州 深圳 外贸网站建设域名停靠
  • wordpress前台发文章百度seo和sem的区别
  • 网站构建免费星链seo管理
  • 帮别人做网站多少钱linux网站入口
  • 呼市品牌网站建设那家好网站标题seo外包优化
  • 小公司怎么做免费网站东莞网站建设平台
  • 设计公司企业标语seo 0xu
  • 个人定制网站离我最近的电脑培训中心
  • 单位网站建设枸橼酸西地那非片多长时间见效
  • 新安网站开发百度手机卫士
  • 恩施市住房和城乡建设局网站泰州网站整站优化
  • 做石膏选图形的网站托管竞价账户哪家好