3.Qt Quick-QML地图引擎之v4.3版本(新增动态轨迹线/海图/天地图街道/天地图卫星)

在上个版本Qt Quick-QML地图引擎之v4版本(新增多模型切换/3D模型欧拉角模拟)_qt加载3d地图-CSDN博客更新了3D模拟功能,在4.3版本增加动态轨迹线、三个地图(海图/天地图街道/天地图卫星)。

4.3版本已经支持qt6 cmake版本,而4.3版本以下支持qt5版本!!!

1.动态轨迹线

在很多app和地图软件中导航的时候,我们都能看到一个动态轨迹线的影子,所以4.3版本中也加入该功能。

支持地图任意旋转和缩放适配,更换任意颜色,轨迹速度,轨迹样式!!!

截图如下所示:

动图如下所示:

核心代码如下所示:

cpp 复制代码
   function  drawLineArrow(ctx, i, increase, interval = 30) {
            let arc = Math.atan2(ptLines[i+1].y - ptLines[i].y, ptLines[i+1].x - ptLines[i].x)
            let xdist = Math.abs(ptLines[i+1].x - ptLines[i].x);
            let dist = Math.sqrt(Math.pow(ptLines[i+1].y - ptLines[i].y,2) + Math.pow(ptLines[i+1].x - ptLines[i].x,2))

            let j = increase;
            for(; j < dist; j+=interval+7) {

                let px = ptLines[i].x + Math.cos(arc)* j;// Math.round(ptLines[i].x + Math.cos(arc)* j);
                let py = ptLines[i].y +   Math.sin(arc) * j ;//Math.round(ptLines[i].y +   Math.sin(arc) * j);

                ctx.save();
                ctx.translate(px, py);
                ctx.rotate(arc);
                ctx.drawImage(canvasLineArrow.lineArrow, -3, -3);
                ctx.restore();
            }
            return j-dist;
        }

2.海图/天地图街道/天地图卫星

海图如下所示:

天地图街道:

天地图卫星:

相关推荐
Kiyra5 小时前
八股篇(1):LocalThread、CAS和AQS
java·开发语言·spring boot·后端·中间件·性能优化·rocketmq
程序员阿鹏5 小时前
分布式事务管理
java·开发语言·分布式
未来之窗软件服务5 小时前
JAVASCRIPT 离线解析IP地址 幽冥大陆(七十) —东方仙盟练气期
开发语言·javascript·tcp/ip·仙盟创梦ide·东方仙盟
爱学大树锯5 小时前
【594 · 字符串查找 II】
java·开发语言·算法
zhixingheyi_tian5 小时前
Yarn 之 run job
java·开发语言·前端
2501_916766545 小时前
【Java】代理模式---静态代理与动态代理
java·开发语言·代理模式
写代码的【黑咖啡】5 小时前
Python常用数据处理库全解析
开发语言·python
缺点内向5 小时前
Java:轻松实现 Excel 文档属性添加
java·开发语言·excel
刺客xs6 小时前
c++多线程 线程池的实现
开发语言·c++
HappyBoy_20196 小时前
MybatisPlus IPage分页查询工具类
java·开发语言