Você está na página 1de 12

Tpicos

Modelo OR (MDSYS) SDO_GEOMETRY Object Construo de Geometrias MDSYS - Spatial Medatada Estruturas de dados vectoriais Estruturas no topolgicas Estruturas com topologia Relaes topolgicas

SDO_GEOMETRY Object SDO_GTYPE SDO_GTYPE SDO_SRID SDO_SRID SDO_POINT SDO_POINT SDO_ELEM_INFO SDO_ELEM_INFO SDO_ORDINATES SDO_ORDINATES Example SQL> SQL> CREATE CREATE TABLE TABLE states states ( ( 2 state VARCHAR2(30), 2 state VARCHAR2(30), 3 totpop NUMBER(9), 3 totpop NUMBER(9), 4 geom MDSYS.SDO_GEOMETRY); 4 geom MDSYS.SDO_GEOMETRY); NUMBER NUMBER NUMBER NUMBER SDO_POINT_TYPE SDO_POINT_TYPE SDO_ELEM_INFO_ARRAY SDO_ELEM_INFO_ARRAY SDO_ORDINATE_ARRAY SDO_ORDINATE_ARRAY

SDO_GEOMETRY Object SDO_POINT_TYPE

x x y y z z

NUMBER NUMBER NUMBER NUMBER NUMBER NUMBER

SDO_ELEM_INFO_ARRAY

VARRAY VARRAY (1048576) (1048576) OF OF NUMBER NUMBER


SDO_ORDINATE_ARRAY

VARRAY VARRAY (1048576) (1048576) OF OF NUMBER NUMBER

SDO_GEOMETRY Object

SDO_GTYPE SDO_GTYPE Defines Defines the the kind kind of of geometry geometry stored stored in in the the object object
GTYPE 0 UNKNOWN_GEOMETRY 1 POINT 2 LINESTRING 3 POLYGON 4 HETEROGENEOUS COLLECTION 5 MULTIPOINT 6 MULTILINESTRING 7 MULTIPOLYGON Explanation Spatial ignores this geometry. Geometry contains one point. Geometry contains one line string. Geometry contains one polygon. Geometry is a collection of elements of different types: points, lines, polygons Geometry has multiple points. Geometry has multiple line strings. Geometry has multiple polygons.

SDO_GEOMETRY Object

GTYPE

GTYPES - Determine Geometry Dimensionality 2D 3D 3000 3001 3002 3003 3004 3005 3006 3007 4D 4000 4001 4002 4003 4004 4005 4006 4007

0 UNKNOWN_GEOMETRY 1 POINT 2 LINESTRING 3 POLYGON 4 COLLECTION 5 MULTIPOINT 6 MULTILINESTRING 7 MULTIPOLYGON

2000 2001 2002 2003 2004 2005 2006 2007

SDO_GEOMETRY Object

SDO_SRID SDO_SRID For For coordinate coordinate systems systems support support SDO_POINT_TYPE SDO_POINT_TYPE Optimized Optimized space space for for storing storing points points Ignored Ignored if if SDO_ELEM_INFO SDO_ELEM_INFO and and SDO_ORDINATES SDO_ORDINATES are are not not NULL NULL
SQL> SQL> INSERT INSERT INTO INTO TELEPHONE_POLES TELEPHONE_POLES 2> VALUES 2> VALUES (attribute_1, (attribute_1, . . attribute_n, attribute_n, 3> MDSYS.SDO_GEOMETRY 3> MDSYS.SDO_GEOMETRY ( ( 4> 3001, 4> 3001, 8307, 8307, 5> MDSYS.SDO_POINT_TYPE 5> MDSYS.SDO_POINT_TYPE (43.7,-75.2,200), (43.7,-75.2,200), 6> null, 6> null, null) null) 7> ); 7> );

SDO_GEOMETRY Object

SDO_ELEM_INFO_ARRAY SDO_ELEM_INFO_ARRAY Entries Entries in in the the array array should should be be considered considered in in groups groups of of three three
SDO_STARTING_OFFSET; SDO_STARTING_OFFSET; SDE_ETYPE; SDE_ETYPE; SDO_INTERPRETATION. SDO_INTERPRETATION.

The The triplet triplet values values stored stored in in the the this this array array are are interpreted interpreted as: as:
Ordinate Ordinate offset offset -- The The position position of of the the first first ordinate ordinate of of an an element element in in the sdo_ordinates array. Values start at 1. the sdo_ordinates array. Values start at 1. Element Element type type Interpretation Interpretation -- Straight Straight line, line, Circular Circular arc arc or or header header

SDO_GEOMETRY Object

Element Types Summarized


Number Element Type 0 UNKNOWN_ELEMENT 1 2 POINT LINESTRING Interpretation # of points in collection 1 - Straight lines 2 - Circular arcs 1 - Straight lines 2 - Circular arcs 3 - Optimized rectangle 4 - Circle # of type 2 sub-elements that make up the linestring # of type 2 sub-elements that make up the polygon

3 1003 2003

POLYGON (Outer) (Inner)

4 5 1005 2005

COMPOUND LINESTRING COMPOUND POLYGON (Outer) (Inner)

SDO_GEOMETRY Object

SDO_ORDINATE_ARRAY SDO_ORDINATE_ARRAY This This is is a a simple simple varray varray of of numbers numbers Contains Contains the the ordinates ordinates that that make make up up geometry geometry elements elements Elements Elements stored stored in in the the sdo_ordinates_array sdo_ordinates_array are are defined defined in in the the sdo_elem_info_array sdo_elem_info_array

Construo Geometrias MDSYS

8307

Construo Geometrias MDSYS

SQL> SQL> INSERT INSERT INTO INTO PARKS PARKS VALUES( VALUES( 2> attribute_1, 2> attribute_1, , , attribute_n, attribute_n, MDSYS.SDO_GEOMETRY( 3> 3> MDSYS.SDO_GEOMETRY( 4> 2003, 4> 2003, null, null, null, null, 5> MDSYS.SDO_ELEM_INFO_ARRAY 5> MDSYS.SDO_ELEM_INFO_ARRAY 6> (1,1005,2, 6> (1,1005,2, 1,2,1, 1,2,1, 7,2,2, 7,2,2, 17,2003,3), 17,2003,3), 7> MDSYS.SDO_ORDINATE_ARRAY 7> MDSYS.SDO_ORDINATE_ARRAY 8> (10,50,10,30,50,30,50,50,40,60, 8> (10,50,10,30,50,30,50,50,40,60, 9> 30,50,20,60,10,50,25,35,35,40 9> 30,50,20,60,10,50,25,35,35,40 )); ));

(x5,y5) (x7,y7) (x8,y8) (x1,y1) (x6,y6) (x10,y10) (x4,y4)

(x2,y2)

(x9,y9)

(x3,y3)

MDSYS Spatial Metadata


SQL> SQL> DESCRIBE DESCRIBE USER_SDO_GEOM_METADATA USER_SDO_GEOM_METADATA Name Null? Type Name Null? Type --------------------------- ------------------- ----------------------------------TABLE_NAME NOT VARCHAR2(32) TABLE_NAME NOT NULL NULL VARCHAR2(32) COLUMN_NAME NOT VARCHAR2(32) COLUMN_NAME NOT NULL NULL VARCHAR2(32) DIMINFO MDSYS.SDO_DIM_ARRAY DIMINFO MDSYS.SDO_DIM_ARRAY SRID NUMBER SRID NUMBER MDSYS.SDO_DIM_ARRAY VARRAY(4) VARRAY(4) OF OF SDO_DIM_ELEMENT SDO_DIM_ELEMENT MDSYS.SDO_DIM_ELEMENT object SDO_DIMNAME SDO_DIMNAME SDO_LB SDO_LB SDO_UB SDO_UB SDO_TOLERANCE SDO_TOLERANCE VARCHAR2(64) VARCHAR2(64) NUMBER NUMBER NUMBER NUMBER NUMBER NUMBER
SQL> SQL> INSERT INSERT INTO INTO USER_SDO_GEOM_METADATA USER_SDO_GEOM_METADATA 2> 2> (TABLE_NAME, (TABLE_NAME, COLUMN_NAME, COLUMN_NAME, DIMINFO, DIMINFO, SRID) SRID) 3> 3> VALUES VALUES ( ( 4> ROADS, 4> ROADS, 5> 5> GEOMETRY, GEOMETRY, 6> MDSYS.SDO_DIM_ARRAY 6> MDSYS.SDO_DIM_ARRAY ( ( 7> MDSYS.SDO_DIM_ELEMENT(Long, 7> MDSYS.SDO_DIM_ELEMENT(Long, -180, -180, 180, 180, 5), 5), 8> MDSYS.SDO_DIM_ELEMENT(Lat, 8> MDSYS.SDO_DIM_ELEMENT(Lat, -90, -90, 90, 90, 5)), 5)), 9> 8307); 9> 8307);

Tpicos

Modelo OR (MDSYS) SDO_GEOMETRY Object Construo de Geometrias MDSYS - Spatial Medatada Estruturas de dados vectoriais Estruturas no topolgicas Estruturas com topologia Relaes topolgicas

Entidades geomtricas bsicas do modelo vectorial: Ponto, Linha, Polgono Dimenso-0 : (X,Y)
Representado pela suas coordenadas. O principal atributo a localizao. Ex: casa, poste telefnico, etc... Dimenso-1 : (X,Y)1 (X,Y)2 (X,Y)3 Definida como um conjunto de segmentos contguos, cada um unindo dois pontos. O principal atributo o comprimento. Ex: estrada, rio, etc... Dimenso-2 : (X,Y)1 (X,Y)2 (X,Y)3 (X,Y)1 Delimitado por arcos. Os principais atributos so o permetro e a rea. Ex: rea florestal, lago, etc... Geometria = posio (georeferenciao) forma dimenso

Estruturas de dados vectoriais: Sem topologia


Este modelo de dados representa na forma digital, os arcos contidos num mapa atravs das suas coordenadas Cartesianas. Um ficheiro de dados espaciais construdo desta forma essencialmente uma cadeia de coordenadas dispostas sequencialmente sem uma estrutura inerente. A estrutura de simples compreenso. Um ponto codificado por um nico par de coordenadas XY, enquanto que uma linha representada por uma cadeia de pares de coordenadas XY. Um polgono armazenado tal como as linhas, apenas diferindo no par de coordenadas inicial e final que devem coincidir para identificar uma figura geomtrica fechada. As fronteiras comuns entre polgonos adjacentes so armazenadas duas vezes, duplicando por isso informao. Este modo de representao das entidades cartogrficas no identifica as relaes espaciais existentes entre elas, como sejam as relaes de contiguidade ou adjacncia. Estrutura boa para programas onde a topologia e os atributos no-espaciais no so exigidos. PROBLEMAS: redundncia polgonos errticos (slivers) e gaps No tem informao topolgica (contiguidade ou conectividade) polgonos ilha

Estruturas de dados vectoriais


Point dictionary (pontos e polgonos) Os polgonos so descritos por uma lista de IDs de pontos de forma a percorrerem a fronteira dos polgonos; um segundo ficheiro regista todos esses pontos e respectivas coordenadas. Soluciona o problema da duplicao de fronteiras. As linhas so armazenadas tal como os polgonos (lista de IDs). Continua a no existir informao topolgica. 4 2 3 5 1

Estruturas de dados do modelo vectorial: Polgono / Arco / N


No origina slivers. A duplicao de arcos ao longo de fronteiras comuns entre polgonos evitada. Estrutura com informao topolgica bsica ao nvel da conectividade dos arcos que formam uma rede. Existncia de conectividade, implica edio da informao grfica. No existe topologia de polgonos; Nesta estrutura no se pode estabelecer relaes de adjacncia entre polgonos.

Estruturas de dados vectoriais com Topologia


Topologia - A topologia o mtodo matemtico usado para definir as relaes espaciais entre as entidades geogrficas. A estrutura de dados topolgica determina como e onde se conectam os pontos e linhas de um polgono.
DIRECO REA CONECTIVIDADE CONTIGUIDADE

A estrutura topolgica verifica a conectividade entre arcos. O arco a entidade geogrfica bsica. A estrutura topolgica verifica a adjacncia entre polgonos; A topologia define as relaes espaciais entre os objectos (por exemplo: identifica todos os polgonos adjacentes a cada polgono, ou os polgonos esquerda e direita de uma linha (contiguidade));

A B

A insero da topologia na base de dados permite realizar anlises: modelao de fluxos atravs de arcos ligados entre si; combinao de polgonos com caractersticas semelhantes; sobreposio de objectos espaciais, etc.;

Entidades geomtricas bsicas em topologia: N, Arco, rea


N : Interseco de um ou mais arcos, ou o incio ou o fim de um arco; Arco : linha ou string com n inicial e n final, polgono direita e polgono esquerda. rea (face) : Conjunto de arcos direccionados que formam uma rea fechada (n inicial = n final).

Topologia = posio (georeferenciao) Relao espacial com outros objectos

Condies para a criao de topologia


A) Os objectos e suas atributos descrevem condies existentes num mapa ou na realidade. Duas reas no se podem sobrepor. Todo o espao deve estar representado por uma rea ou por uma fronteira. B) Se pontos ou linhas so criados ou modificados na base de dados, ento a topologia tem que ser refeita. Isto envolve calcular e codificar as relaes entre os pontos, linhas e reas. Esta actualizao pode ser efectuada automaticamente nas tabelas da base de dados. C) Resultado da topologia: Os pontos ou so isolados ou se so adjacentes a um ou mais arcos designam-se por ns. Os extremos de um arco so sempre dois ns. Cada segmento de linha entre dois ns constitui um arco. Todos os arcos fazem parte de exactamente dois polgonos (polgono esquerda e polgono direita). Todo a rea do mapa preenchida por polgonos (o polgono exterior identificado frequentemente por um ID zero).

Modelo topolgico (Egenhofer and Herring 1991)


Matriz de interseces A - interior de A A Fronteira de A A - exterior de A VAZIO ( = 0) NO VAZIO (- = 1).

8 RELAES TOPOLGICAS EM R2 (Egenhofer and Herring, 1991)

Relaes topolgicas
TOPOLOGIA ARCO/N Todos os arcos so armazenados por uma sequncia de coordenadas; As reas so criadas por ligao de arcos; Fronteiras de polgonos adjacentes so armazenadas uma nica vez; Desenvolvido pelo Harvard Lab por Peucker and Chrisman (1975) no software ODYSSEY. a estrutura usada pela maioria dos SIGs comerciais;
CODIFICAO DOS DADOS ESPACIAIS N3 N2 a3 N1 a4 Tabela de ns

TOPOLOGIA POLIGONO/ARCO Polgonos armazenados como uma sequncia de arcos; Polgonos identificados por point labels. A direco de um arco (N-inicial at N final) usada para definir os polgonos esquerda e direita A adjacncia e conectividade so explicitamente definidas;

a2

Tabela de polgonos Polg. Arcos a2, a4 a1,a4,0a6,0a5 a5 a6 rea exterior Tabela de arcos

Ns N1 N2 N3 N4 N5 N6

Arcos a3 a3 a1,a2,a4 a1,a2,a4 a5 a6 Tabela de vrtices

N4

Eixo - Y

a1

N5 N6, a6, D

A B C D E

C
a5 Arco a1 a2 a3 a4 a5 a6

B Origem
- vrtice - n

N inicial N4 N3 N1 N3 N5 N6

N final N3 N4 N2 N4 N5 N6

Poligo. esquer. E E B A B B

Poligo. direita B A B B C B

Arco

X,Y X,Y inicial Intermdio.

X,Y Final

Eixo - X

a1 xi,yi a2 ... a3 ... a4 a5 a6

... ... ...

xf,yf ... ...

Codificao de ligaes topolgicas numa base de dados


1 Definio dos NS: Registar a localizao de todos os NS (NODES), que so pontos extremos e interseces de linhas ou fronteiras.

2 Definio dos ARCOS: Com base na informao dos NS, os arcos so definidos com Pontos extremos de linhas (nodes) Direco - ponto origem "from node", ponto destino "to node" Orientao de um dado vector pode ser definida em cada direco. 3 Definio dos POLGONOS: Os polgonos so definidos pelos arcos. Os arcos de um polgono tm o sentido horrio e conectam-se de forma a formar uma rea fechada. Registam-se os arcos e as suas orientaes. dado sinal negativo aos arcos que definem as fronteiras internas de um polgono. 4 Definio da Contiguidade Para cada arco, registam-se os polgonos sua esquerda e sua direita. Um arco que fronteira da nossa rea de estudo, limitado pelo universo ou polgono exterior.

Você também pode gostar