我正在使用十六进制颜色标记图标。对于蓝色,我使用的是0000ff
。在KML文件中,其格式为<color>ff0000ff</color>
。但是,在Google Earth中打开KML时,图标地标为红色。
看看https://developers.google.com/kml/documentation/kmlreference,我认为颜色应该编码为ff
+ hexadecimal number
,因此黑色表示为ff000000
,这是可行的,但是ff0000ff
对于蓝色则不会。
我尝试了各种样式和图标选项,但均未成功。我已经阅读并看到了如何将图标和颜色融合在一起的分层效果。使用wht-blank.png似乎是应用颜色的中性画布,但我怀疑这可能会干扰。
下面是我的考试kml。
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2" xmlns:gx="http://www.google.com/kml/ext/2.2">
<Document>
<name>kml_test</name>
<Placemark>
<name>uniq_name</name>
<Style>
<IconStyle>
<scale>1</scale>
<color>ff0000ff</color>
<Icon>
<href>http://maps.google.com/mapfiles/kml/paddle/wht-blank.png</href>
</Icon>
</IconStyle>
</Style>
<LabelStyle>
<color>ffffffff</color>
<scale>0.6</scale>
</LabelStyle>
<LookAt>
<longitude>-118.000000</longitude>
<latitude>34.000000</latitude>
<range>1000</range>
</LookAt>
<Point>
<altitudeMode>clampToGround</altitudeMode>
<extrude>0</extrude>
<coordinates>-118.000000,34.000000,0</coordinates>
</Point>
</Placemark>
</Document>
</kml>
我希望<color>ff0000ff</color>
在Google Earth中打开kml时显示蓝色图标,而不是红色。
答案 0 :(得分:1)
KML不使用正常的颜色顺序,而是以蓝色,绿色,红色或AABBGGRR的相反顺序排列,其中AA是alpha或透明度,BB是蓝色,GG是绿色,RR是红色。
有关更多信息,请参见<color>
标签的文档,在这里:
https://developers.google.com/kml/documentation/kmlreference#elements-specific-to-colorstyle
特别是这一行:
The order of expression is aabbggrr
要使用蓝色图标,请使用:<color>ffff0000</color>