版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第三章基本圖形的掃描轉(zhuǎn)換
強(qiáng)調(diào)上課和上機(jī)紀(jì)律
?遲到三次作為曠課一次進(jìn)行處理,早退二
次作為曠課一次進(jìn)行處理
?曠課達(dá)三次者,不計(jì)平時(shí)成績(jī)(20%)
?實(shí)驗(yàn)作業(yè)兩次未交者,不計(jì)實(shí)驗(yàn)成績(jī)
(30%)
2of126
本章內(nèi)容
?3.1直線的掃描轉(zhuǎn)換
?3.2圓的掃描轉(zhuǎn)換
?3.3橢圓的掃描轉(zhuǎn)換
?3.4直線的反走樣技術(shù)
?本章小結(jié)
?習(xí)題
3of126
、r4、,
刖s
?光柵圖形顯示器是一個(gè)像素矩陣,如分辨
率為640X480,每個(gè)像素可以用一種或多種
顏色顯示,分別稱為單色顯示器或彩色顯
示器
?在光柵顯示器上顯示的任何一種圖形,實(shí)
際上都是具有一種或多種顏色的像素的集
合
4of126
圖形的掃描轉(zhuǎn)換
?圖形的掃描轉(zhuǎn)換:確定一個(gè)像素集合及其
顏色,用于顯示一個(gè)圖形的過程,稱為圖
形的掃描轉(zhuǎn)換或光柵化,也叫圖形的生成
5of126
圖形生成
?圖形生成是根據(jù)圖形的幾何信息和屬性信
息,結(jié)合圖形生成算法,計(jì)算出要顯示的
中間像素,而不像圖像生成是保存了圖像
的每一像素點(diǎn)的信息
■基本圖形的生成,首先要根據(jù)基本圖形的
特征找出它的幾何信息,然后根據(jù)一定的
生成算法實(shí)時(shí)地在顯示器上顯示出完整的
圖形
6of126
圖形掃描轉(zhuǎn)換步驟
?一般分為兩個(gè)步驟:先確定有關(guān)像素,再
用圖形的顏色或其它屬性對(duì)象素進(jìn)行某種
寫操作。后者通常是通過調(diào)用設(shè)備驅(qū)動(dòng)程
序來實(shí)現(xiàn)的。所以掃描轉(zhuǎn)換的主要任務(wù)就
是確定最佳逼近于圖形的像素集的生成算
法
7of126
理想直線
用一系列的象素點(diǎn)來逼近直線
8of126
?在一個(gè)圖形系統(tǒng)中,基本圖形(也稱為圖
元、圖素等)的生成技術(shù)是最基本的,任
何復(fù)雜的圖形都是由基本圖形組成的,基
本圖形生成的質(zhì)量直接影響該圖形系統(tǒng)繪
圖的質(zhì)量。所以,需要設(shè)計(jì)出精確的基本
圖形生成算法,以確保圖形系統(tǒng)繪圖的精
確性
9of126
3.1直線的掃描轉(zhuǎn)換
?3.1.1概述
?3.1.2數(shù)值微分DDA直線生成算法
?3.1.3中點(diǎn)直線生成算法
?3.1.4Bresenham直線生成算法
10of126
3.1.1概述
?直線的掃描轉(zhuǎn)換:確定最佳逼近于該直線的
一組象素,并且按掃描線順序,對(duì)這些象
素進(jìn)行寫操作
11of126
概述
?生成直線一般的準(zhǔn)則是:
-(1)線條應(yīng)該顯得筆直
?由連續(xù)點(diǎn)組成的直線要顯示在離散網(wǎng)格的平面上,
一定會(huì)有不經(jīng)過網(wǎng)格的點(diǎn),如左下圖。在這種情況
下,必須選擇靠近直線的網(wǎng)格點(diǎn)來逼近這條直線。
若選擇的好,線就顯得較直;否則就會(huì)較彎曲,如
概述
-(2)直線端點(diǎn)位置應(yīng)該準(zhǔn)確
?畫出的線段如果不準(zhǔn)確,往往會(huì)使兩條線之間不能
很好的鑲接,如下圖。
-(3)直線濃度應(yīng)該均勻
?線段的濃度與單位線段中所顯示的點(diǎn)數(shù)成正比。要
保持線段的濃度均勻端點(diǎn)應(yīng)該等距分布。只有平行
和成45。的線才能做到。,
13of126
概述
-(4)直線濃度應(yīng)該與線段的長(zhǎng)度和斜率無關(guān)
?要取得均勻的線段濃度,應(yīng)該保持每單位長(zhǎng)度的點(diǎn)
數(shù)是個(gè)常數(shù)。一般,采用線段的近似長(zhǎng)度,以及生
成直線的算法,使在線段近似長(zhǎng)度范圍內(nèi)保持線段
濃度均勻。
-(5)顯示線段的速度應(yīng)快
?生成直線可用軟件和硬件來實(shí)現(xiàn),一般情況下,硬
件要比軟件實(shí)現(xiàn)得快。
14of126
3.1.2數(shù)值微分DDA直線生成算法
?數(shù)值微分法,DDA(DigitalDifferential
Analyzer)是根據(jù)數(shù)學(xué)上直線的微分方程來設(shè)計(jì)
的
?設(shè)A(Xo,y()),B(Xi,yJ是直線的端點(diǎn)坐標(biāo),首先計(jì)
算出直線的斜率
k=dy/dx=Ay/Ax=(y1-y0)/(x1-x0)
宜線方程為:y=kx+B或x=1/k*y+T
15of126
-作為最底層的光柵圖形算法,在通常的
CAD圖形系統(tǒng)中,會(huì)被大量應(yīng)用,因此,
哪怕節(jié)約一個(gè)加法或減法,也是很了不起的
改進(jìn)。
?由此出發(fā)點(diǎn),導(dǎo)致增量算法的思想
根據(jù)k值做不同處理
?當(dāng)|k日時(shí),讓x每步增加1,y最多增加1,
然后用舍掉尾數(shù)的方法來確定直線上的像
素位置為(x,round(y))
?設(shè)當(dāng)前點(diǎn)為(4yj,則下一個(gè)像素Xj+i=%
+1,則
yi+i=kxi+1+B=k(x.+1)+B=(kXj+B)+k=1+k
即當(dāng)x每遞增1時(shí),y遞增斜率k
17of126
根據(jù)k值做不同處理
?當(dāng)|k|>l時(shí),應(yīng)當(dāng)讓y每步遞增1,這時(shí)x最多
增加1,然后然后用舍掉尾數(shù)的方法來確定
直線上的像素位置為(round(xby)
?設(shè)當(dāng)前點(diǎn)為(4yj,則下一個(gè)像素yi+i=x+l
,則
Xi+i=l/k*yi+i+T=l/k*(yi+l)+T=(l/k*yj+T)+l/k
=x.+l/k
即當(dāng)y每遞增1時(shí),x遞增斜率1/k
18of126
輸出坐標(biāo)求整
?由于屏幕上的坐標(biāo)為整數(shù)坐標(biāo),則真正作
為輸出顯示為:y輸出=ROUND(yJ,其中函
數(shù)ROUND()是指會(huì)尾的整數(shù)
?因此y輸出和丫門之間的量化誤差最大為1。
為了改善這方面的誤差,使x和y的值增加
0.5,使量化誤差在(?0?5,0,5)范圍之間
x=x0+0.5
y=y0+0.5
?ROUND(a)=(int)(a+0.5)
19of126
DDA直線生成舉例
?例:畫直線段Po(O,O)“Pi(5,2)k=0.4
xint(y+0.5)y+0.5
Line:P(O,0)—(5,2)
000+0.5o
100.4+0.5
210.8+0.5
311.2+0.5
421.6+0.5
522.0+0.5
20of126
DDA直線生成算法描述
1.if|Xi-XoF|y「yo|then
計(jì)算直線在y方向上的增量:length=|yi-y0|
2.else計(jì)算直線在x方向上的增量:length=M-Xo|
3.計(jì)算x方向的單位增量:dx=(x1-x0)/length//即1或1/k
4.計(jì)算y方向的單位增量:dy=(y1-y0)/length//BP1°Jck
5.置初值:x=x0,y=y0
6.fori=1tolengthdo
begin
7.輸出點(diǎn)(ROUND(x),ROUND(y))
8.計(jì)算下一個(gè)點(diǎn)坐標(biāo)x=x+dx,y=y+dy
end
9.endofalgorithm21of126
DDA直線生成算法程序
voidCTestView::OnDdaline()
{
CDC*pDC=GetDC();
COLORREFc=RGB(255,0,0);
intlength,i;
floatx,y,dx,dy;
length=abs(xb-xa);
if(abs(yb-ya)>length)
(
length=abs(yb-ya);
}
dx=(float)(xb-xa)/length;dy=(float)(yb-ya)/length;
x=(float)xa;y=(float)ya;
for(i=1;i<=length;i++)
(
pDC->SetPixel(ROUND(x),ROUND(y),c);
x=x+dx;y=y+dy;
}
ReleaseDC(pDC);
}22of126
DDA直線生成算法小結(jié)
?優(yōu)點(diǎn):
一在同一坐標(biāo)上,不可能連續(xù)停留兩次。
?缺點(diǎn):
-開始需要執(zhí)行一個(gè)除法△¥/△*或Ax/^y來確
定增量,用硬件來實(shí)現(xiàn)比較復(fù)雜和昂貴,用軟
件實(shí)現(xiàn)相對(duì)容易些,但效率較低
-浮點(diǎn)增量的連續(xù)迭加中取整誤差的積累會(huì)使長(zhǎng)
線段鎖計(jì)算的像素位置偏離實(shí)際線段
-取整操作和浮點(diǎn)運(yùn)算十分耗時(shí)
3.1.3中點(diǎn)直線生成算法
?采用增量思想的DDA算法,每計(jì)算一個(gè)象
素,只需計(jì)算一個(gè)加法,是否最優(yōu)?
?如非最優(yōu),如何改進(jìn)?
?目標(biāo):進(jìn)一步將一個(gè)加法改為一個(gè)整數(shù)加
法。
?新思路一>DDA算法采用點(diǎn)斜式,可否采
用其他的直線表示方式?
?隱式表示:F(x,y)=ax+by+c=O
24of126
3.1.3中點(diǎn)直線生成算法
?假定直線斜率0<K<1,且
已確定點(diǎn)亮象素點(diǎn)P(Xi,y),
則下一個(gè)與直線最接近的
像素只能是Pi(x+1,yj點(diǎn)或
「2(%+1?+1)點(diǎn)。設(shè)
1\/1(玉+1邛+0.5)為中點(diǎn),Q
為交點(diǎn)
?問題:如何確定下一個(gè)點(diǎn)
亮的象素?
中點(diǎn)畫線算法示意圖
25of126
1.原理
?M在Q的下方:P2離直
線更近,取P2
?M在Q的上方:離直
線更近,取
?M與Q重合:PvP2任
取一點(diǎn)
?問題:如何判斷M與Q
點(diǎn)的關(guān)系?
26of126
2.算法
?假設(shè)直線的起點(diǎn)和終點(diǎn)分別為(Xo,yo)和(xi,y]),則直
線方程為:F(x,y)=ax+by+c=O,看
?Srjqa=yo.yijb=xrx0,c=xoy1-x1yo
?由常識(shí)知:
「尸(x,y)=0點(diǎn)與直線重合
I/、
《尸(],F)>0點(diǎn)在直線上方
/(x,y)<0點(diǎn)在直線下方
?結(jié)論:欲判斷中點(diǎn)M點(diǎn)是在Q點(diǎn)上方還是在Q點(diǎn)下方,只
需把M代入F(x,y),并檢查它的符號(hào)。
27of126
構(gòu)造判別式
?將中點(diǎn)坐標(biāo)M(Xj+1,yi+0.5)代
入F(x,y)方程中,并判斷它
的符號(hào)
-構(gòu)造判別式
d=F(M)=F(xi+1,yi+0.5)=
a(Xj+1)+b(yj+0.5)+c
-當(dāng)d〈0時(shí),表示M在直線(Q
點(diǎn))下方,則取P2為下一點(diǎn);
-當(dāng)d>0時(shí),表示M在直線(Q
點(diǎn))上方,則取〕為下一點(diǎn);
P問題:能否采用增
-當(dāng)d=0時(shí),表示M在直線中,
取Pl或P2均可,約定取Py量算法呢?
28of126
增量算法
?d=F(M)=F(Xj+1,yj+0.5)=a(Xj+1)+b(yj+0.5)+c
?這樣做,每一個(gè)象素的計(jì)算量是4個(gè)加法,
兩個(gè)乘法
?“山窮水盡疑無路”
?如果也采用增量算法呢?
?d是與y的線性函數(shù),因此可采用增量計(jì)
算,提高運(yùn)算效率
29of126
遞推式子
?(1)當(dāng)d>=0時(shí),取Pi為下一個(gè)像素點(diǎn),欲判斷
再下一個(gè)像素,應(yīng)計(jì)算
d1=F(M1)=F(xi+2,yi+0.5)=a(Xj+2)+b(yi+0.5)+c=d+a
注:d=F(M)=F(xi+1,yi+0.5)=a(xi+1)+b(yi+0.5)+c
?即d的增量△d=a
30of126
遞推式子(續(xù))
?(2)當(dāng)d<0時(shí),取P2為下一個(gè)像素點(diǎn),欲判斷再
下一個(gè)像素,應(yīng)計(jì)算
d2=F(M2)=F(xj+2,yj+1.5)=a(xj+2)+b(yj+1.5)+c=d+a+b
注:d=F(M)=F(xi+1,yi+0.5)=a(Xj+1)+b(yj+0.5)+C
?即d的增量△d=a+b
31of126
遞推式子(續(xù))
?(3)求d的初始值
-第一個(gè)像素點(diǎn)為起點(diǎn)(x0,y0),則Mo(Xo+1,yo+O.5)
d0=F(x0+1,yo+O.5)=a(xo+1)+b(yo+O.5)+c
=(axo+byo+c)+a+O.5b
=F(xo,yo)+a+O.5b
-由于起點(diǎn)(x0,y0)在直線上,即F(x°,yo)=O,所以
do=a+O.5b
32of126
算法改進(jìn)
?至此,至少新算法可以和DDA算法一樣好
?能否再做改進(jìn)?
?能否實(shí)現(xiàn)整數(shù)運(yùn)算?
33of126
算法改進(jìn)
?由于在整個(gè)算法中只考慮d的符號(hào),而且d
的增量都是整數(shù),只是初始值包含小數(shù),
因此,在算法中可以用2d代替d,從而去掉
小數(shù)
d0'=2d0=2a+b
d/=2d1=2(d+a)=2d+2a,即=2a
d2'=2d2=2(d+a+b)=2d+2a+2b,BPAd
=2(a+b)
34of126
中點(diǎn)直線生成算法舉例
?用中點(diǎn)畫線法Po(O,O)Pi(5,2)k=O.4
?a=y()?y產(chǎn)2b=x1-x0=5
?d0=2a+b=1d1=2a=-4d2=2(a+b)=6
XiYid
1001d>0,取P1,增量為d1
210-3CKO,取P2,增量為d2
3213
431-1
5425
6521
中點(diǎn)直線生成算法程序
voidCTestView::OnMidline()
{
CDC*pDC=GetDC();
COLORREFc=RGB(0,255,0);
〃基于中點(diǎn)算法畫斜率在0和1之間的直線,如xa=0,ya=0,xb=500,yb=200
inta,b,d1,d2,d,x,y;
a=ya-yb;b=xb-xa;
d=2*a+b;d1=2*a;d2=2*(a+b);
x=xa;y=ya;
pDC->SetPixel(x,y,c);
while(x<=xb)
(
if(d<0)
{y++;d+=d2;〃取P2,并且計(jì)算下一點(diǎn)的d值}
else
{d+=d1;〃取P1,并且計(jì)算下一點(diǎn)的d值}
x++;
pDC->SetPixel(x,y,c);
)
ReleaseDC(pDC);36of126
}
voidCTestView::OnRandomkmidline()
{
CDC*pDC=GetDC();COLORREFc=RGB(0,0,255);
intx=xa,y=ya;
inta=ya-yb,b=xb-xa;
intex=(b>=0?1:(b=-b,-1));
intcy=(a<=0?1:(a=-a,-1));
pDC->SetPixel(x,y,c);
intd,d1,d2;
if(-a<=b)II斜率絕對(duì)值v=1
(
d=2*a+b;d1=2*a;d2=2*(a+b);
while(x!=xb)
{
if(d<0)
y+=cy,d+=d2;
else
d+=d1;
x+=ex;
pDC->SetPixel(x,y,c);
)
}
elseII斜率絕對(duì)值>1
(
d=2*b+a;d1=2*b;d2=2*(a+b);
while(y!=yb)
(
if(d<0)
d+=d1;
else
x+=ex,d+=d2;
y+=cy;
pDC->SetPixel(x,y,c);
)
}
ReleaseDC(pDC);
)
3.1.4Bresenham直線生成算法
?問題
-DDA算法采用點(diǎn)斜式,中點(diǎn)法采用隱式表示
-中點(diǎn)法可以有整數(shù)算法
-其他表示可以推出整數(shù)算法嗎?
38of126
3.1.4Bresenham直線生成算法
?Bresenham(布雷森漢姆)算法是計(jì)算機(jī)圖
形學(xué)領(lǐng)域中使用最廣泛的直線生成技術(shù)。
該算法適合于光柵圖形顯示器、數(shù)字化儀
等設(shè)備
Bresenham直線算法描繪的直線
39of126
1.算法思想
?Bresenham算法也是通過在每列像素中確定與理
想直線最近的像素來進(jìn)行直線的掃描轉(zhuǎn)換的。通
過各行、各列像素中心構(gòu)造一組虛擬網(wǎng)格線,按
直線從起點(diǎn)到終點(diǎn)的順序計(jì)算直線與各垂直網(wǎng)格
線的交點(diǎn),然后確定該列像素中與此交點(diǎn)最近的
像素
of126
算法思想
?Bresenham算法與DDA算法類似,只是不
再采用舍去尾數(shù)的辦法,而是巧妙地采用
了增量計(jì)算,使得對(duì)于每一列,只要檢查
一個(gè)誤差項(xiàng)的符號(hào),就可以確定該列所求
的像素
P二(4o,y°)1
41of126
M
2.遞推公式
?設(shè)直線的起始點(diǎn)為(Xo,yo),終點(diǎn)為(乂外必),
則直線的斜率
?k=Ay/Ax=(y1-y0)/(x1.x0)
?由DDA算法可知:產(chǎn)y+k
?判斷d=yg-ROUND(yi),可判定下一像素點(diǎn)選取
?考慮OSkR的情況:
一起始點(diǎn)(Xo/y。)在像素中心,所以誤差項(xiàng)初值d=0;
-確定下一個(gè)像素點(diǎn)時(shí),當(dāng)x遞增定由,誤差項(xiàng)d的值增加
一個(gè)斜率k的值,即€1=€1+1<1
2.遞推公式(續(xù))
?⑴當(dāng)曲0.5時(shí),取點(diǎn)(x+1,y+1),且d=d?1
(一旦dNl,就把它減去1,這樣保證d在0、
1之間);
?(2)當(dāng)dv0.5時(shí),取點(diǎn)(x+1,y),誤差d值不變;
?為方便計(jì)算,令誤差e=d-0.5,則有
-(1)e=e+k,并且誤差e的初值,e=?0.5;
-(2)當(dāng)eNO時(shí),取點(diǎn)(x+1,y+1),>e=e-1;
-(3)當(dāng)evO時(shí),取(x+1,y),誤差e值不變;
43of126
算法步驟
?1,輸入直線的兩端點(diǎn)Po(x0,yo)和PEy)。
?2.計(jì)算初始值A(chǔ)x、Ay>e=-0.5>x=x0>
V=Vo。
?3.繪制點(diǎn)(x,y)。
?4念更新為e+k,判斷e的符號(hào)。若e>0,貝U
(x,y)更薪為(x+1,y+1),同時(shí)將e更新為e-1;
否貝辰y(tǒng))匣薪為(x+1,y)。
?5.當(dāng)直線沒有畫完時(shí),重復(fù)步驟3和4。否則
結(jié)束。
44of126
Bresenham直線生成算法程序W
voidCTestView::OnBresenhamline()
{
CDC*pDC=GetDC();
COLORREFc=RGB(0,255,0);
〃基于Bresenham算法畫斜率在0和1之間的直線,如xa=0,ya=0,xb=500,yb=200
intx,y,dx,dy,i;
floatk,e;
dx=xb-xa;dy=yb-ya;
k=(float)dy/dx;e=-0.5;x=xa;y=ya;
for(i=0;i<=dx;i++)
{
pDC->SetPixel(x,y,c);
x=x+1;e=e+k;
if(e>=0)
{y=y+1;e=e-1;}
}
ReleaseDC(pDC);
}
算法舉例
?設(shè)直線的起點(diǎn)為(0,0),終點(diǎn)為(5,
3),按Bresenham算法計(jì)算并確定個(gè)像
素點(diǎn)位置
?計(jì)算dx=5,dy=3,k=3/5=0.6,誤差e=?0,5
46of126
算法舉例■步驟
?x=0,y=0
?(1)i=0:輸出像素(0,0)
-x=1,e=e+k=-0.5+0,6=0.1>0,貝Ll有y=y+1=1,e=e-1=0.1-
1=-0.9
?(2)i=1:輸出像素(1,1)
-x=2,e=e+k=-0.9+0.6=-0,3v0,貝Ll有y和e不變,即
y=1,e=-0.3
?(3)i=2:輸出像素(2,1)
-x=3,e=e+k=-0.3+0.6=0,3>0,貝Ll有y=y+1=2,e=e-
1=0.3-1=-0.7
47of126
算法舉例-步驟
?(4)i=3:輸出像素(3,2)
-x=4,e=e+k=-0.7+0.6=-0.1<0,貝ll有y和e不變,
即y=2,e=-0.1;
?(5)i=4:輸出像素(4,2)
-x=5,e=e+k=-0,1+0.6=0,5>0,貝ll有y=y+1=3,e=
e-1=0.5-1=-0.5;
?(6)i=5:輸出像素(5,3)
一x=6,e=e+k=-0.5+0.6=0,1>0,貝有y=y+1=4,e=
e-1=0.1-1=-0.9;
?程序結(jié)束48of126
算法改進(jìn)1
?在每次計(jì)算e值時(shí)得到都是小數(shù),為了便于
硬件計(jì)算,去掉小數(shù)。由于算法只需要用
到誤差項(xiàng)e的符號(hào),所以可以兩邊乘2作如
下替換:
-誤差e'的初值e'=-1
-e=e+k替換為e'=e'+2k
-e=e-1替換為為=e'-2
49of126
算法改進(jìn)程序1
voidCTestView::OnBresenhamline()
{
CDC*pDC=GetDC();
COLORREFc=RGB(0,255,0);
〃基于Bresenham算法畫斜率在0和1之間的直線,如xa=0,ya=0,xb=500,yb=200
intx,y,dx,dy,i;
floatk,e;
dx=xb-xa;dy=yb-ya;
k=(float)dy/dx;e=-1;x=xa;y=ya;
for(i=0;i<=dx;i++)
{
pDC->SetPixel(x,y,c);
x=x+1;e=e+2*k;
if(e>=0)
{y=y+1;e=e-2;}
}
ReleaseDC(pDC);
}
算法改進(jìn)2
?由于只需判斷e的符號(hào),K涉及到除法,所
以式子e=e+k=e+/Xy/4x兩邊同乘2Zkx,
這樣可以不做除法和去掉小數(shù)
-誤差e'的初值e'=-Ax
-e=e+k替換為e'=e?+2Ay
-e=e-1替換為為=e'-2Ax
51of126
算法改進(jìn)程序2
voidCTestView::OnBresenhamline()
{
CDC*pDC=GetDC();
COLORREFc=RGB(0,255,0);
〃基于Bresenham算法畫斜率在0和1之間的直線,如xa=0,ya=0,xb=500,yb=200
intx,y,dx,dy,i,e;
dx=xb-xa;dy=yb-ya;
e="dx;x=xa;y=ya;
for(i=0;i<=dx;i++)
(
pDC->SetPixel(x,y,c);
x=x+1;e=e+2*dy;
if(e>=0)
{y=y+1;e=e-2dx;}
)
ReleaseDC(pDC);
}
Bresenham直線生成算法程序(任意
斜率K)
?見程序
53of126
上機(jī)實(shí)踐1
?1.將10個(gè)像素作為步距單位,編出DDA算
法的演示示例
(100J00]
h
y\9—
>■ck
f-
f
L
■'■)
-(■
UI
,s
yJ
M*
■■r-
■Uk
JLr-
,U|
■Js9-
f
r?V
---L-
?、r
.--lJ
c--
r八卜
--x
q-1
?MhjJ
、
.?
卜
r*?■h
八L
--
F9k
f
11八ir-
f、/k
r,?Vr-
i
--
■
卜
(■-
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年安全員個(gè)人工作總結(jié)(六篇)
- 2024年幼兒園小班教研計(jì)劃樣本(三篇)
- 2024年固定期限勞動(dòng)合同經(jīng)典版(二篇)
- 2024年常用的助理工作計(jì)劃(三篇)
- 2024年幼兒園大班工作計(jì)劃例文(三篇)
- 2024年小學(xué)科學(xué)教學(xué)工作計(jì)劃樣本(二篇)
- 2024年國際海上運(yùn)輸合同簡(jiǎn)單版(二篇)
- 2024年幼兒園后勤主任工作計(jì)劃范本(二篇)
- 【《基于Android的校園閑置物品交易系統(tǒng)設(shè)計(jì)》8900字(論文)】
- 2024年市場(chǎng)部工作計(jì)劃范例(二篇)
- 第一講設(shè)計(jì)倫理
- 蘇教版數(shù)學(xué)六年級(jí)上冊(cè)-分?jǐn)?shù)乘除法應(yīng)用題(含答案)
- pep四年級(jí)英語上冊(cè)Unit4-my-home-B-lets-talk-優(yōu)質(zhì)課件
- 預(yù)防諾如病毒教案
- 如何做好船舶成本管理
- 超市財(cái)務(wù)部流程
- 小兒腹瀉 課件
- 《新時(shí)代勞動(dòng)教育》-02新時(shí)代勞動(dòng)價(jià)值觀課件
- 寢室矛盾情景劇劇本
- 第22課《夢(mèng)回繁華》一等獎(jiǎng)創(chuàng)新教學(xué)設(shè)計(jì) 部編版語文八年級(jí)上冊(cè)
- 7以內(nèi)的加減法練習(xí)題一(100題)
評(píng)論
0/150
提交評(píng)論