Qgis开发5-完整的Qgis系统库——qis_app库
Qgis开发5-完整的Qgis系统库
——qis_app库
sf2gis@163.com
2014年8月15日
1 概述
qgis_app是一个完整的gis系统,可以将所有的部件作为二次开发的部分使用,甚至可以直接使用整个系统作为一个部件。
2 原理
由于qgisApp中使用python作为插件交互的平台,所以一定要指定python的工作目录PYTHONHOME=….(放在debug的enviroment或者系统环境变量中)。
由于qgisApp需要使用很多插件,所有需要设置一个配置文件(qgsconfig.h,由cmake指定)和插件的位置(把install中的所有文件放在exe同级目录下)。
3 使用方法
3.1 准备
设置环境变量:项目属性-》debugging-》enviroment:设置PYTHONHOME。
"F:\DevelopWare\OGC\QGIS\qgis-latest\sourcecode\src\app";
"F:\DevelopWare\OGC\QGIS\qgis-latest\vc2008_bak\build2008\src\ui";
"F:\DevelopWare\OGC\QGIS\qgis-latest\sourcecode\src\app\pluginmanager";
"F:\DevelopWare\OGC\QGIS\qgis-latest\sourcecode\src\python"
把Install(C:\programfiles(x86)\qgis2.4.0)下所有文件copy到exe目录下,因为qgisapp会在同级目录下寻找插件(也可以在qgsconfig.h中手动指定)。
3.2 逻辑(vs)
1) 使用QgsApplication代替QApplication
完整代码参见:qgis开发-代码-demo\qgisapp_demo
int main(int argc, char *argv[])
QgsApplicationa(argc, argv,true,QString());
QPixmap pixmap("D:/test/splash.png");
QSplashScreen*pSplash = new QSplashScreen(pixmap);
QgisApp *pQgis = new QgisApp(pSplash,true,0,Qt::Window);
3.3 逻辑(qt)
qt与vs基本相同,但运行时出现R6034问题多次,这是由于VC9的版本不对。解决办法是将qgis install(C:/programfiles(x86)下的msvcrt9相同的全部删除。
参考:http://python.blog.163.com/blog/static/1830104532012813105112694/
Qgis开发5-完整的Qgis系统库——qis_app库相关推荐
- QGIS开发(一)——环境配置
简介 QGIS是一个免费的.开源的.跨平台(LIN/WIN/Mac)的地理信息系统(GIS),有简单.体积小.硬件要求低等特性,适合用于GIS的开发.作为开源项目,我们可以在GitHub上很轻松的找到 ...
- VS2019+QGIS开发库二次开发环境搭建
VS2019+QGIS开发库二次开发环境搭建 总共分为以下步骤: 下载qgis和二次开发库 VS2019搭建开发环境 配置VS2019中的Qt插件 配置完Qt版本后对工程属性进行配置 编写测试代码 运 ...
- 【如何快速的开发一个完整的iOS直播app】(美颜篇)
前言 在看这篇之前,如果您还不了解直播原理,请查看这篇文章如何快速的开发一个完整的iOS直播app(原理篇) 开发一款直播app,美颜功能是很重要的,如果没有美颜功能,可能分分钟钟掉粉千万,本篇主要讲 ...
- 【如何快速的开发一个完整的iOS直播app】(采集篇)
前言 在看这篇之前,如果您还不了解直播原理,请查看这篇文章如何快速的开发一个完整的iOS直播app(原理篇) 开发一款直播app,首先需要采集主播的视频和音频,然后传入流媒体服务器,本篇主要讲解如何采 ...
- 微信小程序开发的完整流程介绍,新手必读
自从跳一跳小程序游戏出现后,一夜之间,小程序就变得家喻户晓了,功能开发也越来越丰富,在微信搜一搜就会发现许多大品牌早已有自己的小程序了,越来越多的企业和商家都看中了这个风口,想快速开发出一款属于自己的 ...
- 聚播群控微信二次开发sdk完整API
聚播群控微信二次开发sdk完整API功能: 微信加好友功能API 1.导入手机通讯录 2.手机通讯录加好友 3.加指定微信群好友 4.自动通过微信好友请求 5.手机模拟定位 6.附近人加好友 7.各种 ...
- 如何快速的开发一个完整的iOS直播app(美颜篇)
1.前言 在看这篇之前,如果您还不了解直播原理,请查看这篇文章如何快速的开发一个完整的iOS直播app(原理篇) 开发一款直播app,美颜功能是很重要的,如果没有美颜功能,可能分分钟钟掉粉千万,本篇主 ...
- 如何开发一个完整的Helm charts应用实例
文章目录 1. 简介 2. 条件 3. 应用 4. 基础模板 5. 命名模板 6. 版本兼容 7. 持久化 8. 定制 9. 共享 Charts 1. 简介 Helm 图表是在 Kubernetes ...
- 开发一个完整的iOS直播app必须技能
今年,直播行业火了,当然也诞生了一大批网红,甚至明星也开始直播了,因此现在都要搞直播了!由于第一次接触,花了很多时间了解直播,目前整理了直播的原理(因为项目汇报的需要就整理了一下),现在只是展示一下从 ...
最新文章
- Django项目test中的mock概述
- X-Forwarded-For 会少记录一次代理服务器的IP
- UiBot Creator v1.2火热体验中……
- mysql 日期列表_MySQL 生成日期表
- 黄聪:PHP获取MAC地址(转)
- linux命令行下全路径显示,显示命令及文件路径用什么命令?Linux命令知识有什么...
- 【无一时】的意思和解释
- PAT 乙级 1036. 跟奥巴马一起编程(15) Java版
- Linux进阶之bond链路聚合
- abp 应用层异常处理(自动控制器中)
- micro macro 区别和详解
- 王燕《应用时间序列分析》学习笔记1
- COMSOL流体操作
- 《西窗法雨》一天读完,怕不怕
- Python与爬虫有什么关系?
- php乘法表颜色渐变图片,用标准标签库写的九九乘法表(带渐变颜色)
- 网络信息安全之零信任
- 农村小学计算机教育论文,浅谈小学信息技术教学
- Spring中的事务控制(Transacion Management with Spring)
- JS怎么处理有些网页禁止选中复制方法过程详解