| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3462 人关注过本帖
标题:求opengl画函数图像
只看楼主 加入收藏
zjsxwc
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:252
专家分:601
注 册:2011-1-20
结帖率:93.75%
收藏
已结贴  问题点数:30 回复次数:19 
求opengl画函数图像
几天前开帖问过怎么画函数图像,说用opengl,一片迷茫,故求opengl画函数图像的代码,最好带注释,谢谢,比如画正弦函数图像
搜索更多相关主题的帖子: 最好 
2011-02-04 18:34
vandychan
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
等 级:贵宾
威 望:18
帖 子:2296
专家分:6418
注 册:2010-8-20
收藏
得分:0 
你需要吗、??
我可以告诉你的

到底是“出来混迟早要还”还是“杀人放火金腰带”?
2011-02-04 18:38
zjsxwc
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:252
专家分:601
注 册:2011-1-20
收藏
得分:0 
把源码发出来吧

The tools I recommended:
GUI: CSharp(VS), QT;    Core Code: Plain C (Tiny C Compiler);    Web: Python, JavaScript;    Android: Java;    Embedded System: ASM&C (Linux)
2011-02-04 18:43
vandychan
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
等 级:贵宾
威 望:18
帖 子:2296
专家分:6418
注 册:2010-8-20
收藏
得分:0 
拒绝发源马

到底是“出来混迟早要还”还是“杀人放火金腰带”?
2011-02-04 18:52
zjsxwc
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:252
专家分:601
注 册:2011-1-20
收藏
得分:0 
回复 4楼
差点这贴要水了,坐等源码and注释出现

[ 本帖最后由 zjsxwc 于 2011-2-4 19:07 编辑 ]

The tools I recommended:
GUI: CSharp(VS), QT;    Core Code: Plain C (Tiny C Compiler);    Web: Python, JavaScript;    Android: Java;    Embedded System: ASM&C (Linux)
2011-02-04 18:54
点线面
Rank: 8Rank: 8
来 自:NO.-1
等 级:蝙蝠侠
帖 子:525
专家分:980
注 册:2011-1-3
收藏
得分:5 
程序代码:
//用VS2010编译
#include<GL/glut.h>
#include <windows.h>        // Windows的头文件

void display()
{
   glClear(GL_COLOR_BUFFER_BIT);  //设定显示缓存的背景色,还显示的场景中的对象选择各各颜色模型
   glBegin(GL_POLYGON);          
     glVertex2f(-0.5,-0.5);
     glVertex2f(-0.5,0.5);
     glVertex2f(0.5,0.5);
     glVertex2f(0.5,-0.5);
   glEnd();

   glFlush();
}

void init()
{
glClearColor(0.0,0.0,0.0,0.0);  //将颜色赋给显示窗口


glColor3f(1.0,1.0,1.0);

glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluOrtho2D(-1.0,1.0,-1.0,1.0);
}

int main(int argc, char**argv)
{
    FreeConsole();
glutInit(&argc,argv);         //第一步初如化opengl
glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB); //显示窗口的缓存和颜色模型等选项
glutInitWindowSize(500,500);  //设定显示窗口的初始宽度和高度的像素数
glutInitWindowPosition(0,0);  //显示窗口左上角的初始位置
glutCreateWindow("看一看");   //显示窗口在创建时给定一个标题
glutDisplayFunc(display);     //将图赋给显示窗口
init();
glutMainLoop();               //显示初始图形并使程序
进入检查鼠标或键盘等设备输入的无穷循环之中
}
搜索更
我是用vs2010是可以啊,LZ可以参考
http://www.

glut.h  ---> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Include\gl

glut.dll,glut32.dll ---> C:\Windows\SysWOW64 (windows7 64位操作系统)

                         ---> C:\Windows\System32   (windows7 32位操作系统)

glut.lib,glut32.lib ---> C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\lib

!!无须!!用宏 #define GLUT_DISABLE_ATEXIT_HACK

好多人glut.h不知道放哪里,自己新建了一个文件夹,其实很多前辈在之前就说过,

要搜索gl这个文件夹,将glut.h放到里面包含gl.h glu.h这两个文件的gl文件夹中.

直接copy下面例程编译即可通过

例程如下

#include <gl\glut.h>

void myDisplay(void)
{
    glClear(GL_COLOR_BUFFER_BIT);
    glRectf(-0.5f, -0.5f, 0.5f, 0.5f);
    glFlush();
}
int main(int argc, char *argv[])
{
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
    glutInitWindowPosition(100, 100);
    glutInitWindowSize(400, 400);
    glutCreateWindow("第一个OpenGL程序");
    glutDisplayFunc(&myDisplay);
    glutMainLoop();
    return 0;
}

================================================

1. 把解压得到的glut.h放到"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Include\gl"
(与具体安装位置有关,应该是 安装目录\microsoft sdks\windows\v7.0A\include\gl)

2. 把解压得到的glut.lib和glut32.lib放到"“Programfiles(x86)\Microsoft Visual studio 10.0\VC\lib" 中
(与具体安装位置有关,同上)

3. 把解压得到的glut.dll放到"C:\Windows\System32"

4. 把glut32.dll放到“Programfiles(x86)\Microsoft Visual studio 10.0\VC\bin”下
(注意这个,网上有人说放到system32里,但是我试过,会报错)(与具体安装位置有关,同上)
PS:尝试上面的方法的确在编译能够成功,但是运行应用程序时会出错

5. 打开vs2010,随便打开或新建一个项目。 选择 project->project property->
Configuration Properties(配置属性)->Linker(链接器
)->Input->Additional Dependencies(附加依赖项) 在其中添加opengl32.lib glu32.lib glut32.lib


如果这样还报错的话应该注意以下几点:
有时候在建console application 的时候添加的cpp文件将后缀句改为 .c
有的程序需要glaux工具包,这个下载了,可以按上述步骤添加(操作基本相同)
=========================================================================
VS较老版本格式转换后 general error c101008a错误。手动添加lib和头文件,然后project clean一下即可。
本文来自CSDN博客,转载请标明出处:http://blog.

[ 本帖最后由 点线面 于 2011-2-4 19:11 编辑 ]

小代码,大智慧
2011-02-04 19:09
卧龙孔明
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:59
帖 子:3872
专家分:684
注 册:2006-10-13
收藏
得分:8 
double x, y;
glBegin(GL_POINTS);
    for(x=0; x<800 ; x+=1e-3) //自己改
    {
        y = 600*sin(x);
        glVertex2f(x, y);
    }
glEnd();


有两年没用了,可能有错误

My Blog: www.aiexp.info
虽然我的路是从这里开始的,但是这里不再是乐土.感谢曾经影响过,引导过,帮助过我的董凯,飞燕,leeco,starwing,Rockcarry,soft_wind等等等等.别了,BCCN.
2011-02-04 19:14
vandychan
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
等 级:贵宾
威 望:18
帖 子:2296
专家分:6418
注 册:2010-8-20
收藏
得分:0 
孔明厉害啊

到底是“出来混迟早要还”还是“杀人放火金腰带”?
2011-02-04 19:23
zjsxwc
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:252
专家分:601
注 册:2011-1-20
收藏
得分:0 
回复 6楼 点线面
我这只有codeblocks这个编译器,他能用gl之类的,但是用你给的glut会提示undefine,怎么回事,是不是这个glut太老了1998年的,而我的gl是2008年的
图片附件: 游客没有浏览图片的权限,请 登录注册

The tools I recommended:
GUI: CSharp(VS), QT;    Core Code: Plain C (Tiny C Compiler);    Web: Python, JavaScript;    Android: Java;    Embedded System: ASM&C (Linux)
2011-02-04 22:03
flyue
Rank: 10Rank: 10Rank: 10
来 自:江南西道
等 级:贵宾
威 望:19
帖 子:3465
专家分:1563
注 册:2006-6-20
收藏
得分:0 
输入一个表达式,输出一个函数图像。

再往高点,输入一段C语言函数,输出一个3D函数图像

天之道,损有余而补不足.人之道则不然,损不足以奉有余.孰能有余以奉天下,唯有道者.
2011-02-04 22:06
快速回复:求opengl画函数图像
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025813 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved