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

Unity-Transform-坐标转换

世界坐标转本地坐标


        print(Vector3.forward);

        世界坐标系 转本地坐标系 可以帮助我们大概判断一个相对位置

        世界坐标系的点 转换 为相对本地坐标系的点

 
        //受到缩放影响
       

         print("转换后的点 " + this.transform.InverseTransformPoint(Vector3.forward));

        世界坐标系的方向 转换 为相对本地坐标系的方向 
       

        //不受缩放影响
        print("转换后的方向" + this.transform.InverseTransformDirection(Vector3.forward));
   

         //受缩放影响
        print("转换后的方向(受缩放影响)" +this.transform.InverseTransformVector(Vector3.forward));
 

 本地坐标转世界坐标

        本地坐标系的点 转换 为相对世界坐标系的点 受到缩放影响
       

         print("本地 转 世界 点" + this.transform.TransformPoint(Vector3.forward));

       

        本地坐标系的方向 转换 为相对世界坐标系的方向 
       

        //不受缩放影响
        print("本地 转 世界 方向" + this.transform.TransformDirection(Vector3.forward));
        //受缩放影响
        print("本地 转 世界 方向" + this.transform.TransformVector(Vector3.forward));

练习

public class NewBehaviourScript : MonoBehaviour
{// Start is called before the first frame updatevoid Start(){CreatBoll();}public void Creat()//在自己坐标系下的-1,0,1位置创建一个空物体{GameObject a = new GameObject("C");    //先转换成世界坐标的位置    //再在世界坐标的位置创建,下同a.transform.position = transform.TransformPoint(new Vector3(-1, 0, 1));}public void CreatBoll()//在自己坐标系下的3个位置创建三个球{GameObject a=  GameObject.CreatePrimitive(PrimitiveType.Sphere);a.transform.position = transform.TransformPoint(new Vector3(0, 0, 1)); GameObject b = GameObject.CreatePrimitive(PrimitiveType.Sphere);b.transform.position = transform.TransformPoint(new Vector3(0, 0, 2));GameObject c = GameObject.CreatePrimitive(PrimitiveType.Sphere);c.transform.position = transform.TransformPoint(new Vector3(0, 0, 3));}
}

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Prometheus+grafana+kafka_exporter监控kafka运行情况
  • Python酷库之旅-第三方库Pandas(117)
  • 人工智能在现代科技中的应用和未来发展趋势
  • 微信小程序中巧妙使用 wx:if 和 catchtouchmove 实现弹窗禁止页面滑动功能
  • git命令行基础常用指令
  • 嵌入式通信原理—SPI总线通信原理与应用
  • Python数据分析及可视化教程--商城订单为例-适用电商相关进行数据分析---亲测可用!!!!
  • 【AI大模型】ChatGPT模型原理介绍(下)
  • 【ESP32】ESP-IDF开发 | GPIO通用输入输出+LED点灯和按键输入例程
  • Java小区物业管理系统
  • JDK动态代理和CGLIB动态代理有什么区别?
  • 鸿蒙开发之ArkTS 基础三 数组
  • 国际商城系统怎么弄 跨境电商商城怎样上线
  • 网络安全产品认证证书大全(持续更新...)
  • YoloV10改进策略:BackBone改进|注意力改进|HCANet全局与局部的注意力模块CAFM|二次创新|即插即用
  • php的引用
  • [微信小程序] 使用ES6特性Class后出现编译异常
  • 【刷算法】求1+2+3+...+n
  • C++11: atomic 头文件
  • CAP理论的例子讲解
  • centos安装java运行环境jdk+tomcat
  • HTTP请求重发
  • iOS 系统授权开发
  • JavaScript 一些 DOM 的知识点
  • JAVA多线程机制解析-volatilesynchronized
  • Sequelize 中文文档 v4 - Getting started - 入门
  • Vue 动态创建 component
  • windows-nginx-https-本地配置
  • 对话:中国为什么有前途/ 写给中国的经济学
  • 关于Java中分层中遇到的一些问题
  • 你真的知道 == 和 equals 的区别吗?
  • 数组大概知多少
  • 哈罗单车融资几十亿元,蚂蚁金服与春华资本加持 ...
  • ​​​​​​​ubuntu16.04 fastreid训练过程
  • #控制台大学课堂点名问题_课堂随机点名
  • $LayoutParams cannot be cast to android.widget.RelativeLayout$LayoutParams
  • (+4)2.2UML建模图
  • (007)XHTML文档之标题——h1~h6
  • (C#)一个最简单的链表类
  • (CPU/GPU)粒子继承贴图颜色发射
  • (非本人原创)我们工作到底是为了什么?​——HP大中华区总裁孙振耀退休感言(r4笔记第60天)...
  • (没学懂,待填坑)【动态规划】数位动态规划
  • (区间dp) (经典例题) 石子合并
  • (十) 初识 Docker file
  • (五)Python 垃圾回收机制
  • ****** 二十三 ******、软设笔记【数据库】-数据操作-常用关系操作、关系运算
  • ..thread“main“ com.fasterxml.jackson.databind.JsonMappingException: Jackson version is too old 2.3.1
  • .NET “底层”异步编程模式——异步编程模型(Asynchronous Programming Model,APM)...
  • .net core 依赖注入的基本用发
  • .net oracle 连接超时_Mysql连接数据库异常汇总【必收藏】
  • .net 发送邮件
  • .NET 命令行参数包含应用程序路径吗?
  • .NET 设计模式初探
  • .NET/C# 推荐一个我设计的缓存类型(适合缓存反射等耗性能的操作,附用法)
  • .NET6 开发一个检查某些状态持续多长时间的类