소스 검색

modify group id

zhangjia 3 년 전
부모
커밋
499b26b19f
1개의 변경된 파일11개의 추가작업 그리고 9개의 파일을 삭제
  1. 11 9
      src/decition/decition_brain_sf/decition/decide_gps_00.cpp

+ 11 - 9
src/decition/decition_brain_sf/decition/decide_gps_00.cpp

@@ -196,6 +196,7 @@ bool qiedianCount = false;
 
 
 static int obstacle_avoid_flag=0;
 static int obstacle_avoid_flag=0;
 static int front_car_id=-1;
 static int front_car_id=-1;
+static int front_car_vector_id=-1;
 
 
 //日常展示
 //日常展示
 
 
@@ -227,6 +228,7 @@ iv::decition::Decition iv::decition::DecideGps00::getDecideFromGPS(GPS_INS now_g
         for(int i=0;i<xgroupgrpcinfo.mvehinfo_size();i++){
         for(int i=0;i<xgroupgrpcinfo.mvehinfo_size();i++){
             if((xgroupgrpcinfo.mutable_mvehinfo(i)->intragroupid()+1)==ServiceCarStatus.curID){
             if((xgroupgrpcinfo.mutable_mvehinfo(i)->intragroupid()+1)==ServiceCarStatus.curID){
                         front_car_id=xgroupgrpcinfo.mutable_mvehinfo(i)->intragroupid();
                         front_car_id=xgroupgrpcinfo.mutable_mvehinfo(i)->intragroupid();
+                        front_car_vector_id=i;
             }
             }
         }
         }
     }else{
     }else{
@@ -234,24 +236,24 @@ iv::decition::Decition iv::decition::DecideGps00::getDecideFromGPS(GPS_INS now_g
     }
     }
 
 
     if(front_car_id>0){
     if(front_car_id>0){
-       if(xgroupgrpcinfo.mutable_mvehinfo(front_car_id)->has_mgpsimu()){
-          front_car.front_car_ins.gps_lat=xgroupgrpcinfo.mutable_mvehinfo(front_car_id)->mgpsimu().lat();
-          front_car.front_car_ins.gps_lng=xgroupgrpcinfo.mutable_mvehinfo(front_car_id)->mgpsimu().lon();
-          front_car.front_car_ins.ins_heading_angle=xgroupgrpcinfo.mutable_mvehinfo(front_car_id)->mgpsimu().heading();
+       if(xgroupgrpcinfo.mutable_mvehinfo(front_car_vector_id)->has_mgpsimu()){
+          front_car.front_car_ins.gps_lat=xgroupgrpcinfo.mutable_mvehinfo(front_car_vector_id)->mgpsimu().lat();
+          front_car.front_car_ins.gps_lng=xgroupgrpcinfo.mutable_mvehinfo(front_car_vector_id)->mgpsimu().lon();
+          front_car.front_car_ins.ins_heading_angle=xgroupgrpcinfo.mutable_mvehinfo(front_car_vector_id)->mgpsimu().heading();
           GaussProjCal(front_car.front_car_ins.gps_lng,front_car.front_car_ins.gps_lat, &front_car.front_car_ins.gps_x, &front_car.front_car_ins.gps_y);
           GaussProjCal(front_car.front_car_ins.gps_lng,front_car.front_car_ins.gps_lat, &front_car.front_car_ins.gps_x, &front_car.front_car_ins.gps_y);
           front_car.front_car_dis=GetDistance(now_gps_ins,front_car.front_car_ins);
           front_car.front_car_dis=GetDistance(now_gps_ins,front_car.front_car_ins);
        }else{
        }else{
           front_car.front_car_dis=500;
           front_car.front_car_dis=500;
        }
        }
-       if(xgroupgrpcinfo.mutable_mvehinfo(front_car_id)->has_mcarstate()){
-           front_car.vehState=xgroupgrpcinfo.mutable_mvehinfo(front_car_id)->mcarstate().mstate();
-           int avoidX_record=xgroupgrpcinfo.mutable_mvehinfo(front_car_id)->mcarstate().mavoidx();
+       if(xgroupgrpcinfo.mutable_mvehinfo(front_car_vector_id)->has_mcarstate()){
+           front_car.vehState=xgroupgrpcinfo.mutable_mvehinfo(front_car_vector_id)->mcarstate().mstate();
+           int avoidX_record=xgroupgrpcinfo.mutable_mvehinfo(front_car_vector_id)->mcarstate().mavoidx();
            if(front_car.vehState!=0&&avoidX_record!=0)
            if(front_car.vehState!=0&&avoidX_record!=0)
                  front_car.avoidX=avoidX_record;
                  front_car.avoidX=avoidX_record;
            else
            else
                  front_car.avoidX=0;
                  front_car.avoidX=0;
-           front_car.obs_distance=xgroupgrpcinfo.mutable_mvehinfo(front_car_id)->mcarstate().mobsdistance();
-           front_car.obs_speed=xgroupgrpcinfo.mutable_mvehinfo(front_car_id)->mcarstate().mobsspeed();
+           front_car.obs_distance=xgroupgrpcinfo.mutable_mvehinfo(front_car_vector_id)->mcarstate().mobsdistance();
+           front_car.obs_speed=xgroupgrpcinfo.mutable_mvehinfo(front_car_vector_id)->mcarstate().mobsspeed();
        }
        }
        givlog->debug("decition_brain","front_car_id: %d,FrontState: %d,FrontAvoidX: %d,FrontDis: %f,FrontObs: %f",
        givlog->debug("decition_brain","front_car_id: %d,FrontState: %d,FrontAvoidX: %d,FrontDis: %f,FrontObs: %f",
                        front_car_id,front_car.vehState,front_car.avoidX,front_car.front_car_dis,front_car.obs_distance);
                        front_car_id,front_car.vehState,front_car.avoidX,front_car.front_car_dis,front_car.obs_distance);