![]()  | 
  
    FlowEngine 8.011
    
   Photogrammetry Software Development Kit 
   | 
 
#include <StereoPointCloudInterface.h>
  
Public Member Functions | |
| virtual FLE_DLL Result | copyFrom (const StereoPointCloudInterface &inStereoPoints)=0 | 
| virtual FLE_DLL Result | copyPointsPositions (Buffer< Point3 > outData) const =0 | 
| virtual FLE_DLL Result | decimateByMaxPointCount (int targetPointCount)=0 | 
| virtual FLE_DLL Result | decimateByMaxPointCountOctree (unsigned int maxPointCount)=0 | 
| virtual FLE_DLL Result | decimateByPointsDistance (double distance)=0 | 
| virtual FLE_DLL Result | densificateByMaxPointCount (int targetPointCount)=0 | 
| virtual FLE_DLL double | getMeanPointDistance () const =0 | 
| virtual FLE_DLL Result | getPointColor (Index idx, Color &outColor) const =0 | 
| virtual FLE_DLL Index | getPointCount () const =0 | 
| virtual FLE_DLL Result | getPointNormal (Index idx, Normal &outNormal) const =0 | 
| virtual FLE_DLL Result | getPointPosition (Index idx, Point3 &outPosition) const =0 | 
| virtual FLE_DLL Result | getPointVisibility (Index pointIndex, Index visibilityIndex, CameraInterface &outCamera) const =0 | 
| virtual FLE_DLL Index | getPointVisibilityCount (Index pointIndex) const =0 | 
| virtual FLE_DLL Index | getSeedPointCount () const =0 | 
| virtual FLE_DLL Result | initializeSeeds (LogListenerInterface &logListener, Index seedPoints, Buffer< CameraInterface * > bubbleViewCameras)=0 | 
| virtual FLE_DLL Result | loadFromPly (ConstStringBuffer filePath)=0 | 
| virtual FLE_DLL Result | mergeWith (ConstBuffer< StereoPointCloudInterface * > others, bool lastMerge=true)=0 | 
| virtual FLE_DLL Result | projectOnRegularGrid (double gridSpacing, double radius, StandardAxis axis)=0 | 
| virtual FLE_DLL Result | removePoint (Index index)=0 | 
| virtual FLE_DLL Result | removePoints (ConstBuffer< Index > indexes)=0 | 
| virtual FLE_DLL Result | replaceVisibility (ConstBuffer< CameraInterface * > cameras)=0 | 
| virtual FLE_DLL Result | reset (ConstBuffer< Point3 > vertexData, ConstBuffer< Color > colorData, ConstBuffer< Normal > normalData)=0 | 
| virtual FLE_DLL Result | reset (Size vertexCount)=0 | 
| virtual FLE_DLL Result | saveToPly (ConstStringBuffer filePath, bool saveColors=true, bool saveNormals=true, bool useBinaryEncoding=true) const =0 | 
| virtual FLE_DLL Result | setPointColor (Index idx, const Color &color)=0 | 
| virtual FLE_DLL Result | setPointNormal (Index idx, const Normal &normal)=0 | 
| virtual FLE_DLL Result | setPointPosition (Index idx, const Point3 &position)=0 | 
| virtual FLE_DLL Result | transform (ConstBuffer< double > transform)=0 | 
| virtual FLE_DLL | ~StereoPointCloudInterface ()=default | 
  Public Member Functions inherited from FlowEngine::NamedObjectInterface | |
| virtual FLE_DLL Result | getName (StringBuffer outName) const =0 | 
| virtual FLE_DLL Size | getNameLength () const =0 | 
| virtual FLE_DLL Result | setName (ConstStringBuffer name)=0 | 
| virtual FLE_DLL | ~NamedObjectInterface ()=default | 
Stores a simple Dense Point Cloud object for the FlowEngine interface.
Nothing needed in input. Everything will be filled by FlowEngine during MVS Computation.
      
  | 
  virtualdefault | 
Default virtual destructor.
      
  | 
  pure virtual | 
Copy data from another Stereo Point cloud.
| [in] | inStereoPoints | the stereo point cloud in input | 
      
  | 
  pure virtual | 
Copy all point positions. This function is not available in the free version of the SDK.
| [in,out] | outData | a buffer large enough to countain getPointCount() elements of Point3 | 
      
  | 
  pure virtual | 
Decimates the point cloud to reach a certain amount of points.
| [in] | targetPointCount | the number of points the point cloud will have after the decimation. If the targetPointCount is >= getPointCount() the function does nothing.  | 
      
  | 
  pure virtual | 
Decimates the point cloud by supplying a maximum point count (using octree)
| [in] | maxPointCount | the number of points the point cloud will have after the decimation. If the targetPointCount is >= getPointCount() the function does nothing.  | 
      
  | 
  pure virtual | 
Decimates the point cloud by supplying the points maximum distance.
| [in] | distance | the maximum distance allowed between points. | 
      
  | 
  pure virtual | 
Densificates the point cloud up to the specified point count
| [in] | targetPointCount | the number of points the point cloud will have after the densification. If the targetPointCount is < getPointCount() the function does nothing.  | 
      
  | 
  pure virtual | 
      
  | 
  pure virtual | 
Returns the color of the point at index idx. This function is not available in the free version of the SDK. 
| [in] | idx | the index of the position to retrieve. Must be in the range [0, getPointCount()) | 
| [out] | outColor | the retrieved point color | 
      
  | 
  pure virtual | 
      
  | 
  pure virtual | 
Returns the position of the point at index idx. This function is not available in the free version of the SDK. 
| [in] | idx | the index of the position to retrieve. Must be in the range [0, getPointCount()) | 
| [out] | outNormal | the retrieved point normal | 
      
  | 
  pure virtual | 
Returns the position of the point at index idx. This function is not available in the free version of the SDK. 
| [in] | idx | the index of the position to retrieve. Must be in the range [0, getPointCount()) | 
| [out] | outPosition | the retrieved point position | 
      
  | 
  pure virtual | 
Query visibility information about a point.
| [in] | pointIndex | the point to query for visibility info. Must be in the range [0, getPointCount()) | 
| [in] | visibilityIndex | the index of the visibility entry. Must be in the range [0, getPointVisibilityCount( pointIndex )) | 
| [in,out] | outCamera | the Camera object to fill with the information, | 
outCamera is filled with the visibility information queried.outCamera is not a valid Camera object.pointIndex is not in the valid range.visibilityInfo is not in the valid range.
      
  | 
  pure virtual | 
Query the number of visibility information present in a point.
| [in] | pointIndex | the index of the point to query for visibility count. Must be in the range [0, getPointCount()) | 
pointIndex. 
      
  | 
  pure virtual | 
      
  | 
  pure virtual | 
Initialize an externally imported point cloud and perform the following internal operation: Seed Points setting, points reindexing, duplicate points removal, and hidden bubble view visibility setting (optional).
| [in] | logListener | log interface for log output | 
| [in] | seedPoints | Number of seeds points. If zero, keeps the existing number (likely all the points) | 
| [in] | bubbleViewCameras | (optional) bubble view camera list. The vector can be empty. | 
      
  | 
  pure virtual | 
Load the point cloud from a PLY file
| [in] | filePath | a string buffer containing the UTF-8 encoded path to the PLY file. | 
filePath is not a valid string buffer.filePath does not point to an existing file.filePath does not point to a valid PLY file or if there was a generic IO error.
      
  | 
  pure virtual | 
Merge this point cloud data with others. All dense point clouds involved in the process must have valid visibility. Other stereo point clouds are left untouched.
| [in] | others | a buffer of StereoPointCloudInterface | 
| [in] | lastMerge | set to true on the last merge operation to close a merging sequence. Forgetting to set lastMerge to true on the last merge operation will leave the StereoPointCloud to an undefined state. | 
others is not a valid buffer or contains invalid instances.
      
  | 
  pure virtual | 
Projects the points on a regular grid,
| gridSpacing | the length of a grid side. Must be greater than 0. | 
| radius | the neighbor searching limit. Specify 0 for no limit. | 
| axis | the grid up vector. | 
gridSpacing is not greater than 0.
      
  | 
  pure virtual | 
Removes one point from this stereo point cloud.
| [in] | index | the index of the point to be removed. Must be in the range [0, getPointCount()). | 
index is not in the valid range.
      
  | 
  pure virtual | 
Removes one or more points from this stereo point cloud.
| [in] | indexes | a buffer of point indexes to be removed. Each index must be in the range [0, getPointCount()). | 
indexes is not a valid buffer.indexes is not in the valid range.
      
  | 
  pure virtual | 
Replaces this stereo point cloud visibility.
| [in] | cameras | a buffer of Camera(s) that will replace the internal ones. New cameras should match the number, the name and the dimensions of the current ones in this object. | 
cameras is not a valid buffer or its contents do not satisfy the required constraints.
      
  | 
  pure virtual | 
Reset this stereo point cloud object. All the properties will be invalidated.
| [in] | vertexData | a buffer of Point3(s). Must contain at least 3 points. | 
| [in] | colorData | (optional) buffer of Color(s). When not specified or its length differs from vertexData's, points are colored white (255, 255, 255) and can be recomputed with FlowEngineInterface::recomputeVisibility. | 
| [in] | normalData | (optional) buffer of Normal(s). Can be recomputed with FlowEngineInterface::recomputeVisibility. | 
vertexData is not a valid buffer or its length is less than 3.normalData is not a valid buffer or its length is less than 1.colorData is a valid buffer but its length is different from vertexData.
      
  | 
  pure virtual | 
Reset the stereo point cloud. All the properties will be invalidated, and you must refill the vector with the manual set functions.
| [in] | vertexCount | the number of vertices | 
      
  | 
  pure virtual | 
Save the point cloud to PLY file.
      
  | 
  pure virtual | 
Change the color of a point
| [in] | idx | the point index. Must be in the range [0, getPointCount()) | 
| [in] | color | the new point color | 
idx is not in the valid range. 
      
  | 
  pure virtual | 
Change the normal of a point
| [in] | idx | the point index. Must be in the range [0, getPointCount()) | 
| [in] | normal | the new point normal | 
idx is not in the valid range. 
      
  | 
  pure virtual | 
Change the position of a point
| [in] | idx | the point index. Must be in the range [0, getPointCount()) | 
| [in] | position | the new point position | 
idx is not in the valid range. 
      
  | 
  pure virtual | 
Transforms every point in the point cloud with a SRT matrix.
| [in] | transform | a buffer of doubles representing the 4x4 transform matrix that will be applied to every point. | 
transform is not a valid buffer or is not 16 doubles long.