1. #include "widget.h"
  2. #include "ui_widget.h"
  3.  
  4. #include <QPushButton>
  5. #include <QToolBar>
  6. Widget::Widget(QWidget *parent) :
  7. QWidget(parent),
  8. map(nullptr),
  9. pCMapXPoint(nullptr),pCMapXPoint1(nullptr),pCMapXPoint2(nullptr),
  10. pCMapFeaFactory(nullptr),
  11. pCMapXFeature(nullptr),
  12. pCMapStyle(nullptr),
  13. pCMapLayers(nullptr),
  14. pCMapLayer(nullptr),
  15.  
  16. pCMapLine(nullptr),
  17. pCMapPoints(nullptr),
  18. pCMapParts(nullptr),
  19.  
  20. pCMapArc(nullptr),
  21.  
  22. pCMapXFeatureRegoin(nullptr),
  23. //坐标的变化
  24. pCMapXCoordSys(nullptr),
  25. ui(new Ui::Widget)
  26. {
  27. ui->setupUi(this);
  28. this->resize(,);
  29.  
  30. QPushButton *pButton = new QPushButton("tool",this);
  31. pButton->resize(,);
  32.  
  33. //建立一个地图
  34. map = new MapSpace::Map("",this);
  35. //设置大小属性
  36. map->move(QPoint(,));
  37. map->resize(QSize(size().width()-,size().height()-));
  38.  
  39. map->SetCurrentTool(MapSpace::ToolConstants::miPanTool);//鼠标工具
  40. map->setProperty("MousewheelSupport",);//支持滚轮
  41. /* 显示一个小图标(旗子模样)*/
  42. pCMapLayers = map->Layers();
  43. pCMapLayers->AddGeoSetLayers("C:/mapx/MapX4/Maps/Captial.gst");
  44. pCMapLayer = pCMapLayers->CreateLayer("test");
  45.  
  46. pCMapFeaFactory = map->FeatureFactory();
  47.  
  48. //划一个区域。regoin
  49. pCMapXFeatureRegoin = pCMapFeaFactory->CreateRegion();//创建一个区域feature
  50. pCMapPoints = new MapSpace::CMapXPoints;
  51. pCMapPoints->setControl("MapX.Points.4");
  52. pCMapParts = pCMapXFeatureRegoin->Parts();
  53. pCMapXPoint = pCMapPoints->AddXY(120.07372, 29.35792);
  54. pCMapXPoint1 = pCMapPoints->AddXY(120.07270, 29.35780);
  55. pCMapXPoint2 = pCMapPoints->AddXY(120.07000, 29.35000);
  56.  
  57. pCMapStyle = pCMapXFeatureRegoin->Style();
  58. //pCMapStyle->setControl("Mapx.Style.4");
  59. //pCMapStyle->SetRegionBackColor(200);
  60. //pCMapStyle->SetLineColor(117);
  61. pCMapStyle->SetRegionBorderWidthUnit(MapSpace::StyleUnitConstants::miStyleUnitTenthsOfPoint);
  62. pCMapStyle->SetRegionBorderWidth();//边界线条宽度,与上方函数一起使用
  63. pCMapStyle->SetRegionBorderColor();//边界颜色
  64. pCMapStyle->SetRegionColor();//背景颜色
  65. // pCMapStyle->SetRegionStyle(MapSpace::miPenSolid);
  66. pCMapStyle->SetRegionPattern(MapSpace::miPatternCross);
  67. //pCMapStyle->SetRegionTransparent(true);//用于至少两个图元之间
  68.  
  69. pCMapParts->Add(pCMapPoints->asVariant().value<IDispatch*>());
  70. pCMapLayer->AddFeature(pCMapXFeatureRegoin->asVariant().value<IDispatch*>());
  71. map->ZoomTo(,120.06272, 29.35522);
  72. }
    在加上圆形的图元
  1. void MainWindow::CMapxInit(){
  2. widget = new QAxWidget(this);
  3. widget->setControl(QString::fromUtf8("{9D6ED188-5910-11D2-98A6-00A0C9742CCA}"));
  4. widget->resize(size().width(),size().height());
  5.  
  6. pCMapX = new CMapX(widget->asVariant().value<IDispatch*>());
  7. pCMapXLayer = pCMapX->Layers()->CreateLayer("aaa");
  8.  
  9. pCMapXFeatureFactory = pCMapX->FeatureFactory();
  10. pCMapXFeaturePoint = pCMapXFeatureFactory->CreateSymbol();
  11.  
  12. pCMapXPoint = pCMapXFeaturePoint->Point();
  13. pCMapXPoint->Set(120.06872,29.35692);
  14. //算出外接矩形的两个角坐标,一个在X轴上,一个在Y轴上
  15.  
  16. pCMapXFeatureCircularRegion = pCMapXFeatureFactory->CreateCircularRegion(miCircleTypeMap,pCMapXPoint->asVariant().value<IDispatch*>(),,,);
  17. pStyle = pCMapXFeatureCircularRegion->Style();
  18. pStyle->SetRegionColor(QColor(,,));
  19.  
  20. pCMapXLayer->AddFeature(pCMapXFeatureCircularRegion->asVariant().value<IDispatch*>());
  21.  
  22. pCMapX->ZoomTo(,120.06872,29.35692);
  23. }
  1.  
  1.  

qt环境下Mapx组建的编程---------regoin的更多相关文章

  1. Qt 环境下MAPX组件的编程

    使用mapx打包文件可以方便的迅速开发,今天介绍一种不使用打包文件,直接使用mapx组件的编程方法. 就像之前介绍flash控件编程的方法,首先建立一个qt demo.基于那个的窗口都可以. 本den ...

  2. qt 环境下mapx组件的鼠标跟踪

    经过两天的研究mapx组件人坐标转换还是没有转换成功,因为不管怎么变,定点转换的经纬度坐标始终与期望的值有较大的偏差.最后还是想老大请教了一下,划了半天功夫就研究出来了(不愧是老大,仰慕之情犹如滔滔江 ...

  3. qt 环境下mapx组件打包后编译产生c2248和c2512错误

    C:\Qt\Qt5.6.0\5.6\msvc2013\include\QtCore\qmetatype.h:760: error: C2248: “MapSpace::IRowCursor::IRow ...

  4. Qt 环境下的mapx控件-------2

    今天花了一天的时间去查找mapx相关的资料,但是到最后想要的东西还是一无所获,不过还是学到了很多东西.下面以大家分享一下: mapx软件的安装:下载后安装mapx软件,成功后会在安装路径下存在acti ...

  5. Qt 环境下的activex控件编程-------1

    本人第一次接触这种activeX控件的东西,参考了网上很多的教程,终于耗时三个多小时初步理解并编写了一个小demo,现在分享给大家,希望大家少走弯路.步骤如下: 1>像平常创建项目一样创建一个d ...

  6. QT环境下实现UI界面的“拼图游戏”

    main.cpp #include "mainwindow.h" #include <QApplication> int main(int argc, char *ar ...

  7. .NET环境下的DPAPI加密编程

    Windows的本地加密保护机制提供了简单的调用接口,密钥的生成.保护等事项一概由系统来处理,其编程接口称为DPAPI.这一加密保护机制的边界是用户登录帐户或者本地计算机系统,使用操作系统设定的加密处 ...

  8. QT 环境下开发socketCan接口程序

    使用头文件 #include <QMainWindow>#include "QTimer"#include "QTime"#include &quo ...

  9. qt 工具下的dump工具导出文档出现异常解决方案

    今天一直认为qt环境下的dumpcpp 和dumpdoc两个导出工具很好用,可以今天在导出MSChart组件的类方法文档时,虽然导出成功了,但是导出的结果却是令人失望.自己也不知道如何能够正确导出,就 ...

随机推荐

  1. Javascript.//DOM

    文档对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展标志语言的标准编程接口.Document Object Model的历史可以追溯至1990年代后期微 ...

  2. Ubuntu配置VNC server

    安装vncserver后,默认的配置下只有一个很"朴素"的图形界面(没有抓图,就一个黑白窗口),要支持Ubuntu的桌面,并且支持和windows之前复制粘贴文字,需要修改xsta ...

  3. 关于Cookie的 工具类

    import java.io.UnsupportedEncodingException; import java.net.URLDecoder; import java.net.URLEncoder; ...

  4. IPv6实验准备

    这篇是我的第一篇博客,我想先对H3C的<IPv6技术>的实验部分进行实验和总结,欢迎评论转载. 本实验用的网路设备模拟器是HCL_7.1.59,hcl的这款模拟器非常耗费内存,各种报错,因 ...

  5. maven项目导入tomcat7源码

    大家好,今天给大家分享对于tomcat源码在eclipse上的导入运行.此次为以tomcat7为例. 1去官网tomcat7的下载页面下载源码网址http://tomcat.apache.org/do ...

  6. Android EidtText 光标的使用和设置

    使光标移动到制定的位置: editText.setSelection(editText.length()); 输入的参数是个整数   在请求出现光标是,也就是在获取焦点时: editText.requ ...

  7. 表单和 HTML 辅助方法– ASP.NET MVC 4 系列

           这里有一个疑问,诸如在文本编辑器中输入 HTML 元素如此简单的任务,也需要任何帮助吗?的确,输入标签名称是很容易的事,但是确保 HTML 页面链接中的 URL 指向正确的位置.表单元素 ...

  8. powerdesinger

    www.sap.com solutions>data management>powerdesinger http://www.sap.com/product/data-mgmt/power ...

  9. apriori推荐算法

    大数据时代开始流行推荐算法,所以作者写了一篇教程来介绍apriori推荐算法. 推荐算法大致分为: 基于物品和用户本身 基于关联规则 基于模型的推荐 基于物品和用户本身 基于物品和用户本身的,这种推荐 ...

  10. 【java】jackson 中JsonFormat date类型字段的使用

    为了便于date类型字段的序列化和反序列化,需要在数据结构的date类型的字段上用JsonFormat注解进行注解具体格式如下 @JsonFormat(pattern = "yyyy-MM- ...