下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本文格式为Word版,下载可任意编辑——正负算法画圆2.2.3正负算法生成圆
正负法是利用平面曲线将平面划分成正负区域,对当前点产生的圆函数进行符号判别,利用负反馈调整以决定下一个点的产生来直接生成圆弧。
一、正负画圆算法描述
设要显示圆的圆心在原点(0,0),半径为R,初始点的坐标为(0,R),顺时针生成八分之一圆,令:F(x,y)=x2+y2-R2
则圆的方程为:
F(x,y)=0(2-27)当点(x,y)在圆内时,则F(x,y)0;当点(x,y)在圆上时,则F(x,y)=0;
二、正负画圆算法思想
现以下图的AB弧为例,来说明正负画圆法(顺时针生成圆)。
假设当前点为Pi(xi,yi),取下一个点Pi+1(xi+1,yi+1)的原则是:
1、当F(xi,yi)≤0时:取xi+1=xi+1,yi+1=yi。即向右走一步,从圆内走向圆外。对应图(a)中的从Pi到Pi+1。
2、当F(xi,yi)>0时:取xi+1=xi,yi+1=yi-1。即向下走一步,从圆外走向圆内。对应图(b)中的从Pi到Pi+1。
由于向圆内或向圆外走取决于F(xi,yi)的正负,因此称为正负法。下面分两种状况求出F(xi,yi)的递推公式:
(1)当F(xi,yi)≤0时,向右走,取xi+1=xi+1,yi+1=yi,则
F(xi+1,yi+1)=F(xi+1,yi)=(xi+1)2+yi2-R2=(xi2+yi2-R2)+2xi+1=F(xi,yi)+2xi+1(2-28)(2)当F(xi,yi)>0时,向下走,取xi+1=xi,yi+1=yi-1,则
F(xi+1,yi+1)=F(xi,yi-1)=xi2+(yi-1)2-R2=(xi2+yi2-R2)-2yi+1=F(xi,yi)-2yi+1初始时,x=0,y=R,故
F(0,R)=(02+R2)-R2=0公式(2-28)、(2-29)和(2-30)就构成正负画圆算法的核心。给象素坐标(x,y)及F赋初始值后,进入循环画点;
画点后,根据F的符号进行F值的递推和下一个点的获取,直到x>y为止。同前面介绍的一样,利用圆的八分对称性,循环一次,画八个点。
三、正负画圆算法实现
(2-30)(2-29)注意:初值不同、圆的生成方向不同时,当前点和下一个点的获取原则是不同的,见下图。例如,初始点(R,0),逆时针生成圆,从图(b)可知:若当前点Pi在圆内,则下一点Pi+1(xi,yi+1),即向上走一步;若当前点Pi在圆外,则下一点Pi+1(xi-1,yi),即向左走一步;
(a)顺时针生成圆(b)逆时针生成圆
四、正负画圆算法演示
五、正负画圆算法特点
物理意义明白,程序中只含整数运算,因此算法速度快。
六、正负画圆算法程序
//顺时针生成
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年年《建设工程合同管理》专项真题答案
- 如何介绍乒乓球课程设计
- 2024个人的借款简单合同范本
- 奥数小学迷宫 课程设计
- 大馄饨技术课程设计
- 大班民间故事课程设计
- 大班教育主题课程设计
- 大班彩色编织课程设计
- 基本不等式说课稿 人教版
- 写出人物个性教案【中职专用】2023-2024学年中职语文高一单元写作深度指导高教版2023·基础模块下册
- 岗位整合整治与人员优化配置实施细则
- 实验室安全与防护智慧树知到期末考试答案章节答案2024年南昌大学
- GB 32032-2024金矿开采、选冶和金精炼单位产品能源消耗限额
- 体育师徒结对活动计划方案
- 抖音电商入门培训课件
- “智慧体育”在小学体育课堂教学中的应用
- 运动安全与健康智慧树知到期末考试答案章节答案2024年浙江大学
- 2024年中国华电集团限公司“青年骏才”招聘和校园招聘公开引进高层次人才和急需紧缺人才笔试参考题库(共500题)答案详解版
- 肾病科消渴病肾病中医诊疗专项方案
- 小升初衔接班英语教学计划
- 山东烟草考试真题2023
评论
0/150
提交评论