当前位置: 首页 > news >正文

网站建站六个目标运营是做什么的

网站建站六个目标,运营是做什么的,义乌外贸网站开发,网站源码上传完后怎么做文章目录 前言一、下载glm库二、基本数学知识1. 三维中的 4 x 4 矩阵2.旋转3. 位移4. 缩放5. 组合 三、行向量或列向量四、总结 前言 glm库是OpenGL的官方数学库,里面内置多种跟几何变换相关的函数,熟练掌握glm库可以省下很多麻烦。 因为最近在项目中主…

文章目录

  • 前言
  • 一、下载glm库
  • 二、基本数学知识
    • 1. 三维中的 4 x 4 矩阵
    • 2.旋转
    • 3. 位移
    • 4. 缩放
    • 5. 组合
  • 三、行向量或列向量
  • 四、总结


前言

glm库是OpenGL的官方数学库,里面内置多种跟几何变换相关的函数,熟练掌握glm库可以省下很多麻烦。
因为最近在项目中主要使用了 glm::mat4 ,所以加上我自己的理解,想分享一下。


一、下载glm库

我下载的是:glm 0.9.9.8 版本。

二、基本数学知识

1. 三维中的 4 x 4 矩阵

在三维计算中,使用一个 4 x 4 的齐次矩阵可以表示旋转、位移和缩放。这个 4 x 4 的矩阵就是对应glm::mat4类型。注意:glm::mat4 是float类型
具体的分析过程可以看:LearnOpenGL CN - 入门-变换 这一节的内容。下面是一些结论。

2.旋转

在这里插入图片描述

3. 位移

在这里插入图片描述

4. 缩放

在这里插入图片描述

5. 组合

在这里插入图片描述


三、行向量或列向量

无论是上面的分析,还是现实生活中的数学计算,基本都是以行向量为主。但是,我们要知道,计算机本身的存储并没有方向之分,是我们自己的读取或者写入逻辑赋予了它顺序。
glm库在创建之时,为了兼容其他的东西(具体我忘了),导致它是以列向量的方向进行存储。这就与我们的常识相反。所以,就需要一些特殊的技巧,来避免转换错误。
具体看下面的代码:

#include <iostream>
#include <glm/glm.hpp>int main()
{
#pragma region 1. 准备一个 4 * 4 的行向量矩阵/**  1.0, 0.0, 0.0, 10.0*  0.0, 1.0, 0.0, 20.0*  0.0, 0.0, 1.0, 30.0*  0.0, 0.0, 0.0, 1.0*/float mat0[4][4] = {{1.0f, 0.0f, 0.0f, 10.0f},{0.0f, 1.0f, 0.0f, 20.0f},{0.0f, 0.0f, 1.0f, 30.0f},{0.0f, 0.0f, 0.0f, 1.0f}};
#pragma endregion#pragma region 2. 将 unit_mat 转换为 glm::mat4 类型glm::mat4 mat1{ 0.0f };for (int r = 0; r < 4; ++r){for (int c = 0; c < 4; ++c){mat1[r][c] = mat0[c][r];}}for (int r = 0; r < 4; ++r){for (int c = 0; c < 4; ++c){std::cout << mat1[c][r] << " ";      // 列向量,所以第一个[]代表的是列,第二个[]代表的是行}std::cout << std::endl;}/* 输出* 1 0 0 10* 0 1 0 20* 0 0 1 30* 0 0 0 1*/
#pragma endregion#pragma region 3. 将 glm::mat4 转回 列向量 的 float[4][4]float mat2[4][4]{ 0.0f };for (int r = 0; r < 4; ++r){for (int c = 0; c < 4; ++c){mat2[r][c] = mat1[r][c];}}for (int r = 0; r < 4; ++r){for (int c = 0; c < 4; ++c){std::cout << mat2[c][r] << " ";      }std::cout << std::endl;}/* 输出* 1 0 0 10* 0 1 0 20* 0 0 1 30* 0 0 0 1*/
#pragma endregion
}

四、总结

总而言之,无论是使用 glm::mat4,还是float[4][4],还是float[16],你都要先想用行向量表示出来你的矩阵,然后再去转换,这样就一定没错!

http://www.dt0577.cn/news/56588.html

相关文章:

  • 我找别人做的网站现在不管了怎么办苏州百度推广服务中心
  • coupang入驻条件2022网奇seo培训官网
  • 天津工程建设协会网站sem竞价课程
  • 南京营销型网站制作全国各大新闻网站投稿
  • 母婴用品网站建设百度导航是哪个国家的
  • 门户网站做的比较好的公司2345网址导航下载桌面
  • 帮传销做网站会违法吗微信社群营销
  • 北京专做粮油米面的配送网站bing收录提交
  • 网站建设使用什么软件谷歌浏览器下载app
  • 最便宜的外贸自建站平台图片外链生成工具在线
  • 建设部网站监理注销查询百度投诉电话人工服务总部
  • web网站怎么做关键词搜索神器
  • 网上接单做网站东莞推广服务
  • 赣州微网站建设费用西安楼市最新房价
  • 商务网站建设与维护试卷南宁网络推广热线
  • 太原网站建设斯飞网络在线bt磁力搜索
  • 招聘网58同城求职信息seo网站推广工具
  • 山西响应式网站制作杭州优化外包
  • 个人网站 备案 备注百度网盘免费下载
  • 西安网站制作流程现在有什么推广平台
  • 建设工程其它费计算网站销售外包公司
  • 网络系统管理员获取ip网络优化培训骗局
  • 大连小程序哪个开发公司好如何优化培训方式
  • 心悦会员荣誉战场两张免做卡网站站长推广网
  • 网站开发的工作对象网络营销企业案例分析
  • 网站备案被注销吗深圳网络推广招聘
  • 做网站如何规避法律风险公司推广网站
  • 自己做企业网站windows优化大师怎么使用
  • 网站备案时 首页杭州网站优化公司哪家好
  • 生成wap网站武汉百度推广seo