资源描述:
《地学信息三维可视化实习报告材料》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、标准文案地学信息三维可视化实习报告班级:姓名:学号:上交日期:2016.11.16大全标准文案实习一1.利用对象图形法创建一个三维立方体,并将各顶点设置为不同的颜色对象法是IDL5.0引入面向对象编程概念后出现的,面向对象的基础也就是对象类的使用。对象类允许编程者将数据和方法封装成一个包,称之为对象。一个对象类可以重复利用生成多个对象。IDL的三维坐标系使用的是右手笛卡尔坐标系,与MicrosoftDirect3D的左手坐标系相区别,示意图如下。大全标准文案程序:PROtriangularprismoWindow=OBJ_NEW('IDLgrWindow',dimensio
2、n=[400,400],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,oModeloModel->add,oPoly;顶点坐标verts=[[0,0,0],[1,0,0],[0,1,0],[0,0,1]];顶点链接顺序connect=[3,0,1,2,3,0,2,3,3,0,1,
3、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=vertsColoroWindow->draw,oView大全标准文案;设置立方体面显示,并渲染显示颜色oPoly->setpro
4、perty,shading=1,style=2oWindow->draw,oViewEND1.读取head.dat中的数据,进行体数据的显示,并实现切片提取操作iTools是IDL6.0以后版本提供的功能强大的交互式分析工具。IDL初学者可以利用这套智能工具快捷轻松地实现数据读入,数据分析和数据可视化,并且可以输出制作令人眩目的精美图形图像。有经验的IDL程序员使用它,可以减少程序开发工作量,甚至可以在iTools框架的基础上创建全新的可视化应用环境。打开iVolume,在Operations→Volume→ImagePlane中可以选择切片prohead大全标准文案fil
5、e='C:UserssiyuanDesktopIDL实习题第一次课数据head.dat'data=READ_BINARY(file,DATA_DIMS=[80,100,57])IVOLUME,dataend3.读取elev_t.jpg图像以及elevbin.dat中的DEM数据:l利用直接图形法显示DEM曲面l利用对象图形法创建曲面对象和纹理对象并进行叠加显示大全标准文案程序:protestdemfile='C:UserssiyuanDesktopIDL实习题第一次课数据elevbin.dat'dem=read_binary(demfile,da
6、ta_dims=[64,64])imagefile='C:UserssiyuanDesktopIDL实习题第一次课数据elev_t.jpg'read_jpeg,imagefile,imagedem=congrid(dem,128,128,/interp)device,decomposed=0,retain=2window,0,title='dem',xsize=800,ysize=600shade_surf,demomodel=obj_new('idlgrmodel')oview=obj_new('idlgrview')osurface=obj_new('id
7、lgrsurface',dem,style=2)oimage=obj_new('idlgrimage',image,interleave=0,/interpolate);计算归一化显示比例,并在各个方向平移-0.5,从而使图像居中osurface.getproperty,xrange=xr,yrange=yr,zrange=zr大全标准文案xs=norm_coord(xr)xs[0]=xs[0]-0.5ys=norm_coord(yr)ys[0]=ys[0]-0.5zs=norm_coord(zr)zs[0]=zs