在OpenLayers 3中动态添加和删除轨道段
Dynamically adding and removing segments from a track in OpenLayers 3
我想用OpenLayers 3实时显示一个轨迹,它最终会溶解,就像蜗牛的轨迹一样。
只向LineString追加新的坐标是很容易的。请看这个例子。但是API似乎不支持从行尾删除坐标。
我该怎么做呢?扩展LineString类是唯一的选择吗?或者我应该为每个线段使用单独的特征?
:
我在ol-debug.js中使用了这个代码。但是编译后的版本没有导出get/setFlatCoordinates。
var flatCoordinates = geometry.getFlatCoordinates(); // not exported
if (flatCoordinates && flatCoordinates.length > 100) {
// remove first coordinate elements from array
flatCoordinates.splice(0, geometry.getStride());
// call push with coordinate elements as arguments
Array.prototype.push.apply(flatCoordinates, coordinate);
// update coordinates calling change()
geometry.setFlatCoordinates(geometry.getLayout(), flatCoordinates);
}
else {
geometry.appendCoordinate(coordinate);
}
appendCoordinate方法是在LineString的末尾添加一个坐标的常见用例的快捷方式。要修改具有更多控制的几何图形,请使用setCoordinates设置所需的坐标。
var maxCoords = 100;
var coords = lineString.getCoordinates(); // get coordinate array
coords.unshift(newCoord); // add to beginning of array
if (coords.length > maxCoords) {
coords.length = maxCoords;
}
lineString.setCoordinates(coords);
相关文章:
- 使用php或javascript从facebook相册URL中删除多余的部分
- RegEx删除空属性?例如,如果(class=“”||class=“”)移除;否则就下课
- 如何删除多行HTML排列中的空白
- 如何从rails中的代码中删除新行( )
- 删除对HTML元素的拖动
- 当图像转换为本地存储的DataURL时,EXIF被删除
- 按顺序添加和删除类
- iframe正在添加标签,需要删除它们
- 如何在HTML输入字段中添加不可删除的后缀
- addData()从最新图表中删除.js 2.1.3-怎么了
- 如何覆盖锚点元素's href目标,并在我点击转到目标javascript时删除其他错误
- 删除CKEditor工具栏按钮,但不删除功能
- 当浏览器上的后退按钮到达主页时,我需要删除Class
- 正在删除node.js中已验证的网站
- 正在从页面中删除iframe
- 如何从 HTML 查询中删除项目
- 如何在iOS应用程序中从Firebase中删除超过6小时的数据
- 轨道:找不到文件“提前输入.js”.直到我删除“数据涡轮链接”
- 我的Ruby在轨道上删除功能不起作用
- 在OpenLayers 3中动态添加和删除轨道段