java - 在java中查询立交桥api...我想指定查询中的缩放以绘制响应..我必须在代码中添加什么才能做到这一点?

标签 java openstreetmap overpass-api

我在java项目中工作..我想在立交桥查询中指定缩放?因为我想绘制响应(xml 文件)??

public static Document getNodesViaOverpass(String query) throws IOException, ParserConfigurationException, SAXException {
    String hostname = OVERPASS_API;

    URL osm = new URL(hostname);
    HttpURLConnection connection = (HttpURLConnection) osm.openConnection();
    connection.setDoInput(true);
    connection.setDoOutput(true);
    connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");

    DataOutputStream printout = new DataOutputStream(connection.getOutputStream());
    printout.writeBytes("data=" + URLEncoder.encode(query, "utf-8"));
    printout.flush();
    printout.close();

    DocumentBuilderFactory dbfac = DocumentBuilderFactory.newInstance();
    DocumentBuilder docBuilder = dbfac.newDocumentBuilder();
    return docBuilder.parse(connection.getInputStream());
}

最佳答案

您无法指定缩放级别,但可以指定边界框。边界框定义查询的最小和最大纬度和经度,即矩形。请参阅bounding box在 Overpass 查询语言文档中。

边界框参数由最南纬度、最西经度、最北纬度、最东经度组成。

这是带有边界框的 Overpass 查询的简单示例:

node(50.745,7.17,50.75,7.18)[highway=bus_stop];
out;

如果简单的矩形不能满足您的需求,您还可以指定 polygon .

关于java - 在java中查询立交桥api...我想指定查询中的缩放以绘制响应..我必须在代码中添加什么才能做到这一点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58421286/

相关文章:

java - 设置预取行大小

java - 如何向 JButton 添加两个操作?小费计算器程序

java - 正则表达式排除偶数位数的尾随零

android - Osmdroid 标记未更新

java - Overpasser 库使用

algorithm - 确定 Openstreetmap 路由算法中的边界框大小

Java方法参数重写

javascript - 使用 OpenLayers 在 OSM 中显示自定义本地镜像标记

leaflet - 如何为传单下载 map 图 block ?

javascript - osmtogeojson 中 uninterestingTags 的预期输入是什么?