在OpenLayers 3中将功能从一个位置移动到另一位置

单实体

如何将矢量要素从地图上的一个位置移动到另一位置?

我有以下代码会在(0.0,0.0)处生成一个图标:

var iconFeature = new ol.Feature({
   geometry: new ol.geom.Point([0.0,0.0])
});

var iconStyle = new ol.style.Style({
  image: new ol.style.Icon(({
    anchor: [0.5, 46],
    anchorXUnits: 'fraction',
    anchorYUnits: 'pixels',
    opacity: 0.75,
    src: 'marker-icon.png'
  }))
});

iconFeature.setStyle(iconStyle);

这可以正常工作,但是现在如何将其移动到另一个位置?

我试过了:

iconFeature.move(x,y);

我也尝试过

iconFeature.geometry.move(x,y);

后者说iconFeature.geometry是未定义的,第一个说icon.move()不是函数。

之前关于SO的答案提出了这些解决方案,但它们似乎不适用于我。

约翰·鲍威尔

实际上,您可以使用新ol.coordinate.add方法执行此操作,请参阅文档。

我添加了一个jsFiddle来演示这一点,红色点是原始点,绿色点是移动了随机距离的那些点。

要获取点,请forEachFeature在向量源上使用,并getGeometry().getCoordinates()获取实际坐标,然后使用setGeometry,例如

vectorSource.forEachFeature(function(feature){
     var coordinate = feature.getGeometry().getCoordinates();
     //move coordinates some distance
     ol.coordinate.add(coordinate, 10, 10);
     //use setGeometry to move it   
     feature.setGeometry(new ol.coordinate);
    }
);

在这个小提琴中,我创建了一个新的几何图形,而不是移动现有的几何图形。显然,对于除点之外的其他东西,您将不得不遍历坐标数组。要仅移动特定的几何图形,可以使用getFeatureByIdol.Feature方法获取特定的图形,然后可以如上所述移动其几何图形并进行更新。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Windows C ++中将文件从一个位置移动到另一位置

来自分类Dev

这里地图-将标记从一个位置移动到另一位置

来自分类Dev

如何将一个节点从一个位置移动到另一位置?

来自分类Dev

使用符号链接在Linux中将文件从一个位置移动到另一位置

来自分类Dev

如何将文件从磁盘上的一个位置移动到另一位置?

来自分类Dev

游戏运行时,将标签从一个位置统一移动到另一位置

来自分类Dev

如何将svn文件夹从一个位置移动到另一位置

来自分类Dev

使用批处理文件将zip文件夹从一个位置移动到另一位置

来自分类Dev

动画似乎不起作用-在[self dismissViewController]上将视图从一个位置移动到另一位置

来自分类Dev

根据索引将列值从一个位置更新到另一位置

来自分类Dev

如何在Groovy中将目录从一个位置复制到另一位置

来自分类Dev

如何在ASP.NET MVC中将静态路径从一个位置重新映射到另一位置?

来自分类Dev

使用groovy脚本将整个目录从一个位置复制到另一位置

来自分类Dev

Powershell或C#:使用CSV数据将文件从一个位置复制到另一位置

来自分类Dev

将所有Excel文件从一个位置复制到另一位置

来自分类Dev

Linux Shell脚本可将文件从一个位置复制到另一位置

来自分类Dev

借助xslt将xml节点复制到一个位置到另一位置

来自分类Dev

在应用程序仍处于打开状态时,如何将.mdf和.ldf文件从一个位置复制到另一位置?

来自分类Dev

使用XSLT 2将元素从一个位置移动到另一个位置

来自分类Dev

将 XAML 元素从一个位置移动到另一个位置

来自分类Dev

将整行从一个位置移动到另一个位置

来自分类Dev

OpenLayers覆盖功能ID

来自分类Dev

Openlayers 功能创建问题

来自分类Dev

批处理文件可将具有日期和时间的某些目录和内容从一个位置复制到另一位置?

来自分类Dev

Openlayers 3调试

来自分类Dev

OpenLayers 3主版本

来自分类Dev

Openlayers 3 center map

来自分类Dev

OpenLayers 3 BBOX策略

来自分类Dev

Openlayers 3 readExtensions GPX

Related 相关文章

  1. 1

    在Windows C ++中将文件从一个位置移动到另一位置

  2. 2

    这里地图-将标记从一个位置移动到另一位置

  3. 3

    如何将一个节点从一个位置移动到另一位置?

  4. 4

    使用符号链接在Linux中将文件从一个位置移动到另一位置

  5. 5

    如何将文件从磁盘上的一个位置移动到另一位置?

  6. 6

    游戏运行时,将标签从一个位置统一移动到另一位置

  7. 7

    如何将svn文件夹从一个位置移动到另一位置

  8. 8

    使用批处理文件将zip文件夹从一个位置移动到另一位置

  9. 9

    动画似乎不起作用-在[self dismissViewController]上将视图从一个位置移动到另一位置

  10. 10

    根据索引将列值从一个位置更新到另一位置

  11. 11

    如何在Groovy中将目录从一个位置复制到另一位置

  12. 12

    如何在ASP.NET MVC中将静态路径从一个位置重新映射到另一位置?

  13. 13

    使用groovy脚本将整个目录从一个位置复制到另一位置

  14. 14

    Powershell或C#:使用CSV数据将文件从一个位置复制到另一位置

  15. 15

    将所有Excel文件从一个位置复制到另一位置

  16. 16

    Linux Shell脚本可将文件从一个位置复制到另一位置

  17. 17

    借助xslt将xml节点复制到一个位置到另一位置

  18. 18

    在应用程序仍处于打开状态时,如何将.mdf和.ldf文件从一个位置复制到另一位置?

  19. 19

    使用XSLT 2将元素从一个位置移动到另一个位置

  20. 20

    将 XAML 元素从一个位置移动到另一个位置

  21. 21

    将整行从一个位置移动到另一个位置

  22. 22

    OpenLayers覆盖功能ID

  23. 23

    Openlayers 功能创建问题

  24. 24

    批处理文件可将具有日期和时间的某些目录和内容从一个位置复制到另一位置?

  25. 25

    Openlayers 3调试

  26. 26

    OpenLayers 3主版本

  27. 27

    Openlayers 3 center map

  28. 28

    OpenLayers 3 BBOX策略

  29. 29

    Openlayers 3 readExtensions GPX

热门标签

归档