计算机图形学
文章平均质量分 57
着风少年
这个作者很懒,什么都没留下…
展开
-
三种常用的直线裁剪算法
一.Cohen-Sutherland算法二.中点分割法三.Liang-Barsky算法原创 2022-04-02 13:30:33 · 3686 阅读 · 0 评论 -
反走样算法
在显示器上通过有限个点去逼近无限个点,会不可避免的出现走样现象,例如边界出现锯齿状等问题。反走样算法的主要思想是对边界区域进行模糊过渡处理,从视觉上看更加的平滑。一.非加权区域采样方法二.加权区域采样方法...原创 2022-03-30 09:39:38 · 1687 阅读 · 0 评论 -
区域颜色填充-四连通种子填充算法
首先确定封闭区域内的一个像素,称为种子点。将种子点率先引入栈中,并重复以下3个步骤:1.栈顶像素出栈;2.将出栈的像素填充上目标颜色;3.根据左上右下的顺序检查周围的像素,如果不为边缘且还未入栈则将该像素引入栈中。1.先将种子点(5,6)入栈,并将满足条件的左像素点(4,6)、右像素点(6,6)、下像素点(5,5)引入栈中。2.首先将(5,5)像素点出栈并且该像素点填充上相应的颜色。并检查(5,5)像素点左、上、右、下四个点,将符合条件的左像素点(4,5)、右像素点(6,5)引入栈中。3原创 2022-03-29 09:42:29 · 6250 阅读 · 0 评论 -
多边形颜色填充-X扫描线算法
在光栅显示器上选定一系列的点,将点按顺序连接起来形成一个封闭的多边形,并对多边形内的像素点进行颜色填充。本文主要介绍X扫描线算法以实现多边形内目标像素点的确定。一.X扫描线算法首先确定该多边形的和,通过y变量以为起点,以为终点,每次步长为1,与多边形相交求得交点,在交点的区间内所得的整数即为所求像素点。例如下图,,扫描线y=4与多边形交于P1、P2、P3、P4点,4个交点的x坐标分别为3.20、5.33、6.50、8.43,因此所求的目标像素点分别为P1和P2区间[4,4]、[5,4],P3和P4区原创 2022-03-28 10:34:41 · 4876 阅读 · 2 评论 -
直线绘制算法-Bresenham算法
该算法相较于其他直线绘制算法摆脱了直线方程式的使用,通过换元的思想实现整数加法的迭代。一.Bresenham算法原创 2022-03-25 21:10:54 · 19929 阅读 · 7 评论 -
直线绘制算法-中点画线法
之前讲过用数值积分法(DDA)进行直线逼近,通过向下取整获取目标像素点。计算过程中每一次都需要加0.5这一浮点数,浮点数运算效率相比整数运算效率低的多,因此需要对此进行改进。一.中点画线法直线方程式通过一般式表示:,调整A、B参数为整数。点在直线上方则,点在直线直线下方则,点在直线上则前提条件k∈[0,1],且坐标已经确定。接下来需要判断下一个点是取点还是取点。判断的依据是看和的中点位于直线上方还是下方,若位于直线上方则取点,位于直线下方则取点,正好位于直线上则任取均可。原创 2022-03-24 16:34:47 · 9261 阅读 · 3 评论 -
直线绘制算法-数值微分法(DDA)
一.DDA算法直线在数学上是由无数个点构成,但是由于计算机显示器是由有限个像素点组成。因此需要用有限个点去逼近无限个点,以实现直线在屏幕上显示。如下图所示,绿色线段为理想线段,黑色像素点为逼近的线段。1.由于像素点的离散性,在x方向上,每次增量为,则直线段上前一个点与后一个点具有以下关系。若已知直线段上一个点的坐标以及直线段斜率k,则可根据的关系推演出下一个点的y坐标。这样做的优点是:仅可通过加法运算即可得到每一个y值,提升运算效率。2.将得到的值四舍五入,用以确定y方向上哪原创 2022-03-24 09:13:59 · 6910 阅读 · 0 评论