功能示例(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)
? ? // }
? })
}