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
|
//##########################################################################
//# #
//# CLOUDCOMPARE PLUGIN: ccCompass #
//# #
//# 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 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. #
//# #
//# COPYRIGHT: Sam Thiele 2017 #
//# #
//##########################################################################
#ifndef CC_LINEATIONTOOL_HEADER
#define CC_LINEATIONTOOL_HEADER
#include "ccTool.h"
#include "ccLineation.h"
//! Tool used to create/measure lineations
class ccLineationTool : public ccTool
{
public:
ccLineationTool();
//! Called when the tool is set to disactive (for cleanup)
void toolDisactivated() override;
//! Called when a point in a point cloud gets picked while this tool is active
void pointPicked(ccHObject* insertPoint, unsigned itemIdx, ccPointCloud* cloud, const CCVector3& P) override;
//! Called when "Return" or "Space" is pressed, or the "Accept Button" is clicked
void accept() override; //do nothing
//! Called when the "Escape" is pressed, or the "Cancel" button is clicked
void cancel() override; //do nothing
protected:
int m_lineation_id = -1; //ID of the lineation object being written to
};
#endif
|