只怪数学没学好

weekease 2003-11-16 01:17:22
CtrlPoints: Array[0..4, 0..4, 0..2] of GLfloat = (
((-2.0, 0.0, 0.0), (-1.0, 1.0, 0.0), (0.0, 0.0, 0.0), (1.0, -1.0, 0.0), (2.0, 0.0, 0.0)),
((-2.0, 0.0, -1.0), (-1.0, 1.0, -1.0), (0.0, 0.0, -1.0), (1.0, -1.0, -1.0), (2.0, 0.0, -1.0)),
((-2.0, 0.0, -2.0), (-1.0, 1.0, -2.0), (0.0, 0.0, -2.0), (1.0, -1.0, -2.0), (2.0, 0.0, -2.0)),
((-2.0, 0.0, -3.0), (-1.0, 1.0, -3.0), (0.0, 0.0, -3.0), (1.0, -1.0, -3.0), (2.0, 0.0, -3.0)),
((-2.0, 0.0, -4.0), (-1.0, 1.0, -4.0), (0.0, 0.0, -4.0), (1.0, -1.0, -4.0), (2.0, 0.0, -4.0))
);
// 1 2 3 4 5 6 7 8 9 10
glMap2f(GL_MAP2_VERTEX_3, 0, 1, 3, 5, 0, 1, 15, 5, @CtrlPoints);
glEnable(GL_MAP2_VERTEX_3);
glMapGrid2f(10, 0.0, 1.0, 10, 0, 1.0);
glEvalMesh2(GL_FILL, 0, 10, 0, 10);

-------------------
我用Bezier绘制了一个正弦曲面,按代码绘制出来的结果:按X方向延伸,Y方向波动,习惯上的正弦波图形。
问题是glMap2f中的第4、5、8、9个参数的功能,书上只说argv4是代表u方向上控制点的跨度,argv8是代表v方向上控制点的跨度。这两个方向如何区别定义?
如果我想绘制一个,沿Y方向延伸,Z方向波动的正弦曲面,此时glMap2f如何写?
...全文
29 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
weekease 2003-11-16
  • 打赏
  • 举报
回复
o_O,了解
wqs6 2003-11-16
  • 打赏
  • 举报
回复
这个属于 计算机辅助几何造型(CAGD)的内容
推荐你看看 施法中 的相关书籍
yintongshun 2003-11-16
  • 打赏
  • 举报
回复
VC++6数字图像处理
weekease 2003-11-16
  • 打赏
  • 举报
回复
请问Beizer和Nurbs曲线的数学描述在什么数学书上有介绍啊?应该属于解析几何吧
zhouqingyuan 2003-11-16
  • 打赏
  • 举报
回复
up
wangzi163 2003-11-16
  • 打赏
  • 举报
回复
数学对计算机确实很重要啊。

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧