Ladda ner presentationen
Presentation laddar. Vänta.
1
Introduktion Spatiala objekt i Autodesk Topobase 2
Peter Arninger Sveriges kommuner står inför stora utmaningar. Effektiv IT är en liten men viktig del i den verksamhetsutveckling som pågår. Vi bygger system som gör verksamhetsutvecklingen möjlig. System som är skräddarsydda för svenska kommuner men inte unik för varje kommun. Stabila standardprodukter som bygger på samverkan.
2
Introduktion Spatiala objekt i Autodesk Topobase 2
Agenda Vad är Oracle Spatial? Varför? Kommande versioner av Autodesk Topobase Hur fungerar det i Autodesk Topobase 2 Tekniska förutsättningar Oracle Spatial–komponenter Skapa spatiala defintioner med hjälp av Autodesk Topobase 2 Skriva spatiala objekt med hjälp av Autodesk Topobase 2 Validering av spatiala obejt Felsökning och rättning Triggrar i Autodesk Topobase 2 Referenser TB2Metadata Använda spatiala objekt tillsammans med andra verktyg Arbetssätt Diskussion och frågor
3
Vad är Oracle Spatial? Wikipedia Oracle Spatial forms a separately-licensed option component of the Oracle Database. Oracle Spatial aids users in managing geographic and location-data in a native type within an Oracle database, potentially supporting a wide range of applications — from automated mapping/facilities-management and geographic information systems (GIS), to wireless location services and location-enabled e-business.
4
Vad är Oracle Spatial? Oracle Oracle Spatial (formerly called SDO and before that MultiDimension), provides a way to store and retrieve multi-dimensional data in Oracle. It is primarily used for Geographical Information Systems to implement geo-reference and solve queries such as how is something related to a specific location. With this, representation of features (point, line or polygon) are stored in a single field within a table. A single Helical Hyperspatial code (HHCODE) is used to store the Euclidean spatial dimensions and additional data dimensional include depth, elevation, or time. The types of multidimensional data are restricted only in that they must be a numeric data type and have a bounded range. The HHCODE is generated through the recursive decomposition of dimensional space. Attribute data for specific multidimensional data is stored within columns of a table in the database. Access to the data for processing and manipulation is accomplished through extensions to Oracle PL/SQL.
5
Vad är Oracle Spatial? Annan definition Oracle Spatial består av en mängd funktioner och procedurer som är inbyggda i databasen vilket möjliggör att spatiala (geografiska) data kan lagras, läsas och analyseras.
6
Varför? Varför? Standardiserat sätt att lagra geometrier så att flera verktyg kan komma åt det spatiala datat Leverantörer anpassar sig ”standarden” Läsa och sätta samman spatiala data från olika källor (verksamhetssystem) Senare Topobase-versioner använder enbart geometrier i Oracle Spatial
7
Kommande versioner av Autodesk Topobase
Kommande versioner av Topobase Senaste versionen är Autodesk Topobase Använder Oracle Spatial fullt ut För att komma från Topobase 2 till Autodesk Topobase 2008 krävs spatiala objekt i Topobase 2
8
Hur fungerar det i Autodesk Topobase 2
Autodesk Topobase 2 används som vanligt En ”skuggdatabas” används där en kopia läggs som Oracle Spatial-data Synkronisering via s k triggrar
9
Tekniska förutsättningar
Oracle 9i eller 10g med det spatiala tillägget (Enterprise Edition) Spatiala tillägget ger schemat MDSYS, ”ägaren” till spatial Programkod laddas ned i databasen till: - MDSYS - TBSYS Se Tekis hemsida och TBSYS.zip Läs TBSYS.pdf TBSYS är Topobase ”system”-schema
10
Oracle Spatial-komponenter
Datatyp En speciell datatp används för geometrier i en Oracle spatial-databas
11
Oracle Spatial-komponenter
Metadata Metadata (data om data) lagras om det spatiala objektet (hos MDSYS) Geografisk utbredning i x och y Tolerans – när betraktas det som samma punkt Koordinatsystem (SRID) Exempel: select * from user_sdo_geom_metadata where table_name = ’BY_POLYGON’
12
Oracle Spatial-komponenter
Exempel på geometrityper Point Polygon Compound polygon Line string Polygon with hole Arc line string
13
Geometrityper Topobase 2 Oracle Spatial
Oracle Spatial-komponenter Geometrityper Topobase Oracle Spatial Punkt Linje Polygon Lablar (text) Point Compound Line String Compound Polygon Saknas, (Topobase 2 skapar dessa som points)
14
Oracle Spatial-komponenter
Spatiala index Index behövs för att snabba upp sökningar och för att geografiska utsökningar ska kunna göras Index kan skapas mot en speciell geometrityp eller för alla geometrityper Index måste finnas för att verktyg ska kunna använda det spatiala datat Ett index innehåller aldrig något data, därför kan spatiala index tas bort och skapas om på nytt
15
Skapa spatiala definitioner med Autodesk Topobase 2
Topobase Administrator De spatiala delarna finns under varje objektklass och nås med högerklick och valet Spatial objekt Finns i även högst upp i trädet Skapa och skriv Spatiala objekt för alla objektklasser
16
Skapa spatiala definitioner med Autodesk Topobase 2
Definitionerna skapas med hjälp av valet Skapa Spatialt objekt Välj: - Koordinatsystem, vad som finns att välja på varierar mellan vad som finns i Oracle - Tolerans, rekommendation 5 mm, d v s 5e-003 eller Geografisk utbredning, tänkta området för geometrierna, finns data lämnas ett förslag.
17
Skapa spatiala definitioner med Autodesk Topobase 2
Det som händer är: - Kolumnen GEOM skapas med den speciella datatypen, syns i Topobase Administratorn - Spatialt metadata skapas för objektklassen med kolumn GEOM, geografisk utbredning, tolerans och SRID Index och triggrar skapas inte. Detta behöver normalt sett bara göras en gång per objektklass. Däremot om något förändras (t ex geografisk utbredning) så görs det på nytt.
18
Skriva spatiala objekt med Autodesk Topobase 2
Topobase Administrator Välj objektklass och högerklick Spatial objekt och Skriv spatiala objekt
19
Skriva spatiala objekt med Autodesk Topobase 2
Det som händer är: Kolumnen GEOM fylls med data av Topobase baserat på de geometrier som finns i koordinatsystem 1 Någon kontroll (validering) av datat sker inte. Topobase loggar vissa ”fel” i tabell TB_SPATIAL_ERROR_LOG
20
Validering av spatiala objekt
Oracle validerar inte datat som lagras spatialt utan det är upp till användaren att göra (applikationen) I Oracle finns det rutiner för att validera det spatiala data Tekis har tagit fram ett skript ”Validate_geom_with_context.sql” för validering av enskild objektklass (finns på hemsidan) Skriptet anpassas
21
Validering av spatiala objekt
Körs sedan med hjälp av SQL*Plus inloggad som ägare Skriptet sparar resultatet i en text-fil, titta och ev. rätta En annan variant är att använda TB2Metadata
22
Validering av spatiala objekt
Valideringen och skrivningen är en process som upprepas till alla objekt inom en objektklass är felfri Skriv spatiala objekt Finns det felaktigheter? Validera Ja Rätta Nej Skapa trigger om synkronisering önskas Skapa index
23
Validering av spatiala objekt
De fel som visas vid valideringen består av en numerisk felkod, t ex 13011 Felkodens betydelse kan fås fram via nätet eller Oracle-handbok (t ex Oracle 10g Database Error Messages, finns på hemsidan)
24
Felsökning och rättning
Använd FID-en för att visa geometrin i Basic Map med villkor Rätta geometrin
25
Felsökning och rättning
Städningsskript Några enklare städningsskript finns som rensar bort en del valideringsfel: Radera_tomma_linjer_polygoner.sql Raderar linjer och polygoner i alla objektklasser som saknar godkänd geometri, d v s har färre än 2 poster (brytpunkter) i _GEO-tabellen. Uppdaterar DELETED till 1, USER_DELETED till 'TOMMA' och DATE_DELETED till aktuellt körningsdatum. Radera_koordinatdubletter_system1_linjer.sql Raderar dubletter (vertex med samma x- och y-koordinater) i _GEO-tabellen för linjer i koordinatsystem 1. Skriptet anpassas med aktuell objektklass i DEFINE-delen. Observera att skriptet ska göras om och om igen tills inget händer för att alla dubletter ska tas bort. Radera_koordinatdubletter_system1_polygoner.sql Raderar dubletter (vertex med samma x- och y-koordinater) i _GEO-tabellen för polygoner i koordinatsystem 1. Skriptet hanterar inte öar. Skriptet anpassas med aktuell objektklass i DEFINE-delen. Observera att skriptet ska göras om och om igen tills inget händer för att alla dubletter ska tas bort. På Tekis hemsida – Användarsidor – TOPOBASE – Filhämtning och ”TB2_OracleSpatial.zip - Diverse skript för Topobase 2 och Oracle Spatial” finns dessa skript att hämta.
26
Felsökning och rättning
Vanliga fel som kan förekomma: ORA Value is out of range Cause: A specified dimension value is outside the range defined for that dimension. Action: Make sure that all values to be encoded are within the defined dimension range. Objektet ligger utanför den geografiska utbredningen. Ska inte objektet flyttas eller raderas måste definitionen av den geografiska utbredningen av det spatiala objektet ändras via Topobase Administrator genom att skapa om det spatiala objektet.
27
Felsökning och rättning
Vanliga fel som kan förekomma: ORA A compound polygon geometry has less than five coordinates Cause: A geometry, specified as being an arcpolygon, has less than six coordinates in its definition. Action: A compound polygon must contain at least five coordinates. A compound polygon consists of at least one arc and one line each of which must be described using three and at least two distinct coordinates respectively. Correct the geometric definition or set the appropriate SDO_GTYPE or SDO_ETYPE attribute for this geometry. Ofta en ”polygon” med bara två (2) punkter i databasen. Rätta geometrin i Basic Map om det ska vara en polygon. Flytta den till en linje objektklass om den skulle bestå av två punkter.
28
Felsökning och rättning
Vanliga fel som kan förekomma: ORA Polygon boundary is not closed Cause: The boundary of a polygon does not close. Action: Alter the coordinate values or the definition of the SDO_GTYPE or SDO_ETYPE attribute of the geometry. Öppen polygon. Rätta geometrin i Basic Map eller ev. flytta den till en linje objektklass.
29
Felsökning och rättning
Vanliga fel som kan förekomma: ORA Polygon boundary crosses itself Cause: The boundary of a polygon intersects itself. Action: Correct the geometric definition of the object. Polygonen skär sig själv vilket inte är tillåtet, t ex en ögla. Rätta geometrin i Basic Map.
30
Felsökning och rättning
Vanliga fel som kan förekomma: ORA Adjacent points in a geometry are redundant Cause: There are repeated points in the sequence of coordinates. Action: Remove the redundant point. Det finns punkter med samma koordinater, s k nollpunkter. Kör rensingsskript beroende på om det är en linje eller polygon. Hjälper inte detta rätta geometrin i Basic Map.
31
Trigger och index När valideringen av en objetklass är klar och det inte finns några fel ska index (spatiala) och ev. triggrar skapas. Index Administrator Spatial objekt – Index - Skapa
32
Trigger och index Trigger används när synkronisering önskas, d v s att alla geometriska förändringar även ska utföras i den spatial ”skuggdatabasen”. Trigger Administrator Spatial objekt – Trigger - Skapa Sak att tänka på Topobase har en flagga för borttaget. Vid läsning av spatiala verktyg måste villkoret DELETED = 0 användas för att de borttagna objekten ska ”försvinna”.
33
Analysera … Analysera och optimera alla TOPOBASE-tabeller rekommenderas att köras då och då, särskilt då spatialt data används
34
Information Whitepaper: Konvertering TB2 till TB2007
På Tekis hemsida finns: Whitepaper: Konvertering TB2 till TB2007 Där mycket av det som gåtts igenom står. Ändras till TB2008 när migreringsverktyg kommer…
35
Spatialt data i drift Validering bör utföras regelbundet
Felaktigt spatialt data kan hindra att datat kan läsas Kolla Tekis hemsida och om Förslag till lösning av spatial validering i Autodesk Topobase 2 på tid kan vara något
36
TB2Metadata TB2Metadata kan vara ett hjälpmedel för den spatiala hanteringen Statistik kan ge svar på frågor som - Finns det spatiala defintioner? - Vilket koordinatsystem används? - Hur mycket spatialt data finns? - Finns index och hur mår indexet? - Finns triggrar?
37
TB2Metadata TB2Metadata kan vara ett hjälpmedel för den spatiala hanteringen Spatial validering med lista på felaktiga objekt med villkor för att hitta objekten med hjälp av Basic Map
38
Andra verktyg Saker att tänka på
Använd användare med enbart läsbehörighet så att det spatiala datat och attributdata inte kan ändras om titta-möjlighet används. Generella användare kan skapas med läsbehörighet till Topobase-data Används s k vyer för att sammanställa data (flera tabeller) där spatialt data ingår måste även dessa ha spatialt metadata
39
Andra verktyg – Autodesk MapGuide
Skapa datakälla av typen Autodesk Spatial Data Provider for Oracle Spatial i Autodesk MapGuide Server Admin (en gång)
40
Andra verktyg – Autodesk MapGuide
Författa kartan som vanligt med Autodesk MapGuide Author Kom ihåg villkoret DELETED = 0
41
Andra verktyg – MapInfo Professional
Se till att Oracle Spatial-stöd finns i installationen Skapa mapcatalog (en gång per Oracle-databas)
42
Andra verktyg – MapInfo Professional
Avbilda, registrera varje spatialt skikt (valet Gör DBMS-tabell avbildningsbar)
43
Andra verktyg – MapInfo Professional
Val Öppna DBMS-tabell Kom ihåg villkoret DELETED = 0
44
Andra verktyg – ESRI Registrera skikt i ArcSDE
Referera till skikt, kom ihåg villkoret DELETED = 0
45
Arbetssätt Validering och rättning av spatiala data är en process som spänner över tiden Kan vara bra att arbeta strukturerat, kanske någon enklare form av projekt Logga vad som gjorts
46
Referenser Mer information
Tekis hemsida ANVÄNDARSIDOR – Topobase - Filhämtning Oracle-sida om Spatial
Liknande presentationer
© 2024 SlidePlayer.se Inc.
All rights reserved.