如何将(kml的路径)替换为变量?我正在使用geoxml3

时间:2017-08-30 03:56:13

标签: javascript angularjs google-maps kml geoxml3

如何将myParser.parse(' path / to / data.kml ')替换为包含这样的kml文件的变量。 https://github.com/geocodezip/geoxml3

var myParser = new geoXML3.parser({map: map});
myParser.parse('/path/to/data.kml');

像这样:

  var result = "<?xml version="1.0" encoding="UTF-8"?> ... </kml>'"
  var myParser = new geoXML3.parser({map: map});
  myParser.parse(result);

1 个答案:

答案 0 :(得分:1)

geoXML3 library包含parseKmlString function来解析字符串中的KML。

实施例

function initMap() {
    var map = new google.maps.Map(document.getElementById('map'), {
      zoom: 16,
      center: {lat: 31.40065516914794, lng: -98.30505371484378}
    });
  
    
    var parser = new geoXML3.parser({map: map});
    parser.parseKmlString('<kml xmlns="http://www.opengis.net/kml/2.2"><Document><Placemark><name><![CDATA[]]>Polygon</name><description><![CDATA[]]></description><Polygon><extrude>1</extrude><altitudeMode>relativeToGround</altitudeMode><outerBoundaryIs><LinearRing><coordinates>-93.46008301171878,31.329035778926478,0 -98.30505371484378,31.40065516914794,0 -97.37121582421878,30.106233605369603,0 -92.65808105859378,30.14749530904506,0</coordinates></LinearRing></outerBoundaryIs> </Polygon></Placemark></Document></kml>'); 
  }


  google.maps.event.addDomListener(window, 'load', initMap);
#map {
        height: 140px;
      }
<script src="https://maps.googleapis.com/maps/api/js"></script>
<script src="https://rawgit.com/geocodezip/geoxml3/master/polys/geoxml3.js"></script>
<div id="map"></div>