Apollo 11.0
自动驾驶开放平台
apollo::perception::algorithm::GroundPlaneLiDAR结构体 参考

#include <i_ground.h>

apollo::perception::algorithm::GroundPlaneLiDAR 的协作图:

Public 成员函数

 GroundPlaneLiDAR ()
 
GroundPlaneLiDAR & operator= (const GroundPlaneLiDAR &pi)
 
float GetDegreeNormalToX () const
 
float get_degree_normal_to_y () const
 
float GetDegreeNormalToZ () const
 
void ForcePositiveNormalX ()
 
void ForcePositiveNormalY ()
 
void ForcePositiveNormalZ ()
 
void ForceInvalid ()
 
void ForceUnitNorm ()
 
bool IsValid () const
 
int GetNrSupport () const
 
void SetNrSupport (int nr)
 
bool GetStatus () const
 
void SetStatus (bool flag)
 
std::string GetOrigin () const
 
void SetOrigin (std::string origin)
 
std::string GetInvalidStatus () const
 
void SetInvalidStatus (std::string flag)
 

Public 属性

float params [4]
 

详细描述

在文件 i_ground.h 第 32 行定义.

构造及析构函数说明

◆ GroundPlaneLiDAR()

apollo::perception::algorithm::GroundPlaneLiDAR::GroundPlaneLiDAR ( )
inline

在文件 i_ground.h 第 33 行定义.

33 {
35 nr_support = 0;
36 is_detected = false;
37 is_from_self = "unknown";
38 invalid_status = "invalid";
39 }

成员函数说明

◆ ForceInvalid()

void apollo::perception::algorithm::GroundPlaneLiDAR::ForceInvalid ( )
inline

在文件 i_ground.h 第 101 行定义.

101 {
102 IZero4(params);
103 nr_support = 0;
104 }

◆ ForcePositiveNormalX()

void apollo::perception::algorithm::GroundPlaneLiDAR::ForcePositiveNormalX ( )
inline

在文件 i_ground.h 第 83 行定义.

83 {
84 if (params[0] < 0) {
86 }
87 }

◆ ForcePositiveNormalY()

void apollo::perception::algorithm::GroundPlaneLiDAR::ForcePositiveNormalY ( )
inline

在文件 i_ground.h 第 89 行定义.

89 {
90 if (params[1] < 0) {
92 }
93 }

◆ ForcePositiveNormalZ()

void apollo::perception::algorithm::GroundPlaneLiDAR::ForcePositiveNormalZ ( )
inline

在文件 i_ground.h 第 95 行定义.

95 {
96 if (params[2] < 0) {
98 }
99 }

◆ ForceUnitNorm()

void apollo::perception::algorithm::GroundPlaneLiDAR::ForceUnitNorm ( )
inline

在文件 i_ground.h 第 106 行定义.

106 {
107 float norm = IL2Norm3(params);
108 IScale4(params, IRec(norm));
109 }
T IL2Norm3(const T x[3])
Definition i_blas.h:2812
void IScale4(T x[4], T sf)
Definition i_blas.h:1874

◆ get_degree_normal_to_y()

float apollo::perception::algorithm::GroundPlaneLiDAR::get_degree_normal_to_y ( ) const
inline

在文件 i_ground.h 第 61 行定义.

61 {
62 float normal[3];
63 ICopy3(params, normal);
64 if (normal[1] < 0) {
65 INeg3(normal);
66 }
67 // normalize:
68 IScale3(normal, IRec(ISqrt(ISquaresum3(normal))));
69 return IRadiansToDegree(IAcos(normal[1]));
70 }
float IRadiansToDegree(float r)
Definition i_basic.h:260
void ICopy3(const T src[3], T dst[3])
Definition i_blas.h:40
T ISquaresum3(const T x[3])
Definition i_blas.h:2536
void IScale3(T x[3], T sf)
Definition i_blas.h:1868
float IAcos(float alpha)
Definition i_basic.h:239

◆ GetDegreeNormalToX()

float apollo::perception::algorithm::GroundPlaneLiDAR::GetDegreeNormalToX ( ) const
inline

在文件 i_ground.h 第 50 行定义.

50 {
51 float normal[3];
52 ICopy3(params, normal);
53 if (normal[0] < 0) {
54 INeg3(normal);
55 }
56 // normalize:
57 IScale3(normal, IRec(ISqrt(ISquaresum3(normal))));
58 return IRadiansToDegree(IAcos(normal[0]));
59 }

◆ GetDegreeNormalToZ()

float apollo::perception::algorithm::GroundPlaneLiDAR::GetDegreeNormalToZ ( ) const
inline

在文件 i_ground.h 第 72 行定义.

72 {
73 float normal[3];
74 ICopy3(params, normal);
75 if (normal[2] < 0) {
76 INeg3(normal);
77 }
78 // normalize:
79 IScale3(normal, IRec(ISqrt(ISquaresum3(normal))));
80 return IRadiansToDegree(IAcos(normal[2]));
81 }

◆ GetInvalidStatus()

std::string apollo::perception::algorithm::GroundPlaneLiDAR::GetInvalidStatus ( ) const
inline

在文件 i_ground.h 第 130 行定义.

130{ return invalid_status; }

◆ GetNrSupport()

int apollo::perception::algorithm::GroundPlaneLiDAR::GetNrSupport ( ) const
inline

在文件 i_ground.h 第 118 行定义.

118{ return nr_support; }

◆ GetOrigin()

std::string apollo::perception::algorithm::GroundPlaneLiDAR::GetOrigin ( ) const
inline

在文件 i_ground.h 第 126 行定义.

126{ return is_from_self; }

◆ GetStatus()

bool apollo::perception::algorithm::GroundPlaneLiDAR::GetStatus ( ) const
inline

在文件 i_ground.h 第 122 行定义.

122{ return is_detected; }

◆ IsValid()

bool apollo::perception::algorithm::GroundPlaneLiDAR::IsValid ( ) const
inline

在文件 i_ground.h 第 111 行定义.

111 {
112 if (nr_support && (params[0] != 0 || params[1] != 0 || params[2] != 0)) {
113 return true;
114 }
115 return false;
116 }

◆ operator=()

GroundPlaneLiDAR & apollo::perception::algorithm::GroundPlaneLiDAR::operator= ( const GroundPlaneLiDAR &  pi)
inline

在文件 i_ground.h 第 41 行定义.

41 {
42 ICopy4(pi.params, this->params);
43 this->nr_support = pi.GetNrSupport();
44 this->is_detected = pi.GetStatus();
45 this->is_from_self = pi.GetOrigin();
46 this->invalid_status = pi.GetInvalidStatus();
47 return (*this);
48 }
void ICopy4(const T src[4], T dst[4])
Definition i_blas.h:46

◆ SetInvalidStatus()

void apollo::perception::algorithm::GroundPlaneLiDAR::SetInvalidStatus ( std::string  flag)
inline

在文件 i_ground.h 第 132 行定义.

132{ invalid_status = flag; }

◆ SetNrSupport()

void apollo::perception::algorithm::GroundPlaneLiDAR::SetNrSupport ( int  nr)
inline

在文件 i_ground.h 第 120 行定义.

120{ nr_support = nr; }

◆ SetOrigin()

void apollo::perception::algorithm::GroundPlaneLiDAR::SetOrigin ( std::string  origin)
inline

在文件 i_ground.h 第 128 行定义.

128{ is_from_self = origin; }

◆ SetStatus()

void apollo::perception::algorithm::GroundPlaneLiDAR::SetStatus ( bool  flag)
inline

在文件 i_ground.h 第 124 行定义.

124{ is_detected = flag; }

类成员变量说明

◆ params

float apollo::perception::algorithm::GroundPlaneLiDAR::params[4]

在文件 i_ground.h 第 134 行定义.


该结构体的文档由以下文件生成: