• vluobo
    了解作者
  • C/C++
    开发工具
  • 20KB
    文件大小
  • rar
    文件格式
  • 0
    收藏次数
  • 1 积分
    下载积分
  • 0
    下载次数
  • 2020-03-12 10:11
    上传日期
opengl绘制六角星,六芒星使用C语言
work.rar
  • work.c
    1.5KB
  • work.exe
    64.6KB
内容介绍
#include <math.h> #include <stdio.h> #include <GL/glut.h> #define PI 3.1415926535 void init(); void display(); int main(int argc, char *argv[]) { //glut初始化 glutInit(&argc, argv); //设置显示模式 glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE); glutInitWindowPosition(500, 250); glutInitWindowSize(300, 300); glutCreateWindow("六角星"); init(); glutDisplayFunc(display); glutMainLoop(); return 0; } void init() { //设置清屏颜色 glClearColor(1.0, 1.0, 1.0, 0.0); //设置投影参数 glMatrixMode(GL_PROJECTION); //用一个4×4的单位矩阵来替换当前矩阵 glLoadIdentity(); //世界坐标 gluOrtho2D(-200,200,-200,200); } void display() { //清除屏幕缓存 glClear(GL_COLOR_BUFFER_BIT); //设置图元颜色 glColor3f(0, 0, 0); glLineWidth(6); //设置反走样,消除明显的锯齿 glEnable(GL_LINE_SMOOTH); glEnable(GL_BLEND); glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA); //绘制图元 float x,y; float radius=100; //初始顶点与x轴夹角30度 float angle=30; //绘制倒三角 glBegin(GL_LINE_LOOP); for(int i = 0;i < 3;i++){ x= radius*cos(angle / 180 * PI); y= radius*sin(angle / 180 * PI); glVertex2d(x,y); //每隔两个顶点连线 angle +=60*2; } glEnd(); //绘制正三角 angle +=60; glBegin(GL_LINE_LOOP); for(int i = 0;i < 3;i++){ x= radius*cos(angle / 180 * PI); y= radius*sin(angle / 180 * PI); glVertex2d(x,y); //每隔两个顶点连线 angle +=60*2; } glEnd(); glFlush(); }
评论
    相关推荐
    • OpenGL-football.rar
      VC6.0+OpenGL画的一个三维足球场场景,有纹理、光照、雾效、透明贴图实现的十字交叉树木等。
    • OpenGL中实现子菜单.rar
      Opengl中实现菜单中的子菜单,在新手学习图形处理时候 很有用。
    • opengl.zip
      大量opengl动态库文件,包含glu.h,glew.h等
    • opengl1.rar
      实现立方体的绘制 鼠标控制其旋转移动 给每个面设置不同颜色 自己可以贴纹理
    • OPENGL_sphere.rar
      利用OPENGL自身有的画图库 实现球的三维显示
    • 3Dsunsystem.rar
      3D的太阳系系统,各个行星等等的同过OpenGL实现
    • 曲面.rar
      十六个控制点,用opengl来绘制本泽尔三维曲面
    • ElasticFusion-master.zip
      实时密集视觉冲击系统,能够捕捉使用RGB-D相机探索的基于SURFEL的房间尺度环境的全面密集全球一致的地图。
    • OpenGL绘制参数曲线.rar
      opengl绘制参数曲线,这里绘制的是很多条短直线逼近一个椭圆,比较适合新手
    • codesforimageprocessing.rar
      实现简单图像处理,包括256色转灰度图、Hough变换、Walsh变换、中值滤波、二值化变换、亮度增减、傅立叶变换、反色、取对数、取指数、图像平移、图像旋转、图像细化、图像缩放、图像镜像、均值滤波、对比度拉伸、拉普拉斯锐化(边缘检测)、方块编码、梯度锐化、灰度均衡、直方图均衡、离散余弦变换、维纳滤波处理、逆滤波处理、阈值变换、高斯平滑。