本文整理汇总了C++中MapPoint::GetNormal方法的典型用法代码示例。如果您正苦于以下问题:C++ MapPoint::GetNormal方法的具体用法?C++ MapPoint::GetNormal怎么用?C++ MapPoint::GetNormal使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MapPoint
的用法示例。
在下文中一共展示了MapPoint::GetNormal方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: canView
bool StereoFrame::canView(const MapPoint& mapPoint) const
{
boost::shared_lock<boost::shared_mutex> lock(stereo_frames_mutex_);
const Eigen::Vector3d& point = mapPoint.GetPosition();
// compute only once, since both cameras have the same orientation.
bool similar_angle = false;
{
Eigen::Vector3d currentNormal = point - frameLeft_.GetPosition();
currentNormal.normalize();
// angle is in radians
double angle = std::acos( ( mapPoint.GetNormal() ).dot( currentNormal ) );
// Discard Points which were created from a greater 45 degrees pint of view.
// TODO: pass this threshold as a parameter.
similar_angle = angle < (M_PI / 4.0);
}
return similar_angle and ( frameLeft_.GetCamera().CanView( point ) or frameRight_.GetCamera().CanView( point ) );
}