资源简介
Delaunay德罗内三角形剖分生成以及opengl显示
Delaunay 三角网的优点是结构良好, 数据结构简单, 数据冗余度小, 存储效率高, 与不规则的地面特征和谐一致,可以表示线性特征和迭加任意形状的区域边界, 易于更新,可适应各种分布密度的数据等; 它的局限性是, 算法实现比较复杂和困难, 但现在已经有了较多成熟的实现算法。 Delaunay 三角网是Voronoi图的伴生图形, 它们两个是被普遍接受和采用的分析研究区域离散数据的有力工具。它是通过连接具有公共顶点的三个V n多边形的生长中心而生成的, 这个公共顶点就是形成的Delaunay三角形外接圆的圆心
代码片段和文件信息
// ConsoleApplication4.cpp : 定义控制台应用程序的入口点。
//
#include “stdafx.h“
#include “stdafx.h“
#include
#include “delaunay.h“
#include “windows.h“ // for time statistics
std::vector> outData;
void init(void)
{
glClearColor(0.0 0.0 0.0 0.0);//设置背景颜色为黑色
glShadeModel(GL_SMOOTH);//设置为光滑明暗模式
}
void myDisplay(void)
{
glEnable(GL_CULL_FACE);
glPolygonMode(GL_FRONT GL_LINE);
glClear(GL_COLOR_BUFFER_BIT);// 将缓存清除为预先的设置值即黑色
//glTranslatef(0.8 0.0 0.0);//平移函数,暂时可以不用
// glBegin(GL_TRIANGLES);//开始画三角形
// glColor3f(1.0 0.0 0.0);//设置第一个顶点为红色
// glVertex2f(-1.0 -1.0);//设置第一个顶点的坐标
// glColor3f(0.0 1.0 0.0);//设置第二个顶点为绿色
// glVertex2f(0.0 -1.0);//设置第二个顶点的坐标
// glColor3f(0.0 0.0 1.0);//设置第三个顶点为蓝色
// glVertex2f(-0.5 1.0);//设置第三个顶点的坐标
// glEnd();//三角形结束
glPushMatrix();
glScalef(100.0f 100.0f 100.0f);
glBegin(GL_TRIANGLES);//开始画三角形
for (auto v: outData)
{
glVertex2f(v.firstv.second);//设置第一个顶点的坐标
}
glEnd();
glPopMatrix();
glFlush();//强制OpenGL函数在有限时间内运行
}
void myReshape(GLsizei w GLsizei h)
{
glViewport(0 0 w h);//设置视口
glMatrixMode(GL_PROJECTION);//指明当前矩阵为GL_PROJECTION
glLoadIdentity();//将当前矩阵置换为单位阵
// if (w <= h)
// gluOrtho2D(-1.0 1.5 -1.5 1.5*(GLfloat)h / (GLfloat)w);//定义二维正视投影矩阵
// else
gluOrtho2D(-w/2 w/2 -h/2 h/2);
glMatrixMode(GL_MODELVIEW);//指明当前矩阵为GL_MODELVIEW
}
int main(int argc char ** argv)
{
/*初始化*/
glutInit(&argc argv);
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);//单缓冲、RGB模式
glutInitWindowSize(800 600);
glutInitWindowPosition(200 200);
glutCreateWindow(“三角形“);//窗口标题
MESH mesh;
double last_time this_time;
//int ver_num;
//int tri_num;
Input(“D:/搜狗高速下载/DelaunayTriangulation/DelaunayTriangulation/input_points.txt“ &mesh);
last_time = GetTickCount();
IncrementalDelaunay(&mesh);
//Sleep(1000);
this_time = GetTickCount();
printf(“Elapsed Time for Incremental Delaunay: %lg ms“ this_time - last_time);
Output(“output_triangles.txt“ &mesh outData);
init();
/*绘制与显示*/
glutReshapeFunc(myReshape);//窗口大小发生改变时采取的行为
glutDisplayFunc(myDisplay);//显示绘制图形
glutMainLoop();//循环
return(0);
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
..A..H. 26112 2017-12-06 21:57 ConsoleApplication4\.vs\ConsoleApplication4\v14\.suo
文件 2459 2017-12-06 21:53 ConsoleApplication4\ConsoleApplication4\ConsoleApplication4.cpp
文件 8154 2017-12-06 21:42 ConsoleApplication4\ConsoleApplication4\ConsoleApplication4.vcxproj
文件 1326 2017-12-06 21:37 ConsoleApplication4\ConsoleApplication4\ConsoleApplication4.vcxproj.filters
文件 2138 2017-12-06 21:53 ConsoleApplication4\ConsoleApplication4\Debug\ConsoleA.0947F331.tlog\CL.command.1.tlog
文件 27514 2017-12-06 21:53 ConsoleApplication4\ConsoleApplication4\Debug\ConsoleA.0947F331.tlog\CL.read.1.tlog
文件 2194 2017-12-06 21:53 ConsoleApplication4\ConsoleApplication4\Debug\ConsoleA.0947F331.tlog\CL.write.1.tlog
文件 247 2017-12-06 21:53 ConsoleApplication4\ConsoleApplication4\Debug\ConsoleA.0947F331.tlog\ConsoleApplication4.lastbuildstate
文件 1930 2017-12-06 21:53 ConsoleApplication4\ConsoleApplication4\Debug\ConsoleA.0947F331.tlog\li
文件 3776 2017-12-06 21:53 ConsoleApplication4\ConsoleApplication4\Debug\ConsoleA.0947F331.tlog\li
文件 1176 2017-12-06 21:53 ConsoleApplication4\ConsoleApplication4\Debug\ConsoleA.0947F331.tlog\li
文件 331 2017-12-06 21:53 ConsoleApplication4\ConsoleApplication4\Debug\ConsoleApplication4.log
文件 209674 2017-12-06 21:53 ConsoleApplication4\ConsoleApplication4\Debug\ConsoleApplication4.obj
文件 3473408 2017-12-06 21:42 ConsoleApplication4\ConsoleApplication4\Debug\ConsoleApplication4.pch
文件 12382 2017-12-06 21:42 ConsoleApplication4\ConsoleApplication4\Debug\stdafx.obj
文件 748544 2017-12-06 21:53 ConsoleApplication4\ConsoleApplication4\Debug\vc140.idb
文件 339968 2017-12-06 21:53 ConsoleApplication4\ConsoleApplication4\Debug\vc140.pdb
文件 17827 2017-12-06 21:33 ConsoleApplication4\ConsoleApplication4\delaunay.h
文件 169984 1998-08-18 16:25 ConsoleApplication4\ConsoleApplication4\glut32.dll
文件 263 2017-12-06 21:57 ConsoleApplication4\ConsoleApplication4\output_triangles.txt
文件 1594 2017-12-06 21:37 ConsoleApplication4\ConsoleApplication4\ReadMe.txt
文件 223 2017-12-06 21:37 ConsoleApplication4\ConsoleApplication4\stdafx.cpp
文件 234 2017-12-06 21:37 ConsoleApplication4\ConsoleApplication4\stdafx.h
文件 240 2017-12-06 21:37 ConsoleApplication4\ConsoleApplication4\targetver.h
文件 1339 2017-12-06 21:37 ConsoleApplication4\ConsoleApplication4.sln
文件 29573120 2017-12-06 21:57 ConsoleApplication4\ConsoleApplication4.VC.db
文件 92672 2017-12-06 21:53 ConsoleApplication4\Debug\ConsoleApplication4.exe
文件 828336 2017-12-06 21:53 ConsoleApplication4\Debug\ConsoleApplication4.ilk
文件 1462272 2017-12-06 21:53 ConsoleApplication4\Debug\ConsoleApplication4.pdb
文件 3407872 2017-12-06 21:42 ConsoleApplication4\ipch\CONSOLEAPPLICATION4-fd4eae8b\CONSOLEAPPLICATION4-82664867.ipch
............此处省略13个文件信息
相关资源
- OpenGL模型及场景展示源码
- 三十多个天空盒图片
- 最简单的视音频播放 1.1
- 最简单的视音频播放
- glut库源码
- openGl绘制带颜色的三角形
- OpenGl三维建模源代码
- OpenGL函数与范例解析手册(中文).
- OpenGL三维图形系统开发与实用技术
- OpenGL超级宝典第六版 英文
- OpenGL消隐和光照
- opengl写的一个自行车
- OpenTK 安装文件
- opengl2048游戏源码
- OpenGL程序绘制贝塞尔曲线
- Learning Game Physics with Bullet Physics and
- 交通自动化控制界面 - 智能交通灯演
- OpenGLTexture
- OpenGLPro12
- openGL写的飞机动态射击模型
- 太阳系仿真源代码,opengl模型太阳系
- OpenGL 的 glut glaux
- 计算机图形学课程设计--OpenGL--太阳、
- Windows SDK 环境下 OpenGL实现
- OPenGL实现的虚拟校园环境漫游系统
- OpenGL函数与范例解析手册(中文)带
- Qt Creator中的3D绘图及动画教程(参照
- OpenGL依赖库
- 用VC和opengl开发的模仿cs的小游戏
- 二维/三维图形的几何变换基于OpenGL
评论
共有 条评论