Files
radar_data_process/data_process_class_dll/track_init.h
T

56 lines
2.2 KiB
C++

#ifndef TRACK_INIT_H
#define TRACK_INIT_H
#include "data_process_class_dll.h"
#include "track_index_mangement.h"
#include "parameters.h"
#include "struct.h"
#include <QVector>
using namespace std;
/******************************* 航迹起始类 **************************************************/
class Track_Init
{
public:
//航迹起始逻辑法
int track_init_process_logic( QVector<PointRecv> *point_recv, //输入点迹
QVector <QVector<Trust_Track>> *trust_track, //可靠航迹
QVector <QVector<Temp_track>> *temp_track,
struct Track Trust_Track_Output[MAX_TRACK_NUM][10],
int *Trust_track_num_Output,
struct RadarPara Work_Parameter
);
Track_Init();
private:
QVector<PointRecv> point_process; //要处理的点迹
void point_temp_track_asso(QVector <QVector<Temp_track>> *temp_track,
struct RadarPara Work_Parameter); //临时航迹与点迹关联
void point_track_head_asso( QVector <QVector<Temp_track>> *temp_track,
struct RadarPara Work_Parameter); //航迹头与点迹关联
void tmp_track_to_trust_track( QVector <QVector<Trust_Track>> *trust_track, //临时航迹转可靠航迹
QVector <QVector<Temp_track>> *temp_track,
struct Track Trust_Track_Output[MAX_TRACK_NUM][10],
int *Trust_track_num_Output,
struct RadarPara Work_Parameter);
void tmp_track_die(QVector <QVector<Temp_track>> *temp_track);//临时航迹消亡
double alpha_cal_track_init(float x0,float y0,float x1,float y1,float x2,float y2); //计算夹角
Track_Ind_Mangement track_index_mangement;
};
#endif // TRACK_INIT_H