如何从 GWT 的 MapVisualization 的城市名称获取纬度/经度?

发布于 2024-12-20 00:19:30 字数 1496 浏览 3 评论 0原文

是否有可能仅从城市名称或街道名称获取 Google 地图的纬度和经度代码?

例如:我只想要巴黎(法国)的经纬度代码,这样我就可以将它用于Google的MapVisualization(Google Web Toolkit、Google App Engine和RPC)。

因为每次都要查找每个城市的经纬度代码,非常不方便。

package com.practicum.client.out;

import com.google.gwt.user.client.ui.Widget;
import com.google.gwt.visualization.client.DataTable;
import com.google.gwt.visualization.client.AbstractDataTable.ColumnType;
import com.google.gwt.visualization.client.visualizations.MapVisualization;
import com.google.gwt.visualization.client.visualizations.MapVisualization.Options;


public class DataOutGoogleMap {

public DataOutGoogleMap(Runnable runnable) {
}

public Widget createGoogleMapView() {
    DataTable data = DataTable.create();
    data.addColumn(ColumnType.NUMBER, "Lat");
    data.addColumn(ColumnType.NUMBER, "Lon");
    data.addColumn(ColumnType.STRING, "Name");
    data.addRows(3);

    data.setValue(0, 0, 52.37022);
    data.setValue(0, 1, 4.89517);
    data.setValue(0, 2, "This is Amsterdam");

    data.setValue(1, 0, 51.50813);
    data.setValue(1, 1, -0.12801);
    data.setValue(1, 2, "This is London");

    data.setValue(2, 0, "Paris, France"); // DONT WORK?
    data.setValue(2, 1, "");
    data.setValue(2, 2, "This is Paris");

    Options options = Options.create();
    options.setEnableScrollWheel(true);
    options.setMapType(MapVisualization.Type.NORMAL);
    options.setShowTip(true);

    return new MapVisualization(data, options, "400px", "300px");
    }
}

Is there a possibility to get the Google Maps's latitude and longitude code from just a city name or a street name?

For example: I just want the latitude and longitude code of Paris (France), so I can use it for the Google's MapVisualization (Google Web Toolkit, Google App Engine and RPC).

Because it's very inconvenient to find the latitude and longitude code every time for each city.

package com.practicum.client.out;

import com.google.gwt.user.client.ui.Widget;
import com.google.gwt.visualization.client.DataTable;
import com.google.gwt.visualization.client.AbstractDataTable.ColumnType;
import com.google.gwt.visualization.client.visualizations.MapVisualization;
import com.google.gwt.visualization.client.visualizations.MapVisualization.Options;


public class DataOutGoogleMap {

public DataOutGoogleMap(Runnable runnable) {
}

public Widget createGoogleMapView() {
    DataTable data = DataTable.create();
    data.addColumn(ColumnType.NUMBER, "Lat");
    data.addColumn(ColumnType.NUMBER, "Lon");
    data.addColumn(ColumnType.STRING, "Name");
    data.addRows(3);

    data.setValue(0, 0, 52.37022);
    data.setValue(0, 1, 4.89517);
    data.setValue(0, 2, "This is Amsterdam");

    data.setValue(1, 0, 51.50813);
    data.setValue(1, 1, -0.12801);
    data.setValue(1, 2, "This is London");

    data.setValue(2, 0, "Paris, France"); // DONT WORK?
    data.setValue(2, 1, "");
    data.setValue(2, 2, "This is Paris");

    Options options = Options.create();
    options.setEnableScrollWheel(true);
    options.setMapType(MapVisualization.Type.NORMAL);
    options.setShowTip(true);

    return new MapVisualization(data, options, "400px", "300px");
    }
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

陌若浮生 2024-12-27 00:19:30

这可以通过 Google 地理编码 API 来完成。例如,要查找巴黎的纬度和经度,您可以提交

GET
http://maps.googleapis.com/maps/api/geocode/json?address=Paris,+France&sensor=false

,所需的纬度和经度包含在 JSON 响应中“geometry”字典中名为“location”的键处:

 "geometry" : {
            ...
            "location" : {
               "lat" : 48.8566140,
               "lng" : 2.35222190
            },

This can be accomplished with the Google Geocoding API. For example, to find the lat and lng for Paris, you could submit

GET
http://maps.googleapis.com/maps/api/geocode/json?address=Paris,+France&sensor=false

and the desired lat and lng are contained in the JSON response at a key called "location" inside the a "geometry" dictionary:

 "geometry" : {
            ...
            "location" : {
               "lat" : 48.8566140,
               "lng" : 2.35222190
            },
多彩岁月 2024-12-27 00:19:30

您需要下载城市位置数据库,例如这个,并用它来查看它们需要时升起。

You need to download a database of locations for cities, like this one, and use it to look them up when required.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文