首页 > 代码库 > qt环境下Mapx组建的编程---------regoin
qt环境下Mapx组建的编程---------regoin
#include "widget.h"#include "ui_widget.h"#include <QPushButton>#include <QToolBar>Widget::Widget(QWidget *parent) : QWidget(parent), map(nullptr), pCMapXPoint(nullptr),pCMapXPoint1(nullptr),pCMapXPoint2(nullptr), pCMapFeaFactory(nullptr), pCMapXFeature(nullptr), pCMapStyle(nullptr), pCMapLayers(nullptr), pCMapLayer(nullptr), pCMapLine(nullptr), pCMapPoints(nullptr), pCMapParts(nullptr), pCMapArc(nullptr), pCMapXFeatureRegoin(nullptr), //坐标的变化 pCMapXCoordSys(nullptr), ui(new Ui::Widget){ ui->setupUi(this); this->resize(1000,800); QPushButton *pButton = new QPushButton("tool",this); pButton->resize(70,23); //建立一个地图 map = new MapSpace::Map("",this); //设置大小属性 map->move(QPoint(10,25)); map->resize(QSize(size().width()-20,size().height()-20)); map->SetCurrentTool(MapSpace::ToolConstants::miPanTool);//鼠标工具 map->setProperty("MousewheelSupport",2);//支持滚轮 /* 显示一个小图标(旗子模样)*/ pCMapLayers = map->Layers(); pCMapLayers->AddGeoSetLayers("C:/mapx/MapX4/Maps/Captial.gst"); pCMapLayer = pCMapLayers->CreateLayer("test"); pCMapFeaFactory = map->FeatureFactory(); //划一个区域。regoin pCMapXFeatureRegoin = pCMapFeaFactory->CreateRegion();//创建一个区域feature pCMapPoints = new MapSpace::CMapXPoints; pCMapPoints->setControl("MapX.Points.4"); pCMapParts = pCMapXFeatureRegoin->Parts(); pCMapXPoint = pCMapPoints->AddXY(120.07372, 29.35792); pCMapXPoint1 = pCMapPoints->AddXY(120.07270, 29.35780); pCMapXPoint2 = pCMapPoints->AddXY(120.07000, 29.35000); pCMapStyle = pCMapXFeatureRegoin->Style(); //pCMapStyle->setControl("Mapx.Style.4"); //pCMapStyle->SetRegionBackColor(200); //pCMapStyle->SetLineColor(117); pCMapStyle->SetRegionBorderWidthUnit(MapSpace::StyleUnitConstants::miStyleUnitTenthsOfPoint); pCMapStyle->SetRegionBorderWidth(35);//边界线条宽度,与上方函数一起使用 pCMapStyle->SetRegionBorderColor(243);//边界颜色 pCMapStyle->SetRegionColor(123);//背景颜色 // pCMapStyle->SetRegionStyle(MapSpace::miPenSolid); pCMapStyle->SetRegionPattern(MapSpace::miPatternCross); //pCMapStyle->SetRegionTransparent(true);//用于至少两个图元之间 pCMapParts->Add(pCMapPoints->asVariant().value<IDispatch*>()); pCMapLayer->AddFeature(pCMapXFeatureRegoin->asVariant().value<IDispatch*>()); map->ZoomTo(200,120.06272, 29.35522);}
qt环境下Mapx组建的编程---------regoin
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。