diff --git a/data_process_class_dll/tas_ctrl.cpp b/data_process_class_dll/tas_ctrl.cpp index 4d891f9..0d305d6 100644 --- a/data_process_class_dll/tas_ctrl.cpp +++ b/data_process_class_dll/tas_ctrl.cpp @@ -205,7 +205,7 @@ void TAS_Ctrl::tas_target_del(std::vector *trust_track, for (size_t j=0;jsize();j++){ if(tas_target_queue[i].Index==(*trust_track)[j].Track_Index){ track_index = static_cast(j); - if((*trust_track)[j].Track_Mode == 1 && (*trust_track)[j].manual_tracking_flag == 1){ + if((*trust_track)[j].Track_Mode == 1 && (*trust_track)[j].manual_untracking_flag != 1){ flag=1; } break; @@ -362,7 +362,6 @@ void TAS_Ctrl::tas_beam_output(std::vector *trust_track if(earliest_track_idx == -1) { Tracking_beam->open_flag = 0; - // RDP_LOG_INFO("TAS close {} {} {}", CPI_time, earliest_CPI_time, delta_T_last_track); return; } @@ -378,19 +377,12 @@ void TAS_Ctrl::tas_beam_output(std::vector *trust_track //目标距离 Tracking_beam->Range=(float)range; + //目标方位 Tracking_beam->Azi=(float)amzi/PI*180; -// Tracking_beam->Azi+=6; + //目标俯仰角 double elev=asin(H_track/range)/PI*180; - -// if(elev<=0) -// elev=0; -// else if(elev>=40) -// elev=40; -// else -// elev=elev; - Tracking_beam->Elev= max((float)elev, rdp_parameter.tas_beam_pitch_min); //跟踪波束类型 @@ -402,7 +394,7 @@ void TAS_Ctrl::tas_beam_output(std::vector *trust_track //跟踪波束开关开启 Tracking_beam->open_flag=1; - // RDP_LOG_INFO("TAS <{}> output: range: {} azi: {} pit: {}", Tracking_beam->TAS_track_index, Tracking_beam->Range, Tracking_beam->Azi, Tracking_beam->Elev); + RDP_LOG_DEBUG("TAS <{}-{}> : range: {} azi: {} pit: {}", (*trust_track)[earliest_track_idx].Track_Index, Tracking_beam->TAS_track_index, Tracking_beam->Range, Tracking_beam->Azi, Tracking_beam->Elev); } int TAS_Ctrl::tas_auto_start(double v, double r, double h) diff --git a/data_process_class_dll/track_asso.cpp b/data_process_class_dll/track_asso.cpp index ca30f4d..3dca8f7 100644 --- a/data_process_class_dll/track_asso.cpp +++ b/data_process_class_dll/track_asso.cpp @@ -775,7 +775,7 @@ void Track_Asso:: model_filter(std::vector *trust_track, long long //未关联上的航迹 进行外推 tws for (size_t i =0; i<(*trust_track).size();i++ ) { - if((*trust_track)[i].point_flag == 0 && (*trust_track)[i].manual_tracking_flag == 0) //未关联上点迹的航迹进行外推 + if((*trust_track)[i].point_flag == 0 && (*trust_track)[i].Track_Mode == 0) //未关联上点迹的航迹进行外推 { double delta_T = 0; diff --git a/data_process_class_dll/track_die.cpp b/data_process_class_dll/track_die.cpp index 2a2409f..b5160c3 100644 --- a/data_process_class_dll/track_die.cpp +++ b/data_process_class_dll/track_die.cpp @@ -1,6 +1,7 @@ #include "track_die.h" #include "kalman.h" #include "coor_trans.h" +#include "rdp_log.h" #include #include #include @@ -32,7 +33,7 @@ void Track_Die::track_die_process( std::vector *trust_track, }else{ //按圈数条件消亡 //非重点航迹自动消亡 - if((*Iter).Track_Mode == 0 && (*Iter).primary_target_flag == 0 && (*Iter).Extrapolate_round < rdp_parameter.track_die_round) + if((*Iter).Track_Mode == 0 && (*Iter).primary_target_flag == 0 && (*Iter).Extrapolate_round > rdp_parameter.track_die_round) { die_flag = true; } diff --git a/data_process_class_dll/track_init.cpp b/data_process_class_dll/track_init.cpp index 1386f90..5d5b9d7 100644 --- a/data_process_class_dll/track_init.cpp +++ b/data_process_class_dll/track_init.cpp @@ -1,6 +1,7 @@ #include "track_init.h" #include "kalman.h" #include "coor_trans.h" +#include "rdp_log.h" #include #include #include @@ -633,7 +634,7 @@ void Track_Init::tmp_track_to_trust_track(std::vector *trust_tra memcpy(trust_track_tmp.P, P, 6*6*sizeof(double)); //计算航迹指纹 - trust_track_tmp.Track_fingerprint = computeFingerprint(Track_to_start[i][L-1].r, Track_to_start[i][L-1].azi, Track_to_start[i][L-1].vr, Track_to_start[i][L-1].RCS, Track_to_start[i][L-1].CPI_time); + trust_track_tmp.Track_fingerprint = computeFingerprint(Track_to_start[i][0].r, Track_to_start[i][0].azi, Track_to_start[i][0].vr, Track_to_start[i][0].RCS, Track_to_start[i][0].CPI_time); trust_track_tmp.track_id = Track_to_start[i][L-1].temp_track_id; trust_track_tmp.point_id = Track_to_start[i][L-1].point_id;