MeVisLab Toolbox Reference
mlPCLInventorTools.h File Reference

Converter tools between the libraries Open Inventor and PCL. More...

#include "MLPCLInventorAdaptersSystem.h"
#include <mlPCLTypes.h>
#include <mlPCLSupportTools.h>
#include <mlErrorMacros.h>
#include <mlRangeCasts.h>
#include <PCLThirdPartyWarningsDisable.h>
#include <Inventor/nodes/SoVertexProperty.h>
#include <PCLThirdPartyWarningsRestore.h>

Go to the source code of this file.

Namespaces

namespace  ml
 Defines the class GetTileJob.
namespace  ml::PCLInventorTools
 Namespace with a collection of converter tools between the libraries Open Inventor and PCL.

Macros

#define SpecializedPCLPointXYZ   pcl::PointXYZ

Enumerations

enum  ml::PCLInventorTools::PCLMFVecStorageTypes {
  ml::PCLInventorTools::StoreIntensitReplacementAsRGB = 0 , ml::PCLInventorTools::StoreIntensitReplacementAsRGBA , ml::PCLInventorTools::UseOnlyRGBA , ml::PCLInventorTools::CopyFromData ,
  ml::PCLInventorTools::CopyFromData_n , ml::PCLInventorTools::CopyDataAndData_n
}

Functions

void ml::PCLInventorTools::setOneMFVecFieldValue (SbVec2f *dstVal, const float data[4])
void ml::PCLInventorTools::setOneMFVecFieldValue (SbVec2f *dstVal, const unsigned int *)
void ml::PCLInventorTools::setOneMFVecFieldValue (SbVec2f *dstVal, float data)
void ml::PCLInventorTools::setOneMFVecFieldValue (SbVec3f *dstVal, const float data[4])
void ml::PCLInventorTools::setOneMFVecFieldValue (SbVec3f *dstVal, const unsigned int *)
void ml::PCLInventorTools::setOneMFVecFieldValue (SbVec3f *dstVal, float data)
void ml::PCLInventorTools::setOneMFVecFieldValue (MLuint32 *dstVal, const float data)
void ml::PCLInventorTools::setOneMFVecFieldValue (MLuint32 *dstVal, const float data[4])
void ml::PCLInventorTools::setOneMFVecFieldValue (MLuint32 *dstVal, const unsigned int *rgbaVal)
 Writes swapped *rgbaVal into *dstVal.
template<typename DST_VAL_TYPE>
void ml::PCLInventorTools::setOneMFVecFieldValueFromPoint (DST_VAL_TYPE *dstVal, const SpecializedPCLPointXYZ &pnt, bool useData_n)
template<typename POINT_TYPE, typename DST_VAL_TYPE>
void ml::PCLInventorTools::setOneMFVecFieldValueFromPoint (DST_VAL_TYPE *dstVal, const POINT_TYPE &pnt, bool useData_n)
 Generic function to copy pnt.data[0-2] or pnt.data_n[0-2] (dependent on useData_n) to dstVal.
template<typename DST_VAL_TYPE>
void ml::PCLInventorTools::setTwoMFVecFieldValuesFromPoint (DST_VAL_TYPE *dstVal, const SpecializedPCLPointXYZ &pnt)
 Explicit case for pclPointXYZ which copies pnt.data[0-2] to dstVal and dstVal+1.
template<typename POINT_TYPE, typename DST_VAL_TYPE>
void ml::PCLInventorTools::setTwoMFVecFieldValuesFromPoint (DST_VAL_TYPE *dstVal, const POINT_TYPE &pnt)
 Generic function to copy data[0-2] to dstVal and data[0-2}+data_n[0-2] to dstVal+1.
MLPCL_InventorAdapters_EXPORT void ml::PCLInventorTools::getRainbowRGB_From0_to_1 (float intensity, float retRGB[3])
template<typename POINT_CLOUD_TYPE, typename SM_MF_VEC_FIELD_TYPE>
size_t ml::PCLInventorTools::setMFVecFromPointCloud (const POINT_CLOUD_TYPE &pointCloud, SM_MF_VEC_FIELD_TYPE &mfvecField, PCLMFVecStorageTypes storageType, bool duplicateColors=false, bool mapToRainbow=false, bool useCurvatureForColor=false, bool scaleFromInputRange=false, float inRangeMin=0.f, float inRangeMax=1.f)
MLPCL_InventorAdapters_EXPORT void ml::PCLInventorTools::setVertices (const std::vector< pcl::Vertices > &verticesVector, SoMFInt32 &mfIntField, bool terminateWithMinusOne)

Detailed Description

Converter tools between the libraries Open Inventor and PCL.

Author
"Wolf Spindler"
Date
2015-12-18

Converter tools between the libraries Open Inventor and PCL.

Definition in file mlPCLInventorTools.h.

Macro Definition Documentation

◆ SpecializedPCLPointXYZ

#define SpecializedPCLPointXYZ   pcl::PointXYZ

Eigen makes strange stuff with some types on some windows platforms which makes some specializations fail on VC10-32. Therefore we need to make use of the changed types of Eigen, too, to make compile the specializations of pcl::PointXYZ of setOneMFVecFieldValueFromPoint and setTwoMFVecFieldValuesFromPoint.

Definition at line 156 of file mlPCLInventorTools.h.

Referenced by ml::PCLInventorTools::setOneMFVecFieldValueFromPoint(), and ml::PCLInventorTools::setTwoMFVecFieldValuesFromPoint().