地学信息三维可视化实习报告_第1页
地学信息三维可视化实习报告_第2页
地学信息三维可视化实习报告_第3页
地学信息三维可视化实习报告_第4页
地学信息三维可视化实习报告_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、地学信息三维可视化实习报告班级:姓名:学号:上交日期:2016.11.16实习一1. 利用对象图形法创建一个三维立方体,并将各顶点设置为不同的颜色对象法是 IDL5.0引入面向对象编程概念后出现的,面向对象的基础也就是对象类的使用。对象类允许编程者将数据和方法封装成一个包,称之为对象。一个对象类可以重复利用生成多个对象。IDL 的三维坐标系使用的是右手笛卡尔坐标系,与 Microsoft Direct3D 的左手坐标系相区别,示意图如下。程序:PRO triangularprism oWindow = OBJ_NEW('IDLgrWindow',dimension =400,4

2、00,retain = 2) oView = OBJ_NEW('IDLgrView',viewPlane_Rect =-1,-1,3,3,zClip = 2,-1,eye = 10) oModel = OBJ_NEW('IDLgrModel') ;创建多边形 oPoly = OBJ_NEW('IDLgrPolygon') ;设置对象层次体系结构 oView->add,oModel oModel->add,oPoly ;顶点坐标 verts = 0,0,0,1,0,0,0,1,0,0,0,1 ;顶点链接顺序 connect =3,0,1

3、,2,3,0,2,3,3,0,1,3,3,1,2,3 ;设置多边形顶点与链接关系,类型显示为线 oPoly->setproperty,data =verts, polygons = connect,style =1 ;选择45° oModel->rotate ,-1,0,-1,45 ;绘制显示 oWindow->draw,oView ;设置立方体顶点颜色 vertscolor = fix(randomu(undefinevar,3,4)*255) oPoly->setproperty, vert_color = vertsColor oWindow->d

4、raw,oView ;设置立方体面显示,并渲染显示颜色 oPoly->setproperty, shading = 1,style=2 oWindow->draw,oViewEND2. 读取head.dat中的数据,进行体数据的显示,并实现切片提取操作iTools 是 IDL6.0 以后版本提供的功能强大的交互式分析工具。IDL 初学者可以利用这套智能工具快捷轻松地实现数据读入,数据分析和数据可视化,并且可以输出制作令人眩目的精美图形图像。有经验的 IDL 程序员使用它,可以减少程序开发工作量,甚至可以在 iTools框架的基础上创建全新的可视化应用环境。打开iVolume,在 O

5、perations Volume Image Plane中可以选择切片pro head file = 'C:UserssiyuanDesktopIDL实习题第一次课数据head.dat' data = READ_BINARY(file, DATA_DIMS = 80, 100, 57) IVOLUME, dataend3.读取elev_t.jpg图像以及elevbin.dat中的DEM数据:l 利用直接图形法显示DEM曲面l 利用对象图形法创建曲面对象和纹理对象并进行叠加显示程序:pro test demfile = 'C:UserssiyuanDesktopIDL实习

6、题第一次课数据elevbin.dat' dem = read_binary(demfile,data_dims = 64,64) imagefile = 'C:UserssiyuanDesktopIDL实习题第一次课数据elev_t.jpg' read_jpeg,imagefile,image dem = congrid(dem,128,128,/interp) device,decomposed = 0,retain = 2 window,0,title = 'dem',xsize = 800,ysize = 600 shade_surf,dem om

7、odel = obj_new('idlgrmodel') oview = obj_new('idlgrview') osurface = obj_new('idlgrsurface',dem,style = 2) oimage = obj_new('idlgrimage',image,interleave = 0,/interpolate) ;计算归一化显示比例,并在各个方向平移-0.5,从而使图像居中 osurface.getproperty,xrange = xr,yrange = yr,zrange = zr xs = no

8、rm_coord(xr) xs0 = xs0 - 0.5 ys = norm_coord(yr) ys0 = ys0 - 0.5 zs = norm_coord(zr) zs0 = zs0 - 0.5 osurface.setproperty,xcoord_conv = xs,ycoord_conv = ys,zcoord_conv = zs ;曲面上添加纹理对象 osurface.setproperty,texture_map = oimage,color = 255,255,255 ;构建对象体系 omodel.add,osurface opolygons = OBJ_NEW('i

9、dlgrpolygon', shading = 1, $ data = vertices, polygons = polygons, color = 255,255,255, $ texture_coord=texure_coordinates,texture_map=oimage,/texture_interp) omodel -> add, opolygons & omodel -> ROTATE, 1, 0, 0, -90 omodel -> ROTATE, 0, 1, 0, 30 & xobjview, omodel, /blockend 实习

10、二1.绘制函数,其中的网格曲面图程序:pro surface myvalue=(findgen(100)-50)*0.1 x=rebin(myvalue,100,100,/sample) y=rebin(reform(myvalue,1,100),100,100,/sample) z=-(x2+y2-2)*exp(-(x2+y2)/2) window,title='laplace of gaussian' surface,z,x,yend图片:2.读取head.dat中的三维动画数组,播放该动画,并存储该动画的像素映射图程序:pro catoonOPENR,unit,FILEP

11、ATH('head.dat',SUBDIRECTORY='examples','data'),/GET_LUNpro test openr,unit,filepath('C:UserssiyuanDesktopIDL实习题第一次课数据head.dat'),/get_lun h=bytarr(80,100,57,/nozero) readu,unit,h close,unit xinteranimate,set=80,100,57,/showload for j=0,56 do xinteranimate,frame=j,image

12、=h*,*,j xinteranimate,50,/keep_pixmapsend图片:3.载入avhrr.png中的数据,并加以显示² 将其转换到“Interrupted Goode”投影坐标系下,并用iimage命令显示² 将第一问中得到的地图转换到“Mollweide”投影坐标系下,并用iimage命令显示pro test file= 'C:UserssiyuanDesktopIDL实习题第一次课数据avhrr.png' data=read_png(file,r,g,b) red0=rebin(rdata,360,180) green0=rebin(g

13、data,360,180) blue0=rebin(bdata,360,180)iimage,red=red0,green=green0,blue=blue0,dimensions=500,600,view_grid=1,3 smap=map_proj_init('interrupted goode')red1=map_proj_image(red0,map_structure=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)iimage,red=red1,green=green1,blue=blue1,alpha=mask*255b,/view_next mapstruct = map_proj_init( 'mollweide', /gctp ) red2 = map_proj_image( red1, uvrange, image_structure=smap

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论