ArcGIS API for JavaScript 4.18

Dne
28
.
1
.
2021

Koncem roku 2020 vyšla nová verze ArcGIS API for JavaScript, knihovny pro psaní vlastních webových aplikací nad službami ArcGIS. Verze 4.18 přináší mnoho novinek, pojďme si o některých něco říct.

Matej VrtichMatej Vrtich

Technologie

Po technické stránce, nová verze API 4.18 končí s podporou webového prohlížeče Internet Explorer 11, potažmo Edge Legacy. Není se čemu divit, když s podporou IE 11 končí také samotný Microsoft. Mezi podporované webové prohlížeče od verze 4.18 tak patří poslední verze Chrome, Firefox, Microsoft Edge a Safari. Zrušení podpory IE 11 však knihovně ArcGIS API for JavaScript verze 4.18 prospěje, je tak lehčí o množství kódu zajišťujícího podporu IE 11 a vývoj může lépe integrovat moderní webové technologie.

Modernizace je jedním z hlavních cílů vývoje na straně ArcGIS API for JavaScript a má zajistit dlouhou životnost tohoto API. Od verze 4.18 je také 100 % zdrojových kódů samotného API přepsáno do jazyku TypeScript a je nadobro odstraněna závislost na knihovně Dojo. To umožňuje také nový způsob distribuce ArcGIS API for JavaScript, a to formou standardizovaných ES modulů.

ES moduly jsou distribuovány formou balíčkovacího systému npm. Pro využití knihovny ArcGIS API for JavaScript ve vlastní aplikaci stačí knihovnu nainstalovat: npm install @arcgis/core a použít: import MapView from '@arcgis/core/views/MapView'. Knihovnu ArcGIS API for JavaScript tak lze mnohem snáze integrovat s často používanými JS frameworky, jako jsou např. React, Angular, Ember, Vue a další. Distribuce API formou AMD modulů zůstává však i nadále podporována a o jejím ukončení není uvažováno. Jakou cestou tedy jít? Pokud vaše aplikace staví na nějakém JS frameworku, nebo využívá build nástroje, jako jsou webpack či rollup, použijete ES moduly. Jinak použijete AMD moduly dostupné pomocí CDN.

Mapa a zobrazení dat

Mapa je jednou z nejdůležitějších komponent ArcGIS API for JavaScript, a proto se mnoho novinek verze 4.18 týká samotného vykreslování dat v mapě. To souvisí s optimalizací přenosu vektorových a rastrových dat po webu do mapového okna, a především pak samotného renderingu dat na úrovni WebGL. Tato vylepšení jsou mimo rozlišovací potřeby běžného programátora aplikace, protože fungují jaksi „na pozadí“. (Podobně „na pozadí“ funguje i celkové uchopení zobrazovaných dat, pro které API využívá web workerů, a příprava dat pro rendering tak neblokuje samotné zobrazení dat v mapě.)

Nová verze API přináší také novinky využitelné přímo programátory mapových aplikací. Patří sem možnost komplexnější práce se shlukováním bodů (tzv. clustering), a to jak zobrazení oblasti clusteru (extent & convex hull), tak zobrazení jednotlivých bodů či výpočet statistických ukazatelů v daném clusteru. Více v ukázce: Point clustering – query clusters.

Oblast Smart Mapping, která umožňuje programátorům vytvářet komplexnější vizualizace dat, byla rozšířena o nová témata (above, below, above-and-below) na úrovni tematického kreslení dat využitím velikosti zobrazovaných symbolů. Lze tak snadno vyjádřit např. změnu sledované veličiny v čase a zobrazit ji v mapě. Více v ukázce: Size visual variable themes.

Efekty vrstev patří mezi nové techniky digitální kartografie v oblasti interaktivních webových map. V kombinaci s mícháním barev na úrovni jednotlivých pixelů (viz. blendMode) a vizuálními přechody v zobrazení jednotlivých vrstev (LayerView transitions) lze vytvořit velmi poutavé a komplexní vizualizace. Nová verze API umožňuje aplikovat efekty napříč všemi objekty dané vrstvy a přináší tři nové druhy efektů: bloom, drop-shadow a blur. Více ve vybraných ukázkách aplikací využívajících efekty.

Nové API vylepšuje také navigaci ve 3D nad a pod terénem, kdy zohledňuje viditelné objekty a zajišťuje tak intuitivnější navigaci v mapě, např. při zkoumání podzemního potrubí. Lepší je také zobrazení překrývajících se 3D objektů s průhledností, a to díky implementaci techniky Order-independent transparency na úrovni samotného kreslení dat.

Ve 3D lze nově zobrazit kromě Země také Mars a Měsíc. Jedná se zatím o experimentální funkcionalitu. Více v ukázce: Visualize data on Mars.

Ostatní

Při editaci geometrie dat lze nově využít sofistikovaného přichytávání, tzv. self-snapping. Tato funkcionalita je zatím v beta verzi a týká se pouze 3D editace dat. V blízké budoucnosti bychom se v této oblasti měli dočkat širší funkcionality a také podpory přichytávání při 2D editaci. Více v ukázce: Sketch in 3D.

Jak již bylo řečeno, nejdůležitější komponentou ArcGIS API for JavaScript je mapa, která zobrazuje data ve 2D či 3D. Kromě mapy nabízí API desítky dalších komponent, tzv. widgetů, které zajišťují specifickou funkcionalitu nad mapou, např. tisk, editaci dat, atributovou tabulku, legendu a další. Nová verze API přináší vylepšení také v oblasti některých widgetů, zejména pak zcela nový widget pro výpočet výškového profilu, tzv. Elevation Profile. Tento je zatím v beta verzi, nicméně plně funkční, a umožňuje, kromě výpočtu výškového profilu z rastrových dat DMR, také zobrazit výškový profil (řez) 3D objektů, kterými prochází zadaná trajektorie.

Widget Elevation Profile lze použít ve 3D, ale i ve 2D režimu. Poslední ukázka využívá tento widget pro výpočet výškového profilu ve 2D mapě v zobrazení S-JTSK s využitím dat DMR 5G publikovaných ČÚZK.

Na závěr je třeba dodat, že nová funkcionalita ArcGIS API for JavaScript 4.x je prezentována také formou ukázkového kódu v sekci „Latest Samples“, což může být inspirací pro vlastní webové mapové aplikace.

Happy JScripting!

Mohlo by vás zajímat

Software

ArcGIS Utility Network

ArcGIS Utility Network je nová generace datového modelu Esri pro inženýrské sítě. Co vše tato technologie přináší a proč je nyní nejlepší čas, aby do ní správci inženýrských sítí začali svá data převádět?
Software

Nové mapy s příběhem v novém

Od července 2019, kdy Esri vydala novou generaci map s příběhem, která postupně nahrazuje klasické mapy s příběhem, již uplynul více než rok a za tu dobu se dočkaly mnoha změn a vylepšení. Co mapy s příběhem aktuálně nabízejí?
Software

ArcGIS Experience Builder

Novým moderním nástrojem pro budování webových aplikací je na platformě Esri ArcGIS Experience Builder. Proč tu máme další „builder“? Jaké jsou jeho přednosti? Bude starý známý Web AppBuilder nahrazen? Odpovědi na tyto i další otázky naleznete v tomto článku.

ARCDATA PRAHA

Víte, že většina dat má nějaký prostorový kontext?
Zboží i zákazníci se někde nacházejí a někam putují; všechny události se někde odehrávají.
V této složce dat je ukryt obrovský potenciál.
Pojďte ho objevit s námi a nechte se inspirovat, jak může GIS pomoci i vám.

Esri logo