Google지도 API를 사용하여 내지도를 만들었습니다. 정말 큰 이미지를 기반으로하는 맞춤형지도 유형입니다.맞춤지도 유형에 대한 좌표를 재설정 할 수 있습니까?
어쨌든 지구의 기본 latlng 좌표가 아닌 내 이미지에 상대적으로 latinng 좌표를 재설정 할 수 있습니까?
I.E. 이미지의 왼쪽 상단 모서리를 만듭니다 (0,0).
감사합니다.
Google지도 API를 사용하여 내지도를 만들었습니다. 정말 큰 이미지를 기반으로하는 맞춤형지도 유형입니다.맞춤지도 유형에 대한 좌표를 재설정 할 수 있습니까?
어쨌든 지구의 기본 latlng 좌표가 아닌 내 이미지에 상대적으로 latinng 좌표를 재설정 할 수 있습니까?
I.E. 이미지의 왼쪽 상단 모서리를 만듭니다 (0,0).
감사합니다.
네, 고객님의 custom projection definitions으로 가능합니다. 이 lunar surface example을 왼쪽 위 모서리가 (0,0)이고 오른쪽 하단이 (50,50) 인 간단한 투영으로 수정했습니다. 앱에서 작동하려면 값을 변경해야 할 가능성이 큽니다.
한계를 조금 넘기고 위도는 +/- 90, 경도는 +/- 180로 제한되어 있습니다. 경도는 180 도로 돌아갑니다. 즉, (100, 200)의 맞춤 좌표를 정의하는 것은 불가능한 것처럼 보입니다.
여기에 수정 된 달 표면의 데모를 참조 경고에 정의 latLng를 표시하기 위해 아무 곳이나 클릭 :
function percentProjection() {};
percentProjection.prototype.fromLatLngToPoint = function(latlng) {
// pixel size of tile at zoom 0
var max = 256;
// define bottom-right corner as (50, 50)
var x = max * latlng.lng()/50;
var y = max * latlng.lat()/50;
return new google.maps.Point(x, y);
};
percentProjection.prototype.fromPointToLatLng = function(pixel) {
// inverse conversion
var max = 256;
var lng = pixel.x/max * 50;
var lat = pixel.y/max * 50;
return new google.maps.LatLng(lat, lng);
};
정말 감사합니다! 나는 명확하고 포괄적 인 대답에 감사드립니다. – Harry
jsfiddle에서 만든 코드뿐만 아니라 코드도 구현했습니다 :'moonMapType.projection = new percentProjection();'그러나 효과가있는 것 같지 않습니다. 작동시키기 위해 추가해야 할 것이 있습니다. ? minZoom 0도 필요합니까? 감사합니다. – Harry
투영을'mapTypes','mapTypeId' 옵션 (jsfiddle에서'initialize' 안에 보입니다)과 연결 시켰습니까? 나는 최소한의 테스트가 필요하다. 확대/축소 문제는 생각하지 않아요. –