-
官方参考文档中包含了这章例子程序的屏幕截图-matplotlib
资源介绍
图 15.5 这章例子程序的屏幕截图
15.615.615.6
15.6
摘要摘要摘要
摘要
选取技巧通过鼠标点击,来确定与 3D 对象对应的屏幕上显示的 2D 投影对象。
选取线是一个射线,源自视图空间的原点,穿过投影窗口上的点关联到屏幕上点击的点。
我们能够变换一个射线 rrr
r
(t) = ppp
p
0 + tuuu
u
,通过变换原点 ppp
p
0 和通过矩阵变换得到方向 uuu
u
。注意:原点
变换自一个(w=1)的点,方向是(w=0)的向量。
测试射线与对象相交,我们能测试射线是否相交于组成对象的三角形,或测试射线是否相交于围
绕对象的一个体积,比如边界球。
// transform the ray to world space
D3DXMATRIX view;
Device->GetTransform(D3DTS_VIEW, &view);
D3DXMATRIX viewInverse;
D3DXMatrixInverse(&viewInverse, 0, &view);
TransformRay(&ray, &viewInverse);
// test for a hit
if ( RaySphereIntTest(&ray, &BSphere) )
::MessageBox(0, "Hit!", "HIT", 0);
break;
- 上一篇: linux离线安装vsftpd包.zip
- 下一篇: java FTPClient