1.  > 物流配送

物流配送库容量计算例题,物流配送库容量计算例题及解析

物流配送库容量计算例题,物流配送库容量计算例题及解析

本篇文章给大家谈谈物流配送库容量计算例题,以及物流配送库容量计算例题及解析对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 今天给各位分享物流配送库容量计算例题的知识,其中也会对物流配送库容量计算例题及解析进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

  1. dda算法例题?

1、dda算法例题?

这次我们要学的是直线的生成算法。

**
简单来说就是画一条从(x1, y1)到(x2, y2)的直线,实质上是一个发现最佳逼近直线的像素序列,并填入色彩数据的过程。这过程也称为直线光栅化。

直线光栅化,首先我们要保证三个特点:

连续性

粗细、亮度要均匀

像素逼近待画直线

直线的生成算法
步骤:
先要确定像素序列→确定像素点的坐标

我们先来看看最常见的方法:
DDA算法(数字微分分析式算法)

1、首先设(x1, y1)和(x2, y2)分别为所求直线的起点和终点坐标
然后分别设x的增量和y的增量
dx=(x2-x1)
dy=(y2-y1)

2、dy为y的增量,dx为x的增量,那么直线的斜率m为


然后又因为直线中每一点坐标可由前一点坐标变化一个增量(Dx,Dy),所以我们又可以得到:

3、接着,我们要比较x2- x1和y2 - y1,选择其中较大者,作为点前进的方向(假设x2- x1较大)
取该方向上的增量为一个像素单位(Dx=1)
然后利用公式计算另一个方向的增量(Dy=Dx·m=m)。
通过递推公式,把每次计算出的


经取整后输出,则可生成直线。

接着我们来看下代码:

#include lt;graphics.hgt; // 就是需要引用这个图形库 #include lt;conio.hgt; void DDA(int x1,int y1,int x2,int y2); void main() { initgraph(500, 500); //窗口大小 DDA(0,0,300,500); getch(); // 按任意键继续 closegraph(); // 关闭图形界面 } void DDA(int x1,int y1,int x2,int y2) { double m=0.0; int dx=x2-x1; int dy=y2-y1; double x=0.0,y=0.0; if(dx!=0) { m=(double)dy/dx; if(mlt;=1) { y=(double)y1; for(x=(double)x1;xlt;=x2;x ) { putpixel((int)x,(int)y 0.5,WHITE); y =m; } } else { x=x1; m=1/m; for(y=y1;ylt;=y2;y ) { putpixel((int)x 0.5,y,WHITE); x =m; } } } else { x=x1; for(y=y1;y1lt;=y2;y ) { putpixel(x,y,WHITE); } } }

2.1.1 生成直线的DDA算法

nbsp; 数值微分法即DDA法(Digital Differential Analyzer),是一种基于直线的微分方程来生成直线的方法。

nbsp;一、直线DDA算法描述:

nbsp; 设(x1,y1)和(x2,y2)分别为所求直线的起点和终点坐标,由直线的微分方程得

= m =直线的斜率

(2-1)

nbsp; 可通过计算由x方向的增量△x引起y的改变来生成直线:

xi 1=xi △x

(2-2)

yi 1=yi △y=yi △x·m

(2-3)

nbsp; 也可通过计算由y方向的增量△y引起x的改变来生成直线:

yi 1=yi △y

(2-4)

xi 1=xi △x=xi △y/m

(2-5)

nbsp; 式(2-2)至(2-5)是递推的。

到此,以上就是小编对于物流配送库容量计算例题的问题就介绍到这了,希望介绍关于物流配送库容量计算例题的1点解答对大家有用。

[免责声明]本文来源于网络,不代表本站立场,如转载内容涉及版权等问题,请联系邮箱:3801085100#qq.com,#换成@即可,我们会予以删除相关文章,保证您的权利。 转载请注明出处:http://www.hc76.cn/wlps/45310.html

联系我们

电话:400-658-2019

微信号:7151897

工作日:9:30-18:30,节假日休息