成都网站asp access源码购买修改,南京室内设计学校,哪些网站可以做h5,广告毕业设计作品网站直线#xff1a;ykxb 为了将他在显示屏上显示出来#xff0c;我们需要为相应的点赋值#xff0c;那么考虑到计算机的乘法执行效率#xff0c;我们肯定不会选择用Ykxb这个表达式求值#xff0c;然后进行画线段。 我们应当是将它转化为加法运算。 下面提供两种常见的算法ykxb 为了将他在显示屏上显示出来我们需要为相应的点赋值那么考虑到计算机的乘法执行效率我们肯定不会选择用Ykxb这个表达式求值然后进行画线段。 我们应当是将它转化为加法运算。 下面提供两种常见的算法 方法1DDA算法 DDA算法的思想是 1.判断直线是近x轴线段还是近y轴线段 2.求出delt_x,delt_y ,以较大值为总步长每次以此为标准步进然后求另一个值的增长值. 实现 方法二Bresenham算法实现 算法思想 dBresenham算法只要求做加法和乘二运算 1. 核心要解决的是下个点选用y1还是y 2. 基本要求不能有乘法运算 3. 表达式为 ymxb;起始点为(x,y) 4. y(k1)m(x1)b; d1y(k1)-ym(x1)b-y ;d2y1- y(k1)y1-m(x1)-b; 所以判断下个点y的坐标就演变成求d1,d2的差值 d1-d20 --------------à(x1,y1) d1-d20-------------à(x1,y) d1-d2 2m(x1)-2y2b-1 delt(x)x2-x10 还是含有乘法运算所以继续化简 pdelt(x)*(d1-d2)2delt(y)*(x1)-2delt(x)*y-(2b-1)*delt(x)2*delt(y)*x-2delt(x)*yc【c2*delt(y)delt(x)(2b-1)】 p(X(i1))-p(X(i))2delt(y)-2delt(x)(Y(i1)-Y(i)) p(i)0 Y(i1)-Y(i)1; else 0; 最后得到p12delt(y)-delt(x); p(X(i1)) p(X(i))2delt(y)-2delt(x)(Y(i1)-Y(i)) 这样就求出了p的值 代码实现 说明上述代码实现均是基于stm32处理器tftLCD2.8寸屏上实现的 转载于:https://www.cnblogs.com/stoneFang/p/6715333.html