Solar
Public Member Functions | List of all members
SolAR::api::solver::map::IMapFusion Class Referenceabstract

Allow to merge local map or floating map in the global map. UUID: eb9b9921-b063-42a8-8282-9ed53ee21d96 More...

#include <IMapFusion.h>

Inheritance diagram for SolAR::api::solver::map::IMapFusion:
Inheritance graph
[legend]
Collaboration diagram for SolAR::api::solver::map::IMapFusion:
Collaboration graph
[legend]

Public Member Functions

 IMapFusion ()=default
 IMapFusion default constructor.
 
virtual ~IMapFusion ()=default
 IMapFusion default destructor.
 
virtual FrameworkReturnCode merge (SRef< SolAR::datastructure::Map > map, SRef< SolAR::datastructure::Map > globalMap, SolAR::datastructure::Transform3Df &transform, uint32_t &nbMatches, float &error)=0
 Merge a map in the global map. The map can be a local map (know transformation to the global map) or a floating map. More...
 
virtual FrameworkReturnCode merge (SRef< SolAR::datastructure::Map > map, SRef< SolAR::datastructure::Map > globalMap, SolAR::datastructure::Transform3Df &transform, const std::vector< std::pair< uint32_t, uint32_t > > &cpOverlapIndices, bool isRefineTransform=false)=0
 Merge a map in the global map. The map can be a local map (know transformation to the global map) or a floating map. More...
 

Detailed Description

Allow to merge local map or floating map in the global map. UUID: eb9b9921-b063-42a8-8282-9ed53ee21d96

Member Function Documentation

◆ merge() [1/2]

virtual FrameworkReturnCode SolAR::api::solver::map::IMapFusion::merge ( SRef< SolAR::datastructure::Map map,
SRef< SolAR::datastructure::Map globalMap,
SolAR::datastructure::Transform3Df transform,
const std::vector< std::pair< uint32_t, uint32_t > > &  cpOverlapIndices,
bool  isRefineTransform = false 
)
pure virtual

Merge a map in the global map. The map can be a local map (know transformation to the global map) or a floating map.

Parameters
[in,out]maplocal map or floating map to merge
[in,out]globalMapthe global map
[in,out]transformthe transformation to the global map (null for floating map). It can be refined by fusion process.
[in]cpOverlapIndicespairs of detected overlap cloud points indices of floating map and global map.
[in]isRefineTransformrefine the 3D transformation if it's true.
Returns
FrameworkReturnCode::SUCCESS if the fusion succeed, else FrameworkReturnCode::_ERROR.

◆ merge() [2/2]

virtual FrameworkReturnCode SolAR::api::solver::map::IMapFusion::merge ( SRef< SolAR::datastructure::Map map,
SRef< SolAR::datastructure::Map globalMap,
SolAR::datastructure::Transform3Df transform,
uint32_t &  nbMatches,
float &  error 
)
pure virtual

Merge a map in the global map. The map can be a local map (know transformation to the global map) or a floating map.

Parameters
[in,out]maplocal map or floating map to merge
[in,out]globalMapthe global map
[in,out]transformthe transformation to the global map (null for floating map). It can be refined by fusion process.
[out]nbMatchesthe number of matched cloud points.
[out]errorthe error of fusion process that is the mean of error distances of the matched cloud points.
Returns
FrameworkReturnCode::SUCCESS if the fusion succeed, else FrameworkReturnCode::_ERROR.

The documentation for this class was generated from the following file: