环境:
win10
Qt5.13.1
VS2019
CMake 3.15.2
CloudCompare 2.11
参考:https://github.com/CloudCompare/CloudCompare/blob/master/CONTRIBUTING.md
https://blog.****.net/huihut/article/details/71068232
官方指导上说的现在qDummyPlugin插件在最新版本已经不存在了,取而代之的是 ExamplePlugin插件: CloudCompare/plugins/example/ExamplePlugin
这个ExamplePlugin就是个插件的模板,用它来写自己的插件。
我们把这个模板插件文件夹拷贝一份,改为自己的插件名,如:MyPlygin
现在MyPlygin里面有如下几个文件:
需要对以上文件进行名字修改:
编辑CMakeLists.txt,将ExamplePlugin->MyPlugin,example->my,
编辑MyPlugin.qrc 、info.json,ExamplePlugin->MyPlugin。
编辑MyPlugin.h,ExamplePlugin->MyPlugin,EXAMPLE_PLUGIN_HEADER->MY_PLUGIN_HEADER
编辑MyPlugin.cpp,ExamplePlugin->MyPlugin, example plugin->my plugin。
put your code in the doAction method (between the two /*** HERE STARTS THE MAIN PLUGIN ACTION ***/delimiters). Whenever the user clicks on your plugin icon, CloudCompare will call this method.
D:\CloudCompare\CloudCompare-master\plugins\example下的CMakeLists.txt修改:加入
add_subdirectory( ${CMAKE_CURRENT_SOURCE_DIR}/MyPlugin )
从新打开CMake 进行configure,可以看到插件:
生成、运行时发现cc界面plugins按钮是灰色,解决办法:
...\build\qCC\Debug\下创建plugins文件夹;
...\build\plugins\example\TestPlugin\Debug下的TestPlugind.dll拷贝到新建的文件夹,再次运行,plugins按钮不再是灰色,并且下拉表有一个“Example(standard plugin)"
发现下拉表“Example(standard plugin)"按钮是灰色,这是因为程序中
m_action变量设置问题,需要选中点云才能响应,可以将m_action->setEnabled( !selectedEntities.empty() );改为m_action->setEnabled(true);: