Lizmap to create Web Map Applications
This is a modal window.
The media could not be loaded, either because the server or network failed or because the format is not supported.
Formal Metadata
Title |
| |
Title of Series | ||
Number of Parts | 295 | |
Author | ||
Contributors | ||
License | CC Attribution 3.0 Germany: You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor. | |
Identifiers | 10.5446/43464 (DOI) | |
Publisher | ||
Release Date | ||
Language |
Content Metadata
Subject Area | ||
Genre | ||
Abstract |
| |
Keywords |
FOSS4G Bucharest 2019120 / 295
15
20
28
32
37
38
39
40
41
42
43
44
46
48
52
54
57
69
72
75
83
85
87
88
101
103
105
106
108
111
114
119
122
123
126
129
130
131
132
137
139
140
141
142
143
144
147
148
149
155
157
159
163
166
170
171
179
189
191
192
193
194
195
196
197
202
207
212
213
214
215
216
231
235
251
252
263
287
00:00
Lucas sequenceClient (computing)World Wide Web ConsortiumCore dumpServer (computing)Open sourceWeb browserTexture mappingRevision controlPresentation of a groupKey (cryptography)Cartesian coordinate systemProjective planeClient (computing)Endliche ModelltheorieJSON
00:37
Core dumpServer (computing)Open sourceConfiguration spaceComplex (psychology)World Wide Web ConsortiumSoftwareScale (map)AuthenticationAuthorizationData managementGroup actionField (computer science)Source codeTable (information)Regulärer Ausdruck <Textverarbeitung>Form (programming)Latent heatComputer configurationGamma functionType theoryCategory of beingProjective planeNetwork topologyMappingCartesian coordinate systemFile formatMultiplication signSoftwareOpen sourceRow (database)Process (computing)Different (Kate Ryan album)Configuration spaceSystem administratorComplex (psychology)Server (computing)World Wide Web ConsortiumVector spaceRaster graphicsTexture mappingComputer animation
01:51
Configuration spaceoutputPivot elementField (computer science)Computer configurationLatent heatAuthenticationSource codeTable (information)Regulärer Ausdruck <Textverarbeitung>Form (programming)SoftwareGroup actionData managementAuthorizationScale (map)Texture mappingAuthenticationField (computer science)Projective planeWorld Wide Web ConsortiumConfiguration spacePlug-in (computing)BitSystem administratorCategory of beingLatent heatScaling (geometry)Letterpress printingVotingFigurate numberShared memoryComputer animation
02:31
File viewerServer (computing)Standard deviationFinitary relationProjective planeMappingBitFile viewerWorld Wide Web ConsortiumMultiplication signLecture/Conference
02:52
File viewerFinitary relationConfiguration spaceServer (computing)Computer configurationPlug-in (computing)Scale (map)World Wide Web ConsortiumMappingPersonal digital assistantLibrary catalogFocus (optics)System identificationRegulärer Ausdruck <Textverarbeitung>Ultraviolet photoelectron spectroscopyMedical imagingSymbol tableLink (knot theory)CodeMappingExpressionWorld Wide Web ConsortiumServer (computing)Multiplication signPlug-in (computing)Message passingCASE <Informatik>AreaProjective planeInformationHypermediaAttribute grammarCategory of beingRepresentation (politics)Letterpress printingFocus (optics)Computer fileFigurate numberCartesian coordinate systemWeb pageKey (cryptography)Ultraviolet photoelectron spectroscopyError messageEstimatorNeuroinformatikView (database)Geometry
06:39
View (database)Operator (mathematics)MappingMultiplication signPie chartMaterialization (paranormal)View (database)DatabaseModule (mathematics)JSONComputer animation
07:10
IterationFinitary relationAttribute grammarTable (information)EstimationView (database)InformationPlug-in (computing)Server (computing)ZugriffskontrolleLocal GroupDifferent (Kate Ryan album)Type theoryTranslation (relic)Scripting languageRepository (publishing)Archaeological field surveyIntegrated development environmentField (computer science)GoogolOpen sourceCross-site scriptingModule (mathematics)VideoconferencingVector spaceMultiplication signView (database)Source codeModule (mathematics)Cartesian coordinate systemMappingIntegrated development environmentArchaeological field surveyWeb serviceComputer-assisted translationPosition operatorInheritance (object-oriented programming)Table (information)BitStatisticsAsynchronous Transfer ModeSystem callSheaf (mathematics)Game controllerUniform resource locatorOpen sourceTouchscreenProbability density functionDemo (music)Translation (relic)Formal languageDifferent (Kate Ryan album)MereologyProduct (business)Group actionPresentation of a groupWebsiteWorld Wide Web ConsortiumPie chartFreewareAttribute grammarData storage devicePlug-in (computing)Core dumpProcess (computing)Projective planeSelectivity (electronic)Set (mathematics)Sampling (statistics)Speech synthesisWorkstation <Musikinstrument>Frame problemSubsetAdditionChannel capacityPhysical systemVotingVideo gameSocial classLecture/ConferenceSource codeComputer animation
12:42
MappingInterface (computing)Plug-in (computing)Scripting languageINTEGRALWorld Wide Web ConsortiumVideoconferencingSource codeCartesian coordinate systemKey (cryptography)Module (mathematics)Probability density functionKeyboard shortcutDifferent (Kate Ryan album)Cone penetration testProjective planeGoodness of fitWeb pageTunisLecture/Conference
14:17
View (database)Default (computer science)GoogolSatellitePoint (geometry)Vector spaceServer (computing)Point (geometry)Computer programmingMultiplication signSoftware developerRevision controlMappingPlug-in (computing)Form (programming)Server (computing)Software bugSinc functionFilter <Stochastik>Vector spaceNetwork topologyGame theoryWeb serviceMachine visionField (computer science)Flow separationProduct (business)Degree (graph theory)JSONComputer animationLecture/Conference
15:44
Pole (complex analysis)Revision controlClient (computing)Plug-in (computing)Server (computing)Digital filterField (computer science)ZugriffskontrolleOpen setWeb serviceComponent-based software engineeringUser interfaceArchitectureWorld Wide Web ConsortiumCodierung <Programmierung>Cross-site scriptingLimit (category theory)Source codeSoftware frameworkWeb browserCartesian coordinate systemInformationDirection (geometry)Bootstrap aggregatingRevision controlField (computer science)World Wide Web ConsortiumLibrary (computing)Repository (publishing)EvoluteComponent-based software engineeringServer (computing)MereologySoftware frameworkWeb serviceGame controllerProjective planeMappingPhysical systemView (database)Open setNetwork topologyCausality
17:57
WebsiteDemo (music)Link (knot theory)Plug-in (computing)Web browserRevision controlAdditionDemo (music)CausalityFormal languageWebsiteComputer animation
18:44
MappingField (computer science)Library (computing)NeuroinformatikWorld Wide Web ConsortiumRational numberScripting languageAvatar (2009 film)Form (programming)Vapor barrierStack (abstract data type)WeightShared memoryView (database)CodeStandard deviationCartesian coordinate systemComputer virusServer (computing)
21:29
World Wide Web ConsortiumComponent-based software engineeringClient (computing)Revision controlGlass floatGoogolDemo (music)Information privacyMessage passingConditional probabilityPulse (signal processing)Configuration spaceForm (programming)Vector spaceWeb applicationAdditionNetwork topologyState observerLatent heatInterface (computing)Computer animationLecture/Conference
22:18
Denial-of-service attackData typeAdditionPoint (geometry)State observerGodForm (programming)Computer animation
22:47
Form (programming)Line (geometry)PolygonComplex (psychology)Data managementCuboidComputer filePoint (geometry)CodeMultiplication signComputer animation
23:58
Default (computer science)Interface (computing)Special unitary groupArrow of timeFlagWebsiteFormal languageTheoryMappingProjective planeInclusion mapUniform resource locatorError messageComputer animation
25:40
AliasingFormal languageAddress spaceSpecial unitary groupField (computer science)Software testingPresentation of a groupMedical imagingSource codeComputer animation
26:22
User interfaceMedical imagingInformationLecture/ConferenceMeeting/Interview
26:55
Medical imagingComputer animation
Transcript: English(auto-generated)
00:07
Okay, so now we'll have René-Lou Don and Michael Duchamp presenting the Lease's Map web client. Thank you. We will talk about this web client application.
00:22
We are from Threelase company, it's a French company. We want to make a feature frenzy presentation. It's more about the project, what are the key features and what is the roadmap for the next version.
00:42
At Threelase we work only with open source software like QTIS, PostgreSQL and Lease's Map. We are core contributors to QTIS server and we love open source and we provide different types of support.
01:02
So you need to publish web map, but you already use and love QTIS. It's your private software, you use it every day. And you need to publish a full feature application, not only a map but application.
01:21
You have no time to set up and configure web maps in complex admin panels, like to redo your styles, your properties of layers, your layer trees. So why not use Lease's Map? Lease's Map loves QTIS. It is made based only on QGIS server, so the desktop project is your configuration.
01:48
You will add your layers, you will find all the formats that QGIS can open, vectors and rasters. And then there is a Lease's Map plugin.
02:01
You just need to configure the path specific to the map, like the scales and the base layers. But every data, every property is configured in the QGIS project. So it's a bit of the same approach as the field tools like Qfield or input,
02:23
where the project is the pivot, the central configuration. And we have a web admin panel, but it's mainly for authentication and authorization, if you want to restrict access to maps or to some tools.
02:45
A bit of history, it has been created in 2K11 as a simple QGIS project viewer, because we did not want to do some code every time a customer asks for a web map.
03:02
And so we created this tool, it's based on QGIS server and OGC standards. And it has evolved to a full-featured tool that can let you create map applications with all the GIS features you will expect from it.
03:22
How to publish a web map? Basically you just work within QGIS. So you configure your project, you add your layers and server properties. Then there is a plugin to configure some of the properties you need,
03:40
like you can choose the tool you want to publish, printing or other tools like that. And then you send your QGIS file and all other files, it can be shapefiles, it can be geopackages, it can be what you want, and some media documents like images or PDF,
04:02
and you just take that, you send it to the server with any way you want to use, and you've got a web map for each of your projects. So some use cases to show you exactly what it is about.
04:21
There is one city in France, which is Melon in the Alps, and they need to publish thematic maps for the citizens of the city. So they have used this map to create iCandy and maps with a focus of simplicity.
04:42
One map, you have only one or two layers to have very simple maps. So they made a lot of work to have sexy images, and one image is one QGIS project. So you can, if in a folder you put 10 projects, you will have 10 maps.
05:02
And you can arrange them between folders to have thematic folders, for example. And a map they made is for the school playground, not school, but just playgrounds. So you have full-featured QGIS symboling, symbolization possibilities,
05:23
and they made some cool pop-ups to, when you click on the map, you have the picture and the information coming from the attribute table, coming from your geo-package, from your shapefile. The link of the image is just a pass to the image.
05:44
Aduga is a urban planning agency. They have more business data, like business parks, and they wanted to highlight the key figures. So they used lismap possibilities, for example, the HTML pop-up with QGIS expressions
06:05
and some case when complex syntax. And they have that kind of map with areas. And they use QGIS expressions to highlight, to create this kind of representations.
06:28
Like if you have no transport, they will be in grey, and you have a small slider with percentages that depends on the QGIS data.
06:42
Sometimes you want to do a map, but you also want to show some data with database, like pie charts or bar charts. There is an example of the National Park of La Reunion. It's an Indian Ocean, a French island.
07:01
And they publish data about plants and animal observation, which are timed, and they use lismap database module to show some charts with prepared materialized views. For example, you have some tabs, and each chart is based on one vector layer.
07:26
So you just need to put your vector layers as source of data. It can be PostgreSQL views, but it can also be virtual layers or a shapefile. And then you will be able to publish a bit big pie chart or other chart.
07:47
The last example is a small demo we made about domestic cat positions in the US. And we use the QGIS capabilities of relationships between parent and child layers
08:02
to show, for example, attribute table. You click on the cat's name, like Beluga, and you will see all the child features for the statistics or territory. And you will be able to have a kind of an atlas mode that can let you switch from cat to cat,
08:24
and that will zoom to the cat and show you the territories and some data is filtered on the cat on the right side of the screen. So it's very, I love this, because you have so many different cat pictures.
08:45
Okay, one last more professional use is the Cadastre in France. A French-Péritany group of cities, which each call Centre Monbien Community, they need to search parcels based on owners, on position, like the town and the section of the cities.
09:06
And they use a dedicated Cadastres map module and native access control to protect sensitive data, depending on the logged user. And this is, for example, one of the search tools by location or by tenants or owner on the right tab.
09:29
And so you can zoom in, you can select parcels, you can then export the selection, and you can also use QGIS Composer Atlas to export a PDF.
09:41
Okay, I will let René-Luc don't speak. Okay, as a open source project, we would like to create a great community. Firstly, we have some knowledge about users that can be private companies, public organization, or research centers.
10:03
So these users are not because we provide some services around this map, but we also have some free contribution, like translation and documentation. We have already 23 languages, domains, and trans-effects.
10:23
Only 20 languages has some translation. And at the top, you can see that it's Galician, Portuguese, Brazilian, Czech, and Italian. So I estimate French is out of the box, because we are French.
10:41
Okay, but we never meet every person who we translate this map. They just contribute and probably use it. So if you want to discover other projects of our own, and you do research on this map, you can find some examples.
11:02
It's just a part of the website or web map application I found. You have something about bony legal observations, Indiana Science and Environment Survey made by the research center. This earth observation, it's a way to manipulate Sentinel-1 and publishing it with this map.
11:28
An application about rice production in Southeast Asia, Fonalia, and OpenGIS using this map for some examples.
11:41
OpenGIS, they use it for live QFL user maps. And you have some community or cities, but using it in Italy. And as a research centers in South Atlantic, we have a company in North America, West, and others.
12:01
Yes, Colombian users, QGIS users, have made a presentation of this map without our knowledge. And this map has been built at the start to be extensible. We already see one example with Cadastral module.
12:22
It's based on the service side module with PHP, templating, JavaScripts. But you can also extend this map just with JavaScripts or just with CSS. The idea is to exploit the HTML program,
12:43
can reuse different video audio directly in the interface. We are creating a repository dedicated to JavaScript extensions. So, just one or two are made by 3Ds. Your source is only contributing. You have a script to integrate Google Studio if you have a Google key.
13:05
You can create a button to see directly the documentation in the webpage or open a PDF with documentation. You can add the keyboard shortcuts for your maps.
13:21
Asian Web Services is a running tool, I think. You can contribute adding some JavaScripts and publishing it here. Here is another module built to extend the capability of this map.
13:41
This map is one project, one map. Well, one map application. With this, it's a web map builder. You can reuse your layers to build our own maps just to create an on-demand maps.
14:03
Our customers who paid for this module want to create during the reunion the map with questions about disease, about catastrophe, some problems to manage during a reunion.
14:25
So, the actual version of this map is 3.2. We have to release 3.3, which is ready. We are finishing the development during August, and we don't find time to just tag and publish the final version of 3.3.
14:49
We are focused on QG server 3. Well, QG server 3.4 became a long-term release in February 2019,
15:04
but when we would like to use it in this map, we found some bugs to fix in QG server. So, since version 3.4.8,
15:20
QG server has exactly the same features as QG server 2.18. So, since two, three months you can use QG server 3 in production. And we have one feature, the form filtering. You can view directly in this map plug-in form
15:41
to filter your vector data with some categories, some spatial information, or some dead time field. And you can reduce the data you can visualize on your map.
16:01
So, now the lismap features and lismap 4. We have created a GitHub repository for request for comment about the future of this map. We would like in lismap web player version 4
16:20
to have OpenAIOS 5 or 6. It depends on what will be done in lismap 6. We will use ECMAScript 6. We will use W3C Web Components, Any Directional User Interface, Bootstrap 4, GQA3. And in the lismap plug-in,
16:41
we would like to have a server part for Python services to provide information directly from the server as a project and to have access control around field and the years. So, just to be more precise about W3C Web Components,
17:02
we would like to reduce the dependencies on external frameworks. So, we don't like to use Angular, React, Vue, or other tools that do not be a native W3C Web Components library.
17:25
We think that OpenAIOS is already big enough for us. We already have to manage all the evolution of OpenAIOS. And if you run an old code, it still works.
17:42
So, if we can reduce dependency, we are sure to have an application that will be working in 10 years. But lismap is OpenAIOS too, and it works. And customers like it.
18:02
So, why add some dependencies? So, if you want to know more, you have a demo, a website, documentation. If you want to test it easily, you have a Docker Compose. If you want to contribute, we have the request for comment for version 4,
18:22
the code, web client plugin, the documentation. And if you want to localize, want to have lismap in your own languages, better translating, you can go to TransFX. Thanks for your attention.
18:43
Questions? Also, lismap user from Poland.
19:03
You just wrote that OpenAIOS is just big enough for you. So, what does it mean exactly? It means OpenAIOS is a library on itself. And it means we already have dependencies in the code.
19:20
And we have seen how people have very... It was very hard to migrate from Angular 1 to Angular 2. And so, you spent one, two years of heavy code. And after these two years, you just, okay, we have to migrate to another tool. And we have tested all the different cool stacks on the web.
19:45
We liked Vue.js because it was small and more close to HTML standards. But we've seen that we could develop our own way
20:03
of using standards with a more simple approach for the use of lismap. I don't say Vue.js or Angular is not okay. I just say for lismap, because the map application is not so complex.
20:23
QGIS server does a lot of things, too. And so, we really want to keep it lightweight. And you know now, ten years ago, you just needed CSS, JavaScript, and HTML. And now you need to have the web pack and the node and blah, blah, blah.
20:41
And it became too complicated. It's becoming very complex. And if you want to contribute as a volunteer, it's very hard to make the first step. So, we want to have a low barrier entrance. It's not that it's too hard for us. It's just we want to be simple for you.
21:07
Hello. Do you support editing of data geometries? Yes. Do you want more details about it? Sure. So, basically, in QGIS, you have forms, rich forms in QGIS.
21:21
You can have tabs, you can have checkboxes. We support, I think, 90% of QGIS form features. You can have a form with combo boxes, and you just need to copy-paste your projects. And we read QGIS configuration like QField does.
21:43
And you have the same form in LizMap. So, you can add, update, or delete features from the LizMap interface, but only for PostgreSQL and Specialite vector data,
22:01
because you don't want to edit a shapefile in a web application. But yes, we support editing. It's kind of full features, and you can also add some child additions. I don't know, if you have a tree and you want to make observations regularly on the tree,
22:24
you just can add new child with a child form. So, yeah, things like that. You can just... It's one of the demo, yeah. On demo.lizmap.com, it's about observations.
22:40
You have two buttons to activate the addition to add points. This form is based on the QGIS forms. No code to create it. You can add points. You have time, you have combo box file to update.
23:05
Yeah, yeah, yeah. For geometry, you can add point, line, polygon. We don't have yet complex drawing, like hole in polygon. Like, you can already cut a line if you want.
23:25
Reduce polygon. If you are on a mobile phone, you can take a picture and send it directly with your phone. This capability is used by some company
23:42
to manage wind park to explore the capabilities. Yes, it has...
24:09
And then you just add, click on the map, and you can use your GPS location to put the map, but here it's very far, it's in the Pacific,
24:21
so you won't be able. And if you don't fill in the proper fields, you will have an error. For example, I just don't put the date, and I save, and you will have an error. And so then you can just use that and save.
24:44
And some people use it in the field. Okay, I have another one. It's not failing because you need an hour and minutes, sorry. Two more minutes. Okay, so I just save and stop.
25:01
Hi. How is it possible to make a multi-lingual site? Like, there are many countries where we have several languages. It's multi-lingual by default. The interface is multi-lingual by default. We have not put the flags,
25:22
but you can choose the default language is used, so you have, okay. But if you have multi-lingual data, there is now in QGIS 3, you can use QT-Linguis to translate the project. So you could propose the same project easily
25:41
in many different languages, but we have not an automatic way to switch from the language because it's not only the aliases of the fields, it's also the data. So you need to choose the right field to show the labels and things like that.
26:03
We have done some tests about it, but it's not a one-click solution. So it's possible with some work. Yeah, or a short question. And thank you for the presentation.
26:21
Just maybe comment or a question. Is there any possibility to add image from the external, from the C drive? You know, just when you are clicking in the icons, you will see the image because I was working with that, but I couldn't add some image for the user interface.
26:46
For example, if you click on I for the information, we will see just one image, but I was thinking maybe to add more image. Okay, yeah. Just fill in a request in GitHub.
27:04
It's not possible. Because for the city planners it's really important to have more image, like a legend, something more which is really complicated to have by HTML. So it's better to just upload the image.
27:20
Exactly, okay. Thank you. Thank you.