免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
另外一种画圆的算法:算法的数学原理:我们知道圆的内接三角形中,如果有一条边是直径,那么该边所对应的角度是直角。而在解析几何中,对任意两条斜率存在的直线,如果它们相互垂直,那么它们的斜率相乘为-1,而倘若是在园外(稍微在圆外一点),则夹角变小,斜率相乘小于-1(待会儿给出证明),倘若在园内一点,则夹角变大,斜率相乘大于-1,如图:证明:(由于只需要画出1/8圆即能画出整个圆,因此以下以第二个八分圆证明)对于B点设(r为圆的半径)则,。对于B点设其中则同理可得,对于B”点以上是对该数学方法的证明下面我们讨论一下具体的描点,如图:设我们已经画出了P点(P在第二个八分圆的圆弧上),则我们设P(x,y),则下一个应该描的点应该是P1或P2,我们取P1和P2的中点Pmid,我们只需要判断出Pmid与圆的关系即可判断应取P1还是P2了,如图:按照前面的论证方法,我们分别算出了,因为是否在圆上是以斜率相乘是否为-1为分界线的,所以我们令,则只需判断出是否大于0即可我们观察到,对于第二个八分圆,分母恒成立,则我们只需要判断分子是否大于0即可,当分子时,则Pmid在圆外,取P2当分子时,则Pmid在圆内,取P1 如果相等,则我们约定取P2这样就可以画出圆来了,但是效率太低了,我们可以稍加改进,将其改变成增量的形式因为我们已经取了P点,则我们可以分情况讨论在P点之前一次的取点情况,共有两种情况,一是P点,二是P”点,则对应这两种情况:如果是P点,则计算的是Pmid点的斜率相乘的结果如果是P”点,则计算的是P”mid点的斜率相乘的结果我们设a为每一次的斜率相乘加1后的分子的值,则对应于Pmid而对应于P”mid而我们所需要求的Pmid点的由此,我们便将a的值表示成了增量的形式,通过判断a的正负来判断该点是在圆内还是圆外,具体的c代码算法部分如下所示:float a,x,y,r,espinon=0.00001;int tag;/tag是用来判别前一个点是P还是P”的x=0;/tag=1,表示取的是P,tag=0,表示取得是P”r=100;y=r;pDC-SetPixel(0,y,RGB(x,y,(x+y)/2);a=(y-0.5)*(y-0.5)+(x+1)*(x+1)-r*r;if(aespinon)pDC-SetPixel(x+1,y-1,RGB(x,y,(x+y)/2);x+,y-;tag=1;elsepDC-SetPixel(x+1,y,RGB(x,y,(x+y)/2);x+;tag=0;while(xespinon)pDC-SetPixel(x+1,y-1,RGB(x,y,(x+y)/2);x+,y-;tag=1;elsepDC-SetPixel(x+1,y,RGB(x,y,(x+
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 超市消毒常见试题及详细答案
- 净餐馆测试题目及答案
- 2026年计算机网络设备配置与调试综合测试卷
- 2026年心理健康促进策略专项训练题库
- 2026年古代民俗与艺术素养测试
- 2026年管理学原理期末复习习题集
- 2026年心理素质提升策略与实践习题集
- 2026年金融风险管理实务模拟题
- 2026年国防教育与青少年成长专题训练题库
- 2026年计算机网络安全知识测试卷
- 【新教材】人教版(2024)九年级上学期物理(13-17章)必背知识清单
- 2026乐山市市中区国有企业第二批社会招聘6人考试模拟试题及答案详解
- 2026年周口市国有污水处理厂社会公开招聘19人笔试模拟试题及答案详解
- 体育教师教学基本功比赛理论考试试题及答案
- 小学一年级数学《分一分》跨学科主题式教学设计
- 镇江润扬交通工程有限责任公司招聘笔试题库2026
- 江苏《城镇供水水表安装及维护技术规程》
- 陕西省宝鸡市2026年初一新生入学分班数学考试真题及答案
- 《2026年》药品检验岗位高频面试题包含详细解答
- 高考日语基础归纳总结与练习(一轮复习)
- 2022年江苏苏州昆山市委老干部局招聘编外工作人员笔试备考题库及答案解析
评论
0/150
提交评论