June 2, 20151 Mathematics and geo-information, what to present? too many choices… geo-information at the roots of mathematics (geometry) classic surveying.

Slides:



Advertisements
Similar presentations
CS 450: COMPUTER GRAPHICS FILLING POLYGONS SPRING 2015 DR. MICHAEL J. REALE.
Advertisements

Oracle Spatial and Mapviewer Problems From Real World Applications.
Map Overlay Algorithm. Birch forest Wolves Map 1: Vegetation Map 2: Animals.
2/14/13CMPS 3120 Computational Geometry1 CMPS 3120: Computational Geometry Spring 2013 Planar Subdivisions and Point Location Carola Wenk Based on: Computational.
Extended Gaussian Images
Introduction to Spatial Database System Presented by Xiaozhi Yu.
Ruslana Mys Delaunay Triangulation Delaunay Triangulation (DT)  Introduction  Delaunay-Voronoi based method  Algorithms to compute the convex hull 
By Groysman Maxim. Let S be a set of sites in the plane. Each point in the plane is influenced by each point of S. We would like to decompose the plane.
Convex Hulls in 3-space Jason C. Yang.
Chapter 12: Surface Area and Volume of Solids
Rüdiger Westermann Lehrstuhl für Computer Graphik und Visualisierung
3. Delaunay triangulation
Friso Penninga TU Delft Sander Oude Elberink ITC Enschede 3D Topography.
Oracle spatial – Creating spatial tables Object Relational Model Creating Spatial Tables.
Polygonal Meshes 3D Object Representation -Tyler Abrams.
Chapter 3 2D AND 3D SPATIAL DATA REPRESENTATIONS 김 정 준.
Computing the Delaunay Triangulation By Nacha Chavez Math 870 Computational Geometry; Ch.9; de Berg, van Kreveld, Overmars, Schwarzkopf By Nacha Chavez.
Chapter 4: Straight Line Drawing Ronald Kieft. Contents Introduction Algorithm 1: Shift Method Algorithm 2: Realizer Method Other parts of chapter 4 Questions?
July A TEN-Based DBMS Approach for 3D Topographic Data Modeling Friso Penninga (TUD), Peter van Oosterom (TUD), and Baris M. Kazar (Oracle) SDH.
Complex Model Construction Mortenson Chapter 11 Geometric Modeling
Quadtrees and Mesh Generation Student Lecture in course MATH/CSC 870 Philipp Richter Thursday, April 19 th, 2007.
GI Systems and Science January 23, Points to Cover  What is spatial data modeling?  Entity definition  Topology  Spatial data models Raster.
Introduction to 3D Graphics John E. Laird. Basic Issues u Given a internal model of a 3D world, with textures and light sources how do you project it.
CSE 681 Ray Tracing Implicit Surfaces. CSE 681 Overview Similar to CSG –Combine primitive objects to form complex object Primitives are “density fields”
Slope and Aspect Calculated from a grid of elevations (a digital elevation model) Slope and aspect are calculated at each point in the grid, by comparing.
Spatial data models (types)
Modeling and representation 1 – comparative review and polygon mesh models 2.1 Introduction 2.2 Polygonal representation of three-dimensional objects 2.3.
Delaunay Triangulations Presented by Glenn Eguchi Computational Geometry October 11, 2001.
Introduction to 3D Graphics Lecture 4: Scenes and Scene Graphs Anthony Steed University College London.
Mesh Representation, part I
A D V A N C E D C O M P U T E R G R A P H I C S CMSC 635 January 15, 2013 Quadric Error Metrics 1/20 Quadric Error Metrics.
COMPUTER AIDED DESIGN -(CAD)-3
Faculty of Applied Engineering and Urban Planning Civil Engineering Department Geographic Information Systems Vector and Raster Data Models Lecture 3 Week.
Applied Cartography and Introduction to GIS GEOG 2017 EL Lecture-2 Chapters 3 and 4.
Algorithms for Triangulations of a 3D Point Set Géza Kós Computer and Automation Research Institute Hungarian Academy of Sciences Budapest, Kende u
Part 6: Graphics Output Primitives (4) 1.  Another useful construct,besides points, straight line segments, and curves for describing components of a.
8. Geographic Data Modeling. Outline Definitions Data models / modeling GIS data models – Topology.
1 Data models Vector data model Raster data model.
PRESENTED BY – GAURANGI TILAK SHASHANK AGARWAL Collision Detection.
Spatial Databases: Digital Terrain Model Spring, 2015 Ki-Joune Li.
Intersection of Nonconvex Polygons Using the Alternate Hierarchical Decomposition, AHD by Rizwan Bulbul, and Andrew U. Frank Department of Geoinformation.
Spatial Databases - Introduction Spring, 2015 Ki-Joune Li.
1Computer Graphics Implementation II Lecture 16 John Shearer Culture Lab – space 2
Visual Computing Geometric Modelling 1 INFO410 & INFO350 S2 2015
Solid Modeling Ref. Mantyla. Introduction Aim of modeling: The search of a media of communication.
1 / 41 Convex Hulls in 3-space Jason C. Yang. 2 / 41 Problem Statement Given P: set of n points in 3-space Return: –Convex hull of P: CH (P) –Smallest.
L1-Spatial Concepts NGEN06 & TEK230: Algorithms in Geographical Information Systems by: Irene Rangel, updated by Sadegh Jamali 1.
A New Voronoi-based Reconstruction Algorithm
L8 - Delaunay triangulation L8 – Delaunay triangulation NGEN06(TEK230) – Algorithms in Geographical Information Systems.
Computer Graphics I, Fall 2010 Implementation II.
UNC Chapel Hill M. C. Lin Delaunay Triangulations Reading: Chapter 9 of the Textbook Driving Applications –Height Interpolation –Constrained Triangulation.
Department of Computer Science and Engineering On Computing handles and tunnels for surfaces Tamal K. DeyKuiyu LiJian Sun.
Solid Modeling Dr. Scott Schaefer.
Computer Graphics Lecture 08 Taqdees A. Siddiqi Computer Graphics Filled Area Primitives I Lecture 08 Taqdees A. Siddiqi
CS552: Computer Graphics Lecture 28: Solid Modeling.

Introduction to Spatial Computing CSE 555
We propose a method which can be used to reduce high dimensional data sets into simplicial complexes with far fewer points which can capture topological.
Introduction to Polygons
Geographical Information Systems
3.1 Clustering Finding a good clustering of the points is a fundamental issue in computing a representative simplicial complex. Mapper does not place any.
Localizing the Delaunay Triangulation and its Parallel Implementation
Computer Aided Engineering Design
3D Topography A simplicial Complex-based Solution in a Spatial DBMS
Spatial Databases - Introduction
Spatial Databases - Introduction
Unstructured grid: an introduction
Spatial Databases: Digital Terrain Model
Spatial Databases: Digital Terrain Model
Lecture 5: Triangulations & simplicial complexes (and cell complexes).
Presentation transcript:

June 2, Mathematics and geo-information, what to present? too many choices… geo-information at the roots of mathematics (geometry) classic surveying problems such as: What is distance between house and road What is area of parcel? In what direction is the lake? Etc. but also: mathematics at the roots of geo-information

June 2, Mathematics at the roots of geo- information sometimes unexpected applications of: Voronoi Tessellation and Delaunay TIN Apollonian circle Network Graph algorithms Space filling curves Point set theory Poincaré simplicial homology Etc.

June 2, Voronoi Tessellation (and its dual: Delaunay TIN) Voronoi Polygon: VP(i) = {x  2 |d(x,v i )  d(x,v j ); i  j}

June 2, Sphere-three Apollonius circle (sphere): smallest circle enclosing a set of points/circles Sphere-tree: orientation insensitive (counter part of well known R-tree for spatial indexing)

June 2, Network Graph algorithms Routes fastest shortest Dijkstra Algorithm: “A Note on Two Problems in Connection with Graph” (1959!)

June 2, Space Filling Curves col row col row col row col row col row col 0 15 row col 0 15 row RowRow primeSpiralPeano GrayHilbertCantor/DiagonalSierpinski/Triangle

June 2, disjoint - inside - touch - equals - covers - overlap Topological relations, preserved under ‘rubber-sheet’ transformations Relations (area / area) Set representation: S1:   S2:   S3:   S4:   S1-S4 empty/not empty In theory 16 options, of which 6 are really different

June 2, GIS mathematics: Poincaré simplicial homology for 3D volume modeling Peter van Oosterom and Friso Penninga Vakantiecursus 2006, Actuele Wiskunde, Eindhoven/Amsterdam

June 2, aug 2006

June 2, Overview 1.Introduction 2.3D Data Modeling in a TEN Data Structure 3.DBMS aspects 4.Implementation 5.Conclusion

June 2, Real world is based on 3D objects Objects + object representations get more complex due to multiple use of space Applications in: Sustainable development (planning) Support disaster management 3D Topography: more than visualization! 1.Introduction: Need for 3D Topography

June 2, Introduction: Research Goal + Develop a new topographic model to be realized within a robust data structure and filled with existing 2D, 2.5D and 3D data Data structure: design / develop / implement a data structure that supports 3D analyses and maintains data-integrity =

June 2, Introduction: Full 3D Model Observation: the real world is a volume partition Result: ‘air’ and ‘earth’ (connecting the physical objects) are modeled Advantages of volume partitioning: Air/earth often subject of analysis (noise, smell, pollution,..) Model can be refined to include: air traffic routesgeology layers (oil) indoor topography Ford & James, University of Newcastle, Agile 2005

June 2, Overview 1.Introduction 2.3D Data Modeling in a TEN Data Structure A.TEN Data Structure B.Poincaré simplicial homology C.Poincaré boundary properties D.TEN based analysis E.Conceptual Model 3.DBMS aspects 4.Implementation 5.Conclusion

June 2, A TEN Structure Support 3D (volume) analysis Irregular data with varying density Topological relationships enable consistency control (and analysis) After considering alternatives the Tetrahedronized irregular Network (TEN) was selected (3D ‘brother’ of a TIN)

June 2, A TEN Structure, Advantages Based on simplexes (TEN): Well defined: a nD-simplex is bounded by n+1 (n-1)D-simplexes 2D-simplex (triangle) bounded by 3 1D-simplexes (line segments) Flat: every plane is defined by 3 points (triangle in 3D) nD-simplex is convex (simple point-in-polygon tests) The TEN structure is very suitable for 3D analyses!

June 2, A TEN Structure, Many Primitives Needed, a Disadvantage? In 3D (complex) shapes  subdivide in (many) tetrahedrons: TEN is based on points, line segments, triangles and tetrahedrons: simplexes (‘simplest shape in a given dimension’)

June 2, Overview 1.Introduction 2.3D Data Modeling in a TEN Data Structure A.TEN Data Structure B.Poincaré simplicial homology C.Poincaré boundary properties D.TEN based analysis E.Conceptual Model 3.DBMS aspects 4.Implementation 5.Conclusion

June 2, B Poincaré simplicial homology (1) Solid mathematical foundation: A n -simplex S n is defined as smallest convex set in Euclidian space R m of n+1 points v 0, …, v n (which do not lie in a hyper plane of dimension less than n)

June 2, B Poincaré simplicial homology (2) The boundary of simplex S n is defined as sum of (n-1) dimensional simplexes (note that ‘hat’ means skip the node): S n = remark: sum has n+1 terms

June 2, B Poincaré simplicial homology (3) 2D: this means that triangle (S 2 ) has 3 edges (S 1 ) and 3 nodes (S 0 ) 3D: this means that tetrahedron (S 3 ) has 4 triangles (S 2 ), 6 edges (S 1 ) and 4 nodes (S 0 )

June 2, B Poincaré simplicial homology (4) With (n+1) points, there are (n+1)! permutations of these points. In 3D for the 4 simplexes this means 1, 2, 6 and 24 options ( S 0 obvious): For S 1 the two permutations are and (one positive and one negative = - ) For S 2 there are 6:,,,,, and. First 3 opposite orientation from last 3, e.g. = -. counter clockwise (+) and the negative orientation is clockwise (-) For S 3 there are 24, of which 12 with all normal vectors outside (+) and 12 others with all normal vectors inside (-)!

June 2, S 2 permutations and +/- orientation v1v1 v2v2 v0v0

June 2, S 2 permutations and +/- orientation v1v1 v0v0 new v 2 Note: +/- orientation depends on configuration (in this case on surface observed from above) old v 2

June 2, S 3 permutations and +/- orientation v1v1 v0v0 v2v2 v3v3

June 2, S 3 permutations and +/- orientation S 31 : For given configuration, first permutation of S 3 is positive (all signed normals pointing outside) v1v1 v0v0 v2v2 v3v3 v1v1 v0v0 v2v2 v3v3 v1v1 v0v0 v2v2 v3v3 v1v1 v0v0 v2v2 v3v3

June 2, S 3 permutations and +/- orientation S 32 : For given configuration, second permutation of S 3 is negative (all signed normals pointing inside) v1v1 v0v0 v2v2 v3v3 v1v1 v0v0 v2v2 v3v3 v1v1 v0v0 v2v2 v3v3 v1v1 v0v0 v2v2 v3v3

June 2, Overview 1.Introduction 2.3D Data Modeling in a TEN Data Structure A.TEN Data Structure B.Poincaré simplicial homology C.Poincaré boundary properties D.TEN based analysis E.Conceptual Model 3.DBMS aspects 4.Implementation 5.Conclusion

June 2, C Poincaré boundary properties (1) Within a single simplex, the sum of the signed boundaries of the boundaries of a simplex is 0 (taking into account the orientation)

June 2, C Poincaré boundary properties (2) In 3D this means that every edge is used once in positive direction and once in the negative direction (within simplex S 3 = ) j\i v 2 v 3 + v 1 v 3 - v 1 v 2 1+ v 2 v 3 - v 0 v 3 + v 0 v 2 2- v 1 v 3 + v 0 v 3 - v 0 v 1 3+ v 1 v 2 - v 1 v 2 + v 0 v 1

June 2, C Poincaré boundary properties (3) Adding Simplices to Complexes v3v3 v2v2 v1v1 v0v0 v2v2 v4v4 v0v0 v1v1 v3v3

June 2, Within a complex (of homogeneous highest dimension) sum of signed boundaries of (highest dimensional) simplices is 0 with exception of outer boundary of complex sum of signed boundaries of boundaries of (highest dimensional) simplices is 0 2D: boundary is edge3D: boundary is triangle boundary of boundary is nodeboundary of boundary is edge 2.C Poincaré boundary properties (4) end start

June 2, C Poincaré boundary properties (5) Within a simplical complex of homegeous dimension (e.g. the TEN network in 3D), the co-boundary of S n is defined as the set of higher dimesional simplices (set of S n+1 ) of which S n is boundary For example in a TEN network (3D): the co-boundary of a triangle is formed by set of the two adjacent thetrahedrons The co-boundary of a edge is formed by set of k incident triangles

June 2, Overview 1.Introduction 2.3D Data Modeling in a TEN Data Structure A.TEN Data Structure B.Poincaré simplicial homology C.Poincaré boundary properties D.TEN based analysis E.Conceptual Model 3.DBMS aspects 4.Implementation 5.Conclusion

June 2, D Analysis Euler-Poincaré formula check if network can be ‘correct’ (1) The ‘balance’ between the number of simplices of different dimensions in a simplical complex is given by the Euler-Poincaré formula (including outside world): 2D: f-e+n=23D: t-f+e-n=0 ( =2)( =0)

June 2, D Analysis Euler-Poincaré formula check if network can be correct (2) Formula is valid for any simplical complex. Therefore can not detect dangling edges or faces in simplicial complex with homogeniuos highest dimesion such as a TEN. 2D: f-e+n=23D: t-f+e-n= =2  = =0  =0

June 2, D Analysis, compute content (area in 2D, volume in 3D,…) 2D: compute area of triangle (base * half of height), also according to Heron’s formula with semiperimeter s=1/2(a+b+c): Can be stated using Cayley-Menger determinant: Also defined for nD simplex based on (n+2)*(n+2) det

June 2, D Analysis, point-in-polygon test (point- in-polyhedron test similar) nD-simplex is convex, much simpler point-in-polygon tests (for every boundary check is point is on correct side of boundary) compared to concave test (shoot ray from point to infinite and count number of boundary intersections)

June 2, D Analysis, check if polyhedral object is correct (connected) Definition of a valid polyhedral object (bounded by flat faces and possible having holes and handles): from every point of the polyhedron is should be able to reach every other point of the polyhedron via the interior. Hole inside

June 2, Invalid valid

June 2, Invalid Valid

June 2, D polyhedral object correctness test Traditional approach: check for 2-manifold (every edges used twice) and boundaries may not cross If outer and inner boundary touch: do topology analysis. Potentially invalid: if the connected intersections (edges) of inner and outer boundaries (faces) do form a ring (however, this is not a sufficient condition) Much easier: check if tetrahedrons (within a correct TEN) of one object are neighbors sharing a triangle (so edge or node is not sufficient)

June 2, Overview 1.Introduction 2.3D Data Modeling in a TEN Data Structure A.TEN Data Structure B.Poincaré simplicial homology C.Poincaré boundary properties D.TEN based analysis E.Conceptual Model 3.DBMS aspects 4.Implementation 5.Conclusion

June 2, D Conceptual Model Earlier work: Panda (Egenhofer et. al. 1989) and Oracle Spatial (Kothuri et. al. 2004) only 2D space. Panda has no attention for feature modeling Features attached to set of primitives (simplices) TEN model seams simple, but different perspectives results in 3 different conceptual models for same TEN: 1.Explicit oriented relations between next higher level 2.As above but with directed and undirected primitives 3.Only with ordered relations to nodes (others derived)

June 2,

June 2,

June 2,

June 2, Overview 1.Introduction 2.3D Data Modeling in a TEN Data Structure 3.DBMS aspects A.Incremental Update B.Basic Update Actions C.Storage Requirements 4.Implementation 5.Conclusion

June 2, DBMS Aspects Models are expected to be large  efficient encoding (of both base tables and indices), so what to store explicitly and what to store implicitly (derive)? Consistency is very important: 1.Start with initial correct DBMS (e.g., empty) 2.Make sure that update results in another correct state Specific constraints: earth surface (triangles with ground on one side and something else on other side) must form a connected surface (every earth surface triangle has 3 neighbor earth surface triangles) No holes allowed, but trough holes (tunnel) possible

June 2, DBMS Aspects Incremental Update Inserting a feature (e.g., house): means that boundary (triangle) has to be present in TEN TEN algorithms do support constrained edges, but not triangles  first triangulate boundary Resulting edges are inserted in constrained TEN (updating node/edge/triangle/tetrahedron table) Finally link feature (house) to set of tetrahedrons New features take space of old features (could be air or earth), which should agree Lock relevant objects during transaction

June 2, DBMS Aspects: Update TEN Structure, Basic Actions (1) Move node (without topology destruction) Insert node and incident edges/triangles/tetrahedrons on the middle of: 1.tetrahedron:+1 node, +4 edges, +6 triangles, and +3 tets 2.triangle: +1 node, +5 edges, +7 triangles, and +4 tets 3.Edge (n tets involved): +1 node, +(n+1) edges, +2n triangles, +n tets

June 2, DBMS Aspects: Update TEN Structure, Basic Actions (2) Flipping of tetrahedrons, two cases possible: bistellar flip (left) bistellar flip (right) Inserting constrained edges (not so easy…)

June 2, DBMS Aspects: Storage Requirements In addition to these also indices (on id) and spatial indices (on location) For all tables (both prinmitives and features) Building as polyhedronBuilding as TEN (1 volume)8 tetrahedrons 7 faces(24 triangles) (15 edges)(25 edges) (10 points)(10 nodes)

June 2, Overview 1.Introduction 2.3D Data Modeling in a TEN Data Structure 3.DBMS aspects 4.Implementation 5.Conclusion

June 2, Implementation Toy data set: 56 tetrahedrons, 120 triangles, 83 edges and 20 nodes in (more or less) UML model 1: create table node( nid integer, geom sdo_geometry); create table edge( eid integer, startnode integer, endnode integer, isconstraint integer);

June 2, create table triangle( trid integer, edge1 integer, edge2 integer, edge3 integer, isconstraint integer, afid integer); create table tetrahedron( tetid integer, triangle1 integer, triangle2 integer, triangle3 integer, triangle4 integer, vfid integer);

June 2, Implementation Only geometry in node (point) functions (e.g., get_edge_geometry ) compute geometry for other primitives Can be used in view create view full_edge as select a.*, get_edge_geometry(eid) edge_geometry from edge a; After metadata registration, add index: create index edge_sidx on edge(get_edge_geometry(eid)) indextype is mdsys.spatial_index parameters('sdo_indx_dims=3')

June 2, Simple 3D viewer created, based on: 1.2D viewer 2.rotate_geom function Note use of semi- Transparency Hidden line/surface by painter algorithm and depth sorting

June 2, Overview 1.Introduction 2.3D Data Modeling in a TEN Data Structure 3.DBMS aspects 4.Implementation 5.Conclusion

June 2, Conclusion Requirement: Data structure supporting 3D analyses and data-integrity Developed: TEN based 3D topography prototype with: analysistopology, Poincaré simplicial homology data-integrityfull 3D partition, topology In future more standard 3D support in DBMS!

June 2, Acknowledgements  Bsik Space for Geo-information (RGI) ‘3D Topography’ research project  Includes long-term TUD-Oracle partnership, thanks to John Herring, Siva Ravada, Ravi Kothuri and Han Wammes for their constructive discussions  Jan Aarts is acknowledged for his remarks on the draft version of the paper  Miente Bakker and Minnie Middelberg: thanks for support and patience during preparation of the publication Friso Penninga and Peter van Oosterom participate in the research program 'Sustainable Urban Areas' (SUA) carried out by TUD