【Unity】Transform—“本地坐标”与“世界坐标”相互转换

这篇具有很好参考价值的文章主要介绍了【Unity】Transform—“本地坐标”与“世界坐标”相互转换。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.本地坐标转世界坐标

现有:
【Unity】Transform—“本地坐标”与“世界坐标”相互转换
Lesson10脚本的代码:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Lesson10 : MonoBehaviour
{
    void Start()
    {
        //1.本地坐标系的点 转换为 相对世界坐标系的点(最常用的)
        //受到缩放影响
        //把要被转换的本地坐标系的点传进去
        print(this.transform.TransformPoint(Vector3.forward)); //Vector.forward就是点(0,0,1)

        //2.本地坐标系的方向 转换为 相对世界坐标系的方向
        //不受缩放影响
        //把要被转换的本地坐标系的方向传进去
        print(this.transform.TransformDirection(Vector3.forward));
        //受缩放影响
        print(this.transform.TransformVector(Vector3.forward));
    }
}

运行:
【Unity】Transform—“本地坐标”与“世界坐标”相互转换

2.世界坐标转本地坐标

可以帮助我们判断一个物体大概在我的什么方位

现有:
【Unity】Transform—“本地坐标”与“世界坐标”相互转换
Lesson10脚本的代码:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Lesson10 : MonoBehaviour
{
    void Start()
    {
        //1.世界坐标系的点 转换为 相对本地坐标系的点
        //把要被转换的世界坐标系的点传进去
        //受到物体缩放的影响
        print(this.transform.InverseTransformPoint(Vector3.forward));

        //2.世界坐标系的方向 转换为 相对本地坐标系的方向
        //不受缩放影响
        //把要被转换的世界坐标系的方向传进去
        print(this.transform.InverseTransformDirection(Vector3.forward));
        //受缩放影响
        print(this.transform.InverseTransformVector(Vector3.forward));
    }
}

运行:
【Unity】Transform—“本地坐标”与“世界坐标”相互转换文章来源地址https://www.toymoban.com/news/detail-512550.html

到了这里,关于【Unity】Transform—“本地坐标”与“世界坐标”相互转换的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C# / Unity关于 世界时间、本地时间、UNIX Timestamps,以及相互转化的记录

    C# / Unity关于 世界时间、本地时间、UNIX Timestamps,以及相互转化的记录 世界时间(UtcTime ) :DateTime.UtcNow 获取的是世界时间,如果开发一些全球国际性质的产品,可以用这个时间来进行。 本地时间(LocalTime) : DateTime.Now 获取的是当前用户所在时区的时间,也就是本地时间。 时间

    2024年02月12日
    浏览(43)
  • Unity中实现世界坐标到GPS经纬度的转换解决方案

    在Unity3D中,将世界坐标转换为GPS经纬度是一个常见的需求,特别是在开发基于地理位置的应用程序时。本文将提供一种详细的解决方案,包括相应的源代码,以帮助您实现这一转换。 步骤1:获取参考点的GPS经纬度 首先,您需要获取一个已知GPS经纬度坐标和对应的Unity世界坐

    2024年02月03日
    浏览(35)
  • 二维坐标和三维坐标相互转换

    原理参考世界坐标系、相机坐标系、图像坐标系、像素坐标系之间的转换 我的需求是将二维点转换成三维点,旋转三维点,再转换为二维点,此处的旋转跟相机成像的旋转矩阵又没有关系。 假定像素坐标为(u,v),处理的输入数据是像素坐标,图像坐标为(x,y),相机坐标为(Xc

    2024年02月15日
    浏览(33)
  • 惯性导航原理(1):导航坐标系及相互转换

    写在前面(本人是导航专业,目前已经毕业入职,工作也是与惯导、组合导航相关,因为以前的知识忘的差不多了,所以开个帖子,会分几章记录一下,如有不正确的地方还请大家多多指教) 补充 由于不同参考资料中,经纬度表示不同,有的是L表示纬度, λ lambda λ 表示经

    2024年02月01日
    浏览(33)
  • 【Unity】坐标系、Vector3基础和Transform位置

    在学习Vector3和Transform之前需要先了解一下Unity坐标系: 在Unity中有很多坐标系,诸如世界坐标系、局部坐标系、屏幕坐标系、视口坐标系等等,这些坐标系往往会给我带来很大的困扰,但又缺一不可。比如当你需要获取鼠标在世界坐标的位置时,你就需要明白什么是世界坐标

    2024年02月02日
    浏览(39)
  • 相机照片的像素坐标和世界坐标转换

    相机坐标和世界坐标变换原理就是在4个坐标系直接转换, 如果考虑GIS系统那么还需要考虑空间参考坐标, 空间参考坐标系又需要考虑地理和投影坐标系,  加起来就是6个坐标系. 示例图如下   此段代码基于opencv,  畸变参数未考虑,  采用pnp求解内外参数,封装相机坐标和世界坐标

    2024年02月13日
    浏览(42)
  • 机器人坐标系转换从局部坐标系转换到世界坐标系

    矩阵方式: 下面是代码: 函数方式: 根据三角函数的特性,可以进行一下简化: 下面是简化前的代码示例:

    2024年04月16日
    浏览(50)
  • 基于Python的经纬度与xy坐标系相互转换

    代码是已经运行过的,可以直接输入参数使用 注意事项: 经纬度参数不可以写颠倒,否则会由于math.log参数不能为负数和0的原因报错 由于地球半径的不确定性,所以(x,y)与(lon, lat)相互转换会有误差 奉上代码及运行结果: 经纬度转换成xy坐标 实例经维度参数 (114.5456282282352

    2024年02月12日
    浏览(45)
  • 坐标变换基础-欧拉角&固定角与位姿矩阵的相互转换

    空间中一个坐标系相对于另一个坐标系的变换关系用新坐标系的三个坐标轴相对于原坐标系的方向矢量来确定,可用 矩阵来描述。用齐次矩阵(4x4)来统一描述刚体的位置和姿态: 其中,R便是描述姿态的旋转矩阵。 和沿着三个坐标轴的平移运动不一样,旋转矩阵显得很不直

    2024年02月04日
    浏览(25)
  • ThreeJS-3D教学十一:屏幕坐标和世界坐标转换

    直接复制上面的代码,将three资源路径修改后,启动即可看到效果 上面是代码实现,以下我们看下一些理论知识点: 坐标系之间的转换关系大致为: 因此坐标转换过程就变成了: 原本世界坐标转换到观察空间坐标需要乘上视图矩阵 CameraMatrixWorldInverse(ViewMatrix) 随后,观察空

    2024年01月17日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包