如何解决使用Google Earth插件管理气球的最明智的方法是什么?
| 我公司开发了一个Web应用程序(使用GWT在Java中),该应用程序使用Google Earth插件在全球范围内显示特定站点和其他数据。目前,我们正在按使用情况管理气球,这意味着需要显示气球的每个功能都在管理气球的破坏(如果需要)和气球本身的创建。如果我们尝试打开一个气球而另一个仍然打开时,这会导致GE插件有时崩溃的问题。尽管我们几乎已经解决了所有问题,但我认为集中管理气球而不是在每个使用气球的地方都比较聪明。 障碍: 要显示的站点很多,其位置必须非常精确; 使用了多层,每层都可能显示气球; 有没有人创建处理此类事情的“ BalloonManager”类型的事情?你可能怎么做?解决方法
听起来您应该使用封装,将气球创建移到一个单独的方法中。
另外,关于“如果我们尝试在打开另一个气球的同时打开气球的情况下GE插件有时会崩溃的问题”,请确保在打开任何气球之前简单地调用ѭ0,或者更好的是,只需重用当前的所有气球而不是创建一个新的(如果有)。
以下代码应有助于解释-它使用的是您需要的api方法,因此它应有所用。
public void function OpenFeatureBalloon(GEPlugin plugin,IKMLFeature feature)
{
// Get any open balloon
IGEFeatureBalloon balloon = plugin.getBalloon();
if (balloon == null)
{
// not there,so create one
balloon = plugin.createHtmlStringBalloon(\"\");
}
// set the balloon to the features geographic location
balloon.setFeature(feature);
// open the balloon in the plugin
ge.setBalloon(balloon);
}
如果您不想将特征传递给该方法,则修改该方法以接受诸如纬度和经度之类的值翻倍是很不容易的。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。