ImagingTools Core SDK
IPointCloud3d.h
1// SPDX-License-Identifier: LGPL-2.1-or-later OR GPL-2.0-or-later OR GPL-3.0-or-later OR LicenseRef-ImtCore-Commercial
2#pragma once
3
4
5// ImtCore includes
6#include <imt3d/IPointsBasedObject.h>
7
8
9namespace imt3d
10{
11
12
16class IPointCloud3d: virtual public IPointsBasedObject
17{
18public:
22 virtual bool CreateCloud(PointFormat pointFormat) = 0;
23
27 virtual bool CreateCloud(
28 PointFormat pointFormat,
29 int pointsCount,
30 const void* dataPtr,
31 const istd::CIndex2d* gridSizePtr = nullptr) = 0;
32
37 virtual bool InsertPoints(
38 int pointsCount,
39 const void* dataPtr) = 0;
40};
41
42
43typedef istd::TUniqueInterfacePtr<IPointCloud3d> IPointCloud3dPtr;
44
45
46} // namespace imt3d
47
48
virtual bool CreateCloud(PointFormat pointFormat, int pointsCount, const void *dataPtr, const istd::CIndex2d *gridSizePtr=nullptr)=0
virtual bool InsertPoints(int pointsCount, const void *dataPtr)=0
virtual bool CreateCloud(PointFormat pointFormat)=0