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.海图/天地图街道/天地图卫星

海图如下所示:

天地图街道:

天地图卫星:

相关推荐
bksczm36 分钟前
InnoDB 行格式详解:DYNAMIC / COMPACT / COMPRESSED / REDUNDANT
java·开发语言·数据库
春涧草茶1 小时前
慢就是快16-1协程
开发语言·前端·python
Dovis(誓平步青云)1 小时前
启元 T1 Pro 人机相声搭档:语音-触摸双通道的启元机器人节奏引擎设计
开发语言·前端·javascript·microsoft·交互
做科研的周师兄1 小时前
【R语言实战】MixSIAR 氢氧同位素水源解析全流程:从混合空间校验到贝叶斯 MCMC 收敛诊断(后附完整代码)
java·大数据·开发语言
.痞老板.3 小时前
java ee--计算机是如何工作的
java·开发语言·java-ee
奇树谦3 小时前
Qt Quick 图片加载与 GPU 纹理机制详解:QImage、QQuickTextureFactory、QSGTexture 与异步加载
开发语言·qt·系统架构
青梅味猪大肠3 小时前
【操作系统-60】临近适应算法
java·linux·开发语言·嵌入式硬件·算法·操作系统
starzy19904 小时前
深入理解Scala可变Map:动态构建场景下的性能与设计权衡
开发语言·scala
zhanghaha13145 小时前
C# 系列教程_7 判断语句(分支)保姆级精讲
开发语言·c#
apcipot_rain5 小时前
C++转Java日记(02)
java·开发语言·c++