Google Earth COM API based C# 添加地标/路径方法探讨

思路如下:

1)GE com api没有提供直接添加地物的接口,所以我们只能通过KML文件方式OpenKMLFile/LoadkmlData的方式载入;

2)载入的地物在没有特别申明保存在“我的位置(MyPlaces)”的情况下是保存在“临时位置(TemporaryPlaces)”中的,为此我们想要多次可以以修改KML的方式载入同一地物来实现清除前面所画的地物功能;

步骤如下:

(一)以解析XML的形式解析KML(这里要先对KML标签熟悉),以XMLDocument或LINQ TO XML相关组件接口来实现,可以返回文件路径名或直接的XML内存文档(针对OpenKMLFile/LoadkmlData);

(二)添加KML后,以FeatureGE接口获取要素(ApplicationGEClass.GetTemporaryPlaces()),这里只能使用Visibility隐藏,当然也可以直接在KML中设置。

(三)置空方式。设计一变量,这里要遵循XML语法,用这个空的变量去代替前面加在GE界面中的KML,然后加载这个变量到GE界面中,实现所谓的“清除”功能。

posted @ 2012-11-01 12:39  GIS流水  阅读(1557)  评论(0编辑  收藏  举报