IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: Zobrazení více bodů na mapě prostřednictvím jiné aplikace

V předchozím kvízu, Online test znalostí SQL a databází, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
Jiří Gracias:1.2.2021 12:05

Ahoj,

jsem začínající vývojář informačního systému, nemám IT vzdělání, ale učím se. Momentálně jsem ale dostal úkol, se kterým si nevím rady ani přes spousty hodin, strávených na google a pročítáním dokumentace k IS a prohledáváním stávajících funkčností IS. No a tak mě tady máte s prosbou o radu/nasměrování.

O co jde? IS, na kterým dělám, umí poskládat URL a otevřít prohlížeč, takže umí např. zobrazit nějakou mapu s nějakým bodem (např. firma, hospoda, ...). Tu URL si poskládá (v tomhle případě) dle pravidel od poskytovatele map (na základě kódu, co napíše vývojář, např. já).

Pak taky umí komunikovat přes API klíč s nějakým externím serverem (a tady už jsou na to moje znalosti trochu kratší), například prostřednictvím téhle adresy:

ttp://dev.vir­tualearth.net/RES­T/v1/Location­s?countryRegi­on={countryRe­gion}&adminDis­trict={adminDis­trict}&locali­ty={locality}&pos­talCode={postal­Code}&addressLi­ne={addressLi­ne}&userLocati­on={userLocati­on}&userIp={u­serIp}&usermap­View={usermap­View}&include­Neighborhood={in­cludeNeighbor­hood}&maxResul­ts={maxResults}&ke­y={BingMapsKe­y}

Data, která se vrátí z téhle adresy, si dovede i rozkódovat a uložit si GPS souřadnice místa.

A já jsem dostal za úkol naučit IS, aby uměl zobrazit takovou mapu, kde je více míst (červených špendlíků na mapě) najednou- podle toho, jaké záznamy v tabulce s umístěními si uživatel vybere.

Co jsem zatím přečetl, jsou dost rozkouskované informace, ze kterých nedokážu nic rozumnýho složit, ba dokonce ani nedokážu najisto rozhodnout, jestli to vůbec jde podle zadání zrealizovat. Jak jsem psal, chce se po mě, aby se otevřela mapa (to umím) a na ní byl jeden, nebo i víc než jen jeden špendlík (a to už právě neumím). Dodávám, že bude potřeba místa na mapě identifikovat ne podle adres, ale podle GPS souřadnic (to asi zvládnu vyřešit sám). Taky ještě asi stojí za to doplnit, že to dělám (už od začátku) jako home office, takže nemám možnost zaklepat na rameno vzdělanýmu IT drsňákovi a utýrat ho množstvím dotazů.

S pozdravem: Juraj

Zkusil jsem: Teď by bylo zkoušení příliš naslepo...

Chci docílit: Viz dotaz.

 
Odpovědět
1.2.2021 12:05
Avatar
Jiří Gracias:1.2.2021 12:11

Ještě jedna věc: IS umí komunikovat s webovým serverem pomocí http zpráv.

 
Nahoru Odpovědět
1.2.2021 12:11
Avatar
Jan Poláček
Tvůrce
Avatar
Odpovídá na Jiří Gracias
Jan Poláček:1.2.2021 12:29

Ahoj, také nemám s tímto nějak zkušenosti, dle API vidím, že to je API pro Bing mapy, podíval jsem se tedy na dokumentaci a tahle část se mi zdá pro tebe vhodná: https://docs.microsoft.com/…a-static-map#…
Tedy dotaz něco jako:

https://dev.virtualearth.net/REST/v1/Imagery/Map/AerialWithLabels?pp=40.804000,-74.464460;;1&pp=40.815180,-74.219250;;2&pp=40.881210,-74.168020;;3&pp=40.810830,-74.260250;;4&pp=40.851800,-74.299900;;5&key={BingMapsAPIKey}
Nahoru Odpovědět
1.2.2021 12:29
Instrukce na adrese 0x77104f29 odkazovala na adresu paměti 0x00000014. S pamětí nelze provést operaci: written.
Avatar
Odpovídá na Jan Poláček
Jiří Gracias:1.2.2021 13:28

Díky moc za odpověď. Problém je, že to vrací obrázek (aspoň takhle jsem to pochopil) a my potřebujeme klasickou, interaktivní mapu. Podle mě je jedinou cestou v poskládání URL (třeba pomocí těch API funkcí) a otevření téhle URL v prohlížeči. Zatím netuším ani z části, jak na to.

 
Nahoru Odpovědět
1.2.2021 13:28
Avatar
Jan Poláček
Tvůrce
Avatar
Odpovídá na Jiří Gracias
Jan Poláček:1.2.2021 17:42

Ahoj, toho jsem si původně nevšiml, hrál jsem si s JS verzí a vyšlo mi toto:
https://publikujem.cz/bingmapa.html

Je to jen nástřel, mrkni do zdrojáku, určitě bych to nějak hodil do pole a to pak procházel, já dal prostě 3 body na zkoušku.

Nahoru Odpovědět
1.2.2021 17:42
Instrukce na adrese 0x77104f29 odkazovala na adresu paměti 0x00000014. S pamětí nelze provést operaci: written.
Avatar
Jiří Gracias:3.2.2021 20:52

Ahoj,

každopádně díky za ukázku. Možná se teď ptám hrozně blbě, ale je to prostě s ohledem na moje znalosti a i dokonce s ohledem na to, že ani pořádně nevím, co konkrétně si k danému problému dostudovat, nebo co zadat za vyhledávací slova do google. Takže ten blbý dotaz: Pochopil jsem, že v případě, co jsi mně ukázal, jde o spuštění mapy za pomoci java scriptu (mini prográmku, co běží prostřednictvím prohlížeče). Ten script je uložený pod nějakou doménou, pod nějakým už hotovým webem, co s Bing mapama jinak nijak nesouvisí. (A mimochodem, Java scriptům vůbec nerozumím, jen jsem ze zdrojáku dokázal vytušit o co jde, ale to je tak všechno.)

Ale já potřebuju poskládat nějakou URL (třeba i s pomocí API funkcí, nevím, netuším?) tak, aby se po vložení téhle URL do adresního řádku prohlížeče zobrazila mapa s vícero pinama (bodíkama). Asi by se zdálo být nejlogičtější, že si to sám nazjišťuju z dokumentací, ale já netuším, na kterou kapitolu (kapitoly) v dokumentaci kliknout. Takže vlastně ani do teď nedokážu rozhodnout, jestli to vůbec jde nebo ne... No a kdyby mě někdo pro začátek nasměroval aspoň na tohle, bylo by to hrozně fajn...

Dík.

 
Nahoru Odpovědět
3.2.2021 20:52
Avatar
Jan Poláček
Tvůrce
Avatar
Odpovídá na Jiří Gracias
Jan Poláček:6.2.2021 16:14

Ano, je to přes javascript, v čem vlastně děláš ty? Možná by mi to pomohlo, protože také dělám IS a jsem zcela svobodný :)
Ale ještě kousek času jsem si k tomu uloupl a našel:
https://docs.microsoft.com/…stom-map-url
A dle toho jsem předělal odkaz na můj příklad:

https://bing.com/maps/default.aspx?cp=50.0835494~14.4341414&lvl=7&sp=point.50.9515067_14.5569892_Rumburk~point.50.2304578_14.0869344_Další~point.48.8109072_14.3152075_Do třetice

Stačí znát co jaký parametr dělá
cp = střed mapy
lvl = jak moc chceš zoomovat
sp = bod na mapě ve formátu point.latitude_lon­gitude_titleS­tring_notesStrin­g_linkURL_pho­toURL - nemusíš použít všechny
chceš li přidat další bod, použiješ ~

Nahoru Odpovědět
6.2.2021 16:14
Instrukce na adrese 0x77104f29 odkazovala na adresu paměti 0x00000014. S pamětí nelze provést operaci: written.
Avatar
Odpovídá na Jan Poláček
Jiří Gracias:8.2.2021 5:27

Ahoj,

moc díky za pomoc! Tohle je přesně to, co jsem potřeboval. Popravdě, kam odkazuješ, mě ani ve snu nenapadlo se podívat (mezi "articles"???), respektive bych to asi i automaticky přeskočil už podle nadpisů (Collections editor and collections parameters???). A rozhodně bych si ani žádná podobná klíčová slova nezadal do vyhledávání. A tak jsem prostě stál na místě. To je jedno.

Zkusil jsem si napsat tuhle adresu:

https://www.bing.com/maps?cp=50~15IvI=5&sp=point.50_15_B1~point.50_16_B2~point.50.5_16_B3~point.50.5_15_B4

A popravdě, pokud cokoli změním na parametrech cp nebo na IvI, tak to nereaguje. Netušíš, kde je důvod?

Zvláštní taky je, že když otevřu v prohlížeči Tvoji adresu, na její konec se něco málo ještě dopíše. U mojí adresy se tak neděje. Čím to může být?

Konkrétní IS sdělím kdyžtak soukromě.

Editováno 8.2.2021 5:30
 
Nahoru Odpovědět
8.2.2021 5:27
Avatar
Jiří Gracias:8.2.2021 5:58

Ojojoj, v té URL výše jsem měl chyby. Správně mělo být:

www.bing.com/maps/default.aspx?cp=50.25~15.5&lvl=7&sp=point.50_15_B1~point.50_16_B2~point.50.5_16_B3~point.50.5_15_B4

Ale stejně to nefunguje, když měním parametry, nic se neděje...

 
Nahoru Odpovědět
8.2.2021 5:58
Avatar
Jiří Gracias:8.2.2021 6:17

Zdá se mně, že když zadám jediný bod mapy, velký zoom a špatný střed tak, že by se bod na mapě nezobrazoval, tak si to automaticky napolohuje střed tak, aby se ten bod na mapě zobrazoval. Tj. pokud zadám parametry nelogicky, samo si to leccos opraví.

 
Nahoru Odpovědět
8.2.2021 6:17
Avatar
Jan Poláček
Tvůrce
Avatar
Odpovídá na Jiří Gracias
Jan Poláček:8.2.2021 12:57

Zkopíroval jsem tvou URL adresu a vidím všechny 4 body, pokud u nějakého bodu změním část souřadnice, a aktualizuju, tak se bod přemístí, kde vidíš problém?

Nahoru Odpovědět
8.2.2021 12:57
Instrukce na adrese 0x77104f29 odkazovala na adresu paměti 0x00000014. S pamětí nelze provést operaci: written.
Avatar
Jiří Gracias:11.2.2021 5:13

Ahoj,

no jo, máš recht, evidentně už mě zkosila únava, tak jsem zazmatkoval. Každopádně díky za Tvoji pomoc, bez Tebe jsem se snad ani nehnul z místa. Teď už mám konečně napsaný krátký kód, co si poskládá URL ke zobrazení více bodů na jedné mapě.

Teď mám ještě jednu otázku. Protože jsem byl vždycky lempl na googlení a hledání informací, můžu ještě (prosím, prosím) poprosit o radu, jak poskládat URL na mapy.cz a na google.maps? Zatím jsem nikde na nic rozumnýho nenarazil- ale jak píšu, na googlení jsem byl vždycky slabší hráč, takže mně dost možná leccos uniklo...

Dík!

 
Nahoru Odpovědět
11.2.2021 5:13
Avatar
Jiří Gracias:3.3.2021 4:02

Pro mapy.cz to taky jde, odpověď jsem dostal zde:

https://napoveda.seznam.cz/…ads/115085/1#…

Takže například takhle:

http://www.mapy.cz/?…, 17.111;49.222, 17.222;49.333, 17.333;49.444, 17.444;49.555, 17.555;49.666, 17.666;49.777, 17.777;49.888, 17.888;49.999, 17.999;49.000, 17.000

Nakonec to ale v IS budeme řešit jinak. Protože si IS umí vytvořit a uložit soubor a tenhle soubor pak otevřít v defaultním programu, stačí když napíšu kód tak, aby si automaticky generoval html a Java scriptový kód, ten uložil do souboru a soubor pak otevřel prohlížečem jako web. stránku s mapou. :-)

 
Nahoru Odpovědět
3.3.2021 4:02
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 13 zpráv z 13.