CRS nào sẽ sử dụng cho Google Maps?


9

Tôi đang cố gắng ánh xạ Shapefile ( tải xuống ) lên Google Map bằng API Javascript. Shapefile mô tả ranh giới của Khu học chánh NYC.

Phép chiếu của tệp là Lambert Conformal Conicvà vì vậy tôi đã cố gắng chuyển đổi nó sang Google Mercatorsử dụng QGIS. Tuy nhiên, tọa độ vẫn không có ý nghĩa. Khi tôi lập bản đồ đa giác, chúng bao phủ toàn bộ Trái đất.

Ví dụ, một trong những điểm không thể mà tôi nhận được là -8240484.27362, 4961069.9502.

Làm cách nào tôi có thể chuyển đổi đúng Shapefile của mình sang định dạng có thể chấp nhận?

Câu trả lời:


10

Đúng là Google sử dụng Google Mercator (EPSG: 3857 hoặc EPSG: 900913) để hiển thị, nhưng tôi nghĩ rằng bạn / API Javascript muốn tọa độ lat / lon cho đầu vào.

Vì vậy, chuyển đổi dữ liệu thành EPSG: 4326 và xem nó có phù hợp không.

Bạn có thể tải shapefile vào QGIS và sử dụng plugin Openlayers với nền tảng Google hoặc Openstreetmap để kiểm tra xem chuyển đổi có đúng không.


6

Google sử dụng phép chiếu Google Mercator. EPSG: 900913. Đối với cài đặt proj4 xem tại đây .

Để hiển thị dữ liệu của bạn trong Google Mercator: Trên thanh trạng thái QGIS, nhấp vào biểu tượng quả cầu màu xám để mở Project Propertiestrang. Kiểm tra Enable 'on the fly' CRS transformationvà chọn Google Mercator -EPSG 900913và nhấp vào Apply.

Để lưu dữ liệu trong Google Mercator: Nhấp chuột phải vào shapefile và chọn Save As.. Chọn Custom CRSthay vì Layer CRS và nhấp Browseđể mở Coordinate Reference System Selector chọn Google Mercator EPSG:900913ở đó và nhấp vàoOK


Cảm ơn, nhưng đó thực sự là những gì tôi đã làm. Trong .prjtập tin, nó thậm chí còn nói Google_Maps_Global_Mercator. Tuy nhiên, các tọa độ là lập dị.
LonelyWebCrawler

Bạn đã có tập tin .qpj. nếu vậy hãy loại bỏ điều đó và làm lại
rkm

Tôi đã có một, nhưng giải pháp là chuyển đổi tập tin thành EPSG:4326.Cảm ơn sự giúp đỡ của bạn!
LonelyWebCrawler

@rashad, 900913 là cơ quan OpenLayers có thẩm quyền. Phiên bản của EPSG là 3857.
mkennedy

4

Tải shapefile 'như hiện tại' vào QGIS và Lưu dưới dạng KML sẽ thực hiện chuyển đổi và sẽ hiển thị chính xác trong Google Earth.

Xem: http://pvanb.wordpress.com/2012/07/31/exporting-vector-layer-as-kml-in-qgis/

nhập mô tả hình ảnh ở đây

đối với Google Maps, bạn cần tải kml lên máy chủ web đối mặt công khai.

Lớp mẫu trong API Google Maps v3

https://google-developers.appspot.com/maps/documentation/javascript/examples/full/layer-kml

Mã ví dụ:

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

Cảm ơn, nhưng tôi đã cân nhắc sử dụng Shapefile vì việc vẽ Đa giác cho từng hình dạng có vẻ dễ dàng hơn thay vì nhập nó từ KML, vì tôi sẽ có nhiều quyền kiểm soát hơn về màu sắc, v.v.
LonelyWebCrawler
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.