首页 > 其他分享 >unity局部坐标和世界坐标角度介绍

unity局部坐标和世界坐标角度介绍

时间:2024-07-17 11:00:18浏览次数:7  
标签:局部 transform 世界坐标 unity 坐标 旋转 物体

在Unity中,局部坐标(Local Coordinates)和世界坐标(World Coordinates)是描述物体位置的两种不同方式:

  1. 局部坐标(Local Coordinates)

    • 局部坐标是相对于物体自身的坐标系来描述物体上的点的位置。
    • 对于一个物体而言,它的局部坐标原点通常位于物体的中心,坐标轴则沿着物体的局部方向。
    • 例如,一个立方体的局部坐标原点可能位于立方体的中心,坐标轴分别沿着立方体的长、宽、高方向。
  2. 世界坐标(World Coordinates)

    • 世界坐标是相对于整个场景的坐标系来描述物体的位置。
    • 在场景中,每个物体都有一个唯一的世界坐标,这个坐标是相对于场景的全局坐标系来确定的。
    • 例如,一个立方体在场景中的世界坐标描述了它在整个场景中的位置和方向。

在Unity中,你可以通过物体的transform组件来访问和操作它们的局部坐标和世界坐标。例如,transform.localPosition表示物体的局部坐标,transform.position表示物体的世界坐标。

当然,请看下面这些示例代码,它们展示了如何在Unity中获取和使用物体的局部坐标和世界坐标:

  1. 获取和设置物体的局部坐标:

// 获取物体的局部坐标
Vector3 localPosition = transform.localPosition;

// 设置物体的局部坐标
transform.localPosition = new Vector3(1.0f, 0.0f, 0.0f);
  1. 获取和设置物体的世界坐标:

// 获取物体的世界坐标
Vector3 worldPosition = transform.position;

// 设置物体的世界坐标
transform.position = new Vector3(10.0f, 0.0f, 5.0f);

在Unity中,角度变化通常涉及到物体的旋转。在这里,我将为你介绍如何在Unity中操作物体的旋转角度。

  1. 获取和设置物体的局部旋转角度(Euler角度)

    • Unity中的旋转可以用欧拉角(Euler Angles)来表示,即绕物体的局部坐标轴(X轴、Y轴、Z轴)旋转的角度。
    • 获取物体的局部旋转角度:
      Vector3 localRotation = transform.localEulerAngles;
      
    • 设置物体的局部旋转角度:
      transform.localEulerAngles = new Vector3(0.0f, 90.0f, 0.0f); // 绕Y轴旋转90度
      
  2. 获取和设置物体的世界旋转角度(Quaternion)

    • Unity中的世界旋转角度通常使用四元数(Quaternion)来表示,这是一种更复杂但更有效表示旋转的方式。
    • 获取物体的世界旋转角度:
      Quaternion worldRotation = transform.rotation;
      
    • 设置物体的世界旋转角度:
      transform.rotation = Quaternion.Euler(0.0f, 90.0f, 0.0f); // 绕世界Y轴旋转90度

标签:局部,transform,世界坐标,unity,坐标,旋转,物体
From: https://blog.csdn.net/sunyao1314/article/details/140441863

相关文章

  • 一种使用Excel直观验证机器视觉引导坐标的方法
    1.首先格式化数据,作为像素坐标,右为机械手坐标2.各自绘制散点图3.将散点图背景色调至半透明:右键图表,填充选项选择无填充 4.将标记点填充色调节至半透明5.缩放图表使二者的标记点尽量重合,就可以看出数据的相对偏移情况 Done! ......
  • (02)Unity使用在线AI大模型(调用Python)
    目录一、概要二、改造Python代码三、制作Unity场景一、概要    查看本文需完成(01)Unity使用在线AI大模型(使用百度千帆服务)的阅读和实操,本文档接入指南的基础上使用Unity+C#调用百度千帆大模型,需要阅读者有一定的Unity开发基础。此功能本质上就是拿Python大模......
  • 【Unity】凸包算法对比及实现
    背景在做闵可夫斯基差的可视化的时候,获得了很多个点,想要知道其是否包含原点,需要连接一个包裹这些点的最小凸多边形。因此就单独研究了这个部分,实现了功能并进行分析对比。凸包算法可以在多个散落的点中找到最小能包裹它的外壳,像套上一个橡皮筋一样。这里主要采用Graham算法进行代......
  • VTK-自定义交互器、可拖拽坐标轴、视图定向立方体
    源代码:https://github.com/qianqiu10000/mySWInteractorStyle1.0.git仿照SolidWorks的操作习惯自定义的VTK交互器:1.左键单击Actor,可以选择Actor,并显示红色2.左键双击Actor,可以在Actor位置弹出拖拽坐标轴,可以移动、旋转3.单击空格键,可以弹出立方体视图定向工具4.按住鼠标......
  • Unity 基础知识点
    废话不多说,上教程。......
  • 【Unity】自制PolygonCollider2D
    防止和UnityEngine的PolygonCollider2D重名,所有类包裹在了我自己定义的名称空间JimDevPack中,名称空间的声明部分在文章代码中略去了。定义PolygonCollider2D和基类基类publicclassCollider2D:MonoBehaviour{}PolygonCollider2DpublicclassPolygonCollider2D:Coll......
  • [Unity] Dreamteck Splines实现沿路径移动功能
    DreamteckSplines实现沿路径移动功能最近有一个“让物体沿固定路径移动”的需求,因此接触到了DreamteckSplines插件。DreamteckSplines可以很方便地绘制各种插值曲线,但在实现物体移动的时候却遇到了很多坑,因此在这里记录一下。1.绘制路径线首先,让我们在场景上创建一个空物......
  • 三相感应电机建模仿真(5):考虑铁耗时静止dq坐标系的数学模型及其仿真模型
    1.概述2.考虑铁耗时的三相感应电机数学模型3.考虑铁耗时的三相感应电机仿真模型4.仿真实例5.总结6.参考文献1.概述    电机的铁心损耗主要包括涡流损耗和磁滞损耗,这些损耗以热的形式消耗能量,减少了电动机的有效输出功率,对电机效率产生影响;铁心损耗会导致电机内部......
  • unity is running as administrator 管理员权限问题
    每次打开工程弹出unityisrunningasadministrator的窗口unity版本2022.3.34f1,电脑系统是win11系统解决方法一:解决方法二:unity版本2022.3.34f1,电脑系统是win11系统每次打开工程都会出现unityisrunningasadministrator的窗口,真的很烦人。本人使用第二种方法......
  • 【Unity】碰撞检测算法及框架实现
    背景硕士期间研究课题是海洋生物数字孪生,基于各类Boids改进的算法里会有大量的海洋鱼类在三维空间中运动,鱼类之间会有互相感知的过程,同一帧里需要对许多行为进行决策判定,例如同伴鱼、食物、捕食者、栖息地等等。因此打算研究下有什么空间加速算法能够避免暴力迭代,减少开销。既然......