#include<stdio.h>

 #include<stdlib.h>

 #include<graphics.h>

 #include<math.h>

 void MidBrehansemCircle(int x, int y, int radius);

 int main()

 {

     int gdriver = DETECT, gmove;

     int x, y, radius;

     printf("Please input circle corner:\n");

     scanf("%d%d", &x, &y);

     printf("Please input circle radius:\n");

     scanf("%d", &radius);

     initgraph(&gdriver, &gmove, "");

     MidBrehansemCircle(x, y, radius);

     system("pause");

     closegraph();

     return ;

 }

 void MidBrehansemCircle(int x, int y, int radius)

 {

     int d0 = -radius, di,x0=,y0=radius;

     di = d0;

     while (x0<=y0)

     {

         putpixel(x0+x, y0+y, RED);      //45-90

         putpixel(y0+y, x0+x, YELLOW);   //0-45

         putpixel(x-x0, y0 + y, BLUE);   //90-135

         putpixel( y- y0, x+x0, WHITE);  //135-180

         putpixel( x- x0,  y- y0, RED);  //225-270

         putpixel( y- y0,  x- x0, YELLOW);//180-225

         putpixel(x0+x,  y- y0, BLUE);   //270-315

         putpixel(y0+y,  x- x0, WHITE);  //315-360

         if (di >= )

         {

             di +=  * (x0 - y0) + ;

             y0--;

         }

         else

             di +=  * x0 + ;

         x0++;

     }

 }

中点Brehensam画圆算法的更多相关文章

  1. 中点Brehensam画线算法

    #include<stdio.h> #include<stdlib.h> #include"graphics.h" //函数声明 void MidBreha ...

  2. 中点Bresenham画圆

    这里不仔细讲原理,只是把我写的算法发出来,跟大家分享下,如果有错误的话,还请大家告诉我,如果写的不好,也请指出来,一起讨论进步. 算法步骤: (1) 输入圆的半径R. (2) 计算初始值d = 1 - ...

  3. Bresenham直线算法与画圆算法

    在我们内部开发使用的一个工具中,我们需要几乎从 0 开始实现一个高效的二维图像渲染引擎.比较幸运的是,我们只需要画直线.圆以及矩形,其中比较复杂的是画直线和圆.画直线和圆已经有非常多的成熟的算法了,我 ...

  4. 《图形学》实验六:中点Bresenham算法画圆

    开发环境: VC++6.0,OpenGL 实验内容: 使用中点Bresenham算法画圆. 实验结果: 代码: #include <gl/glut.h> #define WIDTH 500 ...

  5. 基于Bresenham算法画圆

    bresenham算法画圆思想与上篇 bresenham算法画线段 思想是一致的 画圆x^2+y^2=R^2 将他分为8个部分,如上图 1. 只要画出1中1/8圆的圆周,剩下的就可以通过对称关系画出这 ...

  6. 【转】【OPenGL】OPenGL 画图板-- 中点算法画圆

    为了能以任意点为圆心画圆,我们可以把圆心先设为视点(相当于于将其平移到坐标原点),然后通过中点法扫描转换后,再恢复原来的视点(相当于将圆心平移回原来的位置). 圆心位于原点的圆有四条对称轴x=0,y= ...

  7. WebGIS中基于AGS的画圆查询简析以及通过Polygon来构造圆的算法

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 1.背景 某个项目需求中需要在前端进行画圆查询,将圆范围上的多边形要素 ...

  8. 计算机图形学(二)输出图元_6_OpenGL曲线函数_2_中点画圆算法

    中点画圆算法        如同光栅画线算法,我们在每一个步中以单位间隔取样并确定离指定圆近期的像素位置.对于给定半径r和屏幕中心(xc,yc),能够先使用算法计算圆心在坐标原点(0, 0)的圆的像素 ...

  9. (转载)找圆算法((HoughCircles)总结与优化

      Opencv内部提供了一个基于Hough变换理论的找圆算法,HoughCircle与一般的拟合圆算法比起来,各有优势:优势:HoughCircle对噪声点不怎么敏感,并且可以在同一个图中找出多个圆 ...

随机推荐

  1. 【转载】maven用处

    http://bbs.csdn.net/topics/80014314 当您的项目逐渐变得庞大和复杂时,最好使用一种构建工具来自动构建您的项目.例如,一个典型的java项目,每次构建时都要经历编译ja ...

  2. centos6:一个网卡上显示多个ip地址的错误

    网卡显示如下:  上面显示em1有两个ip地址,其中36是设置的固定IP,212这个ip不清楚怎么搞出来的,但是通过212地址也能够正常连接主机.重启网卡之后,还是没有变化. 网卡em1配置如下,/e ...

  3. win10下用u盘装centos后如何修复win10引导

    相关参考: http://www.cnblogs.com/xiaoyao-lxy/p/5561728.html#wu

  4. L213

    The world lost seven astronauts of Space Shuttle Columbia(哥伦比亚号航天飞机) this month. It broughthome the ...

  5. Python mode_w

    # 每次使用w模式打开文件, 都会清空这个文件(坑) f = open("胡辣汤",mode="w",encoding="utf-8") f ...

  6. ifstream 和 ofstream 用法。

    outfile << pContent;//不可以用这个,因为不能写完全,比如遇到字符串中出现/0就终止了 bool CTestEn_DecryptDLLDlg::WriteDataFil ...

  7. 详解基本TCP套接字函数

    以下讲解基本TCP套接字函数. 1.socket 函数   指定期望的通信协议类型.    #include <sys/types.h> /* See NOTES */ #include  ...

  8. HDU 2907

    http://acm.hdu.edu.cn/showproblem.php?pid=2907 ans=(凸包顶点数-凸包凹面数量)*q-凸包凹面数量*p 重点在求一个凸包的凹面数量,极角排序过后,当前 ...

  9. 【JUnit】@Test 报错,"Test cannot be resolved to a type"

    想用单元测试 JUnit 单元测试下写好的方法,发现写 @Test 标签报错了,"Test cannot be resolved to a type" 原来是项目没有导入 JUni ...

  10. Crazy Computer

    ZS the Coder is coding on a crazy computer. If you don't type in a word for a cconsecutive seconds, ...