FlowEngine 7.517
Photogrammetry Software Development Kit
Loading...
Searching...
No Matches
FlowEngine::SparsePointCloudInterface Class Referenceabstract

Stores a PointCloud object. More...

#include <SparsePointCloudInterface.h>

Inheritance diagram for FlowEngine::SparsePointCloudInterface:
FlowEngine::NamedObjectInterface

Public Member Functions

virtual FLE_DLL ~SparsePointCloudInterface ()=default
 Default virtual destructor.
 
virtual FLE_DLL Index getPointCount () const =0
 
virtual FLE_DLL Result getPointPosition (Index idx, Point3 &outPosition) const =0
 
virtual FLE_DLL Result getPointColor (Index idx, Color &outColor) const =0
 
virtual FLE_DLL Index getPointVisibilityCount (Index pointIndex) const =0
 
virtual FLE_DLL Result getPointVisibility (Index pointIndex, Index visibilityIndex, CameraInterface &outCamera) const =0
 
virtual FLE_DLL Result removePoint (Index index)=0
 
virtual FLE_DLL Result removePoints (ConstBuffer< Index > indexes)=0
 
virtual FLE_DLL Result transform (ConstBuffer< double > transform)=0
 
virtual FLE_DLL Result saveToPly (ConstStringBuffer filePath) const =0
 
virtual FLE_DLL Result loadFromPly (ConstStringBuffer filePath)=0
 
- Public Member Functions inherited from FlowEngine::NamedObjectInterface
virtual FLE_DLL ~NamedObjectInterface ()=default
 Default virtual destructor.
 
virtual FLE_DLL Size getNameLength () const =0
 
virtual FLE_DLL Result getName (StringBuffer outName) const =0
 
virtual FLE_DLL Result setName (ConstStringBuffer name)=0
 

Detailed Description

Stores a PointCloud object.

Nothing needed in input. Everything will be filled by FlowEngine.

Constructor & Destructor Documentation

◆ ~SparsePointCloudInterface()

virtual FLE_DLL FlowEngine::SparsePointCloudInterface::~SparsePointCloudInterface ( )
virtualdefault

Default virtual destructor.

Member Function Documentation

◆ getPointColor()

virtual FLE_DLL Result FlowEngine::SparsePointCloudInterface::getPointColor ( Index  idx,
Color outColor 
) const
pure virtual

Returns the color of the point at index idx. This function is not available in the free version of the SDK.

Parameters
[in]idxthe index of the position to retrieve. Must be in the range [0, getPointCount())
[out]outColorthe retrieved color

◆ getPointCount()

virtual FLE_DLL Index FlowEngine::SparsePointCloudInterface::getPointCount ( ) const
pure virtual
Returns
the number of points in this point cloud

◆ getPointPosition()

virtual FLE_DLL Result FlowEngine::SparsePointCloudInterface::getPointPosition ( Index  idx,
Point3 outPosition 
) const
pure virtual

Returns the position of the point at index idx. This function is not available in the free version of the SDK.

Parameters
[in]idxthe index of the position to retrieve. Must be in the range [0, getPointCount())
[out]outPositionthe retrieved position

◆ getPointVisibility()

virtual FLE_DLL Result FlowEngine::SparsePointCloudInterface::getPointVisibility ( Index  pointIndex,
Index  visibilityIndex,
CameraInterface outCamera 
) const
pure virtual

Query visibility information about a point.

Parameters
[in]pointIndexthe point to query for visibility info. Must be in the range [0, getPointCount())
[in]visibilityIndexthe index of the visibility entry. Must be in the range [0, getPointVisibilityCount( pointIndex ))
[in,out]outCamerathe Camera object to fill with the information,
Returns
One of the following result codes:
  • Result::Success – if outCamera is filled with the visibility information queried.
  • Result::InvalidArgument
    • if outCamera is not a valid Camera object.
    • if pointIndex is not in the valid range.
    • if visibilityInfo is not in the valid range.
  • Result::FeatureNotAvailable – if this method is called by the free version of the SDK.
Note
This function is not available in the free version of the SDK.

◆ getPointVisibilityCount()

virtual FLE_DLL Index FlowEngine::SparsePointCloudInterface::getPointVisibilityCount ( Index  pointIndex) const
pure virtual

Query the number of visibility information present in a point.

Parameters
[in]pointIndexthe index of the point to query for visibility count. Must be in the range [0, getPointCount())
Returns
the number of visibility entries for the point at index pointIndex.

◆ loadFromPly()

virtual FLE_DLL Result FlowEngine::SparsePointCloudInterface::loadFromPly ( ConstStringBuffer  filePath)
pure virtual

Load the point cloud from a PLY file

Parameters
[in]filePatha buffer containing the source file path

◆ removePoint()

virtual FLE_DLL Result FlowEngine::SparsePointCloudInterface::removePoint ( Index  index)
pure virtual

Removes one point (and its visibility information) from this point cloud and its related cameras.

Parameters
[in]indexthe index of the point to be removed. Must be in the range [0, getPointCount()).
Note
This method is not available in the free version of the SDK.
Returns
One of the following result codes:

◆ removePoints()

virtual FLE_DLL Result FlowEngine::SparsePointCloudInterface::removePoints ( ConstBuffer< Index indexes)
pure virtual

Removes one or more points (and their visibility information) from this point cloud and its related cameras.

Parameters
[in]indexesa buffer of point indexes to be removed. Each index must be in the range [0, getPointCount()).
Note
This method is not available in the free version of the SDK.
Returns
One of the following result codes:

◆ saveToPly()

virtual FLE_DLL Result FlowEngine::SparsePointCloudInterface::saveToPly ( ConstStringBuffer  filePath) const
pure virtual

Save the point cloud to a PLY file. This function is not available in the free version of the SDK.

Parameters
[in]filePatha buffer containing the target file path

◆ transform()

virtual FLE_DLL Result FlowEngine::SparsePointCloudInterface::transform ( ConstBuffer< double >  transform)
pure virtual

Transforms every point in the point cloud with a SRT matrix.

Parameters
[in]transforma buffer of doubles representing the 4x4 transform matrix that will be applied to every point.
Returns
One of the following result codes: