• unity向量-数学-三角函数


    1.如何在unity写cos60

    Mathf.Cos(Mathf.Deg2Rad * 60)

    Deg2Rad将 60 角度转换为弧度,因为里面参数只能填弧度数

    2.计算一个Vector3绕旋转中心旋转指定角度后所得到的向量

    /// <summary>
    /// 计算一个Vector3绕旋转中心旋转指定角度后所得到的向量。
    /// </summary>
    /// <param name="source">旋转前的源Vector3</param>
    /// <param name="axis">旋转轴</param>
    /// <param name="angle">旋转角度</param>
    /// <returns>旋转后得到的新Vector3</returns>
    public Vector3 V3RotateAround(Vector3 source, Vector3 axis, float angle)
    {
        Quaternion q = Quaternion.AngleAxis(angle, axis);// 旋转系数
        return q * source;// 返回目标点
    }

    注意求出的是向量,转移为坐标得+transfrom,position

    【示例】放unity里面,按p键即可看见效果

    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    
    public class Draw3 : MonoBehaviour {
    
        Vector3 d;
        float duShu;
        // Use this for initialization
        void Start () {
            
        }
        
        // Update is called once per frame
        void Update () {
            //按P键加角度
            if (Input.GetKeyDown(KeyCode.P))
            {
                duShu += 72;
            }
        }
    
        private void LateUpdate()
        {
            d = V3RotateAround(transform.forward, transform.up, duShu, 10);
            Debug.DrawLine(transform.position, transform.position + d, Color.red);
        }
    
        /// <summary>
        /// 计算一个Vector3绕旋转中心旋转指定角度后所得到的向量。
        /// </summary>
        /// <param name="source">旋转前的源Vector3</param>
        /// <param name="axis">旋转轴</param>
        /// <param name="angle">旋转角度</param>
        /// <returns>旋转后得到的新Vector3</returns>
        public Vector3 V3RotateAround(Vector3 source, Vector3 axis, float angle, float length)
        {
            Quaternion q = Quaternion.AngleAxis(angle, axis);// 旋转系数
            return q * source * length;// 返回目标点
        }
    
    
    
    }
  • 相关阅读:
    博客园小技巧【转载】
    Windows下的多线程
    【Windows】Windows中的数据类型以及命名
    【文档管理系统】【转】什么是元数据
    CentOS 安装 MariaDB 全部命令
    emacs 入门
    参考路径
    My SQL load data infile 遇到的问题总结
    oracle迁移到mysql(仅使用脚本)
    Eclipse tomcat server 无法添加项目
  • 原文地址:https://www.cnblogs.com/sanyejun/p/8419310.html
Copyright © 2020-2023  润新知