2014-07-09 2 views
2

Google지도 API를 사용하여 이탈리아 해안의지도를 만들고 싶습니다. 요청 수는 제한적입니다.Google maps, tiles, Mapserver

나는 "MapServer"를 검색했지만 발견했지만 몇 가지 질문이 있습니다. Google지도는 Mapserver를 사용합니까? 이미지가 Mapserver에 포함되어 있습니까? 아니면 Google의 자산입니까?

확대/축소 할 때 타일 생성은 어떻게됩니까? 이 작업을 수행하는 Google지도 또는 MapServer API에 있습니까?

+0

확대/축소 할 때 타일 생성은 어떻게됩니까? 이 작업을 수행하는 Google지도 또는 MapServer API에 있습니까? >지도 서버와 자신의 공간 데이터베이스를 사용하면 자신 만의 타일을 생성 할 수 있습니다 (Google지도를 사용하지 않으려는 경우). 오픈 소스 솔루션 tilecache 및 openlayers를 확인하십시오. –

답변

2

이미지가 Mapserver에 포함되어 있습니까? 아니면 Google의 속성입니까?

이들은 Google에 속하며 MapServer를 사용하여 이미지를 요청합니다.

지도 서버에는 googlemaps API를 사용할 수있는 기능이 있습니다. googlemaps API는 줌 레벨 및 좌표 (X, Y)에 따라 요청시 MapServer에 MapServer를 보냅니다. 따라서 확대 할 때마다 MapServer에서 googlemaps로부터 새로운 타일 집합을 요청합니다. 그래서, 귀하의 요청이 제한되어 있다면 나는 최대한 빨리 상상할 수있을 것이라고 상상합니다. 얼마나 많은 요청을 할 수 있습니까?

체크 아웃 타일에 대한 문서 : 구글 맵 버전 또는 Microsoft 빙지도 버전을 모두 생성 http://mapserver.org/output/tile_mode.html#using-google-maps

0

맵 서버 지원 타일.

MapServer가 PROJ를 지원하는지 확인하려면 @zachatrocity가 지적한 문서를 확인하십시오.

이 문서는 2008/04/30에 작성되었으며 더 이상 Google Map JavaScript API에서 지원하지 않습니다.

오버레이는 여기에서 찾을 수 있습니다로 자신의 맵 서버 타일을 사용하는 방법에 대한

현재 문서 : https://developers.google.com/maps/documentation/javascript/examples/maptype-base

그 샘플에 따라,하지만 당신은 당신의 자신의 타일로 제공으로 getTile 기능 변경해야

CoordMapType.prototype.getTile = function(coord, zoom, ownerDocument) { 
    var url = "http://[change this into your mapserver ip]]/cgi-bin/mapserv.exe?"; 
    url += "map=/path/to/your/mapfile.map&"; 
    url += "mode=tile&"; // you need this! 
    url += "layers=yourLayer&"; 
    //url += "layers=layer1 layer2&"; 
    url += "tilemode=gmap&"; // you need this 
    url += "tile=" + coord.x + " " + coord.y + " "+zoom; // and this 

    var myMapServerTile = ownerDocument.createElement('img'); 
    myMapServerTile.src= url; 
    return myMapServerTile; 

}; 

see modified preview here

0

이러한 종류의 작업을 처리하는 방법은 여러 가지가 있습니다. 프런트 엔드의 GIS 자바 스크립트 API 대부분은 타일을 계산하여 타일링 된지도 레이어를 기반으로 여러 호출 (기본 16 타일)을 생성하는 기능을 갖추고 있습니다. 브라우저에서 피들러 또는 개발 도구를 열면 단일 범위 쿼리 (예 : bbox)에서 프런트 엔드가 mapserver에 대한 여러 wms 호출을 생성합니다. 각각은 하나의 타일입니다.

서버 측에서는 타일을 사전 생성하거나 즉석에서 생성 할 수 있습니다. 미리 생성 된 타일 캐시가 흥미로운 경우 공식 사이트의 MapCache 관련 항목에서 자세한 내용을 확인하십시오.