CityEngine如何生成隧道

       在我们的生活中,大家经常乘坐汽车、动车等交通工具,会经过如隧道这样的路段,也许大家在经过隧道的时候会有一种疑惑,这隧道是如何修建的?对于我们GISer来讲,可能会考虑如何将其数字化,是以二维的线数据表示还是用三维模型展示。今天我们谈谈如何利用CityEngine快速生成隧道模型。
其实,对于CityEngine来讲生成隧道模型很简单,主要通过模型替换的方法,所使用到的关键函数就是“i()”。
1、在建立规则之前,我们需要制作出隧道的模型组件,可以用3Dmax或sketchup完成。
 
2、接下来就是在CityEngine中新建工程“File-->New-->CityEngine Project”。
3、工程建立之后,我们需要建立场景(.cej),在Scenes文件下右键新建场景。
4、接下来将需要的素材(隧道组件)拷贝到“assets”文件夹中。
5、最关键的一步就是写规则,实现隧道的生成,规则如下:
    Lot -->
        extrude(world.y,10)
        s('1,'1,'1.13)
        center(xz)
        comp(f){world.up:SuiDao_tex}

    SuiDao_tex-->
        extrude(world.y,10)
        alignScopeToGeometry(yUp, 0,2)
        i("suidao02.obj")
        r(0,0,180)
        center(xz)
        t(0,-20,0)
        setupProjection(0,scope.xy,6,4)
        texture("texture.png")
        projectUV(0)

6、规则建好以后我们就可以实际的体验一下了,首先在场景里面绘制一条道路,点击菜单“Graph—>Create Street Tools”,在场景里面绘制一条道路。
 
7、在右边的属性面板下,调整一下参数,如下。
 
8、然后再选中的状态下,把规则文件拖放到道路上,神奇的隧道就会生成啦!
 
9、看到这里大家可能觉得没有什么特别的呀,那么,大家可以尝试一下绘制一条弯曲的道路试试,再拖上规则,隧道沿着弯曲的道路生成,效果如下。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/289876.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Flask 应用的文件结构

2019独角兽企业重金招聘Python工程师标准>>> 作为微框架,即便只有一个文件也可以编写基于 Flask 的 Web 应用。然而对于许多现实世界中的应用,拥有数十个以上的视图(view)是非常正常的,这时候,F…

Xamarin效果第十二篇之控制祖传PLC

在前面使用DllImport去调用了公司祖传的PLC;坑也被坑了一下,但是总感觉还是基于祖传的Dll木有一点意思;毕竟就是一个数据的监控和开关量的控制;要是直接能用我的屌丝机控制一下就可以好好开(Z)心(B);毕竟前面咱也是玩过一点点Xamarin的,那就再次拾起来去玩耍一下吧;来看看最终咱…

CityEngine下如何更好的实现影像与地形叠加

问题:在利用CityEngine导入影像和地形时,会出现影像或地形不显示的问题。 分析:这主要是由影像、地形的尺寸大小和像素深度两个因素导致的。 解决: 1.调整尺寸 首先看一下影像和地形的大小。我们知道CityEngine并不是一个展示平台…

java script创建对象_javascript笔记:深入分析javascript里对象的创建

大家知道在java里面类可以具有静态属性和方法,无需实例化该类的对象,就可以访问这些属性和方法,但是javascript里面是不是只有通过对象初始化方式才会模拟出这样的特点了?其实不然,在编程语言里,类的方法和…

一分钟了解Android横竖屏 mdpi hdpi xhdpi xxhdpi xxxhdpi

DPI:每英寸像素数 简单的屏幕分辨率计算方法: DisplayMetrics metrics this.getResources().getDisplayMetrics(); float density metrics.density; int dpi metrics.densityDpi; int heightPixels metrics.heightPixels; int widthPixels metrics.widthPixels…

利用 .NET Core 中的数据保护组件实现限时 Token

前言在业务开发时,我们常常需要生成有过期时间的 Token 凭证。比如重置密码,即使被其他人获取到链接,超过指定时间也无法操作,以保证安全性:常用的实现方式,可以使用缓存或数据库存储 Token 的过期时间。今…

CityEngine Web Scene如何在IIS下部署

CityEngine2012新增了发布Web场景的功能,可以通过本地的Web Scene Viewer打开,也可以发布到ArcGIS Online云端进行共享。如下图: 注:3ws场景包制作方法:选中模型->File->Export->Export Models…->CityE…

WPF 使用DrawingVisual绘制高性能曲线图

一、前言项目中涉及到了心率监测,而且数据量达到了百万级别,通过WPF实现大数据曲线图时,尝试过最基础的Canvas来实现,但是性能堪忧,而且全部画出来也不实际。同时也尝试过找第三方的开源库,但是因为曲线图涉…

数据结构(Java)——迭代器和列表的实例

感谢Java软件结构与数据结构 John Lewis Joseph chase 著 金名译 0. 迭代器关键概念(补充理解) 【1】迭代器是一个对象,它提供了一种依次访问集合中每个元素的方式。 【2】经常把集合定义为Iterable的,说明需要时可以提供一个迭代…

地理信息科学前沿-[热词]

1. LBS Location Based Service:基于位置的服务,它是通过电信移动运营商的无线电通讯网络(如GSM网、CDMA网)或外部定位方式(如GPS)获取移动终端用户的位置信息(地理坐标,或大地坐标)&#xff0c…

《vSphere性能设计:性能密集场景下CPU、内存、存储及网络的最佳设计实践》一1.2.2 内存...

本节书摘来华章计算机《vSphere性能设计:性能密集场景下CPU、内存、存储及网络的最佳设计实践》一书中的第1章 ,第1.2.2节,[美] 克里斯托弗库塞克(Christopher Kusek) 著 吕南德特施皮斯(Rynardt Spies&a…

如何检查服务已在依赖注入容器中注册

前言依赖关系注入(DI),是一种在类及其依赖项之间实现控制反转(IoC)的技术。在ASP.NET Core中,依赖关系注入是“一等公民”,被大量使用。但是有时,我们仅仅只需要知道服务是否在依赖注入容器中已注册。比如,不注册使用分…

iOS9 Storyboard unwind segue反回传递事件时机详细步骤

当返回上一个界面且需要上一个界面做某事时,用unwind segue实现起来比delegate简单许多,甚至有时不适合用delegate来实现,那么我们就用unwind segue吧,而且像1->2->3这样的跳转,3视图可以通过unwind segue方便的返回到1、2任…

ios俩个APP之间跳转、传值

两个APP之间的跳转是通过[[UIApplication sharedApplication] openURL:url]这种方式来实现的。 1.首先设置第一个APP的url地址 2.接着设置第二个APP的url地址 3.需要跳转的时候 NSString *urlString [NSString stringWithFormat:"AppJumpSecond://%",textField.tex…

.Net Core手撸一个基于Token的权限认证

说明权限认证是确定用户身份的过程。可确定用户是否有访问资源的权力今天给大家分享一下类似JWT这种基于token的鉴权机制基于token的鉴权机制,它不需要在服务端去保留用户的认证信息或者会话信息。这就意味着基于token认证机制的应用,不需要去考虑用户在哪一台服务器…

Mybatis-Generator(MBG)教程与Idea的MBG插件

简介 Mybatis Generator(MBG),下面我们统称为MBG,是一个Mybatis和iBatis的代码生成器。他可以内省数据库的表(或多个表)然后生成可以用来访问(多个)表的基础对象。这样减少了项目新建时各种配置对象&#x…

Windows Server 2008 RemoteApp---发布应用程序

本章节一起来体验RemoteApp应用程序发布功能,本功能利用了微软应用程序虚拟化技术,打个比方,我这台电脑上并没有安装Excel2010,但我现再要用Excel2010该怎么办?难道去找Office2010的光盘来安装吗?不用这么麻…

.NET 中密封类的性能优势

.NET 中密封类的性能优势Intro最近看到一篇文章 Performance benefits of sealed class in .NET,觉得写得不错,翻译一下,分享给大家。目前看到的一些类库中其实很多并没有考虑使用密封类,如果你的类型是不希望被继承的&#xff0c…

jQuery-1.9.1源码分析系列(十) 事件系统——事件绑定

事件绑定的方式有很多种。使用了jQuery那么原来那种绑定方式(elem.click function(){...})就不推荐了,原因? 最主要的一个原因是elem.click fn这种方式只能绑定一个事件处理,多次绑定的只会保留最后一次绑定的结果。 看一下jQue…

Windows 8系统平台上应用软件安装心得

1.ArcGIS 10.2安装 需要单独安装.NET 3.5,GIS软件自带的.NET系统不识别,点击360云盘地址进行下载(提取码为:1ed3)。(另外,Win8系统上安装.NET可以参考:http://blog.csdn.net/aijavaer/article/d…