转自:http://www.cnblogs.com/jinlun/p/3380307.html

随着国家大力推进数字城市的建设,三维城市的建设也是势在必行的。与传统二维地图相比,三维城市在立体层次、视觉效果等感官效果有着很大改进,并且在实际业务中,如规划中的光照分析、楼层高度调整、地块分析等有着二维地图不可比拟的优势。闲话少述,步入正题:

1.建立影像图层及矢量画

  用arccatalog 10 建立一个gdb数据库,名称为“3dpgd”,建立一个featureClass Layer名为“dixing”,建立一个Raster Layer,名为“Test”

2.统一坐标系

  由于影像图是38度带的(简单判断所处的带数,用arcmap打开影像文件,看X坐标前两位,即为所在带数),所以选择西安80 ,38度带的投影

  同理,处理Raster Dataset

3.矢量化

  用ArcMap加载上面处理过的两个图层,选择dixing图层,开始编辑,

点击“continue”,选择“Polygon”工具,在dixing图层上画上几个面如下图所示:

  到目前为止,这两个图层可以在arcglobe中显示了,可以试着用arcglobe加载了。

4.arcglobe加载矢量好的图层

  打开arcglobe,在左侧树形菜单根右键或点击 ,加载以上两个图层,选中“dixing”右键“Zoom to Layer”,即可看到两个图层的内容。

  注意:此时影像图层可以会出现变形,如下图

  这时把左侧菜单“Elevation layers”节点下的 选项去掉,即可恢复正常,如下图所示:

5.图层转换

1)featureclass转换成multipatch

  选择ArcToolbox   ->3d Analyst Tools -> Lyaer 3D to Feature Class  工具,将dixing转换成dixingmulti.

2)FeatureClass 转换 DWG

  选择 ArcToolbox  ->  Conversion Tools  -->  To CAD  -->  Export to CAD:

将dixing转换为dixing.dwg

6.建立模型

  将dixing.dwg导入3dmax 2014,单位选择“米”

  注意:如果线条没有闭合,需进行以下操作:

  选择“修改 ”,选中“可编辑样条线”

  按下“CROL+A”

  在选择“焊接”

  在“修改器列表”中选择“挤出”,把“数量”这个属性设置为“76.5m”

  设置材质

  按下“M”,调出材质编辑器,选中 ,选择 漫反射后的按钮,调出材质浏览器,选中“贴图……标准……位图”,双击“位图”,选择一张图片,打开, ,点击 ,把贴图应用到选中的模型中,但是模型并未加载该贴图,单击 这个按钮,显示出贴图。

  将生成好的模型导出3ds文件,保存:

  记得把这个选项勾上,否则用Import 3D Tool导入Arcglobe中时,模型的贴图会出现错位,拉伸,如下图所示(左为错位,右为正常):

  注:请把贴图和导入的3DS文件放在同一目录,并且重新用3Dmax导入这个模型,并在材质编辑器中重新指定一下这个材质。如下图所示:

7.导入模型方法一

  在第4步arcglobe窗口中,添加“Add Floating Data”,把”dixingmulti”图层加载上去。

  选择3D Editor 工具, “start Editing”,选择“dixingmulti”

  在create Feature 窗口中选择insert tool 工具:

  在地图窗口中单击,在弹出的文件浏览框中,选择第6步导出的模型:

打开,

  把模型的位置用3D  Editor的工具摆好后即可。

  注:这种方法试好久,也没有把材质加载上去。

8.导入模型方法二

  利用 Arcgis 的 Import 3D Tool导入

  选择ArcToolBox>3D  Analyst Tools >Conversion>From File >Import 3D Files,双击,

  1)选择3DS文件

  2)选择输入目录

  3)选择空间引用

  注意:这一步必须选择导入,否则转换后multipatch中的模型没有材质。有材质的模型导出的MultiPatch图层应放进GeoDatabase中。

  在这里,导入的是“dixing”图层的空间坐标信息,之后点击OK。

  之后,等待转换和加载,最终图如下:

Restarting......自我完善中.............

使用Arcglobe 10与3dmax建立三维城市的更多相关文章

  1. 3DMAX 建立场景 工作流程

    建立3D渲染首先建立房型.毕竟我们在做的是三维房间的渲染.建立房型线有几个环节都要用到 我们看一眼最终的渲染效果. 利用我们第一步建立的房型线做模型 房型线通过膨胀变成墙壁 再通过房型线生成屋顶天花和 ...

  2. 【Win 10 应用开发】三维变换

    所谓三维变换,其实是在二维平面上产生三维的视觉效果.前面老周简单提了一下透视效果,如果透视效果不能满需求,那可以考虑用三维变换. UIElement类有一个属性叫Transform3D,它定义的类型为 ...

  3. 如何用Python在10分钟内建立一个预测模型

    转载自:https://baijia.baidu.com/s?old_id=307995 最近,我从孙子(指<孙子兵法>——译者注)那里学到了一些策略:速度和准备 “兵之情主速,乘人之不及 ...

  4. Shell-自动建立全国城市

    Code: #!/bin/bash function mkdirFun() { if [ ! -d $1 ];then mkdir -p $1 fi } filename=city1.txt date ...

  5. SEO优化---10分钟学会建立高转化率的网站关键词库

    想要优化好一个网站,行业的分析,以及关键词的挖掘是必要的,有一定的关键词排名了,但是转化率和流量方面却很不理想这种情况大部分是只注重了有指数的关键词排名,而忽略了长尾关键词和一些没有指数但是可以带来巨 ...

  6. 基于IFC的大型三维城市群体——智慧城市模拟

  7. shell-自动按省市建立文件夹,并在每个城市下创建当前日期文件夹

    Code: #!/bin/bash date=`date +%Y%m%d` ProName="广东市" CityName="广州市 汕尾市 阳江市 揭阳市 茂名市 江门市 ...

  8. 19个三维GIS软件对比

    19个三维GIS软件对比 麦豆科研技术中心 days ago 我国GIS经过三十多年的发展,理论和技术日趋成熟,在传统二维GIS已不能满足应用需求的情况下,三维GIS应运而生,并成为GIS的重要发展方 ...

  9. 基于点云的3ds Max快速精细三维建模方法及系统的制作方法 插件开发

                                 基于点云的3ds Max快速精细三维建模方法及系统的制作方法[技术领域][0001]本发明涉及数字城市三维建模领域,尤其涉及一种基于点云的3d ...

随机推荐

  1. windows phone 网易云阅读hubtile效果实现

    效果图 曾几何时,刚接触wp的时候做了一个类似的界面,不过是Rectangle实现的,还是一个个摆的..囧啊 现在感觉这种应该是用hubtile实现的,Toolkit(http://silverlig ...

  2. Apache虚拟主机设置

    Apache支持两种虚拟主机,一种是基于IP地址的,一种是基于域名的. 基于IP地址的虚拟机现在使用的很少,它需要一台服务器需要拥有多个IP地址.基于域名的虚拟主机要求服务器有一个IP地址就可以了,只 ...

  3. js调用asp.net 后台属性值

    后台代码: public string title = "js调用后台属性值"; public void getContent() { return title; } 前台代码: ...

  4. php设计模式-------(1)策略模式

    一.为什么我要学习设计模式. 我的上一个项目是做App接口,由于时间紧,老板催的急,所以到最后项目完工时发现居然写了几万行代码,可想而知代码质量有多糟糕.而且很多时候,调用接口的开发人员来找我说某个接 ...

  5. javascript cookie 操作

    <html> <head> <meta charset="utf-8"> <title>Javascript cookie</ ...

  6. WPF 渐隐渐现切换背景图片

    最近学习WPF,尝试着自己做一些小玩意,也遇到了一些问题,于是整理记录以便日后查阅. 我们都知道WPF可以实现一些很炫的效果,然而有时候为达到这个目的却并不是一件很容易的事情.比如:在软件中我希望能够 ...

  7. SendKeys总结

    1.SendKeys中特殊字符的键代码BACKSPACE {BACKSPACE}.{BS} 或 {BKSP} BREAK {BREAK} CAPS LOCK {CAPSLOCK} DEL 或 DELE ...

  8. joda jar日期处理类的学习

    转载:http://www.open-open.com/lib/view/open1348032952724.html 任何企业应用程序都需要处理时间问题.应用程序需要知道当前的时间点和下一个时间点, ...

  9. [转]关于MYSQL Innodb 锁行还是锁表

    关于mysql的锁行还是锁表,这个问题,今天算是有了一点头绪,mysql 中 innodb是锁行的,但是项目中居然出现了死锁,锁表的情况.为什么呢?先看一下这篇文章. 目时由于业务逻辑的需要,必须对数 ...

  10. 再写FFT模板

    没什么好说的,今天又考了FFT(虽然不用FFT也能过)但是确实有忘了怎么写FFT了,于是乎只有重新写一遍FFT模板练一下手了.第一部分普通FFT,第二部分数论FFT,记一下模数2^23*7*17+1 ...