new mars3d.graphic.PolylineEntity({在固定高度开启编辑模式的坐标自定义处理

功能示例(Vue版) | Mars3D三维可视化平台 | 火星科技

问题场景:

1.在编辑航线时,需要指定航线坐标在固定高度值上开启编辑模式。

2.关键代码是:

graphicLayer.startEditing({开启编辑模式,进行航线的编辑。

解决方案:

1.需要将mars3d的sdk版本更新到3.6的最新版本,graphicLayer.startEditing(支持新的函数回调,

指定固定的坐标高度值。

复制代码
  updateDrawPosition: function (position, graphic) {
      position = mars3d.PointUtil.setPositionsHeight(position, 1000)
      return position
    }

完整的代码:

// 开始绘制

export function startDrawGraphic() {

graphicLayer.startDraw({

type: "polyline",

style: {

color: "#ffff00",

width: 3

},

// 绘制时,外部自定义更新坐标,可以自定义处理特殊业务返回修改后的新坐标。

updateDrawPosition: function (position, graphic) {

position = mars3d.PointUtil.setPositionsHeight(position, 1000)

return position

}

// 外部自定义校验坐标,return false 时坐标无效,不参与绘制

// validDrawPosition: function (position, graphic) {

// const point = mars3d.LngLatPoint.fromCartesian(position)

// return (point.lng > 115 && point.lng < 117)

// }

})

}

相关推荐
波力海苔夹心脆67534 分钟前
C# WPF 资源字典详解:ResourceDictionary、MergedDictionaries 与自定义控件案例
开发语言·c#·wpf·入门教程·resource·资源字典
不会算法的笨小孩1 小时前
异常的使用以及会出现的问题
开发语言·c++·c++11·异常
Penge6661 小时前
《Go 后端开发者学 TypeScript:typescript 类型断言》
javascript
Penge6661 小时前
《Go 后端开发者学 TypeScript:Symbol》
javascript
疯华整猫2 小时前
被杀掉之后:我把 Android 的「唤起 + 常驻」重做了一遍
前端·面试·架构
Hhy_11073 小时前
《C++深度解构06》手撕 string —— 从底层内存管理到深浅拷贝彻底吃透
c语言·开发语言·c++·学习·visual studio
starzy19903 小时前
深入理解Scala函数定义:从方法到函数的类型跨越
开发语言·scala
starzy19903 小时前
深入理解Scala递归函数:从栈溢出到尾调用优化
开发语言·scala
三*一3 小时前
Mapbox‑GL JS 多边形折点编辑工具:实现原理、功能拆解与踩坑总结
开发语言·javascript·ecmascript
YSL0701244 小时前
C++基础
开发语言·c++