Cesium 仿高德导航线

最近在开发无人机平台中,做一个自主航线规划时,为了达到一个好的航线展示效果,决定仿照高德地图中的线路导航来做。高德地图导航线效果如下:

开始的时候想通过传统的贴图方式来进行处理,发现使用此种方式时,当对地图进行缩放的时候,线路上的箭头数量并不会自动改变,导致非常拥挤。没办法就自己重写了这个线的材质,最终效果如下。

高视角时:

可以看到,当前线路上共计五个箭头。
下面对地图进行缩放:

随着地图视角的接近,该材质会自动生成更多的箭头来填充线路中,这样就会达到一个更好看的效果。

下面说下原理:

我在开发的过程中,将当前线的长度转化为了屏幕长度,然后根据片元的屏幕坐标也转为屏幕像素长度。然后再根据比例计算出纹素拾取的坐标,通过此坐标对图片进行拾取。

以为下部分代码:

 // 获取在虚线内的位置,dashLength * czm_pixelRatio 计算当前像素长度对应的屏幕长度

                float dashPosition = fract(pos.x / (dashLength * czm_pixelRatio));

                vec2 st = materialInput.st;

                vec4 colorImage = texture(image, vec2(fract(dashPosition), st.t));

                // material.alpha = color.a;

                // material.diffuse = max(color.rgb, colorImage.rgb);

                if(colorImage.a < 0.3){

                    material.diffuse = backColor.rgb;

                }else{

                    material.diffuse = color.rgb;

                }

效果体验:vis3d 共享 

### PyCharm 打开文件显示不全的解决方案 当遇到PyCharm打开文件显示不全的情况时,可以尝试以下几种方法来解决问题。 #### 方法一:清理缓存并重启IDE 有时IDE内部缓存可能致文件加载异常。通过清除缓存再启动程序能够有效改善此状况。具体操作路径为`File -> Invalidate Caches / Restart...`,之后按照提示完成相应动作即可[^1]。 #### 方法二:调整编辑器字体设置 如果是因为字体原因造成的内容显示问题,则可以通过修改编辑区内的文字样式来进行修复。进入`Settings/Preferences | Editor | Font`选项卡内更改合适的字号大小以及启用抗锯齿功能等参数配置[^2]。 #### 方法三:检查项目结构配置 对于某些特定场景下的源码视图缺失现象,可能是由于当前工作空间未能正确识别全部模块所引起。此时应该核查Project Structure里的Content Roots设定项是否涵盖了整个工程根目录;必要时可手动添加遗漏部分,并保存变更生效[^3]。 ```python # 示例代码用于展示如何获取当前项目的根路径,在实际应用中可根据需求调用该函数辅助排查问题 import os def get_project_root(): current_file = os.path.abspath(__file__) project_dir = os.path.dirname(current_file) while not os.path.exists(os.path.join(project_dir, '.idea')): parent_dir = os.path.dirname(project_dir) if parent_dir == project_dir: break project_dir = parent_dir return project_dir print(f"Current Project Root Directory is {get_project_root()}") ```
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值