A New Dimension To PostGIS : 3D
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 | 95 | |
Author | ||
License | CC Attribution - ShareAlike 3.0 Unported: You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal and non-commercial purpose as long as the work is attributed to the author in the manner specified by the author or licensor and the work or content is shared also in adapted form only under the conditions of this | |
Identifiers | 10.5446/15503 (DOI) | |
Publisher | ||
Release Date | ||
Language | ||
Production Place | Nottingham |
Content Metadata
Subject Area | ||
Genre | ||
Abstract |
|
FOSS4G Nottingham 20133 / 95
17
25
29
31
32
34
48
50
56
58
68
69
70
82
89
91
00:00
Computer fileWindowVideoconferencingMaxima and minimaData modelHausdorff dimensionView (database)Bookmark (World Wide Web)Disk read-and-write headCodePresentation of a groupGroup actionSingle-precision floating-point formatNetwork topologyInternetworkingFreewareAreaAdditionInclusion mapImplementationKey (cryptography)Lattice (order)Staff (military)Data storage deviceMultiplication signLink (knot theory)Point (geometry)FunktionalanalysisWebsiteResultantElectronic visual displayMoment (mathematics)Proof theoryEndliche ModelltheoriePlastikkarteBuildingData managementPlanningFunctional (mathematics)Library (computing)Right angleData conversionDifferent (Kate Ryan album)GeometryMathematical analysisNeuroinformatikData structureSurfaceLevel (video gaming)PrototypeComputer animation
03:42
Computer fileBookmark (World Wide Web)WindowView (database)Orientation (vector space)Function (mathematics)AreaFunktionalanalysisRight angle1 (number)Skeleton (computer programming)Computer animation
04:22
Bookmark (World Wide Web)WindowComputer fileView (database)BuildingSkeleton (computer programming)Sheaf (mathematics)Set (mathematics)Software testingGeometryProof theorySimilarity (geometry)Coma BerenicesNetwork topologyTriangulation (psychology)QuicksortVolume (thermodynamics)TesselationSkeleton (computer programming)Multiplication signMessage passingProcedural programmingFunctional (mathematics)AreaDistancePoint (geometry)Crash (computing)InternetworkingThomas BayesLine (geometry)Arithmetic meanGame theoryDifferent (Kate Ryan album)Labour Party (Malta)Key (cryptography)FamilyQueue (abstract data type)Right angleMatching (graph theory)Link (knot theory)Configuration spaceCASE <Informatik>OnlinecommunityDemoscenePlug-in (computing)GeometrySoftware testingLibrary (computing)VideoconferencingProjective planeMereologyStandard deviationExpected valueNeuroinformatikQuantumBuildingProcess (computing)Axiom of choiceFront and back endsFunktionalanalysisMoment (mathematics)Computer animation
10:12
Data modelRing (mathematics)Electronic visual displayLattice (order)Plug-in (computing)AngleComputer animation
10:46
BuildingUniform boundedness principleArithmetic meanUniform resource nameInformationPoint (geometry)AdditionBuildingAreaEndliche ModelltheorieComputer animation
11:10
CurvatureBuildingGame theoryInformation securityComputer animation
11:35
GeometryMoment (mathematics)Food energyDatabasePoint (geometry)BuildingComputer animation
12:02
Vector spaceBuildingEvoluteNeuroinformatikEndliche ModelltheorieQuicksortRevision controlInformation securityKey (cryptography)Computer animation
12:32
Addressing modeMusical ensemblePrisoner's dilemmaPhysical systemHand fanBasis <Mathematik>NeuroinformatikFamilyOrder (biology)Goodness of fitAreaNetwork topologyTesselationGraph coloringEndliche ModelltheorieHill differential equationSynchronizationBuildingStructural loadMultiplication signComputer animation
13:32
Query languageAddressing modeAreaMathematical analysisHypermediaComputer programmingElectronic visual displayComputer animation
14:28
Sheaf (mathematics)ResultantElectronic visual displayNetwork topologyDatabaseTriangleTime zoneVolume (thermodynamics)DialectQuery language2 (number)LaptopTable (information)NeuroinformatikComputer animation
15:37
Point (geometry)Point (geometry)InformationWorkstation <Musikinstrument>Dimensional analysisWave packetElectronic visual displayEvent horizonKey (cryptography)Computer animation
16:27
VideoconferencingComa BerenicesView (database)Computer fileBookmark (World Wide Web)PressureWeightArmQuantumComputer architectureRevision controlServer (computing)Profil (magazine)MereologyEndliche ModelltheorieKeyboard shortcutVirtualizationCuboidRule of inferenceStandard deviationPoint (geometry)Web browserPresentation of a groupFunctional (mathematics)VideoconferencingGeometryFlow separationStability theoryNumber1 (number)Forcing (mathematics)Multiplication signDatabaseLibrary (computing)Graph (mathematics)TelecommunicationNetwork topologyFunktionalanalysisExecution unitMathematicsRankingGroup actionFigurate numberLimit (category theory)Acoustic shadowView (database)Polygon meshState of matterMoment (mathematics)WhiteboardRight anglePhysical systemBitComputer animation
21:17
Computer fileView (database)Bookmark (World Wide Web)Library (computing)Different (Kate Ryan album)Endliche ModelltheorieFormal languageUniverse (mathematics)Basis <Mathematik>Labour Party (Malta)Proof theory
21:57
Computer fileView (database)Bookmark (World Wide Web)CASE <Informatik>Software testingEndliche ModelltheorieComputer hardwareGraph coloringFlow separationPoint (geometry)WordMultiplication signVolumenvisualisierungBuildingVisualization (computer graphics)QuantumSubject indexingObject (grammar)Scaling (geometry)MereologyLaptopGraphics processing unitError messageSurfaceQuery languageData conversionNetwork topologyAreaClosed setVideo gameCoalitionEmailComputer animation
25:45
Computer fileView (database)Bookmark (World Wide Web)Software testingProof theoryGeometryMusical ensembleProjective planeOrder (biology)Population densityMathematicsTexture mappingTerm (mathematics)Computer fileEndliche ModelltheorieMoment (mathematics)Fitness functionSoftwareAlpha (investment)Computer animationDiagramProgram flowchart
Transcript: English(auto-generated)
00:04
Thanks. So, this presentation is about PostGIS 3D and also quantum GIS 3D display solution. So this solution for us is based on European funding. The
00:24
aim is to be able to have a solution for smart city. So displaying, building and helping people in the city management to build a future nice city. So it's a three year funding plan
00:43
related to European funds. Right now we begin to play with 3D in PostGIS. So in the early stage in 2007 with prototype and proof of concept related to 3D. But we really beginning
01:02
to play with PostGIS 3D in 2010 with the first implementation of PostGIS 2.0. And at this point we were able to store and to manipulate 3D structure. So something like
01:22
thin and polyhedral surface directly into PostGIS. So at this point we have the ability to store, to load and to manipulate 3D data into PostGIS. And as you could see in the previous presentation
01:42
you could begin with this kind of feature in PostGIS 2.0, begin to have things like geological solution for 3D. This year in July there was the 2.1 PostGIS
02:01
release. And with the 2.1 you got a step further because we provide some spatial analysis for 3D. So it's not only storing and manipulation, it's spatial analysis too. So how does it works?
02:22
Obviously there is still PostGIS. Obviously there is still geos to play with 2D spatial analysis computation. But there is something more. And the something more is the ability to link PostGIS with Seagull.
02:41
And what is Seagull? It's a well known 3D manipulation library. And we made the link with something in the middle called SF-Seagull. SF like simple feature. And you already know simple feature for SQL. So the aim is
03:00
to have something like a binding and also something like a model conversion. Because in PostGIS the model is a simple feature. And in Seagull the model is really focused on the 3D itself. So it's two kinds of different models. And we have the need to
03:20
have something in the middle to perform the conversion. So right now we have the ability to link PostGIS with all the functions of Seagull. But of course at the really moment we provide only a few
03:41
functions available from PostGIS to Seagull. So what do we provide right now in 2.1 PostGIS? We provide some function in PostGIS 2.1 and some of them are really really interesting and
04:00
the black one. So something like 3D intersection, something like tessellate, extrusion and also straight skeleton. And these ones are really interesting because no one else provides this kind of feature in PostGIS.
04:21
We also provide, so that's an example with tessellate. So if you've got something like a volume at the very beginning, you could triangulate it even in 3D and have the 3D triangulation from this volume. The straight skeleton
04:40
if you have a 2D footprint of a building you could get, I don't know if it's really visible, but there is the skeleton of the building displaying and with the straight skeleton you could compute, if you want,
05:00
for example the roof of a building, at least a really simple roof for me. We also provide with SFCGAL some functions that already were available with a GIS.
05:20
So something like 2D intersect, 3D intersect distance or 3D distance, these functions were already provided by GIS, but we also provided through SFCGAL, so at the moment you have a choice. You have a choice to say, okay, I want to post this
05:40
backend with GIS or I want to post this backend with SFCGAL. And for the command function you have the ability to choice, to say okay I want this library to do the job or the other ones. Right now related to SFCGAL
06:01
we perform all the tests in 2D that PostGIS-GIS already did. So it's supposed to be as accurate and as robust as the GIS do for the 2D. We pass also all the garden tests to check that
06:20
everything will not crash. And we also deal with invalidity geometry in 3D. But it's a fact, it's yet really new library, so we have not yet a wide user community able to say, okay, I'll try it in exotic configuration or in exotic
06:44
use case and at this point it doesn't work as expected. So it's up to you. We are really waiting for people who use it and to say, okay, I'll open a ticket because something. About the
07:02
performances right now, if we compare GIS and SFCGAL, obviously only for the 2D, performances are quite the same quite similar in fact. But the point is that in SFCGAL, because in SFCGAL
07:22
we gain the arbitrary precision that is not available in GIS. So even if we are quite similar in performances, there is a gain because we are more accurate in fact. On the other hand,
07:46
3D computation itself could take time. So be careful, the 2D part is as fast as GIS, but the 3D part takes time. A few words about
08:04
standardization. There is right now two new standards that are not yet voted in OGC. They will be voted in few weeks or few months related to 3D. So
08:20
we are now following this standardization process to be sure that all we already done will be compliant with the new coming standardization process in OGC and in ISO. At this point, it was
08:44
in July. We are really happy because we have something working for GIS but there is something we are missing is the ability to rendering in 3D and to see what we already did. So at this point we choose to
09:05
launch a new project related to our common tool to display GIS and so Quantum GIS. And there is a new plugin able to display 3D things. The name in Greek is OHAO, so
09:23
the meaning is to see in Greek. To be able to see something in 3D. So the rendering part is based on OpenGL OpenSendGraph, obviously QGIS and in the middle there is a scene layer called OHAO
09:43
and the aim of this plugin is to make the link between OpenSendGraph, OGIS and QGIS. So if you see something that we could do with all this
10:00
stuff, it's quite the same with the following video that we did in the workshop at the beginning of the week for those who perform the 3D workshop. So that's an example with QGIS in 2D with an elevation model, so it's quite classical
10:22
but here there is an OHAO plugin with a 3D rendering of the same data, so once you zoom in, you zoom in also in the 3D display and you
10:41
can see over there that you have the ability to change the angle and to see better the elevation model. At this point we want to add a new 2D building footprint, so on the same kind of center area we load the building in 2D and obviously here on the 3D rendering
11:04
At this point it's only 2D data but the 2D data is put on the elevation model and that's becoming more interesting because we have the ability to extrude the data and to say ok we have at the beginning only flat
11:23
2D building footprint but we will choose right now to extrude the data, the 2D data with the height of each building and to create a new geometric column called LOD2
11:40
in the database and to display it in 2D but more in 3D and at this point it's not really perfect because our LOD2 data are put at this ready moment on the sea level so we are able to see each building
12:03
but with the SZ zero level, so we need to compute a better evolution for each building and how we do that just because we put already the elevation model also in per GIS roster, so we have the ability
12:23
to compute roster and vector for each building and to say ok this building is at this height and to translate each building to right now compute them and
12:41
be able to render both the elevation model and the building in 2D and in 3D and if we focus on a place here with an hill on the city you can see that each building fits quite well on the elevation model
13:02
so we also have a synchronization on the symbology color, so each time you choose another color it will be synchronized both in 2D and 3D and if we zoom out you can see there that there is a tile handling system able to load data
13:21
by tiles to wait too long in fact and now we begin to something we begin really to play with 3D data
13:40
to perform some 3D spatial analysis so in green there is a layer, 2D layer related to environmental data so there is a river and parks in the same green and if we focus here on this place with the two green parks
14:03
the question is if we took some flying insects how far could they fly around the park? So we make a request with a buffer and with an extrusion around each park and we get
14:22
in 2D and in 3D the flying area available for these insects. And the next question is is there any chance that these two parks leading to two flying zones could intersect in 3D? So we launch a new query asking
14:42
is there a 3D intersection between these two different regions and we launch it from DB Manager and we ask SF Seagal and Seagal is there a 3D intersection and if yes create a new table with a result so the computation as I said took several seconds
15:02
so it's something like 30 seconds in a basic laptop to perform the 3D intersection and at the end we'll have a new table with a result. So it did
15:21
we have the new table and we just have to refresh to display it. We display it here in 2D with a lot of triangles and here in 3D as a new volume. So you got the 3D intersection as a new volume Another point is just some kind of
15:43
3D rendering trick is to say okay we've got another dimension, an extra dimension so we can use it to display some extra information about our data. So in the data there is some points related to bike station
16:01
available in the city to take fully a bike so we use here the bar to wonder how much bike are available in the city so if a bar is high there is a lot of bike available
16:29
so if we look once again to the rule architecture we got so on the server part post GIS
16:42
SF Seagal has a new layer binding Seagal obviously the old Gios will still remain Quantum GIS, OHAO and obviously all the libraries beneath OHAO so-called OpenSCAN Graph and OpenGL
17:04
The blue ones are the ones where there is a need to continue to improve again all these ones we don't have to to deal that much with them because they are quite robust, quite well known
17:21
and so on. You can find each of the force I'm just talking about, so pod GIS, SF Seagal OHAO, QGIS For both post GIS and SF Seagal we use the latest stable version
17:43
and for OHAO and QGIS we use the latest trunk version. So what is the next step we have in mind? Next step we have in mind is to increase and enhance the number of functions
18:01
available through SF Seagal. So to have something like 3D Union 3D Relate, 3D Simplify, things like that The other point is to improve and enhance again the rendering quality We know we can do better
18:22
and to beautify again the 3D rendering quality And we know also that we are able to play also with WebGL, so right now we have QGIS, 3D rendering but we want also to explore solutions based on
18:42
WebGL, so in browser If you want to play you have the presentation already available right now online, and you can find the workshop quite related to the video I've just presented
19:04
with all the online tools So if you want to do it by yourself, step by step, it's possible And as we provide Phosphology workshop in the beginning of the week, we also have the full environment in a virtual box available, so if something
19:23
wants it, we can provide it, it's a 6GB virtual box, but it's possible to let you copy it if you want to. And that's it
19:46
Thank you Olivier, any questions? You mentioned two standards that OGC is working on Can you tell me why they are doing this?
20:03
This one is a well-known standard related to topological models, so it's something really abstract And the new version, the new coming version is related to adding the 3D in more, because the old one
20:24
was complete, but only related to 2D And this one is something clever, it's the one to unify a simple feature for SQL, either SQLMM,
20:44
DML, in the same kind of standard based on profile So we'll have only one model but with several profiles, with some kind of unification with several kinds of models we have to deal with Each time we want to play with geometry
21:03
in special databases in fact
21:24
So SQL itself is based on C++ language It's a library developed by several universities and also by one company So because there are several universities, sometimes there are several
21:42
ways to do it inside the SQL So it's not something only unified, there is some different models inside SQL In false false, the main trick to do the binding was more
22:02
to consider the conversion between the PostGIS-SF for SQL model and the SQL 3D model So it's more related to the conversion and to the test The test is really time consuming for us to be sure
22:22
that it will work nicely and with an error in the real case we have to deal with
22:43
In fact if we look in the workshop, we can deal on a lot of use cases, only with 3D index because we have to deal with 3D index
23:04
only if there are several 3D objects that oppose them For example, the 3D geological use case as we've just seen before is a typical use case
23:20
where a 3D index is meaningful For example a 3D index could be enough but in the PostGIS-2 there is also a 3D index available Any more questions? We have plenty of time
23:54
Can it handle this kind of large surfaces like in this geology case or in the global SRTM model
24:04
Can I put this into that so I can get fast queries and visualizations based on a really huge scale On the video, in fact the rest of the part could be quite big
24:24
At least a big city could fit As it was our use case, we are happy with that We play with quite common laptops It's not dedicated 3D hardware or something like that to play with, we just need a quite decent
24:44
hardware and a 3D acceleration on it and that's it On our use case, we are also able to run the whole city building of a quite big city You haven't tested this kind of case that you have a global elevation model
25:04
and you need only one small portion of that because you cannot render a whole country, for example At this moment, it's not our use case so we didn't try it We didn't know if it worked or not
25:26
Visualizer for quantum GIS is it capable to texturize with textures on it? At this point, we only handle plain color and transparency on color at this point
25:42
I have to put a word on it This layer Oahu is a quite new software You have to figure that Oahu is still something
26:01
in between an alpha and a beta It's a brand new software and at this moment, it only handles plain color, transparency and not yet texture It will surely come, but right now, not yet
26:24
Sorry Okay In fact if you play the workshop you will see that we deal with two LOD
26:43
LOD1 and LOD2 The model is already able to fit city GML There are other projects able to take some city GML files and import them in PostGIS
27:01
There is a way to use city GML data and city GML model inside PostGIS and to begin to play with It was
27:25
We began to think about it as a really moment The signal change is licensed and allows also to have a GPL license The signal is also available as a GPL
27:42
The signal 2 is as GPL I think it's GPL 3, but not to be confirmed Any more questions? If not, then
28:00
Thank you Olivier