经过两天的研究mapx组件人坐标转换还是没有转换成功,因为不管怎么变,定点转换的经纬度坐标始终与期望的值有较大的偏差。最后还是想老大请教了一下,划了半天功夫就研究出来了(不愧是老大,仰慕之情犹如滔滔江水……):老大说,组件导出的包文件中坐标转换函数在qt环境下有问题,你使用vc下面的dll就可以了,还给了一个链接让参考,再次感谢这位博主。http://blog.csdn.net/zirandeai/article/details/51160111

下面给出vc做的动态库,,可以直接下载。https://pan.baidu.com/s/1kVNN0OJ

下载后将文件放在项目路径下,然后将.pro文件加入.lib的文件路径,具体如下:LIBS += ../Eagle/MapXLib1.lib

将.h文件加入到头文件中,最后显示的加载dll文件(本人是显示的加载动态库)。

在头文件中声明一个QLibrary变量,初始化的时候加载dll。这样就可以直接使用mapx坐标转换函数了。

{

    ui->setupUi(this);
    mapx = NULL;
    QAxWidget *widget = new QAxWidget(this);
    widget->setControl("{9D6ED188-5910-11D2-98A6-00A0C9742CCA}");
    widget->move(10,10);
    widget->resize(size().width()-10,size().height()-10);
    mapx = new CMapX(widget->asVariant().value<IDispatch*>());
    pLayer = mapx->Layers()->CreateLayer("test");
    mapx->ZoomTo(3,120.06872, 29.35692);
    QObject::connect(widget, SIGNAL(MouseMove(int, int, double, double)), this, SLOT(MapxMouseMove(int, int, double, double)));
}
MouseMove(int, int, double, double)是mapx的信号

void MainWindow::MapxMouseMove(int Button, int Shift, double X, double Y){

    if(lib.load()){
        double Lng = 0.0;
        double Lat = 0.0;
        CoordScreen2Map(mapx->asVariant().value<IDispatch*>(),X,Y,Lng,Lat);
        qDebug()<<"mapx"<<Lng<<"mapy"<<Lat;
        pFeatureFactory = mapx->FeatureFactory();
        pFeature = pFeatureFactory->CreateSymbol();
        pPoint = pFeature->Point();
        pPoint->Set(Lng,Lat);
        pLayer->AddFeature(pFeature->asVariant().value<IDispatch*>());
    }
    else {
        qDebug()<<"error";
    }
}

转载于:https://www.cnblogs.com/first-semon/p/5912342.html

qt 环境下mapx组件的鼠标跟踪相关推荐

  1. 【storybook】你需要一款能在独立环境下开发组件并生成可视化控件文档的框架吗?(一)

    storybook 介绍 入门 说说用法 prop-types .stories.jsx 下一篇: https://blog.csdn.net/tuzi007a/article/details/129 ...

  2. 【storybook】你需要一款能在独立环境下开发组件并生成可视化控件文档的框架吗?(三)

    storybook 插件addons 核心插件 插件API argTypes 写文档 组件注释法 MDX 生成在线可视化UI文档 上一篇: https://blog.csdn.net/tuzi007a ...

  3. 【storybook】你需要一款能在独立环境下开发组件并生成可视化控件文档的框架吗?(二)

    storybook 回顾 继续说说用法 配置文件介绍 回顾 上篇博客地址: https://blog.csdn.net/tuzi007a/article/details/129192502 说了部分用 ...

  4. ESP32-VSCODE环境下添加组件,并解决头文件无法找到问题

    1.创建一个新的工程模板 1.1 ESP32的VSCODE环境的搭建先不介绍,后续有空重新再加上了 1.2 打开vscode(我买的开发板不是官方的,型号是:) ① 打开vscode的搜索栏,Ctrl ...

  5. vuejs-- webpack环境下父子组件的使用

    父组件调用子组件 1 在父组件的子组件标签上写上ref属性 ref="child" 2 然后通过 ( this.$refs.child.xxxFn()  ) this.$refs. ...

  6. Qt环境下基于研控MCN420电子伺服压力机控制系统开发与应用

    [摘要]电子伺服压力机因其高精度.高响应的优势逐渐取代传统的液压.伺服液压等设备而被广泛应用于电机轴承.汽车零部件.3C等行业产品装配以及产品铆压成型.相对传统的PLC方案,研控MCN420运动控制器 ...

  7. QT获取本机的IP地址、mac地址、mask地址和广播IP(Ubuntu QT环境下实现)

    1.简介 用QT做网络通讯数据传输时,要先获取本机的网卡的IP地址.mac地址.mask地址和广播IP,以便创建socket进行通讯数据传输. 2.本博文主要封装函数: (1).getIP():获取本 ...

  8. (代码已更新)QT 环境下 用opencv 进行骨架细化(骨架提取)得到图像中心线

    之前的任务是把如下的一个直钢管图像进行处理,提取出中心线,用到了骨架细化算法以及一些常用的opencv处理.思路就是: 预处理通过灰度得到二值图像--二值图形态学处理--骨架细化提取中心线--霍夫概率 ...

  9. vs+qt环境下, 对stk进行二次开发笔记

    先安装好stk,这是废话..然后找到stk安装目录下的几个文件相当于.h的"AgStkUtil.tlh","AgVGT.tlh","AgStkObje ...

最新文章

  1. 有哪些堪称神器的实用网站?这8个可以解你燃眉之急!
  2. 深度神经网络中的归一化技术
  3. input type=file /,美化自定义上传按钮
  4. 经常误提交.DS_Store文件怎么办?Git全局排除配置了解一下!
  5. 《JAVA与模式》之责任链模式
  6. 蚂蚁算法求解tsp问题matlab,蚁群算法解决TSP问题的MATLAB程序
  7. python class类里给列表排序_python笔记:Class(类)
  8. 【渝粤题库】国家开放大学2021春3700汽车电工电子基础题目
  9. git 新建分支并切换到该分支_Git何谓分支
  10. test Math
  11. 基于qt开发的轻量级浏览器
  12. 灵悟礼品网上专卖店——前阶段总结
  13. 计算机推免经验分享——中科院信工所
  14. 统计|如何理解两个总体均值之差的区间估计的计算
  15. 【批量去除图片的背景】
  16. Spark RDD编程模型及算子介绍(二)
  17. 「IT基础」计算机网络概述
  18. 索尼Xperia XZ1 Compact刷机后的问题,电量一直锁定20%,手机卡无信号无服务,相机拍照成纯绿色图片
  19. 湖北计算机自考学校都有哪些,湖北省自考本科有哪些学校?
  20. oracle设计初级,oracle 开发设计一些规范经验

热门文章

  1. 在windows 10环境下安装 mujoco
  2. 给定两点确定一条直线
  3. 智能手表音频特性测试_中学生可以戴99.9元的小米有品-Haylou/嘿喽智能手表上学吗?...
  4. 超详细!apk安装包快速反编译,多种反编译及失败的解决方案(包含classes.dex的反编译,新增加快速反编译)
  5. 如何免费将多个PDF合并成一个PDF文件?
  6. c语言概率产生字母,智邮普创c语言面试题 ---- 字母概率(示例代码)
  7. 中国历史年代尺-夏商至民国
  8. 同济、阿里获CVPR最佳学生论文,李飞飞获黄煦涛奖,近6000人线下参会
  9. 《缠中说禅108课》21:缠中说禅买卖点分析的完备性
  10. Scapy_库_STP_Spoofing