Openlayers 3 如何突出显示鼠标悬停的细分的轮廓?

Openlayers 3 如何突出显示鼠标悬停的细分的轮廓?,openlayers-3,Openlayers 3,例如,突出显示鼠标悬停的城市轮廓。我读过: 我有一些问题: 通过openlayers,我无法直接获得鼠标悬停细分(州或城市)的轮廓,对吗 要完成它,我必须获得鼠标悬停的点信息(latlng或其他),然后根据该点信息查询Latlang,对吗 如果是,是否可以查询任何公共api?或者我必须自己为这种查询建立一个数据库 对于你的问题 1-您需要在GeoJSON这样的文件中定义州或城市,但是如果您有,那么是的,您可以将大纲作为一个特性 2-是-可以使用map.on('pointermove'…)或向p

例如,突出显示鼠标悬停的城市轮廓。我读过:

我有一些问题:

  • 通过openlayers,我无法直接获得鼠标悬停细分(州或城市)的轮廓,对吗
  • 要完成它,我必须获得鼠标悬停的点信息(latlng或其他),然后根据该点信息查询Latlang,对吗
  • 如果是,是否可以查询任何公共api?或者我必须自己为这种查询建立一个数据库
  • 对于你的问题

    1-您需要在GeoJSON这样的文件中定义州或城市,但是如果您有,那么是的,您可以将大纲作为一个特性

    2-是-可以使用map.on('pointermove'…)或向pointermove的select交互添加条件来执行此操作

    3-我认为这与(1)有关-广义上说,您可以使用任何返回适当格式的内容,例如GeoJSON

    此示例显示了GeoJSON与单击一起用于选择国家边界:

    用pointermove对其进行重新设计,应该可以满足您的需求。最简单的方法是:

    var highlighter = new ol.interaction.Select({
        condition: ol.events.condition.pointerMove
    });
    
    我为您做了以下演示: