1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
|
//#######################################################################################
//# #
//# CLOUDCOMPARE PLUGIN: qCSF #
//# #
//# This program is free software; you can redistribute it and/or modify #
//# it under the terms of the GNU General Public License as published by #
//# the Free Software Foundation; version 2 or later of the License. #
//# #
//# This program is distributed in the hope that it will be useful, #
//# but WITHOUT ANY WARRANTY; without even the implied warranty of #
//# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
//# GNU General Public License for more details. #
//# #
//# Please cite the following paper, If you use this plugin in your work. #
//# #
//# Zhang W, Qi J, Wan P, Wang H, Xie D, Wang X, Yan G. An Easy-to-Use Airborne LiDAR #
//# Data Filtering Method Based on Cloth Simulation. Remote Sensing. 2016; 8(6):501. #
//# #
//# Copyright © #
//# RAMM laboratory, School of Geography, Beijing Normal University #
//# (http://ramm.bnu.edu.cn/) #
//# #
//# Wuming Zhang; Jianbo Qi; Peng Wan; Hongtao Wang #
//# #
//# contact us: 2009zwm@gmail.com; wpqjbzwm@126.com #
//# #
//#######################################################################################
// A mex version for programming in Matlab is at File Exchange of Mathworks website:
// http://www.mathworks.com/matlabcentral/fileexchange/58139-csf--ground-filtering-of-point-cloud-based-on-cloth-simulation
#ifndef Q_CSF_PLUGIN_HEADER
#define Q_CSF_PLUGIN_HEADER
#include "ccStdPluginInterface.h"
//! A point-clouds filtering algorithm utilize cloth simulation process.
class qCSF : public QObject, public ccStdPluginInterface
{
Q_OBJECT
Q_INTERFACES(ccStdPluginInterface)
Q_PLUGIN_METADATA(IID "cccorp.cloudcompare.plugin.qCSF" FILE "info.json")
public:
//! Default constructor
explicit qCSF(QObject* parent = nullptr);
virtual ~qCSF() = default;
//inherited from ccStdPluginInterface
virtual void onNewSelection(const ccHObject::Container& selectedEntities) override;
virtual QList<QAction *> getActions() override;
protected slots:
//! Slot called when associated ation is triggered
void doAction();
protected:
//! Associated action
QAction* m_action;
};
#endif
|