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

厦门专业网站设计公软件班级网站建设

厦门专业网站设计公,软件班级网站建设,网站设计套用模板,wordpress 帝国王系列文章目录 unity工具 文章目录 系列文章目录前言一、使用rect.Contains()判断1-1、转换坐标1-2、代码如下#xff1a;1-3、注意事项1-3、测试效果如下 二、使用坐标计算在不在区域内2-1、方法如下#xff1a;2-2、注意事项 三、使用RectTransformUtility.ScreenPointToLo…系列文章目录 unity工具 文章目录 系列文章目录前言一、使用rect.Contains()判断1-1、转换坐标1-2、代码如下1-3、注意事项1-3、测试效果如下 二、使用坐标计算在不在区域内2-1、方法如下2-2、注意事项 三、使用RectTransformUtility.ScreenPointToLocalPointInRectangle和坐标一起配合计算3-1、代码如下3-2、注意事项 总结 前言 大家好我是心疼你的一切不定时更新Unity开发技巧觉得有用记得一键三连哦。 有时候需要判断玩家此时点击的某个点是否在某个指定的UI区域内如果在区域内则响应点击事件不在区域内时不进行响应事件。所以记录一下 一、使用rect.Contains()判断 1-1、转换坐标 把屏幕坐标转换成本地坐标 API:RectTransformUtility.ScreenPointToLocalPointInRectangle 然后在使用**Contains()**判断某个坐标点在不在该RectTransform里面了 1-2、代码如下 using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class UIClickPosition : MonoBehaviour {//判断的UI区域public RectTransform rectTrans;//用于坐标点是否在区域内的标记public Text txtFlag;private void Update(){GetClickArea(Input.mousePosition);}///传入某个坐标点进行判断public void GetClickArea(Vector2 point){Vector2 localPoint;//将屏幕坐标转化为相对rectTrans的本地坐标if (RectTransformUtility.ScreenPointToLocalPointInRectangle(rectTrans, point, Camera.main, out localPoint)){//rectTrans.rect是rectTrans的本地坐标不能rectTrans.rect.Contains(point)直接判断必须先转为本地坐标localPoint//判断点击的坐标点是否在rectTrans.rect矩形内if (rectTrans.rect.Contains(localPoint)){txtFlag.color Color.green;txtFlag.text 鼠标在UI区域内哦;}else{txtFlag.color Color.red;txtFlag.text 鼠标不在UI区域内哦;}}} } 1-3、注意事项 1.需要将Canvas设置成相机模式 ScreenSpace-Camera ,要不然没有反应 2. 1-3、测试效果如下 Unity判断屏幕中某个坐标点的位置是否在指定UI区域内 二、使用坐标计算在不在区域内 2-1、方法如下 /// summary/// 使用坐标计算位置/// /summary/// param namepos/parampublic void GetClickArea_pos(Vector3 pos){float _mapWidth rectTrans.sizeDelta.x;float _mapHight rectTrans.sizeDelta.y;//目标区域锚点为居中时使用 Pivot(0.5,0.5)if (pos.x (rectTrans.position.x _mapWidth / 2) pos.x (rectTrans.position.x - _mapWidth / 2) pos.y (rectTrans.position.y _mapHight / 2) pos.y (rectTrans.position.y - _mapHight / 2)){txtFlag.color Color.green;txtFlag.text 鼠标在UI区域内哦;}else{txtFlag.color Color.red;txtFlag.text 鼠标不在UI区域内哦;}}2-2、注意事项 1.根据坐标计算位置不需要设置Canvas的渲染模式反之设置成第二种模式到不行了不能使用了 2.但是目标图片中心点需要设置成居中 如下图 三、使用RectTransformUtility.ScreenPointToLocalPointInRectangle和坐标一起配合计算 1.把第一种第二种相结合无需考虑中心点锚点 3-1、代码如下 /// summary/// 第三种方法使用RectTransformUtility配合坐标计算无需考虑中心点,锚点/// /summary/// param namepos/parampublic void GetClickArea_(Vector3 pos){Vector2 localPoint;//将选中的点转换为Image区域内的本地点RectTransformUtility.ScreenPointToLocalPointInRectangle(rectTrans, pos, Camera.main, out localPoint);Vector2 pivot rectTrans.pivot;Vector2 normalizedLocal new Vector2(pivot.x localPoint.x / rectTrans.sizeDelta.x, pivot.y localPoint.y / rectTrans.sizeDelta.y);if ((normalizedLocal.x 0 normalizedLocal.x 1) ((normalizedLocal.y 0 normalizedLocal.y 1))){txtFlag.color Color.green;txtFlag.text 鼠标在UI区域内哦;}else{txtFlag.color Color.red;txtFlag.text 鼠标不在UI区域内哦;}}3-2、注意事项 1.第三种也是需要把相机模式改成和第一种里面使用的模式一样ScreenSpace-Camera 总结 不定时更新Unity开发技巧觉得有用记得一键三连哦。 以上就是今天要讲的内容有需要会继续补充
http://www.zqtcl.cn/news/149907/

相关文章:

  • 怎样做国际网站dw网页设计代码免费
  • wordpress做企业站基础微网站开发公司
  • 用上海注册的公司建的网站怎么做asp网站
  • 一个专做特卖的网站千鸟云网站建设
  • 哈尔滨网站优化seo知名公司
  • 企业网站的开发流程个人免费建网站
  • 旅游网站平台建设方案策划书wordpress 自建cdn
  • 网站开发回访话术内容电商网站有哪些
  • 网络广告投放网站网站如何做关
  • 葫芦岛住房和城乡建设厅网站野望王绩
  • 小说网站怎么做网站建设需求分析班级
  • 开设购物网站的方案网站免费seo
  • 免费手机h5模板网站模板下载wordpress所有插件
  • 北京做网站开发公司wordpress主题创建后门
  • 企业门户网站建设内容企业建设网站的功能是什么意思
  • 做a的网站有哪些在国外做网站推广
  • 做外贸网站设计上需要注意什么python做音乐网站
  • 英语门户网站织梦源码wordpress 推荐插件
  • 学做衣服网站有哪些网站建设算入会计分录
  • 京东网站开发技术织梦网站如何做404
  • 论坛类网站开发屏蔽wordpress缩略图
  • 南宁市两学一做网站logo设计网站官网
  • 中国建设工程造价管理协会网站查询网站开发者的设计构想
  • 华强北网站建设设计素材网站p开头的
  • 怎样让网站快速收录利用数据库修改wordpress密码
  • 网站建设群发广告词做网站首页多少钱
  • 黑彩网站建设中企动力 网站价格
  • 上海营销型网站报价深圳企业网站制作设计
  • 网站清理通知北京电商购物网站
  • 新开传奇网站180合击创建一个个人网站需要多少钱