Tilez: serving seamless polygons in the browser with TopoJSON and Node.js

Video in TIB AV-Portal: Tilez: serving seamless polygons in the browser with TopoJSON and Node.js

Formal Metadata

Tilez: serving seamless polygons in the browser with TopoJSON and Node.js
Title of Series
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.
Release Date
Open Source Geospatial Foundation (OSGeo)
Production Year
Production Place
Portland, Oregon, United States of America

Content Metadata

Subject Area
This talk will introduce the Tilez project, which provides aNode.js-based realisation of a Tile Map Service tiles in both GeoJSON andTopoJSON formats. This formats provide a seamless and highly performant usermapping experience in both OpenLayers and Leaflet.The key to fast display of vector geometries in Tilezz lies in the use oftiles, which leverage both local and server-side caching. Whilst linear features lend themselves easily to tiling, polygons have traditionally represented more of a challenge.Tilez provides further efficiencies by using TopoJSON as a transport formatbetween the server and the client. Tilez implements all these improvements to support web-based vector tiling, delivering good performance under heavy load through Node,js and CouchDB-based caching, and efficient transport through TopoJSON. This talk will cover Tilez and the practical aspects of its implementation together with use cases from the Australian Urban Research Infrastructure Network (AURIN - www.aurin.org.au).
Keywords Node.js openlayers leaflet jsts topojson postgis couchdb
Projektive Geometrie Computer animation Vector space Computer file Open source Information Computer cluster Tesselation Term (mathematics) Software developer Client (computing)
Group action Server (computing) State of matter Tape drive Client (computing) Web browser Graph coloring Mathematics Core dump Energy level Social class User interface Standard deviation Mapping Information Number theory Polygon Interactive television Volume (thermodynamics) Process (computing) Computer animation Vector space MiniDisc Right angle Spectrum (functional analysis)
Type theory Medical imaging Computer animation Computational geometry Web browser Physical system
Medical imaging Mathematics Computer animation Right angle P (complexity) Social class
Area Database normalization Process (computing) Computer animation Vector space Computer file File format Network topology Polygon Client (computing) Computer-assisted translation Traffic reporting
Computer animation Multiplication sign
Area Geometry Computer animation Personal digital assistant Sound effect Quicksort Instance (computer science)
Point (geometry) Optical disc drive Algorithm Computer animation Physical law Polygon Negative number Energy level Position operator Demoscene
Process (computing) Computer animation
Server (computing) Computer file Multiplication sign Set (mathematics) Web browser Theory Mechanism design Crash (computing) Array data structure Different (Kate Ryan album) Profil (magazine) Energy level Software testing Error message Position operator Computer architecture Physical system Information Degree (graph theory) Cache (computing) Computer animation Vector space Network topology Password Information retrieval Table (information) Library (computing)
Geometry Default (computer science) Computer file State of matter Zoom lens Range (statistics) Polygon Database Client (computing) Medical imaging Projektive Geometrie Uniform resource locator Computer animation Different (Kate Ryan album) Configuration space Energy level Table (information) Oracle
Addition Boss Corporation Computer animation File format Term (mathematics) Number theory Prisoner's dilemma Right angle Food energy
Word Electric generator Computer animation State of matter Tesselation Personal digital assistant Right angle Mass Table (information)
Electric generator Inheritance (object-oriented programming) Multiplication sign Software developer Gender Moment (mathematics) Mass Client (computing) Rule of inference Medical imaging Goodness of fit Process (computing) Computer animation Semiconductor memory Network topology Ontology Mathematical singularity Error message Family Library (computing)
Computer animation
Computer animation
0 no more owning vector tiles of a and of no there's advanced as the under my post once actually we aim to produce to . something which was a predict anoxic in terms of a client and pre informants and work well with our current infrastructure but away on work at the University of Melbourne the project and me Michael Egan to Bromage of developed days on the the the sir about the cold tiles we assume the hubs so you go to get out boring files is that we said that the and if there it is the open source last week the so you can go and do whatever you like with it because the teams the license of she came is based on not JS and uses both cow should be imposed SQL the so
what 1st of all the so we be sure we are facing we faced it is we are doing prodded wanted to I'll give all users very rich user experience the good 1 said which means that he wanted to have of vector data especially polygons on the clients said which means meant having are allowed amount of data us so and we of course we use arrested it only for is a background but for their the we wanted some some idea really interested in so that spectrum data with the only way to go are we wanted to have highlighted some tool tapes that can assist us all core of less on the underlying we actually allow group users to upload their data joined with the job you took a the data we have so polygons at the level of up assays states county level becomes stuff right so the the city deviations where the the the day are joined and then from are so use apples and their days it our joint and then on the client he can choose the user can choose the dieselization so we we're ending to this level of interactivity this is a little of freedom and the and the richness of user interface of using spirits set of course there were a few pitfalls along the way so basically the k of
course we our our all our data will be showing are related to Australia but that would be 1 or acquirers was to show because of that in my operate these visualizing put say I like to plus 2 2 2000 + volumes and those I just said vector of features service in the user will be should have been able to change the core the mapping so changing the RAS change number of classes change the colors and highlights click on something and getting something back that and stuff from so in of course we couldn't allowed the old this information to be transferred to Boston the browser there was another requirement for reasons we add them the and layout we chose composers by more than 60 thousand polygons basically 19 megabytes of data and and the idea was to show although not all of them at state level because it will be as country-led because it will be possible but still to to to make users interact with disk so did now residents you
will know what the citizen and so of course the hour is or because the mainly because they that can be cashed in the browser in a customer like is 1 be adventurous ice the other big advantages they can be pre computer so what do for is a type of Vector vise it
is the sorry there's something missing here but FIL system something in images
the this the class this upsetting a
changes to the powerpoint and they clearly is didn't work them check tractability images I or i to right right right
so this is OK so basically would see issue with vector dice is that it is reporting on I mean we doubt not like straight there is not to restrict 2 cats are features into into piles report of a moral issue because those for you don't want to delete to user to see all those please polygons said you'd need a way to recombine them somehow so the user can see a polygon all tickets and look at the at the individual files of so what we and that was something on the client to reconstruct this dose of the Orioles bitterly Didier days that we have a lot of um processing power on the client so we can do it to set think 1st you know a vector of size and then cue from collectivized recompute the original polygons on the fly in their in decline because we're powerful clients
so I mean and there is should we were facing is that the the 1st this is redundancy on data because if we are but we were talking about trees on data so we start a rigid with Joe days and the probably due Jason areas of course is not that was a format said shared arts between polygons are repeated which means that they die of say between anywhere between 60 per cent or 70 per cent larger depending on your of course so we looked into the adjacent as well of the
but time at very jealous of if I may soon the
the numerous and OK
so engage using simple of are split body of and of course we don't want to have this effect so the
as I see astray the continent and sort there's a lot of desert areas with a lot of from graphical interview it has a lot of side in and small ions for instance which need to be and visualize but of course our heavy intent of and data size the so simplified which do not separate we add to be case is in is a simplified geometries people not signify geometries
we use the negatives of the packet algorithm and we did is behind the scenes of course beforehand using positives said this 1 example so you may see the idea the law was level did audio underpinning solid there has been simplified so it has fewer points and enter dope
adjacent so widow adjacent you have to to um a review odds which already there just shared by value by 2 or more on it to polygons so
the advantage of our and of problems for processing and are a few senders su serve dies into probability like
uh we chose the TMS 1 was the 1 which is the because now and so would be more
about the the architecture we use both culture medium positives why positive is used to generate data 1st and then those science data are put into custody B which is used as a as a caching mechanism of test now of course they could be another level test error but we didn't play it so sweet or well I we use that don't the and of course it is a crash on the browser so believe it whatever it is that the vector file 1st is the the the browser looks into its own interact cash it is not there has been a fascinating that between vectors tied to in 2 which at the server and dies looks for it intelligently if it is there it service DirectServe leads directly to to the browser is not there course Bask is to generate a time the I mean
now I live it's about configuring ties we need a fair degree of flexibility because we wanted to so all duties and what trees and we wanted to and ever differently because they generalize so we can restore every and not there is level of every set of some levels in a summary table safer there than I did and generalization of data I don't know at the library in 1 table and that's associated with the highest level say between 15 and 20 grand you can overnight mortar a generalized but not the generalized of dataset Wiener storing a table to serve some levels between say 15 and the 13 and so on so we something flexible enough to f of size to retrieve data from different tables the so and we chose these and of course we could have my many friendly so basically these all adjacent to specify the um all the deity in out to produce those size and in the promise filed the profile is used to just theory the system information like Ghawar arrays were because the username password and stuff so did you
say in a fragment from the middle and from the configuration file said to Bezier golf course layers 1 layer can be split in the different and in a range of different dozen levels and basically every said over a range of zoom levels is independent so can specify different our posed is stable on you can add an annotation expression issue like can have the same table but giving a different manner because it's some States emporiums or not so with allow selected there's level another 1 around in the whatever you get out of course more than 1 column a sorry in additional columns so rather than the geometry and the idea of course the geometry and they must be there because we use of oracles to reconstruct the polygons put on the client the
precise this if I if default projection and and that the location of the culture to be all they was use the database a kind of stuff the not the images are
missing some sorry again you supposed to show any mention of the
distance OK sorry about that the way we
do dies in opinion as energy I of course is in addition to implemented the standard CMS and pro the role which is of course is really the actually p get air in there it uses the elites and cost the boss is used to Bob or 8 out of on a layer so you base you specify the name of the layer the format it could be due treason all the which a and then in minimax dilemma so where be you can just put right to cash in the of this way but already for with the lead of course you can lead layer with have if you just want to have this of layers and number of about of ties the that ways in terms of by of the delay and that kind of stuff is just issue I get with layers and does this the layer stop paying into it is was said the and the the what we wound pay
rights so in other in other words I don't know Jerry into which we wanted to generate both duties of and of adjacent now dubitation is implemented in In both cases but NGO as well but while generating Joe in both it's simple FIL adjacent not much and so so because actually takes you need to create a temporary table to store the data into generators from single uh 2 adjacent tiles so it's not that the breezy immoral ways there is no dismal state there's a reason because it's very or very a very or 0 and of course was this is meant to be to the in the dealing with massive amount of data but these of course credit problem with
so what we did is to use need just write a gorgeous us just library true no Gs and that was a very fast the generation of w is better user Tuesday to set up a um process we take our duties on out of our policy is then with a from into adjacent then we store in custody it was fast groom a bias doesn't work with Messier data it's OK if you're doing a note that masses and because it keeps everything in memory and as well the reason why it's fast everything is that is not door is the positivist and topology which means that you cannot the be catching all the topology all issues and error so we that you my colleague into Bromage spend a good deal of time trying to work out older the logical errors in imposed is 1st but then we use these as little adjacent library to generators data
and arise Miss sorry for a missing images OK so for declines what we did is 2 and there are no parents the client priestess for for football Jojo's ontologies and so adjacent is very simple if we double Jason what we had to add is the to just a reassembling the merging of the of the columns 2 men declined we did did as well we still trees the 1st recap and still under development to be honest of this nodal singularities is that the few want to and manageable audience be mitigated a single ties in due to read your body was on the client there are some treaty things because size of gender of the militants included Cincreasin of course and you cannot be sure that everything has been loaded so basically we use some timing on this initial timing to study the merging process in every time a new i is loaded on Durey's that a Fatah delay it's just to start a new a you mentioned process once he also yielded size of being collected so so far I mean it is been is moments so I don't see any trouble is approach but to be honest I haven't tried with as little connection we tried with genome the we don't we have a hundred and 10 12 gigabytes connection it's similar to the 1 1st brothers mostly for rule out the connections be them not sure it could be that easily yeah sketchy because Bollywood they might be holes ties which are not ability you should not be another yet and then once it's loaded the dimeric processes on so far it to get again so it made it may not be as smooth as I would like to but still haven't tried at
and or or off of so OK with lifted it so I simply have De Soto are there to agism lamp yeah
this will explain now the
movies yeah these are the 11 in few references and our yeah that's about it thing can questions