资源简介
泛滥填充(种子填充)算法OpenGl glut实现
代码片段和文件信息
#include
#include
#include
#include
typedef float Color[3];
int total=0;
void init (void)
{
glClearColor (0.0f 0.0f 0.0f 0.0f);
glMatrixMode (GL_PROJECTION);
gluOrtho2D (0.0 400.0 0.0 400.0);
}
void getPixel(GLint x GLint y Color c)
{
glReadPixels(xy11GL_RGBGL_FLOATc);
}
void setPixel(GLint xGLint y)
{
glBegin(GL_POINTS);
glVertex2i(x y);
glEnd();
Sleep(1);
total++;
// cout< }
bool rgbColorEqual(Color aColor b)
{
if (abs(a[0]-b[0])<0.0001 && abs(a[1]-b[1])<0.0001 && abs(a[2]-b[2])<0.0001 )
return true;
else
return false;
}
void floodFill4 (int x int y Color fillColor Color interiorColor)
{
Color color;
/* Set current color to fillColor then perform following operations. */
getPixel (x y color);
// cout< if ( rgbColorEqual(colorinteriorColor) ) {
setPixel (x y); // Set color of pixel to fillColor.
floodFill4 (x + 1 y fillColor interiorColor);
floodFill4 (x - 1 y fillColor interiorColor);
floodFill4 (x y + 1 fillColor interiorColor);
floodFill4 (x y - 1 fillColor interiorColor);
}
}
void myDraw (void)
{ Color fillColor={0.0f0.0f1.0f}interiorColor={1.0f0.0f0.0f};
glClear(GL_COLOR_BUFFER_BIT);
glColor3fv(interiorColor);
glLineWidth(3.0);
glBegin(GL_POLYGON);
glVertex2i(1010);
glVertex2i(70100);
glVertex2i(20080);
glEnd();
glColor3fv(fillColor);
glColor3f(0.0f0.0f1.0f);
floodFill4(4040fillColorinteriorColor);
glFlush();
}
void main (int argc char** argv)
{
glutInit (&argc argv);
glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB);
glutInitWindowPosition (100 100);
glutInitWindowSize (400 400);
glutCreateWindow (“泛滥(种子)填充“);
init ( );
glutDisplayFunc (myDraw);
glutMainLoop ( );
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
..A..H. 6656 2009-04-02 14:30 floodFill4\boundaryFill4.suo
文件 45056 2009-04-13 10:01 floodFill4\floodFill4.exe
文件 1999 2009-04-21 11:36 floodFill4\floodFill4.cpp
目录 0 2009-04-06 21:46 floodFill4
----------- --------- ---------- ----- ----
53711 4
- 上一篇:矩阵相乘的FOX并行实现
- 下一篇:通用扫描线填充算法OpenGL glut实现
相关资源
- 通用扫描线填充算法OpenGL glut实现
- glfw-3.2.1 OpenGL用
- OpenGL三维图形系统开发与实用技术 基
- vs配置opengl所需glut库
- OpenGl 飞机在蓝天飞行 纹理贴图 地形
- 3D世界的QT+opengl实现
- 中点画圆的算法
- opengl20面体
- opengl纹理贴图
- GLTools-Freeglut.zipopengl超级宝典V5
- VIEW3DS.exe
- freeimage库的一个小
- OpenGL动态小车
- vc OpenGL制作动态三维的雷达扫描效果
- error C1083: 无法打开包括文件: “glau
- OpenGLWindow.zip
- GLUT库下载69016
- OpenGL实现下雪的效果
- openGL兔子模型
- GLaux (OpenGL辅助库)
- qt_opengl_obj.zip
- glaux库包含glaux.h和glaux.lib
- opengl通过键盘对3d图像进行颜色,光照
- GLM动态库、静态库和头文件OpenGL
- opengl函数大全,所有可用函数都在这
- QT-opengl窗体,实现了 1.绘制立方体,
- 计算机图形学机器人绘制opengl
- 使用opengl画桌子+球+地板
- OpenGL 的 GL.h
- SOILX64版本
评论
共有 条评论