2013-06-11 6 views
1

안녕하세요. Google지도에 추가 할 KML 파일 2 세트가 있습니다.하지만이 두 세트는지도에 동시에 존재합니다. 개별적으로이 세트는 잘 작동합니다. 아무도 가이드 할 수 있습니까? 나는Google지도의 KML 레이어

내가 16 개 KML 파일에 설정 한 후 그를 찾아 map.I에를 KML 파일의 두 세트를 결합하여 설정하려고

kml19 = new google.maps.KmlLayer({url:'url',preserveViewport: true,map: map}); 
kml19.setMap(map); 

[편집] 아래로 KML 파일을 설정 지도, 그리고 다시 우리는 하나를 추가하려고,지도는 KML 파일을 dispaly하지 않습니다. 우리가 추가 할 수있는 KML 파일의 수에 대한 제한이 있습니까?

kml11 = new google.maps.KmlLayer({url:'url1',preserveViewport: true,map: map}); 
    kml12 = new google.maps.KmlLayer({url:'url2',preserveViewport: true,map: map}); 
    kml13 = new google.maps.KmlLayer({url:'url3',preserveViewport: true,map: map}); 
    kml14 = new google.maps.KmlLayer({url:'url4',preserveViewport: true,map: map}); 
    kml15 = new google.maps.KmlLayer({url:'url5',preserveViewport: true,map: map}); 
    kml16 = new google.maps.KmlLayer({url:'url6',preserveViewport: true,map: map}); 
    kml17 = new google.maps.KmlLayer({url:'url7',preserveViewport: true,map: map}); 
    kml18 = new google.maps.KmlLayer({url:'url8',preserveViewport: true,map: map}); 
    kml19 = new google.maps.KmlLayer({url:'url9',preserveViewport: true,map: map}); 

    kml11.setMap(map); 
    kml12.setMap(map); 
    kml13.setMap(map); 
    kml14.setMap(map); 
    kml15.setMap(map); 
    kml16.setMap(map); 
    kml17.setMap(map); 
    kml18.setMap(map); 
    kml19.setMap(map); 

    kml1 = new google.maps.KmlLayer({url:'url10',preserveViewport: true,map: map}); 
    kml2 = new google.maps.KmlLayer({url:'url11',preserveViewport: true,map: map}); 
    kml3 = new google.maps.KmlLayer({url:'url12',preserveViewport: true,map: map}); 
    kml4 = new google.maps.KmlLayer({url:'url13',preserveViewport: true,map: map}); 
    kml5 = new google.maps.KmlLayer({url:'url14',preserveViewport: true,map: map}); 
    kml51 = new google.maps.KmlLayer({url:'url15',preserveViewport: true,map: map}); 
    kml52 = new google.maps.KmlLayer({url:'url16',preserveViewport: true,map: map});  
    /*kml6 = new google.maps.KmlLayer({url:'url17',preserveViewport: true,map: map}); 
    kml61 = new google.maps.KmlLayer({url:'url18',preserveViewport: true,map: map}); 
    kml7 = new google.maps.KmlLayer({url:'url19',preserveViewport: true,map: map}); 
    kml71 = new google.maps.KmlLayer({url:'url20',preserveViewport: true,map: map}); 
    kml8 = new google.maps.KmlLayer({url:'url21',preserveViewport: true,map: map}); 
    kml9 = new google.maps.KmlLayer({url:'url22',preserveViewport: true,map: map}); 
    kml91 = new google.maps.KmlLayer({url:'url23',preserveViewport: true,map: map});*/ 

    kml1.setMap(map); 

    kml2.setMap(map); 

    kml3.setMap(map); 

    kml4.setMap(map); 

    kml5.setMap(map); 

    kml51.setMap(map); 
    kml52.setMap(map);  
    /*kml6.setMap(map); 
    kml61.setMap(map); 
    kml7.setMap(map); 
    kml71.setMap(map); 
    kml8.setMap(map); 
    kml9.setMap(map); 
    kml91.setMap(map);*/ 
+0

해당 코드에 오류가 있습니까? kml11은 무엇입니까? – geocodezip

+0

@ geocodezip 내 질문을 편집했습니다. 오타를 위해 죄송합니다. – user2473430

답변

1

는 각 URL에 대해 하나 개의 KmlLayer를 객체를 생성해야합니다

var kml19 = new google.maps.KmlLayer({url:'url1',preserveViewport: true,map: map}); 
var kml11 = new google.maps.KmlLayer({url:'url2',preserveViewport: true,map: map}); 

UPDATE 당신은 KML 파일을 많이로드. 하나의 Google지도에 표시 할 수있는 KML 레이어의 수에 제한이있는 documentation

설명로드 할 수있는 수에 제한이 있습니다. 이 한도를 초과하면 레이어가 표시되지 않습니다. 이 한도는 KMLLayer 클래스에 전달 된 모든 URL의 전체 길이 인 을 기반으로하므로 적용에 따라 다릅니다. 평균적으로, 당신은 제한을 치지 않고 10 ~ 20 개의 레이어를로드 할 수 있어야합니다.

+0

: 내 질문을 편집했습니다. – user2473430

+0

Ok. 고맙습니다. 답변을 수락 할 수 있습니다.이 작업을 수행 할 수있는 방법이 있습니까?. 제 3 자 "geoxml3 "도와 줘? – user2473430

+0

geoxml3은 시스템 성능에 따라 제한되는 KML 파일을 무제한으로 표시 할 수 있습니다. 타일 기반 렌더링이 아닌 기본 Google Maps Javascript API v3 객체를 사용하여 KML을 렌더링합니다. 또 다른 옵션은 KML 파일의 URL을 더 짧게 만드는 것입니다. 이렇게하면 KmlLayer를 사용하여 더 많은 것을 표시 할 수 있습니다. – geocodezip

관련 문제