• 2.4.2 圆形思维的起点——朴素的软光栅(2)


    圆的扫描转换

    可以把问题简化为如何画一个在原点的圆。其他位置的圆可以通过平移原点位置同样大小的圆得到。

    八分法画圆

    利用简单方程

     利用极坐标方程

    中点Bresenham画圆法

    中点Bresenham算法的核心思想:把上下两个相邻像素坐标的中点带入解析函数,根据结果的正负,选择被在圆上的那个像素。移动x坐标所在位置,再选择两个相邻像素坐标的中点反复执行以上步骤。前后两次的中点坐标带入解析函数的差是一个固定增量,所以不需要每次带入解析函数,只需要增加增量再比较即可。

    算法步骤

     

    一点思考:只考虑第一象限靠上的八分之一圆,保证了斜率的绝对值小于1,此部分的最大位移方向在x轴上。

    椭圆又如何?椭圆的中点Bresenham算法

    分界点:最大位移方向x轴和y轴方向的点。

    引入法向量找到分界点

     同样引入中点位置帮助判别候选点的实际位置

    第一象限椭圆上半部分

     

     

  • 相关阅读:
    cv2 提取图片中的对应颜色
    cv2读取中文路径图片
    时间管理四象限法
    横向领导力摘要
    数据库事务分布式
    跨时钟(CDC)处理
    Mysql show profiles
    Mysql 数值类型
    Mysql 时间日期类型
    Mysql char 和 varchar 的区别
  • 原文地址:https://www.cnblogs.com/BoysCryToo/p/15739996.html
Copyright © 2020-2023  润新知