From 412dd57577e00135075dbb1b122429a3bde12342 Mon Sep 17 00:00:00 2001 From: LukaszChrostowski Date: Thu, 11 Jan 2024 20:10:52 +0100 Subject: [PATCH] =?UTF-8?q?Dodanie=20wszystkich=20zmiennych=20z=20modelu?= =?UTF-8?q?=20do=20apki=20oraz=20ich=20obs=C5=82uga?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/components/Hero.jsx | 55 +++++++++++++----- .../modele/__pycache__/modele.cpython-39.pyc | Bin 6291 -> 6291 bytes app/src/flask-server/server.py | 34 +++++++---- 3 files changed, 66 insertions(+), 23 deletions(-) diff --git a/app/src/components/Hero.jsx b/app/src/components/Hero.jsx index b61daee..a83eaf5 100644 --- a/app/src/components/Hero.jsx +++ b/app/src/components/Hero.jsx @@ -8,8 +8,40 @@ const Hero = () => { const [isOpen, setIsOpen] = useState(false); const [gameMinute, setGameMinute] = useState(''); + const [firstShot, setfirstShot] = useState(''); + const [oneOnOne, SetoneOnOne] = useState(''); + const [afterAirDuel, SetafterAirDuele] = useState(''); + const [openGoal, SetOpenGoal] = useState(''); + const [afterDribbling, SetafterDribbling] = useState(''); + const [redirect, SetRedirect] = useState(''); + const toggleDropdown = () => setIsOpen(!isOpen); const handleMinuteChange = (e) => setGameMinute(e.target.value); + + const handleFirstShotChange = (event) => { + setfirstShot(event.target.checked); +}; + +const handleOneOnOneChange = (event) => { + SetoneOnOne(event.target.checked); +}; + +const handleAfterAirDuelChange = (event) => { + SetafterAirDuele(event.target.checked); +}; + +const handleOpenGoalChange = (event) => { + SetOpenGoal(event.target.checked); +}; + +const handleAfterDribblingChange = (event) => { + SetafterDribbling(event.target.checked); +}; + +const handleRedirectChange = (event) => { + SetRedirect(event.target.checked); +}; + const [data, setData] = useState(""); //zmienne globalne @@ -73,6 +105,7 @@ const Hero = () => { setNumberOfStrikers(0) setNumberOfGoalkeppers(0) setNumberOfShooters(0) + setGameMinute('') } @@ -242,9 +275,9 @@ const Hero = () => { ///Dziwny Blad loadPlayers() if (number_of_shooters == 1) { - console.log('Wysyłanie wartości: ', bodyPart, technique); + console.log('Wysyłanie wartości: ', bodyPart, technique, actionType, shooterPossition, gameMinute, firstShot); // Użyj backticksów zamiast zwykłych cudzysłowów - fetch(`http://127.0.0.1:5000/get_model?shooter=${shooter}&goalkeeper=${goalkeeper}&defenders=${defenders}&strickers=${stricers}&bodyPart=${bodyPart}&technique=${technique}&actionType=${actionType}&shooterPossition=${shooterPossition}`).then( + fetch(`http://127.0.0.1:5000/get_model?shooter=${shooter}&goalkeeper=${goalkeeper}&defenders=${defenders}&strickers=${stricers}&bodyPart=${bodyPart}&technique=${technique}&actionType=${actionType}&shooterPossition=${shooterPossition}&gameMinute=${gameMinute}&shot_first_time=${firstShot}&shot_one_on_one=${oneOnOne}&shot_aerial_won=${afterAirDuel}&shot_open_goal=${openGoal}&shot_follows_dribble=${afterDribbling}&shot_redirect=${redirect}`).then( res => res.json() ).then( data => { @@ -263,8 +296,6 @@ const Hero = () => { } } - - /* Funkcja dodająca listener do boiska*/ @@ -437,37 +468,35 @@ const Hero = () => { -
+

Parametry strzału

- - {/*
diff --git a/app/src/flask-server/modele/__pycache__/modele.cpython-39.pyc b/app/src/flask-server/modele/__pycache__/modele.cpython-39.pyc index 616f5ef2af9d965a5abdf6ad6e37f277bb335bb8..b1fc933cb0536675acaddb032c28746dbe7243e1 100644 GIT binary patch delta 20 acmbPiIN6Xpk(ZZ?0SNLX7Hs71kN^NL#sr)I delta 20 acmbPiIN6Xpk(ZZ?0SK;qoWGH~LjnLdng!Va diff --git a/app/src/flask-server/server.py b/app/src/flask-server/server.py index 6ef10f5..aa6722e 100644 --- a/app/src/flask-server/server.py +++ b/app/src/flask-server/server.py @@ -31,6 +31,15 @@ def get_model(): acionType = request.args.get('actionType') minute = request.args.get('gameMinute') position_name = request.args.get('shooterPossition') + gameMinute = request.args.get('gameMinute') + + shot_first_time = request.args.get('shot_first_time') + shot_one_on_one = request.args.get('shot_one_one') + shot_aerial_won = request.args.get('shot_aerial_won') + shot_open_goal = request.args.get('shot_open_goal') + shot_follows_dribble = request.args.get('shot_follows_dribble') + shot_redirect = request.args.get('shot_redirect') + shooter_x, shooter_y = shooter.split(',') @@ -81,6 +90,9 @@ def get_model(): atakujacy_lista = konwertujDoListy(atakujacy) atakujacy_macierz = zmienWMaciez(atakujacy_lista) + if gameMinute == "": + gameMinute = 1 # to change + print("wspolrzedne obroncow: ", obroncy) print("wspolrzedne atakujacych: ", atakujacy) @@ -113,7 +125,9 @@ def get_model(): print("Posortowani obroncy: ", posortowani_obroncy) print("Posortowani atakujacy: ", posortowani_atakujacy) - + + number_of_players_opponents = np.sum(~np.isnan(posortowani_obroncy).all(axis=1)) + number_of_players_teammates = np.sum(~np.isnan(posortowani_atakujacy).all(axis=1)) ## add angle, match minutes and number of players @@ -142,22 +156,22 @@ def get_model(): print("bramkarz:", goalkepper_x, goalkepper_y) # MODEL XGBOOST - response = xgboost_predict_proba(minute=1, + response = xgboost_predict_proba(minute=gameMinute, position_name=position_name, shot_body_part_name=body_part, shot_technique_name=technique, shot_type_name=acionType, - shot_first_time=False, - shot_one_on_one=False, - shot_aerial_won=False, + shot_first_time=shot_first_time, + shot_one_on_one=shot_one_on_one, + shot_aerial_won=shot_aerial_won, shot_deflected=False, - shot_open_goal=False, - shot_follows_dribble=False, - shot_redirect=False, + shot_open_goal=shot_open_goal, + shot_follows_dribble=shot_follows_dribble, + shot_redirect=shot_redirect, shot_kick_off=False, x1=shooter_x, y1=shooter_y, - number_of_players_opponents=0, - number_of_players_teammates=0, + number_of_players_opponents=number_of_players_opponents, + number_of_players_teammates=number_of_players_teammates, angle=angle, distance=dist, x_player_opponent_Goalkeeper=goalkepper_x, y_player_opponent_Goalkeeper=goalkepper_y, x_player_opponent_1=posortowani_obroncy[0][0], y_player_opponent_1=posortowani_obroncy[0][1],