将虚拟按钮映射到屏幕上
来源:互联网 发布:淘宝访客数是什么意思 编辑:程序博客网 时间:2024/06/01 17:00
由于项目需求,自己做了一个小demo,把识别图上的虚拟按钮映射到屏幕上。按钮的位置和虚拟按钮保持一致,大小根据相机距离进行调节。
void GetVertex(Transform[] Vbtns,Button[] Ubtns) { for (int i = 0; i < Vbtns.Length; i++) { Vector3[] vertexs = new Vector3[4]; RectTransform UIBtnRect = Ubtns[i].GetComponent<RectTransform>();
//根据虚拟按钮的缩放信息,求出宽高float vbLength = Vbtns[i].localScale.x; float vbWidth = Vbtns[i].localScale.z;//根据宽高和位置信息求出四个顶点的坐标 vertexs[0] = new Vector3(Vbtns[i].position.x - (vbLength / 2), Vbtns[i].position.y, Vbtns[i].position.z + (vbWidth / 2)); vertexs[1] = new Vector3(Vbtns[i].position.x - (vbLength / 2), Vbtns[i].position.y, Vbtns[i].position.z - (vbWidth / 2)); vertexs[2] = new Vector3(Vbtns[i].position.x + (vbLength / 2), Vbtns[i].position.y, Vbtns[i].position.z - (vbWidth / 2)); vertexs[3] = new Vector3(Vbtns[i].position.x + (vbLength / 2), Vbtns[i].position.y, Vbtns[i].position.z + (vbWidth / 2));//转化为屏幕坐标以后,求出屏幕UI的宽和高 ,加上位置信息来确定 float UIleghth = arCamera.WorldToScreenPoint(vertexs[0]).x - arCamera.WorldToScreenPoint(vertexs[3]).x; float UIwidth = arCamera.WorldToScreenPoint(vertexs[0]).y - arCamera.WorldToScreenPoint(vertexs[1]).y; UIBtnRect.position = arCamera.WorldToScreenPoint(Vbtns[i].position); UIBtnRect.rotation = Quaternion.Euler(new Vector3(Vbtns[i].eulerAngles.x, -Vbtns[i].eulerAngles.z, -Vbtns[i].eulerAngles.y)); UIBtnRect.sizeDelta = new Vector2(Mathf.Abs(UIleghth), Mathf.Abs(UIwidth)); } }
阅读全文
0 0
- 将虚拟按钮映射到屏幕上
- 将数字映射到字母上
- 将一个像素绘制到屏幕上
- iOS-将像素绘制到屏幕上
- 将Android和iOS设备屏幕映射到电脑屏幕工具
- C# - 将enum类型映射到字符串上
- 如何将网络上的共享文件映射到本地
- 如何将表中的字段映射到变量上
- UE4之将人物映射到UI上
- 利用CBitmap将图像快速显示到屏幕上
- 将屏幕上的内容输出到一个文本中
- 笔记本电脑如何将屏幕投影到电视上
- 将数据显示到屏幕上(用ListView)
- 【C语言】【unix c】使用mmap将物理地址映射到进程的虚拟地址空间
- 选择屏幕上做按钮
- 在3D中, 将世界坐标映射为屏幕上的坐标点
- 将返回按钮的文字position设置不在屏幕上显示
- 虚拟地址到物理地址的映射
- 都市环游
- 总结
- Java中的字符串池
- 《android 日期工具类》
- 剑指offer:(35)时间效率和空间效率的平衡 :第一个只出现一次的字符
- 将虚拟按钮映射到屏幕上
- 无限极分类
- ORACLE:prompt、set feedback、set define
- JS生成二维码(兼容各种浏览器及中文)
- 常见的排序之一:冒泡排序
- 从源码编译TensorFlow CPU版本
- 写在最最前面
- springmvc重定向和转发,配置试图基础上
- java-数组/二维数组