Transform.InverseTransformDirection

InverseTransformDirection

1、parent和child的结构: 

这里写图片描述 
parent为Cube 
child为Cube(2)

2、parent的属性: 
这里写图片描述 
Cube(1)的属性: 
这里写图片描述

这里写图片描述

3、代码:

 public GameObject parent;
    public GameObject child;
    public void Start()
    {
        UIEventListener.Get(this.gameObject).onClick = OnClickXXX;
    }

    public void OnClickXXX(GameObject go)
    {
        Debug.LogError(child.transform.forward); //child的世界正方向
        Debug.LogError(parent.transform.InverseTransformDirection(child.transform.forward)); //child在parent的local正方向

        //计算child和parent的夹角,利用local正方向
        Vector3 v1 = parent.transform.InverseTransformDirection(parent.transform.forward);  //parent在parent的正方向,这里是自己,应该是0
        Vector3 v2 = parent.transform.InverseTransformDirection(child.transform.forward);  //child在parent的local正方向
        Debug.LogError(Vector3.Angle(v1, v2)); //利用local的方向求夹角。

        //计算child和parent的夹角,利用world正方向
        Debug.LogError(Vector3.Angle(parent.transform.forward, child.transform.forward)); //利用world的求夹角。
    }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

4、输出: 
这里写图片描述

版权声明:本文为博主原创文章,未经博主允许不得转载。 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Inverse transform是Unity游戏引擎中的一个函数,用于将世界坐标转换为相对于物体本地坐标系的点、方向或向量。在代码中,使用transform.InverseTransformPoint、transform.InverseTransformDirectiontransform.InverseTransformVector函数可以实现这一功能。 具体而言,transform.InverseTransformPoint函数将世界坐标转换为相对本地坐标系的点,不受缩放影响;transform.InverseTransformDirection函数将世界坐标转换为相对本地坐标系的方向,不受缩放影响;transform.InverseTransformVector函数将世界坐标转换为相对本地坐标系的向量,受缩放影响。 这些函数的作用是将世界坐标转换为相对于物体的局部坐标系,以便更方便地进行计算和操作。而与之相对的是transform.TransformPoint、transform.TransformDirectiontransform.TransformVector函数,它们则是将局部坐标转换为世界坐标系。 在数学中,inverse transform也可以指代对随机变量做函数变换后的概率密度函数之间的变换关系。例如,假设有一个变量变换函数Y = f(X),其中f(x)是变量X的累积分布函数。那么对应的逆变换函数为f^(-1)(y),通过这样的变换可以得到新的概率密度函数。 总之,inverse transform在不同领域中可能有不同的含义,但在Unity游戏引擎中,它指的是将世界坐标转换为相对本地坐标系的点、方向或向量。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值