Table of Contents

Úvod

Pri rôznych pokusoch implementácií v testovacom režime TestFramework v projekte bola identifikovaná výmena osí X a Y od plánu projektu a bežnej konvencie označovania osí – X horizontálna os, Y vertikálna os. Táto výmena osí v základných výpočtoch projektu nebola plánovaná a značne sťažovala prácu pri návrhu základných pohybov a funkcií pre pohyb a orientáciu hráča Jima v priestore.

Vypracovanie

Analýzou fungovania samotného vnímania polohy a prepočítavania vzdialeností zo základných údajov od servera sme dostali predstavu o správnom modeli týchto výpočtov. Náčrt osí a uhlov použitých pri výpočtoch sa nachádza aj na tímovej wiki.

Schéma č.1.: popis osí a uhlov v prostredí simulácie [2]

Vychádzajúc z tejto schémy a rozmiestnenia uhlov phí a theta sme skontrolovali výpočty týchto osí v triede Vector3D nasledovne:

\RoboCupLibrary\src\sk\fiit\robocup\library\geometry\Vector3D.java

Pričom bolo zistené, že uhly phi a theta sú vymenené vo výpočte. Pre porovnanie kód tímu UT Austin Villa:

Theta:

Phi:

Obdobne sú zamenené aj osi v ďalšej funkcii na výpočet karteziánskych súradníc:

UT Austin Villa:

Ďalšie nezrovnalosti predpokladáme vo výpočtoch rotácií vektorov UT Austin:

Náš projekt:

Záver

Na základe porovnania nášho kódu a kódu UT Austin Villa sme dospeli k poznaniu, že vo výpočtoch uhlov a karteziánskych súradníc došlo k výmene súradníc X,Y a k zámene uhlov Phi a Theta. Identifikovaná zámena je v triede Vector3D. Podobný kód je zverejnený od UT Austin Villa v triede vecposition. Do budúcna sa navrhuje zapracovať tieto zmeny a otestovať ich vplyv na fungovanie ďalších funkcií programu.

Trieda Vector3D a jej výpočty sa používajú v nasledovných triedach, ktoré jej zmena ovplyvní:

bin/sk/fiit/jim/agent/models/AgentPositionCalculator.class

bin/sk/fiit/jim/agent/models/AgentRotationCalculator.class

bin/sk/fiit/jim/agent/models/AgentModel.class

bin/sk/fiit/jim/agent/models/AgentModelTest.class

bin/sk/fiit/jim/agent/models/BodyPart.class

bin/sk/fiit/jim/agent/models/DistanceHelper.class

bin/sk/fiit/jim/agent/models/FixedObject.class

bin/sk/fiit/jim/agent/models/PositionChangeGuardian.class

bin/sk/fiit/jim/agent/models/TacticalInfo.class

a množstvo ďalších.

Zdroje

[1] UT Austin Villa team:

https://github.com/LARG/utaustinvilla3d/blob/master/math/vecposition.cc

[2] FIIT Robotický futbal wiki:

http://team19-18.studenti.fiit.stuba.sk/wiki/doku.php?id=2.jim:poloha:sfericke_suradnice_a_vektory