| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 数据结构与算法 -> 第六周总结 -> 正文阅读 |
|
[数据结构与算法]第六周总结 |
源代码vecposition主要讲的是在极坐标和笛卡尔坐标系下确定向量的位置,以及一些转化、三角函数,用来确定机器人、足球的运动坐标。 需要注意的点有atan、asin、acos,它们是反三角函数 crossProduct(VecPosition?v)求参数传入的向量与当前向量,两个向量的向量积。 getAngleBetweenPoints(?const?VecPosition?&p1,const?VecPosition?&p2?)求参数传入的两点,分别与当前点构成的俩向量之间的夹角。 getAngleWithVector(VecPosition?v)?求参数传入的向量与当前向量,两个向量之间的角度。 normalize(?)求当前向量的单位向量。 rotateAboutX(double?angle)如上图,在ABP平面上,绕着A点旋转一定角度。 getMagnitude( )是VecPosition这个类中的函数,作用是求当前VecPosition这个向量的模 inline double getDistanceTo( const VecPosition p )返回当前对象与参数对象p之间的距离 project(VecPosition t)返回当前向量在向量t上的投影向量 skill主要控制机器人的手脚动作。 Marco为指令基类,派生出来诸多指令,若干个指令构成一个keyframe,代表一个人达到目标状态的过程,多个keyframe构成一个完整的skill。 执行过程分为以下几个步骤 Begin and name skill:先begin并且name一个技能 开框架 ?{ 设置指定角度 转化需要(各部位?)增加的角度 设置根据比例控制(scale问题) 重回正常位置 到ZMP(0力矩点) 将脚移动到预设点 设置进入下一个框架时间 PTAreverse()函数可以倒置数组元素,在“右移元素”的题目里可以巧妙运用。 数据结构学习了树的存储、森林与二叉树、赫夫曼树以及图的各种知识,还有动态存储、查找、排序、文件需要继续学习,争取在本周学完。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 21:47:13- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |