首页 > 其他 > 详细

Vector3.Dot(lhs ,rhs)判断方位

时间:2014-01-21 19:32:18      阅读:447      评论:0      收藏:0      [点我收藏+]

假设空间中有这几个坐标,判断一个物体在另一个物体的左边还是右边,前后还是后面

bubuko.com,布布扣bubuko.com,布布扣

假如以C为中心,判断L是在它的左边还是右边

using UnityEngine;
using System.Collections;

public class GetDirection : MonoBehaviour
{
        public Transform cubeF;
        public Transform cubeB;
        public Transform cubeL;
        public Transform cubeR;
        public Transform cubeC;
    
        void Update ()
        {
                Vector3 forward = transform.TransformDirection (Vector3.forward);
                Vector3 toOther = cubeB.position - transform.position;
                if (Vector3.Dot (forward, toOther) < 0) {
                        print ("The other transform is behind me !");
                } else {
                        print ("The other transform is ahead me !");
                }

                Vector3 left = transform.TransformDirection (Vector3.right);
                Vector3 toOtherL = cubeL.position - transform.position;
                if (Vector3.Dot (left, toOtherL) < 0) {
                        print ("The other transform is left me !");
                } else {
                        print ("The other transform is right me !");
                }
        }

}

运行拖动物体在cubeC的不同位置
bubuko.com,布布扣bubuko.com,布布扣

Vector3.Dot(lhs ,rhs)判断方位

原文:http://www.cnblogs.com/zhaoqingqing/p/3528417.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!