2014-04-07 4 views
0

다음과 같은 방법으로 geoXML 라이브러리의 Google지도에서 KML 파일을 렌더링했습니다.KML 파일 렌더링을위한 geoXml 라이브러리와 KML Layer의 차이점은 무엇입니까?

var geoXml = new geoXML3.parser({ 
    map : map, 
    singleInfoWindow : true 
}); 
geoXml.parse('http://DomainName/GeoSystem/redrawKML'); 

Google지도에서 KML 파일을 렌더링 할 수있는 방법은 다음과 같습니다.

var ctaLayer = new google.maps.KmlLayer({ 
    url: 'http://gmaps-samples.googlecode.com/svn/trunk/ggeoxml/cta.kml' 
}); 
ctaLayer.setMap(map); 

이 두 가지 접근 방식이 구글지도에 왜 KML 파일을 렌더링하기 위해 빠른

  1. 날은, 다음과 같은 질문에 (바보 인 경우, 나는 적절한 방법으로 업데이트됩니다)했다?
  2. 이벤트 처리 (마우스 클릭, 키 누름 등)를 잘 지원하는 것은
  3. 입니다. 이는 서버에서 렌더링되는 KML 파일의 유효성을 검사하는 데 가장 적합한 지원을 제공합니다.

답변

2

maps API v3에 기본 KML 지원이 아직없는 경우 geoXML3이 생성되었습니다. google.maps.Polygon과 같은 다른 API v3 객체를 사용하며 모든 이벤트 가능성을 사용할 수 있습니다.

google.maps.KmlLayer 이벤트 지원이 제한됩니다. (마우스 클릭 만). 지도에 표시 할 수있는 KML 파일 수에는 제한이 있습니다. https://developers.google.com/kml/documentation/mapsSupport

네이티브 KML 지원은 구현하기가 가장 쉽습니다. 그러나 geoXML3은 더 많은 가능성을 제공합니다.

모두 동일한 작업을 수행하여 KML 파일의 유효성을 검사합니다.

+2

"KML의 유효성을 검사하지 않습니다." 이를 위해 [KML validator] (http://www.feedvalidator.org/)를 사용하십시오. KmlLayer는 타일 기반 렌더링을 사용하여 클라이언트의 오버 헤드를 줄입니다. – geocodezip