MeVisLab Toolbox Reference
mlPCLMovingLeastSquares.h
Go to the documentation of this file.
1// Copyright (c) Fraunhofer MEVIS, Germany. All rights reserved.
2// **InsertLicense** code author="Wolf Spindler"
3//----------------------------------------------------------------------------------
6
14//----------------------------------------------------------------------------------
15#pragma once
16
17#include "MLPCLSurfaceSystem.h"
18#include <mlPCLModule.h>
19
21
22//----------------------------------------------------------------------------------
25//----------------------------------------------------------------------------------
27{
28public:
31
32protected:
34 void activateAttachments() override;
35
37 void handleNotification (Field* field) override;
38
39private:
41 void _filter();
42
44 template <typename POINT_CLOUD_TYPE> void _filterT(const POINT_CLOUD_TYPE &inputPointCloud);
45
47 BoolField *_computeNormalsFld;
48
50 IntField *_polynomialOrderFld;
51
53 BoolField *_polynomialFitFld;
54
56 DoubleField *_searchRadiusFld;
57
59 DoubleField *_sqrGaussParamFld;
60
62 EnumField *_upsamplingMethodFld;
63
65 DoubleField *_upsamplingRadiusFld;
66
68 DoubleField *_upsamplingStepSizeFld;
69
71 IntField *_maxNumUpsamplingStepsFld;
72
74 IntField *_pointDensityFld;
75
77 FloatField *_dilationVoxelSizeFld;
78
80 IntField *_dilationIterationsFld;
81
84 BoolField *_skipNanPointsFld;
85
88
91};
92
94
Project global and OS specific declarations.
#define MLPCL_Surface_EXPORT
If included by external modules, exported symbols are declared as import symbols.
Field to encapsulate a boolean value.
Definition mlFields.h:58
Field to encapsulate a double value.
Definition mlFields.h:538
Field to encapsulate an enumerated value.
Definition mlFields.h:195
Base class for all fields used in the ML.
Definition mlField.h:73
Field to encapsulate a float value.
Definition mlFields.h:415
Field to encapsulate an integer value.
Definition mlFields.h:126
ML Module base class for algorithms from the Point Cloud Library (PCL).
Definition mlPCLModule.h:26
ML Module class processing a point cloud with the MLS (Moving Least Squares) algorithm pcl::MovingLea...
void handleNotification(Field *field) override
Handles field changes of the field field.
void activateAttachments() override
Updates internal state after changes of fields without field notifications.
PCLMovingLeastSquares()
Initializes an ML module wrapping a pcl::MovingLeastSquares filter.
#define ML_MODULE_CLASS_HEADER(className)
Like ML_CLASS_HEADER for the usage of derived classes from Module.
ML Module base class for algorithms from the Point Cloud Library (PCL).
#define ML_PCL_TEST_INTERFACE(BASE_OBJECT_NAME)
Implements a dedicated interface for PCL related modules which is required in automatic tests.
Target mlrange_cast(Source arg)
Generic version of checked ML casts.