sk.fiit.jim.agent.models.LinePatternRecognition
Obrázok1: Vzory čiar na ihrisku
Typ triedy: public abstract
Trieda zoskupuje funkcie na rozpoznávanie vzorov na ihrisku.
Typ: public static
Návratová hodnota: boolean
Parametre:
ParsedLineWithFlags line1
ParsedLineWithFlags line2
Funkcia zistí, či čiary predané ako parametre majú spoločný priesečník (T alebo +).
Typ: private static
Návratová hodnota: double
Parametre:
Vector3D a
Vector3D b
Vypočíta druhú mocninu vzdialenosti medzi bodmi.
Typ: public static
Návratová hodnota: boolean
Parametre:
Vector3D a
Vector3D b
Zistí, či by body predané ako parameter mohli reprezentovať jeden bod. Najskôr sa vypočíta maximálna možná vzdialenosť od jedného bodu, do akej by sa mal nachádzať druhý bod, aby bolo možné povedať, že sa jedná o jeden a ten istý bod. Maximálna vzdialenosť je vzdialenosť medzi bodom a tým istým bodom otočeným o 4 stupne v oboch smeroch (horizontálne aj vertikálne), t.j. medzi bodom a = (r, phi, theta) a‘ = (r, phi + 4°, theta + 4°). 4° je maximálny možný rozdiel medzi bodmi (šum je z intervalu ).
Typ: public static
Návratová hodnota: byte
Parametre:
Vector3D point
ParsedLineWithFlags line
Vzor: „Vlajka a čiara“
Zistí, ktorý z bodov čiary môže byť totožný z bodom predaným ako argument.
Vráti:
V prípade, ak oba body sa nachádzajú v tolerovanej vzdialenosti šumu, za totožný bod sa považuje bod čiary, ktorý je bližšie k danému bodu.
Bod čiary musí byť koncovým bodom danej čiary.
Typ: public static
Návratová hodnota: byte
Parametre:
ParsedLineWithFlags line1
ParsedLineWithFlags line2
Funkcia zistí, či dve čiary majú spoločný bod.
Vráti:
Typ: public static
Návratová hodnota: byte
Parametre:
ParsedLineWithFlags line1
ParsedLineWithFlags line2
Vzor:„roh“
Funkcia zistí, či čiary predané ako parametre predstavujú roh.
Vráti:
Typ: public static
Návratová hodnota: byte
Parametre:
ParsedLineWithFlags line1
ParsedLineWithFlags line2
Vzor:„časť kruhu“
Funkcia zistí, či čiary predané ako parametre predstavujú roh.
Vráti:
Poznámka:ak dve čiary majú spoločný koncový bod – môže sa jednať buď o roh alebo o časť kruhu. Pri rohu zvierajú čiary 90° uhol, pri časti kruhu to je 144°, ak je uhol menší ako 117° (v polovici medzi 90 a 144) → jedná sa o roh, inak ak je väčší ako 117° jedná sa o časť kruhu. 27° rozdiel je tolerancia spôsobená zašumením informácii o čiarach.
(ešte neimplementované)
Typ: public static
Návratová hodnota: byte
Parametre:
ParsedLineWithFlags line1
ParsedLineWithFlags line2
Vzor: „T“
Zistí, či je medzi čiarami „T“ priesečník.
Vracia:
(ešte neimplementované)
Typ: public static
Návratová hodnota: byte
Parametre:
ParsedLineWithFlags line1
ParsedLineWithFlags line2
Vzor: „+“
Vracia:
Vzor + sa nachádza iba medzi stredovou čiarou a kruhom.
(pre funkčnosť vyžaduje doimplementovanie funkcie isT)
Typ: public static
Návratová hodnota: byte[]
Parametre:
ParsedLineWithFlags line1
ParsedLineWithFlags line2
ParsedLineWithFlags line3
Zistí, či čiary formujú časť bránkoviska.
Vracia:
Typ: public static
Návratová hodnota: boolean
Parametre:
Vector3D point
ParsedLineWithFlags line
Vzor:„Bránka a čiara“
Zistí, či daná čiara je v blízkosti bránky (s toleranciou odchýlky je možné, že funkcia vráti hodnotu „true“ aj pre nejakú z čiar bránkoviska).