载入中...
搜索中...
未找到
Viewer类 参考

绘制激活的地图信息和前端的当前帧信息 更多...

#include <viewer.h>

Public 类型

typedef std::vector< MapPoint::PtrPointsType
 

Public 成员函数

 Viewer (const Viewer &)=delete
 
Vieweroperator= (const Viewer &)=delete
 
void run ()
 
void drawFrame (const Frame &frame, const float *color)
 在Pangolin中绘制Frame
 
void drawCurrFrame ()
 
void drawImage (pangolin::GlTexture &texture)
 绘制含有三维信息的特征点
 
void drawKeyFrames ()
 绘制地图中激活的地图点和激活的关键帧
 
void updateFrame (Frame::Ptr frame)
 
void setMap (const Map::Ptr &map)
 
void setCamera (const Camera::Ptr &camera)
 
void drawMapPoints ()
 在pangolin窗口中,绘制激活的地图点
 
void updatePoints (PointsType &&points)
 
void followCurrFrame (pangolin::OpenGlRenderState &renderState)
 
bool getFlag ()
 
void setFlag ()
 

静态 Public 成员函数

static Ptr getInstance ()
 

Public 属性

EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef std::shared_ptr< ViewerPtr
 

Private 成员函数

 Viewer ()=default
 

Private 属性

Map::Ptr m_map
 地图,用来提供激活地图点和激活关键帧
 
Camera::Ptr m_camera
 相机,用来提供相机位姿
 
std::mutex m_mutex
 Viewer的互斥量维护m_frame的线程安全
 
Frame::Ptr m_frame
 前端刚刚完成位姿估计的那一帧
 
PointsType m_points
 需要绘制的地图点信息
 
bool m_isStop = false
 展示线程结束标识符
 

详细描述

绘制激活的地图信息和前端的当前帧信息

当前帧绘制:前端在完成当前帧的位姿估计后进行(这是通过前端执行顺序保证的) 绘制激活地图点:后端优化完成并完成异常地图点剔除后进行(这是通过后端执行顺序保证的) 绘制激活关键帧:没有顺序要求

成员类型定义说明

◆ PointsType

typedef std::vector<MapPoint::Ptr> Viewer::PointsType

构造及析构函数说明

◆ Viewer() [1/2]

Viewer::Viewer ( const Viewer )
delete

◆ Viewer() [2/2]

Viewer::Viewer ( )
privatedefault

成员函数说明

◆ drawCurrFrame()

void Viewer::drawCurrFrame ( )
inline

◆ drawFrame()

void Viewer::drawFrame ( const Frame frame,
const float *  color 
)

在Pangolin中绘制Frame

参数
[in]

指定Frame

参数
[in]

指定颜色信息

根据Frame的外参信息,和Camera的内参信息, 将(0, 0), (width, 0), (width, height) ,(0, height)和相机光心连接,组成的几何来 表示frame在世界坐标系下的位姿信息

◆ drawImage()

void Viewer::drawImage ( pangolin::GlTexture &  texture)

绘制含有三维信息的特征点

参数
[in]

用来保存,更新和渲染图片信息

◆ drawKeyFrames()

void Viewer::drawKeyFrames ( )

绘制地图中激活的地图点和激活的关键帧

◆ drawMapPoints()

void Viewer::drawMapPoints ( )

在pangolin窗口中,绘制激活的地图点

参数
[in]

激活的地图点

注解
不存在GL_POINT这个东西,绘制单个点也需要使用GL_POINTS

◆ followCurrFrame()

void Viewer::followCurrFrame ( pangolin::OpenGlRenderState &  renderState)

◆ getFlag()

bool Viewer::getFlag ( )
inline

◆ getInstance()

static Ptr Viewer::getInstance ( )
inlinestatic

◆ operator=()

Viewer & Viewer::operator= ( const Viewer )
delete

◆ run()

NAMESPACE_BEGIN void Viewer::run ( )

◆ setCamera()

void Viewer::setCamera ( const Camera::Ptr camera)
inline

◆ setFlag()

void Viewer::setFlag ( )
inline

◆ setMap()

void Viewer::setMap ( const Map::Ptr map)
inline

◆ updateFrame()

void Viewer::updateFrame ( Frame::Ptr  frame)
inline

◆ updatePoints()

void Viewer::updatePoints ( PointsType &&  points)
inline

类成员变量说明

◆ m_camera

Camera::Ptr Viewer::m_camera
private

相机,用来提供相机位姿

◆ m_frame

Frame::Ptr Viewer::m_frame
private

前端刚刚完成位姿估计的那一帧

◆ m_isStop

bool Viewer::m_isStop = false
private

展示线程结束标识符

◆ m_map

Map::Ptr Viewer::m_map
private

地图,用来提供激活地图点和激活关键帧

◆ m_mutex

std::mutex Viewer::m_mutex
private

Viewer的互斥量维护m_frame的线程安全

◆ m_points

PointsType Viewer::m_points
private

需要绘制的地图点信息

◆ Ptr

EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef std::shared_ptr<Viewer> Viewer::Ptr

该类的文档由以下文件生成: