• Qt编程之mapx组件编程


    今天利用组件打包程序写了一些小例子,给大家贴出来,顺便提高一下记忆。

    上一篇介绍了直接使用控件和使用控件打包程序对控件进行编程的方法。个人感觉后者编程更方便。不说废话了:

    头文件中所需要的类型指针对象,顾名思义可以看到指针对象所述的类

    MapSpace::Map *map;

    MapSpace::CMapXPoint *pCMapXPoint,*pCMapXPoint1;MapSpace::CMapXFeatureFactory *pCMapFeaFactory;MapSpace::CMapXFeature *pCMapXFeature;MapSpace::CMapXStyle *pCMapStyle;MapSpace::CMapXLayers *pCMapLayers;MapSpace::CMapXLayer *pCMapLayer;QFont Font;MapSpace::CMapXFeature *pCMapLine;MapSpace::CMapXPoints *pCMapPoints;MapSpace::CMapXParts *pCMapParts;MapSpace::CMapXFeature *pCMapArc;下面是.cpp文件中的功能实现:map = new MapSpace::Map("",this);//建立一个地图对象map->move(QPoint(10,10));//设置地图左上角的坐标map->resize(QSize(size().width()-20,size().height()-20));//设置地图的宽度和高度map->SetCurrentTool(MapSpace::ToolConstants::miPanTool);//设置鼠标手型map->setProperty("MousewheelSupport",2);//设置鼠标支持滚轮缩放pCMapLayers = map->Layers();//建立一张图层这里说一下:pCMapLayer = pCMapLayers->CreateLayer("test");每个地图都具有一个图层的集合。Layer 集合由 Layer 对象构成。Layer 集合具有用于从集合添加或移除
    Layer 对象的方法和属性。
    计算机地图被组织成多个图层。将图层视作在顶部彼此堆叠的透明层。每个图层包含整个地图的不同方
    面。每一地图图层都包含不同的地图对象,例如区域、点、线条和文本。

    pCMapFeaFactory = map->FeatureFactory();

    此对象允许您创建新的地图图元,或通过对现有图元执行操作(例如缓冲)来创建图元以上这些都是最基本的需要,下面就是根据功能的不同看具体编码了pCMapXFeature = pCMapFeaFactory->CreateSymbol();//创建一个符号pCMapXPoint = pCMapXFeature->Point();//创建一个点pCMapXPoint->Set(120.06272,29.35522);//设置点的坐标pCMapStyle = pCMapXFeature->Style();//创建一个样式pCMapStyle->SetSymbolCharacter(35);//设置样式的粗细pCMapStyle->SetSymbolFontColor(QColor(100,200,190));//设置样式的颜色Font = pCMapStyle->SymbolFont();//建立一个样式字体Font.setBold(true);//将样式字体加粗pCMapLayer->AddFeature(pCMapXFeature->asVariant().value<IDispatch*>());//将符号中所有元素加入到图层中map->ZoomTo(3,120.06272, 29.35522);//将地图中心调整到视图内

     
     

    以上这些代码是可以运行的,运行效果是一个带有颜色的圆点。注意IDispath*类型的转换。

    作者:first_semon
             
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。如有问题,欢迎交流
  • 相关阅读:
    封装格式---FLV---文件格式解析
    高并发服务器---基础----IO模式和IO多路复用
    nginx---如何实现轻量级和高并发
    nginx---基础介绍
    H.264---SPS和PPS
    机器学习---算法---朴素贝叶斯
    机器学习---算法---Adaboost
    流媒体传输协议---STUN---基础
    H.264---指数哥伦布编码
    【linux】vim编辑器快捷键使用方法
  • 原文地址:https://www.cnblogs.com/first-semon/p/5885770.html
Copyright © 2020-2023  润新知