139.图形法绘制圆

简介: 139.图形法绘制圆
#include <stdio.h>
#include <graphics.h>
#include <dos.h>
/*这是根据给出的圆心坐标和点坐标分别在八个象限画点的子程序*/
void circlePoint( int xCenter, int yCenter, int x, int y )
{
  putpixel( xCenter + x, yCenter + y, YELLOW );
  putpixel( xCenter - x, yCenter + y, YELLOW );
  putpixel( xCenter + x, yCenter - y, YELLOW );
  putpixel( xCenter - x, yCenter - y, YELLOW );
  putpixel( xCenter + y, yCenter + x, YELLOW );
  putpixel( xCenter - y, yCenter + x, YELLOW );
  putpixel( xCenter + y, yCenter - x, YELLOW );
  putpixel( xCenter - y, yCenter - x, YELLOW );
}
void myCircle(int xCenter,int yCenter,int radius)
{
  int x, y, p;
/*初始化各个参数*/
  x = 0;
  y = radius;
  p = 1 - radius;
  circlePoint(xCenter, yCenter, x, y);
/*循环中计算圆上的各点坐标*/
  while( x < y ) {
    x++;
    if( p < 0 )
      p += 2*x+1;
    else
    {
      y--;
      p+=2*(x-y)+1;
    }
    circlePoint( xCenter, yCenter, x, y);
  }
}
void main()
{
  int gdriver=DETECT, gmode;  /*这是用c画图时必须要使用的图像入口*/
  int i;
  int xCenter, yCenter, radius;
  printf("Please input center coordinate :(x,y) ");
  scanf("%d,%d", &xCenter, &yCenter );
  printf("Please input radius : ");
  scanf("%d", &radius );
/*这条语句初始化整个屏幕并把入口传给gdriver,注意引号中是tc中bgi目录的完整路径*/
  registerbgidriver(EGAVGA_driver);
  initgraph(&gdriver, &gmode, "..\\bgi");  
  setcolor( BLUE );
  myCircle(xCenter, yCenter, radius);
  sleep(3);
  closegraph();
  return;
}
相关文章
|
SQL 分布式计算 Hadoop
Hive使用Impala组件查询(1)
Hive使用Impala组件查询(1)
695 0
|
人工智能 Java 对象存储
Java获取阿里云图片临时URL与图片文件转换Base64编码方法
在使用阿里云人工智能产品服务时,有部分服务需要上传的参数中包含文件URL,当我们没有开通OSS服务时,可以使用临时URL服务、或部分服务支持Base64编码格式,此文章为生成临时URL-JavaSDK方案与图片文件转换Base64编码方案。
2257 0
|
数据格式 JSON 存储
Lua模块的加载与内存释放
今天早上听说一件事情让我觉得很诡异的事情:公司线上的一款游戏,加载一份配置资源后,内存涨了几十M,然后内存再也下不来了。因为好奇,所以要来了最大的一个配置文件(4.5M,去除空格与换行后的大小),进行测试。
2274 0
|
11月前
|
分布式计算 监控 大数据
大数据-114 Flink DataStreamAPI 程序输入源 自定义输入源 Rich并行源 RichParallelSourceFunction
大数据-114 Flink DataStreamAPI 程序输入源 自定义输入源 Rich并行源 RichParallelSourceFunction
175 0
|
Java 数据处理
Java运算符与表达式详解
Java运算符与表达式详解
|
10月前
|
数据采集 Prometheus 监控
监控堆外第三方监控工具Grafana
监控堆外第三方监控工具Grafana
362 5
|
11月前
|
缓存 算法 Java
JVM知识体系学习六:JVM垃圾是什么、GC常用垃圾清除算法、堆内存逻辑分区、栈上分配、对象何时进入老年代、有关老年代新生代的两个问题、常见的垃圾回收器、CMS
这篇文章详细介绍了Java虚拟机(JVM)中的垃圾回收机制,包括垃圾的定义、垃圾回收算法、堆内存的逻辑分区、对象的内存分配和回收过程,以及不同垃圾回收器的工作原理和参数设置。
462 4
JVM知识体系学习六:JVM垃圾是什么、GC常用垃圾清除算法、堆内存逻辑分区、栈上分配、对象何时进入老年代、有关老年代新生代的两个问题、常见的垃圾回收器、CMS
|
消息中间件 算法
分布式篇问题之“最终一致性”问题如何解决
分布式篇问题之“最终一致性”问题如何解决
104 0
|
Web App开发 XML Java
Servlet执行流程&生命周期&方法介绍&体系结构、Request和Response的功能详解(1)
Servlet执行流程&生命周期&方法介绍&体系结构、Request和Response的功能详解
325 2
|
Linux 开发工具
5 种方法带你查看Linux系统服务
5 种方法带你查看Linux系统服务
387 0