因为爱GIS,我们聚集于此
  • 快捷登录:
查看: 612|回复: 1
收起左侧

[教程] CityEngine使用Python脚本按feature导出道路

[复制链接]
  • TA的每日心情
    奋斗
    2014-5-23 12:06
  • 签到天数: 25 天

    [LV.4]偶尔看看III

    发表于 2014-3-2 12:15:14 | 显示全部楼层 |阅读模式

    有你,GIS才会更精彩,马上注册,我们一起学GIS。

    您需要 登录 才可以下载或查看,没有帐号?立即注册 用百度帐号登录

    x

    在CityEngine中进行道路导出时有两个选项:



    Use file size limit:将所选的道路导出为一个obj文件

    Create one :将所选的道路按照网络节点,每个线段导出为一个obj


    以上两种可选导出方式均不能将一条完整的道路导出为一个obj文件,即无法按照Feature将道路分别导出为独立的模型文件。


    为了实现按feature导出道路,需要用到CityEngine中的Python脚本进行自定义的导出。

    一:依据道路名称导出单条道路

    1、在道路图层属性数据中添加Name字段,类型为Text



    2、为Name字段赋值(非中文)




    3、生成道路模型



    4、新建脚本文件,并编辑如下:




    参数解释:

    ce.withName(“ ’UNION’”)中的UNION为道路的Name

    Name为导出后的模型文件名

    D:/tmp为导出路径


    5、选中一个模型后,File----Export----Export Models of Selected Shapes(allmodels are generated),之后选中Script Based Export(Python),最后在Misc Options中选择脚本。




    6、点击Finish,导出模型




    二:依据道路名称将道据全部按要素导出

    本次在使用客户实际数据时的处理方式为:

    1、将道路GIS数据添加的Name字段赋值为其FID,重新加载网络数据并生成模型



    2、修改Python脚本为:



    Range参数中的28为道路的数量+1(目前是根据道路的数量来进行循环模型导出)

    3、执行上述脚本即可得到结果


    注意事项:

    1、本文档使用的示例数据为教程中Pasadena工程中的data----streets.shp:



    2、在第二部分的全图层批量导出时未很好解决文件名的问题,需要继续研究更智能的导出脚本

    3、某些情况下会遇到一些错误


    暂时分析为数据或脚本问题,而在实际数据测试的50条道路中未出现该问题。



  • TA的每日心情
    开心
    2014-5-23 00:00
  • 签到天数: 121 天

    [LV.7]常住居民III

    发表于 2014-3-3 00:20:33 | 显示全部楼层
    进来看看了
    您需要登录后才可以回帖 登录 | 立即注册 用百度帐号登录

    本版积分规则

    关闭

    热门推荐上一条 /1 下一条

    © 2013-2014 GIS520 ( 陕ICP备14003560号-1 )Powered by Discuz! X3.2 Template by giscafer   
    快速回复 返回顶部 返回列表