查看: 3584|回复: 6

有人使用gluNurbsSurface吗?

[复制链接]

该用户从未签到

发表于 2011-6-26 22:14:43 | 显示全部楼层 |阅读模式
有人使用gluNurbsSurface吗?
weight增加后怎么曲面会远离控制点?

该用户从未签到

发表于 2011-6-27 08:16:49 | 显示全部楼层
这个函数本身不适合实时的应用,因此在工程中应用的很少。至于您的问题,因为没有任何的相关代码,我无法判断什么

该用户从未签到

 楼主| 发表于 2011-6-27 15:02:46 | 显示全部楼层
多谢回复,代码很简单,就一句,stctpts是n*4的矩阵,第4列存储的是每个控制点的weight,n是控制点个数.修改控制点对应的weight会改变曲面形状.opengl的改变与数学推导不符,按理增加weight,曲面应该靠近控制点才对,但是opengl这个函数是减小weight会靠近控制点,甚至weight可以小于0,这就失去了weight的数学和几何意义了,查了相关手册,却没找到有关说明
  1. gluNurbsSurface(s,sknotscount,sknots,tknotscount,tknots,4*6,4,stctpts,4,4,GL_MAP2_VERTEX_4);
复制代码
另外,你说此函数不适合实时应用,请问实际工程中,需要画nurbs曲面难道需要自己写显示函数吗?你有这方面的参考资料吗?

该用户从未签到

发表于 2011-6-27 16:57:48 | 显示全部楼层
这里应该有您需要的信息:
http://www.opengl.org/sdk/docs/man/xhtml/gluNurbsSurface.xml

实际工程中,通常会使用多边形逼近的方法,否则程序根本没有效率

该用户从未签到

 楼主| 发表于 2011-6-28 00:39:06 | 显示全部楼层
多谢array回复.我这个课题就是要避免多边形才用的nurbs,看来没法子了.
还是谢谢了.我自己再研究下,如有进展,回来汇报.

该用户从未签到

发表于 2012-6-11 12:53:45 | 显示全部楼层
非常慢
不如自己写一个实现

该用户从未签到

发表于 2014-6-22 12:43:46 | 显示全部楼层
关于这个东西你先得研究下Nurbs的原理吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表