Joms.RoutingControll
Constructor
Ovládací prvek umožňující vyhledání trasy, výpis itineráře a zobrazení výškového profilu.
Uživatel může skrze formulář zadat odkud a kam chce trasu vyhledat. Pokud je nalezeno více výsledků,
pak je mu nabýtnuta možnost volby z rozbalovacího seznamu.
Může libovolně přidávat počet průjezdních bodů (až do dosažení definovaného maxima).
Po vyhledání trasy je zobrazen interaktivní itinerář a na vyžádání výškový profil.
Uživatel může posunem vlaječky v mapě změnit polohu průjezdního bodu jeho tažením.
Pro komunikaci s okolím využívá event routingCtrlAction. Ten má parametry:
- this - pointer an objekt, který event vyvolal
- komponenta - komponenta ovládacího prvku, která event vyvolala
- action - akce komponenty
- p1, p2 - parametry, jejichž význam je závyslý na parametrech komponenta a action
parametry
| Joms.App | app | hlavní objekt aplikace |
| Joms.RoutingControllConf | routingControllCfg | konfigurační objekt ovládacího prvku na vyhledání trasy |
metody
- init(formElement, resultElement, heightProfile)
- drawForm()
- setCriterium(criterium, param)
- addDestination(value, pos)
- search(zoomToRoute)
- setAndSearchRoutingDefinition(def, showProfile, zoomToRoute)
- reset(deleteDestinations)
- print()
Metody
Inicializuje ovládací prvek a nastaví elementy, do kterých budou vloženy
jednotlivé části ovládacího prvku na vyhledání trasy.
parametry
| Element | formElement | element, do kterého bude umístěn formulář |
| Element | resultElement | element, do kterého bude umístěn itinerář trasy |
| Element | heightProfile | element, do kterého bude umístěn výškový profil |
Joms.RoutingControll.drawForm()
Vytvoří formulár. V případě, že potřebujete změnit vzhled, pak metodu přetižte (přepsáním funkce v prototypu)
Joms.RoutingControll.addDefaultCriteria()
Přidá implicitní vyhledávácí kritéria
Přidá destinaci. Pokud neexistuje volné políčko ve formuláři, pak je vytvořeno.
parametry
| String | value | Název destinace (může být i souřadnice v GPS formátu) |
| Joms.Coord | pos | Poloha destinace (pokud nechceme aby poloha byla odvozena z názvu destinace vyhledáváním) |
vrací
| boolean | Vrací true, pokud destinace byla úspěšně přidána, nebo false, pokud nikoliv (byl dosažen maximální počet destinací) |
Vyhledá trasu. Po úspěšném vyhledání je trasa zobrazena a je získán její itinerář.
Po vyhledání je volán hook routingCtrlAction s parametry: this, 'route', 'searched'
parametry
| boolean | zoomToRoute | pokud je true, pak je na trasu vystředěno ihned po vyhledání. |
Vyhledá trasu podle textové definice a nastaví políčka průjezdních bodů
parametry
| String | def | definice trasy ve tvaru criterium;criteriumParam;x1;y1;name1;x2;y2;name2[;...] |
| boolean | showProfile | Zobrazit výškový profil po vyhledání trasy |
| boolean | zoomToRoute | Vystředit na trasu po jejím vyhledání |
Joms.RoutingControll.getRoutingDefinition()
Vrátí definici vyhledané trasy (v textovém řetězci). Tuto definici lze obratem použít ve funkci setAndSearchRoutingDefinition.
Odstraní trasu, vymaže itinerář a schová výškový profil
parametry
| boolean | deleteDestinations | odstraní také všechny destinace a vymaže formulář |
Joms.RoutingControll.print()
Vytiskne aktuální výřez mapy, itinerář trasy a výškový profil.
Tisková sestava se otevře do nového okna.
Uživatel si pak může zvolit, co chce tisknout.
Joms.RoutingControll.switchHeightProfile()
Zobrazí nebo skryje výškový profil (podle toho zda je výškový profil vidět či nikoliv)
Joms.RoutingControll.showHeightProfile()
Zobrazí výškový profil. Volá hook routingCtrlAction s parametry: this, 'heightprofile', 'visible', true
Joms.RoutingControll.hideHeightProfile()
Skryje výškový profil. Volá hook routingCtrlAction s parametry: this, 'heightprofile', 'visible', false