Quaternion:通过API对Quaternion(四元数)类中的方法属性初步学习总结(二)
1.RotateTowards方法
RotateTowards(From.rotation,To.rotation,fspeed)
个人理解:使From的rotation以floatspeed为速度,旋转到To的rotation
speed而是指每次移动的最大长度
2.Slerp球形插值
Quaternion.Slerp(A.rotation,B.rotation,speed)
个人理解:A-B的值的变化趋势不再是一条均匀变化的直线,而是以一种类似于日起日落的方式变化,它将Vector视为向量,而不像Lerp那样视为一个点,顾名思意球形插值
这是分析RotateToward、Slerp与Lerp三者的同异处的帖子
http://www.jianshu.com/p/6287f18260f5
文中提出了这样一种观点:在运行效率上Slerp要比Lerp相对较差,但当旋转A离旋转B比较远的时候,则Slerp的效果相对于Lerp是非常好的。
3.Dot点积
个人理解:返回一个float类型的点积,具体用法不清楚,可能用的不多,Dot方法用的比较多的是Vector3.Dot(transform.forward,target.rotation);返回一个float(transform.z),若为正则在该物体的前方,若为负则在该物体的后方,类似的方法还有比如Vector3.Cross(transform.right,target.rotation);返回一个float(即tansform.x)。
4.Inverse返回反向的旋转
Inverse(rotation);
个人理解:用一个较浅显易懂的说法,当target的rotation.y=45时,这时候返回一个315的值,返回一个反向的数值,即transform.rotation.y=315
public Transform A;
void Update()
{
Quaternion aaa = Quaternion.Inverse(A.rotation);
transform.rotation = Quaternion.Lerp(transform.rotation, aaa, * Time.deltaTime);
}
Inverse
5.FromToRotation从from到to旋转
TromToRotation(Vector.up,tranorm.forward)
个人理解:创建一个旋转,Y轴跟随目标方向,指向ToDirection,不是很理解
6.SetLookRotation注视旋转
SetLookRotation(View:vector3.up,Vector3=Vector3.up)
创建一个旋转,沿着forward(z轴)并且头部沿着Up(Y轴)的约束注释。也就是建立了一个旋转,是z轴指向view,Y轴指向Up;
以上是官方注释的中文版
不是很明白
Quaternion的方法,参数,大致了解了一边,觉得不是很理解,总觉得有些方面理解的太片面。
下篇博客将着重总结总结生成时间间隔的方法
Quaternion:通过API对Quaternion(四元数)类中的方法属性初步学习总结(二)的更多相关文章
- 第6章 Java类中的方法
1.如何定义java的方法 什么是方法:方法使用来解决一类问题的代码集合,是一个功能模块在类中定义个方法的方法是: 访问修饰符 返回值类型 方法名(参数列表){ 方法体 } 1.访问修饰符,是限制该方 ...
- java 27 - 6 反射之 通过配置文件运行类中的方法
在以前,如果我们想要调用一个类中的方法,只能这样子: 例: 有Cat和Dog两个类,里面有eat和run两个成员方法: public class Dog { public void eat() { S ...
- WebForm.aspx 页面通过 AJAX 访问WebForm.aspx.cs类中的方法,获取数据
WebForm.aspx 页面通过 AJAX 访问WebForm.aspx.cs类中的方法,获取数据 WebForm1.aspx 页面 (原生AJAX请求,写法一) <%@ Page Langu ...
- 在client类中设置访问属性 address,business和individua
php 5.4中的traits,是新引入的特性,中文还真不知道如何准确翻译好.其实际的目的, 是为了有的场合想用多继承,但PHP又没多继承 ,于是就发明了这样的一个东西. Traits可以理解为一组能 ...
- C++:调整基类成员在派生类中的访问属性的其他方法(同名成员和访问声明)
4.3 调整基类成员在派生类中的访问属性的其他方法 4.3.1 同名函数 在定义派生类的时候,C++语言允许在派生类中说明的成员与基类中的成员名字相同,也就是 说,派生类可以重新说明与基类成员同名的成 ...
- Hibernate中对象的三种状态以及Session类中saveOrUpdate方法与merge方法的区别
首先,用一张图说明一个对象,在Hibernate中,在调用了不同方法之后对象所处的不同状态 在Hibernate中,一个对象的状态可以被分为如图所示的三种 Transient:瞬时对象,该对象在数据库 ...
- Java基础知识强化之集合框架笔记33:Arrays工具类中asList()方法的使用
1. Arrays工具类中asList()方法的使用 public static <T> List<T> asList(T... a): 把数组转成集合 注意事项: 虽然可以把 ...
- swift -- 类中的方法
一. 引用类型 类 在类中定义方法 class Person { //属性 var name : String = "" //方法 //实例方法 : 在类里面创建一个方法 fun ...
- Python 装饰器装饰类中的方法
title: Python 装饰器装饰类中的方法 comments: true date: 2017-04-17 20:44:31 tags: ['Python', 'Decorate'] categ ...
随机推荐
- PIC单片机的XC8
用MPLAB IDE 对pic16f887进行编程的时候需要配置字 用__CONFIG(0xc3e4);__CONFIG(0xffff); 就可以 但是用MPLAB X IDE 对pic16f887编 ...
- linux 多线程 信号
一个老系统的问题,用的system v消息队列同步等响应,通过alarm信号来进行超时控制.现在系统进行升级改造(所谓云化),原来进程处理的逻辑全部改成了线程框架,问题就出现了.alarm信号发出的时 ...
- xxd十六进制编辑器的安装
一.背景:在vi中使用命令:%!xxd无法进行十六进制编辑,为缺少xxd命令所致 二.yum直接安装xxd无法成功[root@ELK ~]# yum install xxd已加载插件:fastestm ...
- mybatis精讲(七)--动态sql
目录 常用标签 if元素 choose元素 trim元素 forearch bind元素 在我们传统的开发中我们会通过拼接sql达到数据库的操作.java中的拼接不仅效率低下而且代码很长不易维护.而M ...
- AUTOSAR-软件规范文档阅读
https://mp.weixin.qq.com/s/Jzm9oco-MA-U7Mn_6vOzvA 基于AUTOSAR_SWS_CANDriver.pdf,Specification of CAN ...
- MySQL国内镜像下载地址
最近重新下载MySQL发现官网下载速度不是一般的慢,官网下载要几个钟而且一不注意就被取消下载了,实在受不了 可以使用sohu的镜像:http://mirrors.sohu.com/mysql/MySQ ...
- Java实现 蓝桥杯 算法提高 01背包
算法提高 01背包 时间限制:1.0s 内存限制:256.0MB 问题描述 给定N个物品,每个物品有一个重量W和一个价值V.你有一个能装M重量的背包.问怎么装使得所装价值最大.每个物品只有一个. 输入 ...
- Java实现 蓝桥杯VIP 算法训练 集合运算
问题描述 给出两个整数集合A.B,求出他们的交集.并集以及B在A中的余集. 输入格式 第一行为一个整数n,表示集合A中的元素个数. 第二行有n个互不相同的用空格隔开的整数,表示集合A中的元素. 第三行 ...
- Java实现 LeetCode 290 单词规律
290. 单词规律 给定一种规律 pattern 和一个字符串 str ,判断 str 是否遵循相同的规律. 这里的 遵循 指完全匹配,例如, pattern 里的每个字母和字符串 str 中的每个非 ...
- POJ 2810:完美立方
原题链接 总时间限制: 1000ms 内存限制: 65536kB 描述 形如\(a^{2}\)= \(b^{2}\) + \(c^{2}\) + \(d^{2}\)的等式被称为完美立方等式.例如123 ...