可以构造一个矩阵,用OpenGL做出球,做之前把这个矩阵和模型变换的当前矩阵相乘就可以,我以前构造过,不过现在记不太清了。基本方法是先写出scale矩阵:S=
| x 1 0 0 |
| 0 y 0 0 |
| 0 0 z 0 |
| 0 0 0 1 |
写出点P
X
Y
Z
1
和相乘得到的新点在新点上加入Fx(x,y,z),Fy(x,y,z),Fz(x,y,z)根据各点不同位置得到的放大因子。重新计算得到S',S'就是你要的变换矩阵
| x 1 0 0 |
| 0 y 0 0 |
| 0 0 z 0 |
| 0 0 0 1 |
写出点P
X
Y
Z
1
和相乘得到的新点在新点上加入Fx(x,y,z),Fy(x,y,z),Fz(x,y,z)根据各点不同位置得到的放大因子。重新计算得到S',S'就是你要的变换矩阵
你能回忆一下吗?我还是觉得编起来有困难yheysj(vc_help):
三维的球或者二维的环,只要能做出就行了,怎样的坐标变换?