54template <
typename PCL_POINT_TYPE>
70 thresholdMin(0.), thresholdMax(0.),
71 lowerValue(0.), upperValue(0.),
72 skipVoxelsBelowMin(
false),
73 skipVoxelsAboveMax(
false),
74 normalizeInClampedRange(
false),
75 useVectorLengthAsIntensity(
false),
76 transformToWorld(
false){};
122template <
typename POINT_CLOUD_TYPE>
124 const Matrix4 &voxelToWorldMatrix,
127 typedef typename POINT_CLOUD_TYPE::PointType
PointType;
130 const size_t numPoints =
pointCloud.points.size();
132 for (
size_t c=0; c < numPoints; ++c){
157template <
typename POINT_CLOUD_PTR_TYPE>
178 typedef typename POINT_CLOUD_PTR_TYPE::element_type::PointType
PointType;
179 typedef typename POINT_CLOUD_PTR_TYPE::element_type::VectorType
PointVectorType;
238 PCLSupportTools::setIntensityReplacement(
valToAppend,
static_cast<float>(
dblVal));
252 if (
newSize < PCLSupportTools::getUnsigned32BitMaximumLimit()){
258 ML_PRINT_ERROR(
"mlPCLMLTools.cpp: appendSubImageVoxelsToPointCloud",
260 "Could not add points to point cloud since this would exceed "
261 "the maximum number UINT32_MAX points in a point cloud.");
275template <
typename POINT_CLOUD_PTR_TYPE>
293 (
subImage.getNumVoxels() <=
static_cast<MLint>(PCLSupportTools::getUnsigned32BitMaximumLimit()))){
311template <
typename POINT_TYPE>
317 point.data[3] = 1.0f;
332 point.data[3] = 1.0f;
336 point.data_n[3] = 0.0f;
352 point.data[3] = 1.0f;
356 point.data_n[3] = 0.0f;
372 point.data[3] = 1.0f;
376 point.data_n[3] = 0.0f;
390template <
typename POINT_CLOUD_PTR_TYPE>
414 if (
static_cast<MLint>(
numVals) >
static_cast<MLint>(PCLSupportTools::getUnsigned32BitMaximumLimit())){
417 "Input point cloud has more than ML_UINT32_MAX entries; the "
418 "PointCloud.width parameter cannot be set to this value any more; "
419 "using ML_UINT32_MAX instead.");
460template <
typename POINT_TYPE>
526template <
typename POINT_CLOUD_TYPE>
Class representing general ML objects that support import/export via strings (setPersistentState() an...
This class encapsulates basic medical image properties:
void setVoxelToWorldMatrix(const Matrix4 &matrix)
Sets the matrix which transforms voxel to world coordinates to matrix.
Class which represents an image, which manages properties of an image and image data which is located...
Base object class PointList managing a list of points.
This class manages/represents a rectangular 6d image region which is organized linearly in memory.
Forward declarations to resolve header file dependencies.
void assign(const DT px, const DT py, const DT pz)
Sets all components to the passed values.
Base object representing a list of vectors given as Vector4's.
Base object class XMarkerListContainer (derived from ListContainerTemplate) for XMarkerList objects.
Base object class XMarkerList (derived from BaseListTemplate) specialized for XMarker items.
Base object class XMarker (derived form baseItem) with 6D pos, 3D vec and type int.
MLint32 MLDataType
MLDataType.
MLEXPORT MLint32 MLIsScalarType(MLDataType dataType)
Alternative name for MLIsStandardType.
#define ML_BAD_PARAMETER
A bad/invalid parameter (or even an inappropriate image) has been passed to a module or an algorithm;...
MLint32 MLErrorCode
Type of an ML Error code.
#define ML_NO_MEMORY
The system does not have enough memory to perform the desired operation; try to reduce application da...
#define ML_RESULT_OK
No error. Everything seems to be okay.
#define ML_PRINT_ERROR(FUNC_NAME, REASON, HANDLING)
Like ML_PRINT_ERROR_DUMP(FUNC_NAME, REASON, HANDLING, RT_OBJ) without a runtime object to be dumped.
Basic types used in the MeVislab binding of the Point Cloud Library(PCL).
Target mlrange_cast(Source arg)
Generic version of checked ML casts.
UINT64 MLuint64
Introduce platform independent 64 bit unsigned integer type.
@ ML_RETURN_NULL
On allocation failure NULL is returned without error handling.
unsigned char MLTypeData
This is the pointer type used to point to the data of MLType data instances.
MLint64 MLint
A signed ML integer type with at least 64 bits used for index calculations on very large images even ...
SSIZE_T MLssize_t
The signed ML size type which is a signed 32 bit size_t on 32 bit platforms and 64 bit one on 64 bit ...
Structure containing all data type features and pointers to all functions needed to implement operati...