地學(xué)分析與三維可視化實(shí)習(xí)一_第1頁
地學(xué)分析與三維可視化實(shí)習(xí)一_第2頁
地學(xué)分析與三維可視化實(shí)習(xí)一_第3頁
地學(xué)分析與三維可視化實(shí)習(xí)一_第4頁
地學(xué)分析與三維可視化實(shí)習(xí)一_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、地學(xué)分析與三維可視化實(shí)習(xí)報(bào)告一姓名:方志策班級:064131學(xué)號:20131003574提交日期:2015.11.5作業(yè)一、任務(wù)一、利用對象圖形法創(chuàng)建一個(gè)三維立方體,并將各頂點(diǎn)設(shè)置為不同的顏色。IDL代碼如下:oWindow=OBJ_NEW('IDLgrWindow',dimension=400,400);建立一個(gè)圖像窗口,初始設(shè)置圖像大小為400*400oView=OBJ_NEW('IDLgrView',viewPlane_Rect=-1,-1,3,3,zClip=3,-3,eye=2) oModel=OBJ_NEW('IDLgrModel')

2、;創(chuàng)建多邊形oPoly=OBJ_NEW('IDLgrPolygon')oView.add,oModel&oModel.add,oPolyverts=0,0,0,1,0,0,1,1,0,0,1,0,0,0,1,1,0,1,1,1,1,0,1,1 ;設(shè)置立方體頂點(diǎn)connect=4,0,1,2,3,4,0,1,5,4,4,1,2,6,5,4,2,3,7,6,4,3,0,4,7,4,4,5,6,7;將一個(gè)立方體各個(gè)定點(diǎn)依次標(biāo)明,依次連接八個(gè)面構(gòu)成一個(gè)閉合的立方體oPoly.setproperty,data=verts,polygons=connect,style=1oMode

3、l.rotate,1,0,1,60;設(shè)置立體圖像顯示出來的角度為60度oWindow.draw,oViewvertscolor=0,0,0,1,0,0,1,1,0,0,1,0,0,0,1,1,0,1,1,1,0,0,1,1*255 ;用RGB成像依次構(gòu)造立方體各個(gè)部位的不同顏色oPoly.setproperty,vert_color=vertscolor,style=2,shading=1oWindow.draw,oViewend運(yùn)行出來的結(jié)果如下圖:任務(wù)二、讀取head.dat中的數(shù)據(jù),進(jìn)行體數(shù)據(jù)的顯示,并實(shí)現(xiàn)切片提取操作。IDL代碼如下:pro volume device,decompos

4、ed = 1 file = filepath('head.dat',subdirectory = 'examples','data') ;讀取體數(shù)據(jù)到volume數(shù)組 volume = read_binary(file,data_dims = 80,100,57) ;利用XVolume交互顯示數(shù)據(jù) xvolume,volume,/interpolate slice = extract_slice(volume,40,40,40,50,28,30,0,0) window,0,xsize = 40,ysize = 40 tv,slice ;顯示垂直切

5、片 window,1,xsize = 100,ysize = 57 tv,volume23,*,* window,2,xsize = 80,ysize = 57 tv,volume*,20,* ;顯示水平切片 window,3,xsize = 80,ysize = 100 tv,volume*,*,20end顯示結(jié)果如下 任務(wù)三、讀取elev_t.jpg圖像以及elevbin.dat中的DEM數(shù)據(jù):利用直接圖形法顯示DEM曲面利用對象圖形法創(chuàng)建曲面對象和紋理對象并進(jìn)行疊加顯示代碼如下:imageFile=FILEPATH('elev_t.jpg',SUBDIRECTORY=&#

6、39;examples','data') ;讀取圖像文件 READ_JPEG,imageFile,imagedemFile=FILEPATH('elevbin.dat',SUBDIRECTORY='examples','data') ;讀取DEM數(shù)據(jù)dem=READ_BINARY(demFile,DATA_DIMS=64,64)dem=CONGRID(dem,128,128,/INTERP)DEVICE,DECOMPOSED=0,RETAIN=2;TITLEWINDOW,0,TITLE='Elevation Dat

7、a'&SHADE_SURF,demoModel=OBJ_NEW('IDLgrModel')oView=OBJ_NEW('IDLgrView')oWindow=OBJ_NEW('IDLgrWindow',RETAIN=2,COLOR_MODEL=0) oSurface=OBJ_NEW('IDLgrSurface',dem,STYLE=2)oImage=OBJ_NEW('IDLgrImage',image,INTERLEAVE=0,/INTERPOLATE) oSurface->GetProper

8、ty,XRANGE=xr,YRANGE=yr,ZRANGE=zr;計(jì)算歸一化顯示比例,并在各個(gè)方向平移-0.5,從而使圖像居中xs=NORM_COORD(xr)&xs0=xs0-0.5ys=NORM_COORD(yr)&ys0=ys0-0.5zs=NORM_COORD(zr)&zs0=zs0-0.5oSurface->SetProperty,XCOORD_CONV=xs,YCOORD_CONV=ys,ZCOORD=zs ;TEXTURE_MAPoSurface->SetProperty,TEXTURE_MAP=oImage,color=255,255,255

9、 oModel->Add,oSurface&oView->Add,oModeloModel->ROTATE,1,0,0,-90&oModel->ROTATE,0,1,0,30oModel->ROTATE,1,0,0,30&oWindow->Draw,oView ;OBJ_DESTROYXOBJVIEW,oModel,/BLOCK,SCALE=1&OBJ_DESTROY,oView,oImage end 作業(yè)二、任務(wù)一、繪制函數(shù)z=x*exp-x2+ y2,其中-2x,y2的網(wǎng)格曲面圖。IDL代碼如下:pro test_surf

10、ace ;對x,y采樣 x = (findgen(41) - 20)/10 y = (findgen(41) - 20)/10 ;對x,y網(wǎng)格化 temp_x = make_array(n_elements(y),value = 1) temp_y = make_array(n_elements(x),value = 1) xx = x # temp_x yy = temp_y # y ;計(jì)算函數(shù)的值 z = xx * exp(-xx2 - yy2) ;繪制曲面 surface,zend 得到結(jié)果如圖所示:任務(wù)二、讀取head.dat中的三維動(dòng)畫數(shù)組,播放該動(dòng)畫,并存儲(chǔ)該動(dòng)畫的像素映射圖IDL

11、代碼如下:pro test_animate file = filepath('head.dat',subdirectory = 'examples','data') ;讀取三維動(dòng)畫數(shù)據(jù)head = read_binary(file,data_dims = 80,100,57);xinteranimate,set = 80,100,57,/showload ;初始化動(dòng)畫工具 for i = 0,56 do xinteranimate,frame = i,image = head*,*,i ;將數(shù)組加載到動(dòng)畫工具的緩沖區(qū) xinteranimate,

12、50,/keep_pixmaps ;播放該動(dòng)畫,并存儲(chǔ)像素映射圖End得到結(jié)果如下圖:任務(wù)三、載入avhrr.png中的數(shù)據(jù),并加以顯示將其轉(zhuǎn)換到“Interrupted Goode”投影坐標(biāo)系下,并用iimage命令顯示。將第一問中得到的地圖轉(zhuǎn)換到“Mollweide”投影坐標(biāo)系下,并用iimage命令顯示。IDL代碼如下:pro test_projection file = filepath('avhrr.png',subdirectory = 'examples','data') ;讀取數(shù)據(jù) data = read_png(file,r,g

13、,b) red0 = rebin(rdata,360,180) green0 = rebin(gdata,360,180) blue0 = rebin(bdata,360,180) ;對原始數(shù)據(jù)進(jìn)行重采樣 iimage,red = red0,green = green0,blue = blue0,dimensions = 500,600,view_grid = 1,3 ;數(shù)據(jù)顯示 smap = map_proj_init('Interrupted Goode') ;創(chuàng)建Interrupted Goode投影 red1 = map_proj_image(red0,map_stru

14、cture = smap,mask = mask,uvrange = uvrange,xindex = xindex,yindex = yindex) green1 = map_proj_image(green0,xindex = xindex,yindex = yindex) blue1 = map_proj_image(blue0,xindex = xindex,yindex = yindex) ;投影轉(zhuǎn)換 iimage,red = red1,green = green1,blue = blue1,alpha = mask*255b,/view_next ;顯示轉(zhuǎn)換后的地圖 mapstruct = map_proj_init('Mollweide',/gctp) ;創(chuàng)建Mollweide投影 red2 = map_proj_image(red1,uvrange,image_structure = smap,map_structure = mapstruct,mask = mask,xindex = xindex2,yindex = yindex2)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論