MeVisLab Toolbox Reference
mlPCLMarchingCubesRBF.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 
20 ML_START_NAMESPACE
21 
22 //----------------------------------------------------------------------------------
25 //----------------------------------------------------------------------------------
27 {
28 public:
31 
32 protected:
34  void activateAttachments() override;
35 
37  void handleNotification (Field* field) override;
38 
39 private:
41  void _filter();
42 
44  template <typename POINT_CLOUD_TYPE> void _filterT(const POINT_CLOUD_TYPE &inputPointCloud);
45 
47  void _filterT(const MLPointCloudXYZ &inputPointCloud);
48 
50  FloatField *_offSurfaceDisplacementFld;
51 
53  FloatField *_isoLevelFld;
54 
56  IntField *_gridResolutionXFld;
57 
59  IntField *_gridResolutionYFld;
60 
62  IntField *_gridResolutionZFld;
63 
66  FloatField *_percentageExtendGridFld;
67 
69  IntField *_maxNumAllowedVoxelsFld;
70 
73 
76 };
77 
78 ML_END_NAMESPACE
79 
Project global and OS specific declarations.
#define MLPCL_Surface_EXPORT
If included by external modules, exported symbols are declared as import symbols.
Base class for all fields used in the ML.
Definition: mlField.h:73
Field to encapsulate a float value.
Definition: mlFields.h:627
Field to encapsulate an integer value.
Definition: mlFields.h:161
ML Module class processing an input point cloud and creating a pcl::Surface and a pcl::PointCloud fro...
PCLMarchingCubesRBF()
Initializes an ML module wrapping a pcl::MarchingCubesRBF filter.
void activateAttachments() override
Updates internal state after changes of fields without field notifications.
void handleNotification(Field *field) override
Handles field changes of the field field.
ML Module base class for algorithms from the Point Cloud Library (PCL).
Definition: mlPCLModule.h:26
#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.
pcl::PointCloud< pcl::PointXYZ > MLPointCloudXYZ
The basic point cloud type used in the PCL MeVisLab binding.
Definition: mlPCLTypes.h:83