#ifndef LAYEROPERATOR_H #define LAYEROPERATOR_H #include "Map/UGMap.h" #include "Scene/UGLayer3D.h" #include #include "routeglobalvariant.h" #include "qmapcontrol.h" #include "scenecontrol.h" using namespace UGC; class LayerOperator { public: LayerOperator(); // 获取Layer中选中几何对象标记信息 QMap getSelectedFeature(UGMap* pMap); //设置图层风格 void setVectorLayerStyle(UGLayer* layer,UGDataset::DatasetType m_nType); //显示几何对象 void addGeometryInTrackingLayer(UGTrackingLayer* pTrackingLayer,UGRecordsetPtr res,UGStyle &sty); void addGeometryInDynamicLayer(UGDynamicLayer* pDyLayer,UGRecordsetPtr res,UGStyle &sty); void getDynamicLayer(UGMap* pMap,UGDynamicLayer* &pDyLayer,UGString dyLayerName); UGLayer* appendDatasetToMap(UGDatasetPtr pDataset,UGMap* m_pMap); //将dataset展示到地图中 //添加航点标记 void addNodeLabel(UGGeoLine* pGeoline,UGDynamicLayer* pLabelDyLayer,QString routeType,QString routeNum); //导入kml文件时临时显示航线 void showKMLTemporary(QMapControl* qMapControl,UGRecordsetPtr kmlRes); public: //用于三维场景的函数 //导入kml3D文件时临时显示航线 void showKML3DTemporary(SceneControl* pSceneControl,UGRecordsetPtr kml3DRes); //添加几何对象到三维追踪层 void addGeometryToTrackingLayer3D(SceneControl* pSceneControl,UGRecordsetPtr kml3DRes); // 获取Layer3D中选中几何对象标记信息 QMap getSelectedFeature3D(SceneControl* pSceneControl); private: RouteGlobalVariant routeGVar; }; #endif // LAYEROPERATOR_H