编写QGIS C++插件

1.什么是QGIS C++ 的插件

    QGISC++插件是一系列动态链接库(DLL),它们能在QGIS运行时自动加载(一般QGIS在启动时将plugins目录中查找到的所有动态库,将其全部加载,当QGIS关闭时卸载所有插件),我们还可以通过插件管理器管理插件,控制那些插件加载那些不加载。

对于每个插件我们需要实现以下通用函数。

动态库的加载函数:

QGISEXTERN QgisPlugin * classFactory(QgisInterface * theQgisInterfacePointer ) 实例化当前的插件

QGISEXTERN QString name() 插件名称

QGISEXTERN QString description() 插件描述信息

QGISEXTERN int type()

QGISEXTERN void unload( QgisPlugin * thePluginPointer )释放插件本身

插件类的方法:

initGui 创建插件的界面元素如:菜单和工具栏

unload()释放插件创建的类、界面元素


2.如何创建插件工程编写插件

进入QGIS的源代码目录,里面有一个plugin_builder.py,它就是QGIS提供的自动创建插件工程的PYTHON程序。类似MFC向导。



wKiom1UT9WbggzKMAATOy_8HStQ291.jpg

打开控制台执行python plugin_builder.py

wKiom1UT9uOjqxlIAACvxN8ddCI549.jpg

根据向导的提示输入目录、名称、描述等信息,生成插件的CMAKE工程

利用CMAKE生成VC的工程(详细见以前博客,CMAKE2.8编译)

wKioL1UT-G3xNo6pAAUzI7mjlMw465.jpg

最后,CMAKE为我们非常方便的生成了一个插件的VC工程,我们在这里就可以添加我们相应的业务代码

wKiom1UT93qxlh1aAAehFwBa3WU088.jpg

本文出自 “开源GIS平台” 博客,请务必保留此出处http://osgis.blog.51cto.com/10026717/1625183

转载于:https://my.oschina.net/GISMAN/blog/779041

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值