首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Google Earth:使用JAK从KML检索图标URL

Google Earth:使用JAK从KML检索图标URL
EN

Stack Overflow用户
提问于 2012-07-03 03:43:28
回答 1查看 1.3K关注 0票数 1

我目前正在使用JAK (Java API for KML)与Google Earth和自定义的KML文件进行交互。我可以使用placemark p.getName()或point.getCoordinates();在列表中获取/设置Placemark的名称、描述、坐标等,但我在获取用于图标的图像的url时遇到了麻烦。例如,如果我的kml文件中有这个placemark (包含在一个文档中,然后是整个KML标记):

代码语言:javascript
复制
  <Placemark>
    <name>Isla de Roatan</name>
    <description>
       Cruise Stop        
    </description>
    <Style>
        <IconStyle>
            <Icon>
                <href>http://maps.google.com/mapfiles/kml/shapes/airports.png</href>
            </Icon>
        </IconStyle>
    </Style>
    <Point>
      <coordinates>-86.53,16.337461,0</coordinates>
    </Point>
  </Placemark>

我如何抓取png url,比如放入一个单独字符串对象?我在Style中看到了.getIconStyle,在IconStyle中看到了.getIcon,在图标中看到了.getHttpQuery,但从Placemark/Feature中查看样式时,除了.getStyleSelector和.getStyleUrl之外,没有什么可链接的。你能用其中的一个或一个样式图来做吗?我不确定我是否完全掌握了它们各自的用途。另外,反过来,如何设置此URL?谢谢你的帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-07-03 13:05:41

Feature.getStyleSelector()返回一个List<StyleSelector>StyleStyleSelector的子类,因此您的样式应该在此列表中(以及为该要素定义的任何其他样式和StyleMaps )。

设置样式(和图标URL):

代码语言:javascript
复制
Placemark placemark = ...;

Style myStyle = new Style().withId("my_style");
myStyle.withIconStyle(new IconStyle().withIcon(new Icon().withHref("http://someurl")));

placemark.addToStyleSelector(myStyle);

获取样式(和图标URL):

代码语言:javascript
复制
for (StyleSelector styleSelector : placemark.getStyleSelector())
{
    if (styleSelector.getId() == "my_style")
    {
        String href = ((Style)styleSelector).getIconStyle().getIcon().getHref();
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11300148

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档