We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Web Mapping 101: Getting started using MapTiler SDK!

00:00

Formale Metadaten

Titel
Web Mapping 101: Getting started using MapTiler SDK!
Serientitel
Anzahl der Teile
156
Autor
Lizenz
CC-Namensnennung 3.0 Unported:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen.
Identifikatoren
Herausgeber
Erscheinungsjahr
Sprache

Inhaltliche Metadaten

Fachgebiet
Genre
Abstract
This talk is for curious minds who want to get started with web mapping, regardless of their experience in GIS! We will see how to set up a development environment from scratch and explore the coolest features from *MapTiler SDK*. Then, we will learn how to use them to make better maps that are actually useful and can tell stories. Our tools: JavaScript, TypeScript, and a bit of CSS, but if you have never heard of those, that's fine too, this talk is beginner-friendly! (and what's better than learning about web programming with an actual project in mind!) PS: It will be easier if you are already familiar with the basics of programming and some general concepts, even with another language such as Python: what's a variable? what's a function?
Schlagwörter
127
Streaming <Kommunikationstechnik>GruppenoperationAutorisierungTextur-MappingVorlesung/Konferenz
Mobiles InternetSoftwareentwicklerOpen SourceTextur-MappingSoftwareSchnittmengeKartesische KoordinatenCodierungMapping <Computergraphik>Rechter WinkelMobiles InternetComputeranimationVorlesung/Konferenz
QuellcodePunktwolkeProgrammbibliothekVektorraumHydrostatikFormale SpracheSoftware Development KitSchnittmengeVektorraumWeb-DesignerDienst <Informatik>BrowserSoftware Development KitURLProgrammbibliothekSelbst organisierendes SystemOrtsoperatorFormale SpracheOpen SourceKartesische KoordinatenWeb-ApplikationPunktwolkeTextur-MappingSchlüsselverwaltungMapping <Computergraphik>BenutzerbeteiligungDruckspannungElektronische PublikationVisualisierungTesselationComputerspielInteraktives FernsehenAdressraumCodierungProjektive EbeneSpeicherabzugOffene MengeXMLComputeranimationVorlesung/KonferenzDiagramm
Software Development KitInstallation <Informatik>CDN-NetzwerkTextur-MappingProgrammbibliothekSoftwareentwicklerSoftware Development KitElektronische PublikationInstallation <Informatik>Vorlesung/KonferenzJSONXMLUML
Konfiguration <Informatik>Software Development KitKeilförmige AnordnungLie-GruppeManufacturing Execution SystemSpieltheorieGenerator <Informatik>MereologieTextur-MappingURLKartesische KoordinatenFormale SpracheObjekt <Kategorie>Differenz <Mathematik>Software Development KitCodeProgramm/Quellcode
Software Development KitKonfiguration <Informatik>Vorzeichen <Mathematik>FarbverwaltungssystemStellenringTextur-MappingSoundverarbeitungFormation <Mathematik>VideokonferenzHilfesystemComputeranimation
ElementargeometrieSpieltheorieGammafunktionKonfiguration <Informatik>Software Development KitGamecontrollerTouchscreenTextur-MappingParametersystemProgramm/QuellcodeComputeranimation
Quick-SortSoftware Development KitTVD-VerfahrenTextur-MappingMixed RealityTropfenSchnelltasteObjekt <Kategorie>Mapping <Computergraphik>SchnittmengeRichtungURLFunktionalVorlesung/KonferenzProgramm/QuellcodeJSON
Software Development KitTVD-VerfahrenFormale SpracheStellenringE-MailFahne <Mathematik>RechenschieberFunktionalFormale SpracheKartesische KoordinatenVektorraumSchaltnetzVideokonferenzDefaultSchnittmengeBitmap-GraphikSchnelltasteTextur-MappingSatellitensystemDatenbankFahne <Mathematik>Formation <Mathematik>Rechter WinkelVarianzCoxeter-GruppeComputeranimationProgramm/Quellcode
Formale SpracheSoftware Development KitPunktwolkeLineares KomplementaritätsproblemAchtFormale SpracheTextur-MappingBrowserKonfiguration <Informatik>ResultanteProgramm/QuellcodeJSON
Software Development KitBrowserSoundverarbeitungTesselationTextur-MappingStellenringAuflösung <Mathematik>Demo <Programm>Computeranimation
Formale SpracheAbstandKonfiguration <Informatik>Software Development KitFunktionalCoxeter-GruppeExogene VariableDateiformatBimodul
DefaultSoftware Development KitHydrostatikTextur-MappingHydrostatikElektronische PublikationDynamisches SystemVektorraumMapping <Computergraphik>
GradientSoftware Development KitTesselationMomentenproblemReverse EngineeringInformationTextur-MappingKoordinatenCodierungProgramm/Quellcode
Modul <Datentyp>Software Development KitPunktwolkeAnwendungssoftwareTropfenGamecontrollerPlug inVideokonferenzSpeicherabzugKartesische KoordinatenTextur-MappingProgrammbibliothekComputeranimationProgramm/QuellcodeJSON
Software Development KitCASE <Informatik>
Erweiterte Realität <Informatik>GraphiktablettSichtenkonzeptMobiles InternetSoftware Development KitErweiterte Realität <Informatik>NeuroinformatikBimodulTablet PCMixed RealityZellularer AutomatComputeranimation
GoogolFormale SpracheProdukt <Mathematik>Cookie <Internet>Web SitePunktwolkeFreewareDemo <Programm>VerschlingungQR-CodeTouchscreenObjekt <Kategorie>Textur-MappingRechter WinkelComputeranimation
Offene MengeSoftware Development KitFreewareSelbst organisierendes SystemClientProgrammbibliothekRechter WinkelDienst <Informatik>Web-SeiteKonfiguration <Informatik>Offene MengeKartesische KoordinatenZentrische StreckungAutomatische HandlungsplanungUnrundheitEndliche ModelltheorieSoftwareentwicklerMobiles InternetSoftware Development KitComputeranimation
TouchscreenVideokonferenzBenutzerbeteiligungMapping <Computergraphik>Textur-MappingGamecontrollerDivergente ReiheComputeranimation
SoftwareCross-site scriptingStandardabweichungKartesische KoordinatenTouchscreenNeuroinformatikWeb-ApplikationDemo <Programm>Arithmetische FolgeApp <Programm>Textur-MappingComputeranimation
KommensurabilitätSoftware Development KitMultiplikationsoperatorTextur-MappingCodierungApp <Programm>Open SourceVerkehrsinformationComputeranimation
FreewareSoftwareGraphische BenutzeroberflächeGoogolSoftwareentwicklerMultiplikationsoperatorFlächeninhaltMereologieKartesische KoordinatenBrowserSchlussregelGüte der AnpassungTextur-MappingSoftware Development KitApp <Programm>VerschiebungsoperatorFormation <Mathematik>NeuroinformatikVorlesung/KonferenzBesprechung/InterviewComputeranimation
Computerunterstützte ÜbersetzungMethode der kleinsten QuadrateFlächeninhaltRechter WinkelComputeranimation
Transkript: Englisch(automatisch erzeugt)
Thank you, thank you very much, thank you for coming. I'm here speaking on behalf of Jonathan Luria. He's the author of the MapTiler SDK, but unfortunately he couldn't make it, and originally it was also announced to be a lighting talk, so just five minute talks, but now it is a full talk, so we have to extend the topic. So here I am, speaking on behalf of someone else
about a topic I basically have no clue about, but we will see what we can do with it. First let me tell you something about MapTiler. We are tiling maps, as you may know, and we are a group of people who are loving maps, loving map designs, and software development, and open source software development, of course,
and we are putting together a set of tools which are going to end the maps for developer which are then easy to be used on the web and on mobile. We are Swiss-based with a bunch of people being located in the Czech Republic, and of course we have colleague all around the world as well.
I was already speaking about maps and maps applications. Map applications, as you know, usually contain not just the map itself, but also the navigation, or for example, geocoding, or you may, this conference is full of the 3D topic, right? Nobody was speaking about AR yet,
maybe I will be the first one. So shortly about MapTiler SDK at the very beginning. What it is? It is a open source TypeScript or JavaScript library licensed on the FreeBSD3 license, and it helps you to create interactive web applications
or map applications on the web. And originally it is designed to access easily a MapTiler cloud API for maps, geocoding, and other services. MapTiler is obviously a for-profit organization or company, therefore we are building a set of tools
which do help us to, which do help our customers and users to communicate with the APIs. But MapTiler SDK is built, is sitting on top of or the shoulders of MapLibre project, of course. So MapLibre is the JavaScript library for creating interactive maps on the web as well. This is basically how it looks,
there is MapLibre core, so whatever is supported by MapLibre is of course available in MapTiler SDK. And we just are adding a couple of features which should make the life of the web developer easier regarding the map styles and vector tiles
and raster, of course, and for example, JSON data files or GeoJSON data files. There is a couple of features which I would like to stress. So the first one is totally the built-in MapTiler styles. I hope you saw already one of the maps on our booth.
People like them, you like them too. So you can easily access them from within MapTiler SDK. Then there is this topic of language switching because this is actually one of the key advantages of vector tiles or vector maps on the web that you can style or change the map style directly but not only the map style and map appearance
but also the labeling and the language of the labeling which may be useful for some of the applications. There is also the language auto detection based on the location of the user or based on the settings of the browser, for example.
You can generate static maps, you can geolocate the position of the user based on the API address or directly of the geolocation capabilities of the device user is using. I was already mentioning geocoding both forward and reverse
or then there is an example of 3D terrain visualization directly in the web browser. So this is, those are some of the features which MapTiler SDK is adding on top of MapLibre. So let me show you quick start.
How to start with MapTiler SDK. First you have to install it. I assume most of you have some experience with JavaScript or TypeScript so the way is, it should be pretty straightforward. You just npm install MapTiler slash SDK. That's basically it if you are using TypeScript. But if you are more familiar with vanilla JavaScript
or HTML development like for example myself, then you just have to, I hope you can read it, yes you can. You can just put directly from the CDN dedicated JavaScript library and of course CSS file.
That's it. Then you just start to code map application. So what is in common is the first part. Oh, I can use this device. No, yes. So in the first part, you just initialize a map object.
You put it into some diff container called map container with the ID map container. Then there is the style and here already it starts to be more about MapTiler SDK. So we have for example predefined, I will talk about it later, predefined styles so you don't have to remember them, you don't have to look
for style JSON files, URL and so on. But you can also set all the other features like terrain or how much there should be exact generation of the terrain language and so on. So if you put this all together,
can someone local help me with the playing of the video? Oh, that sounds too complicated. I will just skip this slide. And go farther.
What you will get is a map. Map in Japanese having 3D effect on it, on itself. And what was there? The terrain is slightly exogenerated. And if I look at the parameters,
yep, it should be geolocated for example. There should be full screen control. Yeah, just like that. So relatively easy. And the map style is MapTiler outdoor map. So let me briefly talk more about the other features. I was already mentioning the styling.
So our team of cartographers who maybe had a chance to visit a talk of Petra Duriancikova about how to style maps. And she's actually the one along with Nicolas Bazone who is preparing a bunch of styles. I believe there are about 30 of them which can be directly used within the ESDK without need to remember all of the names.
But there's luckily other possibilities as well. Like for example, I was already mentioning winter. Now there is example with outdoor. You can immediately switch to another map style like backdrop. You can directly go to a shortcut which is the ID of the map within the MapTiler infrastructure
or if you are already having your private map with a dedicated ID, you can use it too. But luckily and of course you can use any URL or directly apply the style object
into the set style functions. Oh, what a disappointment. So next slide hopefully should be showing you some of the map, some of the styles.
I wanted to point out basically there is, I was mentioning 30 map styles, right? And some of them have variants. Most of them has variants. Like we have mapped our streets. Then there is the streets, dark variants, streets, light variant or streets, night variant. And we have the satellite map
but also so-called hybrid map where there is a combination of raster satellite imagery along with the vector labeling all over it. We have a beautiful database map and so on. The video was basically showing just some of the styles live. And luckily I have many videos in this presentation.
We will see how we can go. So I was mentioning also another feature which is the language switching. So first you can of course set the default language. Oh, sorry, this is the one. I can, you can set the default language which the application will use for start.
But later you can also switch the language to, for example, Albanian language or use a common ISO shortcut. And then there is a set of flags which can be used also. So that the map really behaves the way you would love it
to behave for particular user in particular region. Oh, this is working. So this is basically the result, how the map can change its labeling, language labeling directly or dynamically directly in the web browser.
Next feature is the 3D terrain. So with the options terrain through and exogenation 1.5 will enable the terrain, those alternative ways. But it will simply start to exogenerate the terrain.
And this is a slightly too fast demo, but I hope you have a picture because we have prepared the global digital elevation model which is then distributed in the map tiles apparently as well.
And this enables us to really show directly in the web browser like mountains and hellier regions, of course it looks the best. Don't try this on Estonia. You will see nothing. We are adding also local high resolution terrain slowly. So yeah, the effect should be really better even.
Another feature is geocoding. Here's a very short example. You just call the module geocoding, call the function called forward geocoding like Prezren from the last year presentation. And all you got is the geojson format as a response from the API and you can then show it directly in the map.
So here we have an example of Paris across Europe. So don't be confused if you are looking for Paris and you will find many other places. Another example is the static maps API. Static maps is another dynamic vector files
but this is the way how to get a static image out of the API. And there are other APIs. I was already mentioning geocoding. We were talking about forward geocoding. This one is example of reverse geocoding. Like tell me what is on this particular coordinate,
what kind of features for example. And there is an example of the geojson being stored on map tile cloud, geolocation info like where the user is basically based at the moment. Coordinate transformation API and many others.
I was so far speaking about the core of SDK but we are building a ecosystem of another, let's say plugins, especially weather and AR control. Now there will be more videos again so I'm curious how this will occur. First example is the weather library.
It should be relatively easy. It should be easy, this easy, right? Trust me, it's easy. To add a weather layer having weather forecast for four days and adding it into the map application. So we can have either for example wind layer in this case or as in with this case,
showed the precipitation moving. Another module I was mentioning is the augmented reality module which will give you the possibility to display really
AR on various devices, tablets, cell phones, computer or the new glasses. Let me see here the demo and let's risk it. So here I have directly the link to a object, right?
Which is a 3D map of a piece of Switzerland. If you can see it and point your cell phone on the QR code, you should get it on your cell phone and see it directly in front of you and of course on a screen of your device or in the other devices as well.
Okay, I will continue. Your this is basically the same example. Another reason why to use, why to bother about MapTeller SDK because yes, you can still use with MapTeller services, MapLibre or OpenLayers clients or Leaflet clients
but we are a for-profit organization, right? So we have to talk about pricing and about money even though there are three plans of course but for serious usage on big scale, we have to talk about pricing and those libraries are request-based. But MapTeller SDK, the big advantage is that it is based
or the pricing model is per session. That basically means that you, thank you, that you have to count, you can count how many visitors your page has and based on this, you will get directly an idea about how costly the application will be for you.
You don't have this option with the other libraries even though you can use them for displaying the map. So let's talk also about future development. The future is round and of course mobile.
Another full screen video, very, very beautiful. The video was showing this. If you go to labsmetal.com slash showcase slash globe, you will get already a globe with the maps and map controls and you can zoom around and pan around.
This is the way where the web mapping is probably going to evolve. And this is something we would love to deliver in the next series of MapTeller SDK and MapLibre. Also, if you heard about progressive web app
which is the way how to deliver applications using standard HTML and JavaScript technologies but then these applications can be directly distributed as cell phone applications. So in this way, we are developing
let's say a demo application. You can find it on mapteller.app, like app, and you can see it on your cell phone directly or on the screen of the computer. Another, this is basically how it looks, make just a few screenshots. And another example exactly of this approach
is the TimeMap.org, which is a very beautiful app showing the history of Earth, very simple, very simply said. So I would advise you to visit timemap.org
either on your computer or on a mobile device and see how it behaves. And that's basically all for me. So please, if you are interested more, visit docs.mapteller.com.sdk.js
or go to npm.js to find for MapTeller SDK to look for MapTeller SDK. The source codes are of course on GitHub, so pull requests will come as well as back reports all the time. If you are a developer, you are steadily hunting for people
and during the summer there may be more requests which can be found on mapteller.com slash jobs, so you can join our crew. And thank you for your attention. If you have more questions, you can see us on the booth in the exhibition area. Thank you.
Thank you, El-Yakim. So we have 10 minutes of questions, so that would be great to have also a few questions from your side. Everything was clear?
Okay, good. Hi, could you please just write the time map to the browser to see the application on site? Unless there are no other questions, I can show you timemap.org. So you run with the mic and I will focus on the computer.
Okay. Where should I run to? In the meantime, maybe we can have another question. Oh, you're ready.
You're first, okay. Yeah, this shows not only the cartography, but also the possibilities of the SDK. And yeah, the application itself is showing the history, like for example, rulers in their regions, and how the situation evolved during the history,
during the time. So if I just move to recent time, you may see some shiftments in this region. But also on the other part of the world, yeah. Cool, any other question?
Thank you, see you on the exhibition area. Yeah, right.