中点圆c语言程序,[图形学] 画圆(基于中点算法)
图形学中的中点算法画圆,以下是该算法的 C 语言实现:
///
// 程序名称:基于中点算法画圆
// 编译环境:Visual C++ 6.0 / 2010,EasyX 2011惊蛰版
// 作 者:yangw80
// 最后修改:2011-4-29
//
#include
#include
// 使用中点算法画圆
void Circle_Midpoint(int x, int y, int r, int color)
{
for (int tx = 0, ty = r, d = 1 - r; tx <= ty; tx++)
{
// 利用圆的八分对称性画点
putpixel(x + tx, y + ty, color);
putpixel(x + tx, y - ty, color);
putpixel(x - tx, y + ty, color);
putpixel(x - tx, y - ty, color);
putpixel(x + ty, y + tx, color);
putpixel(x + ty, y - tx, color);
putpixel(x - ty, y + tx, color);
putpixel(x - ty, y - tx, color);
if(d < 0)
d += 2 * tx + 3;
else
d += 2 * (tx - ty) + 5, ty--;
}
}
// 主函数
void main()
{
initgraph(640, 480);
// 测试画圆
Circle_Midpoint(320, 240, 200, RED);
Circle_Midpoint(320, 240, 101, RED);
// 按任意键退出
getch();
closegraph();
}
中点圆c语言程序,[图形学] 画圆(基于中点算法)相关推荐
- 在 MFC SDI 程序中实现多语言程序界面
下载: SdiML (34K,Visual C++ 6 项目) 今天举个例子,说说怎样使用 CLanguage 类,在 MFC SDI 程序中实现多语言程序界面. 因为 MFC 包装了一些字符串显示处 ...
- Ubuntu中编写C语言程序
Ubuntu中编写C语言程序 1.准备工作 1.1 安装GCC 2.使用GCC编写C语言程序 2.1 编写一个Hello World程序 2.2 编写一个主程序文件main1.c和子程序文件sub1. ...
- 【计算机图形学实验二——实现圆的中点算法、椭圆的中点算法】
一.实验内容.目的.要求 1.实现圆的中点算法.椭圆的中点算法 2.掌握相关算法的原理及实现 3.交互方便.直观 可处理圆心不在原点的情形(标注出绘图窗口的坐标系) 优化算法:只含整数运算.加减法运算 ...
- matlab已知圆心和半径怎么作圆,MATLAB中已知圆心和半径画圆
今天在用MATLAB编程的时候,用到了已知圆心和半径,画圆的程序,上网搜了一下,主要有下面两种,在这里总结一下:(这里我都是放在函数中做的,想画多个圆的话可以加个for循环调用一下函数,或者直接用向量 ...
- MATLAB中已知圆心和半径画圆
今天在用MATLAB编程的时候,用到了已知圆心和半径,画圆的程序,上网搜了一下,主要有下面两种,在这里总结一下:(这里我都是放在函数中做的,想画多个圆的话可以加个for循环调用一下函数,或者直接用向量 ...
- 在Linux系统中运行C语言程序
正式学习c语言的第一天 2022/1/10 在之前的学习中已经在Windows系统中用Microsoft VC++上实现了C语言程序的运行,现在将在Linux系统上运行C语言程序. 首先明确C语言 ...
- 圆头像 微信小程序 绘图_微信小程序canvas画圆头像
wxml: wxss: canvas{ width:375px; height:100px } js const headImge = 'https://ss0.bdstatic.com/70cFvH ...
- 关于使用gcc在Linux系统中进行c语言程序的编译
目录 1.可执行文件的组装 学习使用gcc生成静态库和动态库 静态库生成 动态库生成 使用实例 静态库使用 动态库使用 2.gcc编译的各种工具 关于gcc编译器下的工具 Binutils c运行库 ...
- c语言在main函数中结束,C语言程序执行时,必须从main函数开始,从mian函数结束。...
C语言程序执行时,必须从main函数开始,从mian函数结束. 甲在上班途中遗失手机一部,语言程被乙拾得.甲发布悬赏广告称,语言程愿向归还手机者支付现金1000元作为酬谢.根据物权法律制度的规定,下列 ...
最新文章
- 连肝 7 个晚上,总结了 66 条计算机网络的知识点
- MyEclipse中常用的快捷键
- python 网络运维框架scape_“python scape 教程“求PhotoScape X Pro for Mac软件
- 读他:男人最怕听的十句话
- 数字音视频知识点汇总(二)
- LeetCode-145:二叉树的后序遍历
- python怎样画动态文字_Python制作动态字符图的实例
- VMware 克隆多个centos 7 操作系统
- ulimit限制 新系统_遇到一个很奇怪的问题,ulimit设置问题
- Weblogic的安装与卸载
- 刷算法题必备的基础数论知识
- ug怎么画曲线_UG怎么画雨伞?ug曲面造型实例教程
- 使用ExtendSim进行可靠性分析仿真
- 万年历程序中十二生肖排列顺序及算法
- Google十大高薪职位:首席软件工程师居首
- 农历 java_公历农历互相转换的Java日历工具类详解
- socket closed
- SCI 论文过去时和现在时 时态的使用
- 微信多订单合并付款_拼多多怎样合并付款?
- sql的null对求和的影响