图形与渲染
ANTennaaa
这个作者很懒,什么都没留下…
展开
-
几何基础 叉乘与反对称矩阵
参考:Rotation About an Arbitrary Axis Chapter 9转载 2021-01-17 19:41:01 · 1304 阅读 · 4 评论 -
几何基础 罗德里格公式
一开始没太搞明白,为什么其中的向量投影是v⋅k⋅kv\cdot k \cdot kv⋅k⋅k 也就是点成了两次kkk,看完才明白标量投影和向量投影之区别。不管怎样,搞明白了就是在进步,也不再感叹自己才疏学浅。向量投影时,我们要考虑大小和方向。大小好说,vvv的模乘以cosθcos \thetacosθ集可得到。另外就是要考虑方向,和kkk同向,也就是要乘以k∣k∣\frac{k}{|k|}∣k∣k。又cosθ=v⋅k∣v∣⋅∣k∣cos \theta=\frac{v \cdot k}{|v| .原创 2021-01-16 15:47:35 · 637 阅读 · 1 评论 -
open3d 构建mesh
方法一使用顶点坐标以及三角形索引。这有点像OpenGL了。# 输入是顶点以及每个三角形的索引def get_non_manifold_vertex_mesh(verts, triangles): # verts = np.array( # [ # [-1, 0, -1], # [1, 0, -1], # [0, 1, -1], # [0, 0, 0], # .原创 2021-01-05 16:42:20 · 1894 阅读 · 0 评论 -
几何基础 将空间平面变换到确定的坐标系
思路:首先估计平面所在的坐标系,得到平面坐标系原点以及三轴的向量表示。这一步可以通过执行SVD实现。减掉坐标中心点的偏移量T根据第一步得到的三个(单位向量表示的)坐标轴,这个就是平面旋转变换的正交基。逆变换后作用于平面,就可以把平面旋转到基坐标系。如果是对平面形式的点云变换,只需要用求出来的变换作用于点云即可。结果给定平面p=[1,0,1,0]p=[1,0,1,0]p=[1,0,1,0]变换前:变换后:![在这里插入图片描述](https://img-blog..原创 2021-01-05 14:54:47 · 872 阅读 · 1 评论 -
几何基础 点投影到直线
思路:设被投影点:xpx_pxp投影点:x0x_0x0直线:lt∗x=0l^t*x=0lt∗x=0直线法向量:lnl_nlnxo=t∗ln+xpx_o=t*l_n + x_pxo=t∗ln+xplt∗x0=0l^t*x_0=0lt∗x0=0通过以上约束求得t,即可求得投影点坐标...原创 2021-01-05 09:57:59 · 1052 阅读 · 0 评论 -
几何基础 笛沙格定理
射影几何中的概念:在射影空间中,如果对应边的交点共线,则对应顶点的连线共点。转载 2021-01-04 10:54:10 · 1095 阅读 · 0 评论 -
OpenGL加载纹理
运行环境我是直接跟着learn opengl里面的教程搞了,cmake编译一下,用VS2019(2017之类的同理)。在绘制三角形教程的基础上,主要注意修改一下顶点渲染器和片段渲染器里面的变量。shader.cpp等不用动,这一部分是用来编译渲染器代码的。给出需要修改的代码,在代码中给出注释进行对应学习也不错哈哈1.主程序main.cpp// Include standard headers#include <stdio.h>#include <stdlib...原创 2020-10-05 23:05:17 · 842 阅读 · 1 评论