首页 > 编程语言 > 详细

PIE-SDK For C++打开Micaps数据

时间:2020-02-26 17:13:40      阅读:50      评论:0      收藏:0      [点我收藏+]

1、功能简介

         Micaps数据是气象信息处理和天气预报制作中的一种气象数据格式。其包含多种气象信息产品(地面常规气象观测数据产品、高空常规气象观测数据产品等),目前Micaps数据被Micaps软件很好的支持,其他软件对Micaps数据的支持也都参考该软件。

技术分享图片

         PIE支持Micaps 12347类数据的加载和显示控制。

2、功能实现说明

2.1 Micaps数据介绍

         Micaps采用文本文件的方式存储数据,包含多种类型的气象特征的数据,每种数据的存储结构不同,可参考相关的说明。因为Micaps数据是特定的气象数据,所以每一种气象元素都有自己独特的显示方式和符号,PIE中对Micaps中部分数据进行了高度化的支持,用户直接加载数据就能按照标准的方式显示数据。

下面以Micaps1类数据为例,来演示Micaps数据的加载显示。

2.2 实现思路及原理说明

第一步

通过文件路径打开矢量数据集

第二步

通过矢量数据集创建矢量图层

2.3 核心接口与方法

接口/

方法

说明

SysDataSource::DatasetFactory

OpenFeatureDataset

打开矢量数据集

SysCarto::LayerFactory

CreateDefaultFeatureLayer

创建矢量图层

2.4 示例代码

项目路径

百度云盘地址下/PIE示例程序/03.数据加载/07.打开Micaps数据

数据路径

百度云盘地址下/PIE示例数据/矢量数据/Micaps/

视频路径

百度云盘地址下/PIE视频教程/03.数据加载/07.打开Micaps.avi

示例代码

示例代码在AddDataCommand

方法(一)

    //直接创建图层,打开Micaps数据

    QString filter = "Micaps数据 (*.000)";

    QString filePath = QFileDialog::getOpenFileName(nullptr, "添加数据", "", filter);

    if (filePath.isEmpty()) return;

 

    SysCarto::LayerPtr layerPtr = SysCarto::LayerFactory::CreateDefaultLayer(filePath);

    m_ptrHookHelper->GetFocusMap()->AddLayer(layerPtr);

    m_ptrHookHelper->GetActiveView()->Refresh();

 

方法(二)

    //通过FeatureDataset创建Layer,打开Micaps数据

    QString filter = "Micaps数据 (*.000)";

    QString filePath = QFileDialog::getOpenFileName(nullptr, "添加数据", "", filter);

    if (filePath.isEmpty()) return;

 

    SysDataSource::FeatureDatasetPtr micapsDataSetPtr = SysDataSource::DatasetFactory::Instance()->OpenFeatureDataset(filePath);

    if (micapsDataSetPtr == nullptr) return;

    SysCarto::LayerPtr micapsLayer = SysCarto::LayerFactory::Instance()->CreateDefaultFeatureLayer(micapsDataSetPtr);

    if (micapsLayer!=nullptr) return;

      

    m_ptrHookHelper->GetFocusMap()->AddLayer(micapsLayer);

    m_ptrHookHelper->GetActiveView()->Refresh();

2.5 示例截图

技术分享图片

PIE-SDK For C++打开Micaps数据

原文:https://www.cnblogs.com/PIESat/p/12367747.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!