📄 pass.cpp
字号:
crossFactors.statusOppDir.maxValue = config["Pass"]["StatusOppDirection"]["MaxValue"][0].asFloat(); crossFactors.statusOppDir.minWeight = config["Pass"]["StatusOppDirection"]["MinWeight"][0].asFloat(); crossFactors.statusOppDir.maxWeight = config["Pass"]["StatusOppDirection"]["MaxWeight"][0].asFloat(); crossFactors.statusShoot.minValue = config["Pass"]["StatusShoot"]["MinValue"][0].asFloat(); crossFactors.statusShoot.maxValue = config["Pass"]["StatusShoot"]["MaxValue"][0].asFloat(); crossFactors.statusShoot.minWeight = config["Pass"]["StatusShoot"]["MinWeight"][0].asFloat(); crossFactors.statusShoot.maxWeight = config["Pass"]["StatusShoot"]["MaxWeight"][0].asFloat(); crossFactors.dribblePath.minValue = config["Pass"]["DribblePath"]["MinValue"][0].asFloat(); crossFactors.dribblePath.maxValue = config["Pass"]["DribblePath"]["MaxValue"][0].asFloat(); crossFactors.dribblePath.minWeight = config["Pass"]["DribblePath"]["MinWeight"][0].asFloat(); crossFactors.dribblePath.maxWeight = config["Pass"]["DribblePath"]["MaxWeight"][0].asFloat(); crossFactors.defenseLine.minValue = config["Pass"]["DefenseLine"]["MinValue"][0].asFloat(); crossFactors.defenseLine.maxValue = config["Pass"]["DefenseLine"]["MaxValue"][0].asFloat(); crossFactors.defenseLine.minWeight = config["Pass"]["DefenseLine"]["MinWeight"][0].asFloat(); crossFactors.defenseLine.maxWeight = config["Pass"]["DefenseLine"]["MaxWeight"][0].asFloat(); crossFactors.extraCatch.minValue = config["Pass"]["ExtraCatch"]["MinValue"][0].asFloat(); crossFactors.extraCatch.maxValue = config["Pass"]["ExtraCatch"]["MaxValue"][0].asFloat(); crossFactors.extraCatch.minWeight = config["Pass"]["ExtraCatch"]["MinWeight"][0].asFloat(); crossFactors.extraCatch.maxWeight = config["Pass"]["ExtraCatch"]["MaxWeight"][0].asFloat(); // offenseFactors offenseFactors.posDev.minValue = config["Pass"]["PosDeviation"]["MinValue"][1].asFloat(); offenseFactors.posDev.maxValue = config["Pass"]["PosDeviation"]["MaxValue"][1].asFloat(); offenseFactors.posDev.minWeight = config["Pass"]["PosDeviation"]["MinWeight"][1].asFloat(); offenseFactors.posDev.maxWeight = config["Pass"]["PosDeviation"]["MaxWeight"][1].asFloat(); offenseFactors.offense.minValue = config["Pass"]["Offense"]["MinValue"][1].asFloat(); offenseFactors.offense.maxValue = config["Pass"]["Offense"]["MaxValue"][1].asFloat(); offenseFactors.offense.minWeight = config["Pass"]["Offense"]["MinWeight"][1].asFloat(); offenseFactors.offense.maxWeight = config["Pass"]["Offense"]["MaxWeight"][1].asFloat(); offenseFactors.seeInfo.minValue = config["Pass"]["SeeInformation"]["MinValue"][1].asFloat(); offenseFactors.seeInfo.maxValue = config["Pass"]["SeeInformation"]["MaxValue"][1].asFloat(); offenseFactors.seeInfo.minWeight = config["Pass"]["SeeInformation"]["MinWeight"][1].asFloat(); offenseFactors.seeInfo.maxWeight = config["Pass"]["SeeInformation"]["MaxWeight"][1].asFloat(); offenseFactors.ballDist.minValue = config["Pass"]["BallDistance"]["MinValue"][1].asFloat(); offenseFactors.ballDist.maxValue = config["Pass"]["BallDistance"]["MaxValue"][1].asFloat(); offenseFactors.ballDist.minWeight = config["Pass"]["BallDistance"]["MinWeight"][1].asFloat(); offenseFactors.ballDist.maxWeight = config["Pass"]["BallDistance"]["MaxWeight"][1].asFloat(); offenseFactors.dashDist.minValue = config["Pass"]["DashDistance"]["MinValue"][1].asFloat(); offenseFactors.dashDist.maxValue = config["Pass"]["DashDistance"]["MaxValue"][1].asFloat(); offenseFactors.dashDist.minWeight = config["Pass"]["DashDistance"]["MinWeight"][1].asFloat(); offenseFactors.dashDist.maxWeight = config["Pass"]["DashDistance"]["MaxWeight"][1].asFloat(); offenseFactors.breakOffside.minValue = config["Pass"]["BreakOffsideLine"]["MinValue"][1].asFloat(); offenseFactors.breakOffside.maxValue = config["Pass"]["BreakOffsideLine"]["MaxValue"][1].asFloat(); offenseFactors.breakOffside.minWeight = config["Pass"]["BreakOffsideLine"]["MinWeight"][1].asFloat(); offenseFactors.breakOffside.maxWeight = config["Pass"]["BreakOffsideLine"]["MaxWeight"][1].asFloat(); offenseFactors.passedOppNum.minValue = config["Pass"]["PassedOppNum"]["MinValue"][1].asFloat(); offenseFactors.passedOppNum.maxValue = config["Pass"]["PassedOppNum"]["MaxValue"][1].asFloat(); offenseFactors.passedOppNum.minWeight = config["Pass"]["PassedOppNum"]["MinWeight"][1].asFloat(); offenseFactors.passedOppNum.maxWeight = config["Pass"]["PassedOppNum"]["MaxWeight"][1].asFloat(); offenseFactors.statusOppNum.minValue = config["Pass"]["StatusOppNum"]["MinValue"][1].asFloat(); offenseFactors.statusOppNum.maxValue = config["Pass"]["StatusOppNum"]["MaxValue"][1].asFloat(); offenseFactors.statusOppNum.minWeight = config["Pass"]["StatusOppNum"]["MinWeight"][1].asFloat(); offenseFactors.statusOppNum.maxWeight = config["Pass"]["StatusOppNum"]["MaxWeight"][1].asFloat(); offenseFactors.securityDeltaCycle.minValue = config["Pass"]["SecurityDeltaCycle"]["MinValue"][1].asFloat(); offenseFactors.securityDeltaCycle.maxValue = config["Pass"]["SecurityDeltaCycle"]["MaxValue"][1].asFloat(); offenseFactors.securityDeltaCycle.minWeight = config["Pass"]["SecurityDeltaCycle"]["MinWeight"][1].asFloat(); offenseFactors.securityDeltaCycle.maxWeight = config["Pass"]["SecurityDeltaCycle"]["MaxWeight"][1].asFloat(); offenseFactors.statusOppDist.minValue = config["Pass"]["StatusOppDistance"]["MinValue"][1].asFloat(); offenseFactors.statusOppDist.maxValue = config["Pass"]["StatusOppDistance"]["MaxValue"][1].asFloat(); offenseFactors.statusOppDist.minWeight = config["Pass"]["StatusOppDistance"]["MinWeight"][1].asFloat(); offenseFactors.statusOppDist.maxWeight = config["Pass"]["StatusOppDistance"]["MaxWeight"][1].asFloat(); offenseFactors.statusOppDir.minValue = config["Pass"]["StatusOppDirection"]["MinValue"][1].asFloat(); offenseFactors.statusOppDir.maxValue = config["Pass"]["StatusOppDirection"]["MaxValue"][1].asFloat(); offenseFactors.statusOppDir.minWeight = config["Pass"]["StatusOppDirection"]["MinWeight"][1].asFloat(); offenseFactors.statusOppDir.maxWeight = config["Pass"]["StatusOppDirection"]["MaxWeight"][1].asFloat(); offenseFactors.statusShoot.minValue = config["Pass"]["StatusShoot"]["MinValue"][1].asFloat(); offenseFactors.statusShoot.maxValue = config["Pass"]["StatusShoot"]["MaxValue"][1].asFloat(); offenseFactors.statusShoot.minWeight = config["Pass"]["StatusShoot"]["MinWeight"][1].asFloat(); offenseFactors.statusShoot.maxWeight = config["Pass"]["StatusShoot"]["MaxWeight"][1].asFloat(); offenseFactors.dribblePath.minValue = config["Pass"]["DribblePath"]["MinValue"][1].asFloat(); offenseFactors.dribblePath.maxValue = config["Pass"]["DribblePath"]["MaxValue"][1].asFloat(); offenseFactors.dribblePath.minWeight = config["Pass"]["DribblePath"]["MinWeight"][1].asFloat(); offenseFactors.dribblePath.maxWeight = config["Pass"]["DribblePath"]["MaxWeight"][1].asFloat(); offenseFactors.defenseLine.minValue = config["Pass"]["DefenseLine"]["MinValue"][1].asFloat(); offenseFactors.defenseLine.maxValue = config["Pass"]["DefenseLine"]["MaxValue"][1].asFloat(); offenseFactors.defenseLine.minWeight = config["Pass"]["DefenseLine"]["MinWeight"][1].asFloat(); offenseFactors.defenseLine.maxWeight = config["Pass"]["DefenseLine"]["MaxWeight"][1].asFloat(); offenseFactors.extraCatch.minValue = config["Pass"]["ExtraCatch"]["MinValue"][1].asFloat(); offenseFactors.extraCatch.maxValue = config["Pass"]["ExtraCatch"]["MaxValue"][1].asFloat(); offenseFactors.extraCatch.minWeight = config["Pass"]["ExtraCatch"]["MinWeight"][1].asFloat(); offenseFactors.extraCatch.maxWeight = config["Pass"]["ExtraCatch"]["MaxWeight"][1].asFloat(); // secureBallFactors secureBallFactors.posDev.minValue = config["Pass"]["PosDeviation"]["MinValue"][2].asFloat(); secureBallFactors.posDev.maxValue = config["Pass"]["PosDeviation"]["MaxValue"][2].asFloat(); secureBallFactors.posDev.minWeight = config["Pass"]["PosDeviation"]["MinWeight"][2].asFloat(); secureBallFactors.posDev.maxWeight = config["Pass"]["PosDeviation"]["MaxWeight"][2].asFloat(); secureBallFactors.offense.minValue = config["Pass"]["Offense"]["MinValue"][2].asFloat(); secureBallFactors.offense.maxValue = config["Pass"]["Offense"]["MaxValue"][2].asFloat(); secureBallFactors.offense.minWeight = config["Pass"]["Offense"]["MinWeight"][2].asFloat(); secureBallFactors.offense.maxWeight = config["Pass"]["Offense"]["MaxWeight"][2].asFloat(); secureBallFactors.seeInfo.minValue = config["Pass"]["SeeInformation"]["MinValue"][2].asFloat(); secureBallFactors.seeInfo.maxValue = config["Pass"]["SeeInformation"]["MaxValue"][2].asFloat(); secureBallFactors.seeInfo.minWeight = config["Pass"]["SeeInformation"]["MinWeight"][2].asFloat(); secureBallFactors.seeInfo.maxWeight = config["Pass"]["SeeInformation"]["MaxWeight"][2].asFloat(); secureBallFactors.ballDist.minValue = config["Pass"]["BallDistance"]["MinValue"][2].asFloat(); secureBallFactors.ballDist.maxValue = config["Pass"]["BallDistance"]["MaxValue"][2].asFloat(); secureBallFactors.ballDist.minWeight = config["Pass"]["BallDistance"]["MinWeight"][2].asFloat(); secureBallFactors.ballDist.maxWeight = config["Pass"]["BallDistance"]["MaxWeight"][2].asFloat(); secureBallFactors.dashDist.minValue = config["Pass"]["DashDistance"]["MinValue"][2].asFloat(); secureBallFactors.dashDist.maxValue = config["Pass"]["DashDistance"]["MaxValue"][2].asFloat(); secureBallFactors.dashDist.minWeight = config["Pass"]["DashDistance"]["MinWeight"][2].asFloat(); secureBallFactors.dashDist.maxWeight = config["Pass"]["DashDistance"]["MaxWeight"][2].asFloat(); secureBallFactors.breakOffside.minValue = config["Pass"]["BreakOffsideLine"]["MinValue"][2].asFloat(); secureBallFactors.breakOffside.maxValue = config["Pass"]["BreakOffsideLine"]["MaxValue"][2].asFloat(); secureBallFactors.breakOffside.minWeight = config["Pass"]["BreakOffsideLine"]["MinWeight"][2].asFloat(); secureBallFactors.breakOffside.maxWeight = config["Pass"]["BreakOffsideLine"]["MaxWeight"][2].asFloat(); secureBallFactors.passedOppNum.minValue = config["Pass"]["PassedOppNum"]["MinValue"][2].asFloat(); secureBallFactors.passedOppNum.maxValue = config["Pass"]["PassedOppNum"]["MaxValue"][2].asFloat(); secureBallFactors.passedOppNum.minWeight = config["Pass"]["PassedOppNum"]["MinWeight"][2].asFloat(); secureBallFactors.passedOppNum.maxWeight = config["Pass"]["PassedOppNum"]["MaxWeight"][2].asFloat(); secureBallFactors.statusOppNum.minValue = config["Pass"]["StatusOppNum"]["MinValue"][2].asFloat(); secureBallFactors.statusOppNum.maxValue = config["Pass"]["StatusOppNum"]["MaxValue"][2].asFloat(); secureBallFactors.statusOppNum.minWeight = config["Pass"]["StatusOppNum"]["MinWeight"][2].asFloat(); secureBallFactors.statusOppNum.maxWeight = config["Pass"]["StatusOppNum"]["MaxWeight"][2].asFloat(); secureBallFactors.securityDeltaCycle.minValue = config["Pass"]["SecurityDeltaCycle"]["MinValue"][2].asFloat(); secureBallFactors.securityDeltaCycle.maxValue = config["Pass"]["SecurityDeltaCycle"]["MaxValue"][2].asFloat(); secureBallFactors.securityDeltaCycle.minWeight = config["Pass"]["SecurityDeltaCycle"]["MinWeight"][2].asFloat(); secureBallFactors.securityDeltaCycle.maxWeight = config["Pass"]["SecurityDeltaCycle"]["MaxWeight"][2].asFloat(); secureBallFactors.statusOppDist.minValue = config["Pass"]["StatusOppDistance"]["MinValue"][2].asFloat(); secureBallFactors.statusOppDist.maxValue = config["Pass"]["StatusOppDistance"]["MaxValue"][2].asFloat(); secureBallFactors.statusOppDist.minWeight = config["Pass"]["StatusOppDistance"]["MinWeight"][2].asFloat(); secureBallFactors.statusOppDist.maxWeight = config["Pass"]["StatusOppDistance"]["MaxWeight"][2].asFloat(); secureBallFactors.statusOppDir.minValue = config["Pass"]["StatusOppDirection"]["MinValue"][2].asFloat(); secureBallFactors.statusOppDir.maxValue = config["Pass"]["StatusOppDirection"]["MaxValue"][2].asFloat(); secureBallFactors.statusOppDir.minWeight = config["Pass"]["StatusOppDirection"]["MinWeight"][2].asFloat(); secureBallFactors.statusOppDir.maxWeight = config["Pass"]["StatusOppDirection"]["MaxWeight"][2].asFloat(); secureBallFactors.statusShoot.minValue = config["Pass"]["StatusShoot"]["MinValue"][2].asFloat(); secureBallFactors.statusShoot.maxValue = config["Pass"]["StatusShoot"]["MaxValue"][2].asFloat(); secureBallFactors.statusShoot.minWeight = config["Pass"]["StatusShoot"]["MinWeight"][2].asFloat(); secureBallFactors.statusShoot.maxWeight = config["Pass"]["StatusShoot"]["MaxWeight"][2].asFloat(); secureBallFactors.dribblePath.minValue = config["Pass"]["DribblePath"]["MinValue"][2].asFloat(); secureBallFactors.dribblePath.maxValue = config["Pass"]["DribblePath"]["MaxValue"][2].asFloat(); secureBallFactors.dribblePath.minWeight = config["Pass"]["DribblePath"]["MinWeight"][2].asFloat(); secureBallFactors.dribblePath.maxWeight = config["Pass"]["DribblePath"]["MaxWeight"][2].asFloat(); secureBallFactors.defenseLine.minValue = config["Pass"]["DefenseLine"]["MinValue"][2].asFloat(); secureBallFactors.defenseLine.maxValue = config["Pass"]["DefenseLine"]["MaxValue"][2].asFloat(); secureBallFactors.defenseLine.minWeight = config["Pass"]["DefenseLine"]["MinWeight"][2].asFloat(); secureBallFactors.defenseLine.maxWeight = config["Pass"]["DefenseLine"]["MaxWeight"][2].asFloat(); secureBallFactors.extraCatch.minValue = config["Pass"]["ExtraCatch"]["MinValue"][2].asFloat(); secureBallFactors.extraCatch.maxValue = config["Pass"]["ExtraCatch"]["MaxValue"][2].asFloat(); secureBallFactors.extraCatch.minWeight = config["Pass"]["ExtraCatch"]["MinWeight"][2].asFloat(); secureBallFactors.extraCatch.maxWeight = config["Pass"]["ExtraCatch"]["MaxWeight"][2].asFloat(); // breakOffsideFactors breakOffsideFactors.posDev.minValue = config["Pass"]["PosDeviation"]["MinValue"][3].asFloat(); breakOffsideFactors.posDev.maxValue = config["Pass"]["PosDeviation"]["MaxValue"][3].asFloat(); breakOffsideFactors.posDev.minWeight = config["Pass"]["PosDeviation"]["MinWeight"][3].asFloat(); breakOffsideFactors.posDev.maxWeight = config["Pass"]["PosDeviation"]["MaxWeight"][3].asFloat(); breakOffsideFactors.offense.minValue = config["Pass"]["Offense"]["MinValue"][3].asFloat(); breakOffsideFactors.offense.maxValue = config["Pass"]["Offense"]["MaxValue"][3].asFloat(); breakOffsideFactors.offense.minWeight = config["Pass"]["Offense"]["MinWeight"][3].asFloat(); breakOffsideFactors.offense.maxWeight = config["Pass"]["Offense"]["MaxWeight"][3].asFloat(); breakOffsideFactors.seeInfo.minValue = config["Pass"]["SeeInformation"]["MinValue"][3].asFloat(); breakOffsideFactors.seeInfo.maxValue = config["Pass"]["SeeInformation"]["MaxValue"][3].asFloat(); breakOffsideFactors.seeInfo.minWeight = config["Pass"]["SeeInformation"]["MinWeight"][3].asFloat(); breakOffsideFactors.seeInfo.maxWeight = config["Pass"]["SeeInformation"]["MaxWeight"][3].asFloat(); breakOffsideFactors.ballDist.minValue = config["Pass"]["BallDistance"]["MinValue"][3].asFloat(); breakOffsideFactors.ballDist.maxValue = config["Pass"]["BallDistance"]["MaxValue"][3].asFloat(); breakOffsideFactors.ballDist.minWeight = config["Pass"]["BallDistance"]["MinWeight"][3].asFloat(); breakOffsideFactors.ballDist.maxWeight = config["Pass"]["BallDistance"]["MaxWeight"][3].asFloat(); breakOffsideFactors.dashDist.minValue = config["Pass"]["DashDistance"]["MinValue"][3].asFloat(); breakOffsideFactors.dashDist.maxValue = config["Pass"]["DashDistance"]["MaxValue"][3].asFloat(); breakOffsideFactors.dashDist.minWeight = config["Pass"]["DashDistance"]["MinWeight"][3].asFloat(); breakOffsideFactors.dashDist.maxWeight = config["Pass"]["DashDistance"]["MaxWeight"][3].asFloat(); breakOffsideFactors.breakOffside.minValue = config["Pass"]["BreakOffsideLine"]["MinValue"][3].asFloat(); breakOffsideFactors.breakOffside.maxValue = config["Pass"]["BreakOffsideLine"]["MaxValue"][3].asFloat(); breakOffsideFactors.breakOffside.minWeight = config["Pass"]["BreakOffsideLine"]["MinWeight"][3].asFloat(); breakOffsideFactors.breakOffside.maxWeight = config["Pass"]["BreakOffsideLine"]["MaxWeight"][3].asFloat(); breakOffsideFactors.passedOppNum.minValue = config["Pass"]["PassedOppNum"]["MinValue"][3].asFloat(); breakOffsideFactors.passedOppNum.maxValue = config["Pass"]["PassedOppNum"]["MaxValue"][3].asFloat(); breakOffsideFactors.passedOppNum.minWeight = config["Pass"]["PassedOppNum"]["MinWeight"][3].asFloat(); breakOffsideFactors.passedOppNum.maxWeight = config["Pass"]["PassedOppNum"]["MaxWeight"][3].asFloat(); breakOffsideFactors.statusOppNum.minValue = config["Pass"]["StatusOppNum"]["MinValue"][3].asFloat(); breakOffsideFactors.statusOppNum.maxValue = config["Pass"]["StatusOppNum"]["MaxValue"][3].asFloat(); breakOffsideFactors.statusOppNum.minWeight = config["Pass"]["StatusOppNum"]["MinWeight"][3].asFloat(); breakOffsideFactors.statusOppNum.maxWeight = config["Pass"]["StatusOppNum"]["MaxWeight"][3].asFloat(); breakOffsideFactors.securityDeltaCycle.minValue = config["Pass"]["SecurityDeltaCycle"]["MinValue"][3].asFloat(); breakOffsideFactors.securityDeltaCycle.maxValue = config["Pass"]["SecurityDeltaCycle"]["MaxValue"][3].asFloat(); breakOffsideFactors.securityDeltaCycle.minWeight = config["Pass"]["SecurityDeltaCycle"]["MinWeight"][3].asFloat(); breakOffsideFactors.securityDeltaCycle.maxWeight = config["Pass"]["SecurityDeltaCycle"]["MaxWeight"][3].asFloat(); breakOffsideFactors.statusOppDist.minValue = config["Pass"]["StatusOppDistance"]["MinValue"][3].asFloat(); breakOffsideFactors.statusOppDist.maxValue = config["Pass"]["StatusOppDistance"]["MaxValue"][3].asFloat(); breakOffsideFactors.statusOppDist.minWeight = config["Pass"]["StatusOppDistance"]["MinWeight"][3].asFloat(); breakOffsideFactors.statusOppDist.maxWeight = config["Pass"]["StatusOppDistance"]["MaxWeight"][3].asFloat(); breakOffsideFactors.statusOppDir.minValue = config["Pass"]["StatusOppDirection"]["MinValue"][3].asFloat(); breakOffsideFactors.statusOppDir.maxValue = config["Pass"]["StatusOppDirection"]["MaxValue"][3].asFloat(); breakOffsideFactors.statusOppDir.minWeight = config["Pass"]["StatusOppDirection"]["MinWeight"][3].asFloat(); breakOffsideFactors.statusOppDir.maxWeight = config["Pass"]["StatusOppDirection"]["MaxWeight"][3].asFloat(); breakOffsideFactors.statusShoot.minValue = config["Pass"]["StatusShoot"]["MinValue"][3].asFloat(); breakOffsideFactors.statusShoot.maxValue = config["Pass"]["StatusShoot"]["MaxValue"][3].asFloat(); breakOffsideFactors.statusShoot.minWeight = config["Pass"]["StatusShoot"]["MinWeight"][3].asFloat(); breakOffsideFactors.statusShoot.maxWeight = config["Pass"]["StatusShoot"]["MaxWeight"][3].asFloat(); breakOffsideFactors.dribblePath.minValue = config["Pass"]["DribblePath"]["MinValue"][3].asFloat(); breakOffsideFactors.dribblePath.maxValue = config["Pass"]["DribblePath"]["MaxValue"][3].asFloat(); breakOffsideFactors.dribblePath.minWeight = config["Pass"]["DribblePath"]["MinWeight"][3].asFloat(); breakOffsideFactors.dribblePath.maxWeight = config["Pass"]["DribblePath"]["MaxWeight"][3].asFloat(); breakOffsideFactors.defenseLine.minValue = config["Pass"]["DefenseLine"]["MinValue"][3].asFloat(); breakOffsideFactors.defenseLine.maxValue = config["Pass"]["DefenseLine"]["MaxValue"][3].asFloat(); breakOffsideFactors.defenseLine.minWeight = config["Pass"]["DefenseLine"]["MinWeight"][3].asFloat(); breakOffsideFactors.defenseLine.maxWeight = config["Pass"]["DefenseLine"]["MaxWeight"][3].asFloat(); breakOffsideFactors.extraCatch.minValue = config["Pass"]["ExtraCatch"]["MinValue"][3].asFloat(); breakOffsideFactors.extraCatch.maxValue = config["Pass"]["ExtraCatch"]["MaxValue"][3].asFloat(); breakOffsideFactors.extraCatch.minWeight = config["Pass"]["ExtraCatch"]["MinWeight"][3].asFloat(); breakOffsideFactors.extraCatch.maxWeight = config["Pass"]["ExtraCatch"]["MaxWeight"][3].asFloat();}void Pass::fillOnePassValuesByFactors(const KickInterceptCalculate &interCalc, const PassFactors **factors, float *valuesList[], unsigned num){ float offenseWeight[MAX_FACTORS_NUM]; float statusOppNumWeight[MAX_FACTORS_NUM]; float statusOppDistWeight[MAX_FACTORS_NUM]; float statusOppDirWeight[MAX_FACTORS_NUM]; float breakOffsideWeight[MAX_FACTORS_NUM]; float passedOppNumWeight[MAX_FACTORS_NUM]; float statusShootWeight[MAX_FACTORS_NUM]; float dribblePathWeight[MAX_FACTORS_NUM]; float ballDistWeight[MAX_FACTORS_NUM]; float dashDistWeight[MAX_FACTORS_NUM]; float posDevWeight[MAX_FACTORS_NUM]; float seeInfoWeight[MAX_FACTORS_NUM]; float securityDeltaCycleWeight[MAX_FACTORS_NUM]; float defenseLineWeight[MAX_FACTORS_NUM]; float extraCatchWeight[MAX_FACTORS_NUM]; float planWeight[MAX_FACTORS_NUM]; const KickInterceptPlayer &checkInterPlayer = interCalc.getFastestTmmInterPlayer(); if (logLevel >= 2) LOG << "New pass Player: " << checkInterPlayer.getPlayer().getUniNum() << " - interPoint: " << checkInterPlayer.getInterPoint() << " - ballVel: " << Point(interCalc.getFirstBall().getVel().getMagnitude(), interCalc.getFirstBall().getVel().getDirection()) << " ----------------" << endl << "command: " << interCalc.getKickCommand().toString() << endl; // calculating quantomic weight bool quantomicWeight = true; float maxBallVel = reRate(checkInterPlayer.getInterTime(), 1, 4, 1, 2.7, RRM_DIRECT); if (interCalc.getFirstBall().getVel().getMagnitude() > maxBallVel) quantomicWeight = false; else if (WorldModel::getOutDistance( checkInterPlayer.getInterPoint()) > 0) quantomicWeight = false; else if (interCalc.getFirstBall().getDistance( checkInterPlayer.getInterPoint()) < MIN_PASS_DIST) quantomicWeight = false; else if (checkInterPlayer.getPlayer().getStamina() < 2000) quantomicWeight = false;/* else if (checkInterPlayer.getPlayer().getPos().getX() > worldModel->getOppOffsideLine() && checkInterPlayer.getPlayer().getPos().getX() > 0 && checkInterPlayer.getPlayer().getPos().getX() > worldModel->getBall().getPos().getX()) quantomicWeight = false;*/ if (logLevel >= 2) LOG << "quantomicWeight: " << quantomicWeight << endl; if (!quantomicWeight) { if (logLevel >= 1) LOG << "P" << checkInterPlayer.getPlayer().getUniNum() << "\tPoint: " << checkInterPlayer.getInterPoint() << "\t\tweights:"; for (unsigned i = 0; i < num; i++) { *valuesList[i] = -0xFFFF; if (logLevel >= 1) LOG << " " << *valuesList[i]; } if (logLevel >= 1) LOG << endl; return; } // calculating offense weight float offenseValue = checkInterPlayer.getInterPoint().x - interCalc.getFirstBall().getPos().getX(); if (logLevel >= 2) LOG << "offenseValue: " << offenseValue << endl << "offenseWeight:"; for (unsigned i = 0; i < num; i++) { offenseWeight[i] = reRate(offenseValue, factors[i]->offense.minValue, factors[i]->offense.maxValue, factors[i]->offense.minWeight, factors[i]->offense.maxWeight, RRM_DIRECT); if (logLevel >= 2) LOG << " " << offenseWeight[i]; } if (logLevel >= 2) LOG << endl; // calculating statusOppNum weight float statusOppNumValue = interCalc.getOppCheckedPlayersNum(); if (logLevel >= 2) LOG << "statusOppNumValue: " << statusOppNumValue << endl << "statusOppNumWeight:";
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -