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)

// }

})

}

相关推荐
catchadmin1 分钟前
PHP 8.7 协程新提案 让跨协程代码共享请求身份
开发语言·php
念何架构之路31 分钟前
go-grpc设计思想
开发语言·后端·golang
Csvn33 分钟前
SSR/SSG/ISR(上):峡谷与渲染策略的时间预算
前端
Csvn38 分钟前
SSR/SSG/ISR(下):可交互性、新鲜度与回源账
前端
酷炫码神1 小时前
Day 10|Pinia 状态管理:把散落在各组件的数据,收进一个全局仓库
android·开发语言·javascript
Elastic 中国社区官方博客2 小时前
我们如何通过 70 多个拉取请求,将 OpenTelemetry Java agent 迁移到 invokedynamic
java·大数据·开发语言·elasticsearch·搜索引擎·全文检索·es
tyn1882 小时前
记录本地安装nacos服务的方法及异常
java·开发语言
步行cgn3 小时前
Spring MVC 视图机制的核心接口与类
java·开发语言·后端·spring·mvc
Elcker3 小时前
YnuoAgent(依诺):一个 npm 包,跑起属于自己的 AI 研发平台
前端·人工智能·npm
传奇开心果编程3 小时前
【Rust入门练中学】第5课:引用与借用
开发语言·rust·引用·编程语言理论·通用编程语言·借用