三维曲线的绘制(OpenGL)

时间:2021-08-14 05:11:23
   各位看过来的高人好,最近想做一个可视化的程序,就是将二维三维函数曲线可视化,二维的好做(平面么),现在被三维给卡住了(比如 Z = x^2 + y^2这种曲线的可视化,当然还有更复杂的,形如  z = f(x) + g(y), f,g都是非线性的一维函数)。
    环境: Window XP + VS2008 + MFC

    我现在能想到的就是:绘制等高线或者是使用OpenGL,准备使用OpenGL做(正在看NeHe的教程),哪位做过这方面的给点建议?OpenGL里三维曲线的绘制一般是如何实现的?

    不仅仅限于这两种,有什么意见的话,无需保留了,呵呵,先拜谢各位了…………

    

11 个解决方案

#1


在画的时候都是生成好的离散的顶点,要生成曲线关键看你怎么生成曲线,OGL只关心你最终的顶点数据

#2


楼上的没错,关键是你的曲线生成算法,opengl只是一个API,具体的应用还是看你的算法生成曲线.

#3


OpenGL画曲线的函数很完备的,关键是你要算出曲线上的点

#4


没错

http://slash-directx.blogspot.com/

#5


有点抽象哈
能否给个例子或者是教程?

#6


推荐两本书《Visual C++ CAD应用程序开发技术》和《Visual C++6.0 高级编程技术opengl篇》
我现在就在学习Opengl,感觉看书比较有效果,现在已经可以时间复杂曲面的绘制了。。

#8


引用 6 楼 walnuts 的回复:
推荐两本书《Visual C++ CAD应用程序开发技术》和《Visual C++6.0 高级编程技术opengl篇》
我现在就在学习Opengl,感觉看书比较有效果,现在已经可以时间复杂曲面的绘制了。。

谢谢,现在想知道的就是如何开始呢?还没有一点头绪,这几天也没有好好弄,想找个方向,好好的学习下

#9


OpenGL画曲线就是用小直线连起来的glBegin(GL_LINE_STRIP),三维曲线就是将很多三维型值点连接起来。型值点怎样计算是最根本的问题。建议lz找计算机辅助几何设计和数值分析的相关书看看。比较好的曲线有Bezier(贝齐埃)、B样条和NURBS等,都是工业界普遍采用的设计方法标准,是CAD软件采用的标准算法。关于OpenGL,可以了解一下它的求值器。
算法是关键,OpenGL本身应用没有多少技术含量。

#10


引用 9 楼 Regulus_ccy 的回复:
OpenGL画曲线就是用小直线连起来的glBegin(GL_LINE_STRIP),三维曲线就是将很多三维型值点连接起来。型值点怎样计算是最根本的问题。建议lz找计算机辅助几何设计和数值分析的相关书看看。比较好的曲线有Bezier(贝齐埃)、B样条和NURBS等,都是工业界普遍采用的设计方法标准,是CAD软件采用的标准算法。关于OpenGL,可以了解一下它的求值器。
算法是关键,OpenGL本身应用没有多少技术含量。

谢谢,有点明白了

#11


   顶一下楼主

#1


在画的时候都是生成好的离散的顶点,要生成曲线关键看你怎么生成曲线,OGL只关心你最终的顶点数据

#2


楼上的没错,关键是你的曲线生成算法,opengl只是一个API,具体的应用还是看你的算法生成曲线.

#3


OpenGL画曲线的函数很完备的,关键是你要算出曲线上的点

#4


没错

http://slash-directx.blogspot.com/

#5


有点抽象哈
能否给个例子或者是教程?

#6


推荐两本书《Visual C++ CAD应用程序开发技术》和《Visual C++6.0 高级编程技术opengl篇》
我现在就在学习Opengl,感觉看书比较有效果,现在已经可以时间复杂曲面的绘制了。。

#7


#8


引用 6 楼 walnuts 的回复:
推荐两本书《Visual C++ CAD应用程序开发技术》和《Visual C++6.0 高级编程技术opengl篇》
我现在就在学习Opengl,感觉看书比较有效果,现在已经可以时间复杂曲面的绘制了。。

谢谢,现在想知道的就是如何开始呢?还没有一点头绪,这几天也没有好好弄,想找个方向,好好的学习下

#9


OpenGL画曲线就是用小直线连起来的glBegin(GL_LINE_STRIP),三维曲线就是将很多三维型值点连接起来。型值点怎样计算是最根本的问题。建议lz找计算机辅助几何设计和数值分析的相关书看看。比较好的曲线有Bezier(贝齐埃)、B样条和NURBS等,都是工业界普遍采用的设计方法标准,是CAD软件采用的标准算法。关于OpenGL,可以了解一下它的求值器。
算法是关键,OpenGL本身应用没有多少技术含量。

#10


引用 9 楼 Regulus_ccy 的回复:
OpenGL画曲线就是用小直线连起来的glBegin(GL_LINE_STRIP),三维曲线就是将很多三维型值点连接起来。型值点怎样计算是最根本的问题。建议lz找计算机辅助几何设计和数值分析的相关书看看。比较好的曲线有Bezier(贝齐埃)、B样条和NURBS等,都是工业界普遍采用的设计方法标准,是CAD软件采用的标准算法。关于OpenGL,可以了解一下它的求值器。
算法是关键,OpenGL本身应用没有多少技术含量。

谢谢,有点明白了

#11


   顶一下楼主