用ege图形库画五角星
来源:互联网 发布:淘宝刷流量工作室 编辑:程序博客网 时间:2024/05/16 23:52
本文用ege图形库画一个五角星。部分代码参考ege图形库中的demo。附上ege网站http://xege.org/
EGE(Easy Graphics Engine),是windows下的简易绘图库,是一个类BGI(graphics.h)的面向C/C++语言新手的图形库,它的目标也是为了替代TC的BGI库而存在。
#include <ege.h>
#include <time.h>
#include <math.h>
void paintstar(double x,double y,double r,int mod=0);
int main()
{
ege::initgraph( 400, 400 );
ege::setcolor( RGB(0xff, 0xff, 0xff) );
ege::setfillcolor( RGB(0, 0, 0xff) );
ege::setrendermode(ege::RENDER_MANUAL);
ege::circle(ege::getwidth()/2,ege::getheight()/2,ege::getheight()/2);//画圆圈
paintstar(ege::getwidth()/2,ege::getheight()/2,ege::getheight()/2,0);//画实心五角星
//paintstar(ege::getwidth()/2,ege::getheight()/2,ege::getheight()/2,1);//空心五角星
ege::line(ege::getwidth()/2,ege::getheight()/2,0,ege::getheight()/2);
ege::getch();
return 0;
}
void paintstar(double x,double y,double r,int mod) //x,y,为五角星外接圆圆心坐标,r 为外接圆半径,mod为 五角星样式
{
switch(mod)
{
case 0: //实心五角星
{
int pt[20];
double r0=r*cos(ege::PI*2/5)/cos(ege::PI*1/5);//r0是五角星任意两点间都有连线时形成的五边形外接圆的半径
for(int n=0;n<5;++n)
{
pt[n*4]=(int)(-cos(ege::PI*2/5*n)*r+x);// 五角星各外顶点的横坐标
pt[n*4+1]=(int)(sin(ege::PI*2/5*n)*r+y);// 五角星各外顶点的纵坐标
pt[n*4+2]=(int)(-cos(ege::PI*2/5*n+ege::PI*1/5)*r0+x);// 五角星内五边形各顶点的横坐标
pt[n*4+3]=(int)(sin(ege::PI*2/5*n+ege::PI*1/5)*r0+y);// 五角星内五边形各顶点的纵坐标
}
ege::fillpoly(10,pt);
}
break;
case 1: //空心五角星
{
int pt[10];
for(int n=0;n<5;++n)
{
pt[n*2]=(int)(-cos(ege::PI*4/5*n)*r+x);//各顶点横坐标
pt[n*2+1]=(int)(sin(ege::PI*4/5*n)*r+y);//各顶点纵坐标
}
ege::fillpoly(5,pt);
}
break;
default:
break;
}
}
实心五角星
空心五角星
- 用ege图形库画五角星
- VS2015配置EGE图形库
- C语言,用EGE图形库实现推箱子小游戏
- Dev-C++中使用EGE图形库
- Dev-C++中使用EGE图形库
- EGE图形库绘制的扫雷
- 【dev Cpp新手请进】dev导入ege图形库
- C语言实现2048(ege图形库版)
- 用鼠标画五角星
- VC6.0工程中配置EGE图形库时的设置
- c++入门之一:EGE图形库介绍与配置(VS2013、DEVCPP)
- 用c#制作画五角星
- 画五角星
- 画五角星
- 画五角星
- 使用opengl绘制五角星图形
- EGE图形配置(DEV C++5.6.0 MinGW4.8.1)
- 用VC画五角星的方法
- leetcode Add and Search Word - Data structure design
- LSB 脚本规范简介
- Linux笔记11-Shell脚本执行方式
- php数据结构
- 程序员的工作环境与效率
- 用ege图形库画五角星
- hdu 2602 Bone Collector(01背包问题)
- 铁路订票系统的简单设计
- 06-图1. List Components (25) (邻接矩阵实现)
- Android学习记录
- php基本的排序查找
- 子进程等待父进程退出及fork使用
- linux将虚拟地址转物理地址的过程探索[页表]
- Hadoop学习笔记(二)---linux中JDK的安装