19 namespace perception {
31 const double kPI = 3.1415926535897932384626433832795;
33 inline int F2I(
float val,
float ori,
float scale) {
34 return static_cast<int>(std::floor((ori - val) * scale));
38 inline void GroupPc2Pixel(
float pc_x,
float pc_y,
float scale,
float range,
40 float fx = (range - (0.707107f * (pc_x + pc_y))) * scale;
41 float fy = (range - (0.707107f * (pc_x - pc_y))) * scale;
42 *x = fx < 0 ? -1 :
static_cast<int>(fx);
43 *y = fy < 0 ? -1 :
static_cast<int>(fy);
47 inline int Pc2Pixel(
float in_pc,
float in_range,
float out_size) {
48 float inv_res = 0.5f * out_size / in_range;
49 return static_cast<int>(std::floor((in_range - in_pc) * inv_res));
52 inline float Pixel2Pc(
int in_pixel,
float in_size,
float out_range) {
53 float res = 2.0f * out_range / in_size;
54 return out_range - (
static_cast<float>(in_pixel) + 0.5f) * res;
int F2I(float val, float ori, float scale)
Definition: util.h:33
PlanningContext is the runtime context in planning. It is persistent across multiple frames...
Definition: atomic_hash_map.h:25
void GroupPc2Pixel(float pc_x, float pc_y, float scale, float range, int *x, int *y)
Definition: util.h:38
const double kPI
Definition: util.h:31
float Pixel2Pc(int in_pixel, float in_size, float out_range)
Definition: util.h:52
MetaType
Definition: util.h:22
int Pc2Pixel(float in_pc, float in_range, float out_size)
Definition: util.h:47