设为首页收藏本站

skylineglobe技术交流社区

 找回密码
 注册
查看: 1714|回复: 4

3DML开发篇—模型的显示与隐藏

[复制链接]

83

主题

139

帖子

1473

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1473
发表于 2016-7-11 13:52:48 | 显示全部楼层 |阅读模式
随着电影《魔兽》的热映,小伙伴们无论是支持联盟还是部落,想必都已经被其宏大的三维场景以及超高的还原度所折服,在三维GIS领域,3DML以它无与伦比的模型加载速度以及效果,完美诠释了什么是海量数据处理专家,可谓是海量数据处理方面的“魔兽”。

     当然3DML可不仅仅是海量数据处理专家,它还提供了二次开发接口来实现诸多的功能。对于宏大的三维场景来说,模型的合理的显示以及适当的隐藏是十分重要的,下面我们主要介绍下模型的显示与隐藏功能。
回复

使用道具 举报

83

主题

139

帖子

1473

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1473
 楼主| 发表于 2016-7-11 14:01:01 | 显示全部楼层
3DML是以图层方式加载到Skyline里的。针对图层,我们总会有这样的需求,图层中模型太多,一次不需要显示所有的模型,或者我们希望按条件来加载其中的一些模型。
        对于矢量图层IFeatureLayer66,我们通过给他的Filter属性赋值,一般是SQL语句,就能够实现有选择的去加载我们想要的模型。而对于3DML图层,没有找到Filter这个属性,那么Skyline到底有没有针对3DML图层提供API来实现这个功能呢?下面有真相噢。
        Skyline提供的操作3DML图层API是I3DMLFeatureLayer66接口。单个模型的显隐通过获取要素IFeature66,然后通过Show属性来设置。
回复 支持 反对

使用道具 举报

83

主题

139

帖子

1473

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1473
 楼主| 发表于 2016-7-11 14:24:13 | 显示全部楼层
模型按条件批量加载需要借助shp图层来实现,具体的实现方法如下:

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

83

主题

139

帖子

1473

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1473
 楼主| 发表于 2016-7-11 14:24:47 | 显示全部楼层
小结:实现3DML模型的显示和隐藏功能需要用到3DML的许多方法和属性,还用到了IFeatureLayer的接口以及他的属性和方法。按照上面的步骤我们就可以实现类似于filter的功能,并且如果我们想实现一些模型的高亮也变得轻而易举了。当然,模型的显示与隐藏只是3DML众多功能之一,在之后会有更多生动精彩的文章来介绍功能强大且实用的3DML,敬请期待~
回复 支持 反对

使用道具 举报

0

主题

6

帖子

75

积分

注册会员

Rank: 2

积分
75
发表于 2016-8-3 10:26:18 | 显示全部楼层
学习了…………………………………………………………………………………………
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋| SkylineGlobe ( 京ICP备09046777号 )   

GMT+8, 2017-11-23 02:19 , Processed in 0.083754 second(s), 21 queries .

Powered by Skyline中国社区!

© 2013 skylineglobe.cn.

快速回复 返回顶部 返回列表