摘要:
一直对齐次坐标这个概念的理解不够彻底,只见大部分的书中说道“齐次坐标在仿射变换中非常的方便”,然后就没有了后文,今天在一个叫做“三百年 重生”的博客上看到一篇关于透视投影变换的探讨的文章,其中有对齐次坐标有非常精辟的说明,特别是针对这样一句话进行了有力的证明:“齐次坐标表示是计算机图形学的重要手段之一,它既能够用来明确区分向量和点,同时也更易用于进行仿射(线性)几何变换。”——F.S. Hill, JR。 由于作者对齐次坐标真的解释的不错,我就原封不动的摘抄过来: 对于一个向量v以及基oabc,可以找到一组坐标(v1,v2,v3),使得v= v1a+ v2b +v3c (1)而对于一个点p,则 阅读全文
摘要:
前言(Preface)前段时间有些朋友在论坛里问到一些关于3D数学的知识,就想为大家写点这方面的文章。由于之前比较忙,又遇到过春节,所以最近才着笔写了这篇文章,希望大家喜欢。这些内容主要是一些理论知识,看上去难免有些枯燥,之后的文章我会加入一些实例进行讲解的。如果内容存在错误和不全,就请你来更正和添加了。三维坐标系(3D Coordinate System)三维坐标是把二维的平面坐标推广到三维空间中,在三维坐标中,点(x,y,z)的齐次坐标为(nx,ny,nz,n),其中n为任意不为0的数,规范化的齐次坐标为(x,y,z,1),与之相对应,三维变换的变换矩阵为4×4矩阵。在三维空间中 阅读全文
摘要:
一:custom draw自行绘制 ClistCtrl 的列表项,可以利用列表框的 NM_CUSTOMDRAW 消息,该消息由控件向它的父窗口发送,告诉父窗口它的绘图操作。 如果绘图操作不需要父窗口参与,可以使用该控件的 ON_NOTIFY_REFLECT 宏处理它的 NM_CUSTOMDRAW 消息。 它的处理函数的参数中包含 NMHDR,在 CUSTOMDRAW 的通知下 NMHDR 可以被转换成为 NMLVCUSTOMDRAW 结构,该结构包含了列表控件中需要自绘区域的全部信息:typedef struct tagNMLVCUSTOMDRAW{ NMCUSTOMDRAW nmcd; // 阅读全文