0

지도 API의 자바 스크립트 및 v3을 사용하여 융합 표의 일부 데이터를 가져옵니다. 특정 지점에 맞춤 마커를 성공적으로 추가했지만 현재 '아이콘'이라는 표에있는 열에서 지정된 아이콘으로 '기본'으로 만드는 마커를 얻으려고합니다. 나는 퓨전 테이블 레이어를 사용하지 않고 오히려 데이터의 for 루프에 마커를 만든다. 내 테이블의 아이콘 열에는 'poi', 'star'등과 같은 항목이 있습니다.Google지도 API - 융합 표의 문자열 열에서 아이콘 표식 가져 오기

이름 문자열을 사용하여 퓨전 테이블 레이어와 같은 '기본'아이콘을 얻는 방법은 없을까요? 다른 방법으로, 기본 퓨전 테이블 아이콘 (POI 및 Star와 같은)의 절대 위치를 어디서 찾을 수 있는지 알 수 있으므로 스크립트에서이 경로를 정의 할 수 있습니까?

다음은 몇 가지 예제 코드입니다. 누구든지 Google의 아이콘에 대한 절대 URL을 알고있는 경우 '아이콘'열의 문자열을 기반으로 입력 할 수있는 함수를 작성할 수 있습니다.

 //if there's an image, use it as marker, else use default  
    if(row[3] != ''){ 
     // Create the marker 
     var marker = new google.maps.Marker({ 
     map: map, 
     position: coordinate, 
     icon: new google.maps.MarkerImage(row[3]) 
     });  
    } else { 
     // Create the marker 
     var marker = new google.maps.Marker({ 
     map: map, 
     position: coordinate 

     //icon: row[2] (row[2] is the Icon column. 
     // I'm assuming I'll just need a conditional to check 
     // for the name (such as 'poi') and then to put in the absolute URL for each respectively 
     // the problem is I don't know the absolute URL's for these icons. Thanks. 
     }); 
     } 

답변

1

나는이 똑같은 과정을 거의하고 싶었다. 내가 한 일은 단순히 퓨전 테이블의 칼럼에 마커를 설명하는 것 뿐이므로, 귀하의 경우에는 "포이", "스타"등이 될 것입니다. 광산은 "사진", "비디오", "노래"였습니다. " 그런 다음 다음과 같이 코드화하십시오 :

var image = new google.maps.MarkerImage('img/CF_Orange.png', 
    new google.maps.Size(25, 25), 
    new google.maps.Point(0,0), 
    new google.maps.Point(12.5,12.5)); 

    var image2 = new google.maps.MarkerImage('img/CF_Purple.png', 
    new google.maps.Size(25, 25), 
    new google.maps.Point(0,0), 
    new google.maps.Point(12.5,12.5)); 

    var image3 = new google.maps.MarkerImage('img/CF_Green.png', 
    new google.maps.Size(25, 25), 
    new google.maps.Point(0,0), 
    new google.maps.Point(12.5,12.5)); 

if(row[5] == 'photo'){ 
    var marker = new google.maps.Marker({ 
    map: map, 
    position: coordinate, 
    icon: image 
    });  
} else if(row[5] == 'video'){ 
    var marker = new google.maps.Marker({ 
    map: map, 
    position: coordinate, 
    icon: image2 
    }); 
} else { 
    var marker = new google.maps.Marker({ 
    map: map, 
    position: coordinate, 
    icon: image3 
    }); 
    } 
관련 문제