-
SDOMM: Conversion from SDO spatial databases to MiraMon formats
Oracle Spatial és un conjunt integrat de funcions i procediments que permet emmagatzemar,
accedir i analitzar les dades espacials en una base de dades Oracle.
L'SDOMM importa una capa emmagatzemada en una base de dades Spatial Oracle al format estructurat del MiraMon (PNT, ARC/NOD, POL);
durant la transformació és possible, a més, generar estructura topològica explícita.
A un servidor SDO s'hi accedeix a partir d'un fitxer DSN (Data Source Name). Aquest fitxer DSN es pot crear a través de l'administrador
d'orígens de dades ODBC (opció DSN de fitxer), escollint el controlador d'Oracle instal·lat a l'ordinador. Un cop creat,
si es vol evitar que estigui constantment demanant la contrasenya, es pot afegir una clau "PWD=" amb la contrasenya.
El programa permet importar del servidor SDO capes de punts, arcs/nodes o polígons. Si hi ha informació sobre la Z
de cada vèrtex, és també incorporada. Els atributs dels objectes de la capa es converteixen en atributs dels objectes
emmagatzemats en la taula principal dels fitxers MiraMon. L'SDO pot contenir objectes de tipus multipart o multilínia
quan aquests comparteixen els mateixos atributs. En importar al MiraMon es generen diversos objectes punt o línia,
respectivament, assignant a la taula principal els mateixos atributs temàtics.
Per tal que una capa aparegui a la llista de capes disponibles cal que tingui definida la "columna de dades geomètriques" (camp COLUMN_NAME
a la taula USER_SDO_GEOM_METADATA o bé ALL_SDO_GEOM_METADATA de la capa) i l'envolupant (extret de SDO_DIMNAME, SDO_LB, SDO_UB
de DIM_INFO de la taula USER_SDO_GEOM_METADATA o ALL_SDO_GEOM_METADATA).
Si la taula no té clau primària, s'usarà el ROWID com a tal. Si no té GType s'intentarà deduir del primer objecte de la capa. És
recomanable, però, tenir-lo definit; poseu-vos en contacte amb l'administrador del servidor SDO si convé. Si la capa no té entitats també sortirà a la llista. El sistema de referència tampoc
és necessari per tal que la capa surti a la llista, tot i que es recomana tenir-lo definit.
Si apareix algun error en la importació, apareixerà un missatge indicant explícitament quin és l'error.
Per tal d'afavorir la rapidesa en l'extracció de les dades del servidor SDO, la importació dels fitxers de punts, arcs/nodes o
polígons es pot fer de diverses maneres:
Opció 0:
Crea una llista de les taules que conté la base de dades espacial SDO indicada.
Opció 1 i 2:
Importació al format del MiraMon d'una capa emmagatzemada en una base de dades Spatial Oracle (amb i sense estructuració topològica, respectivament).
Opció 3:
Generació d'un REL de capa.
Sintaxi:
- SDOMM 0 nomDSN fitxerInfo [/ORDENAR_LLISTA] [/MOSTRA_TIPUS_CAPA]
- SDOMM opcio nomDSN capaSDO capaMiraMon [/ORDENAR_LLISTA] [/MOSTRA_TIPUS_CAPA] [/AREA_MIN] [/AREA_PERI_MIN] [/NEXE_CRITERIS] [/FONDRE] [/ATRIB_ELIM] [/ALGORISME] [/SIMPLIFICA_VERTEXS] /NOM_REL_DE_CAPA /NOM_FITXER_LLISTA_CAPES
- SDOMM 3 nomDSN capaSDO relCapa [/ORDENAR_LLISTA] [/MOSTRA_TIPUS_CAPA] /NOM_FITXER_LLISTA_CAPES
Opcions:
- 0:
Llista de les taules que conté la base de dades espacial SDO indicada.
- 1: Importació al format del MiraMon i estructuració topològica (recomanat, però més lent): importa una capa SDO de la mateixa manera que ho fa l'opció 2, però estructura el fitxer importat per tal que tingui la topologia verificada. Per al cas de capes SDO de polígons es genera topologia de polígons: el fitxer d'arcs no presenta vores duplicades (el fitxer d'arcs ocupa pràcticament la meitat) i el fitxer de polígons no presenta superposicions. També és possible eliminar els eventuals micropolígons. Com s'ha dit, aquesta opció és la recomanada. Per al cas de capes SDO de línies es genera topologia arc/node: s'eliminen interseccions i superposicions. En el cas de capes SDO de punts s'unifiquen en un sol punt tots aquells objectes situats pràcticament al mateix lloc (dintre d'una tolerància infinitesimal). En tots els casos, si els registres de la base de dades d'objectes originals que han estat unificats en una mateixa ubicació geogràfica per raons de tolerància són diferents, la taula principal creada conté registre múltiple per a cada objecte gràfic en què sigui necessari, de forma que es preserva tota la informació alfanumèrica associada.
- 2: Importació al format del MiraMon: realitza una simple importació del format sense modificar la geometria o la topologia de les entitats gràfiques: es generen fitxers que poden presentar punts en posicions semblants (tolerància infinitesimal) o idèntiques, interseccions entre línies que no expliciten un node en la intersecció, superposicions de polígons o altres situacions no desitjades en un model topològic convencional. Si desitgeu construir posteriorment la topologia sobre la capa resultant de la importació cal que feu un ús combinat de les eines d'estructuració topològica adequades segons es tracti d'estructurar punts (amb VECPNT), arcs (amb LinArc) o polígons (fent un nou ciclat de polígons amb Ciclar i transferint els atributs entre polígons amb AtriTop).
- 3:
Generació d'un REL de capa: no realitza cap importació sinó que genera un REL de capa. Aquest REL pot ser modificat per tal que l'usuari hi introdueixi descripcions dels camps o qualsevol altra metadada referent a la capa SDO.
Paràmetres:
- nomDSN
(Nom DSN -
Paràmetre d'entrada): Nom del fitxer DSN que conté la informació de la base de dades espacial (geoadatabase).
- fitxerInfo
(Fitxer informació -
Paràmetre de sortida): Fitxer informació de capes del servidor. Pren l'extensió '.ini' i contindrà la llista de capes disponibles en aquesta base de dades.
- capaSDO
(Capa SDO -
Paràmetre d'entrada): Nom de la capa o de la selecció de la capa (mitjançant una sentència en SQL) que es vol importar de la base de dades SDO.
- capaMiraMon
(Fitxer capa del MiraMon -
Paràmetre de sortida): Nom de fitxer de punts, arcs/nodes o polígons de sortida.
- relCapa
(Rel de capa -
Paràmetre de sortida): Nom del REL de capa que es genera i que vincula amb la capa capaSDO.
Modificadors:
/AREA_MIN=
(Àrea Mínima)
Mínima àrea permesa a per a un polígon. Per sota d'aquest valor, el polígon no s'importa o, si s'ha creat durant l'estructuració, s'elimina. (Paràmetre d'entrada) /AREA_PERI_MIN=
(Àrea perímetre mínima)
Mínima relació àrea/perímetre permesa per a un polígon. Per sota d'aquest valor, el polígon no s'importa o, si s'ha creat durant l'estructuració, s'elimina. (Paràmetre d'entrada) /NEXE_CRITERIS=
(Criteris de nexe)
En cas d'indicar els dos criteris anteriors, no importar o eliminar els polígons que compleixen les dues condicions alhora (AND), o els que en compleixen com a mínim una (OR). El valor per defecte és AND. (Paràmetre d'entrada) /FONDRE=
(Fondre micropolígons)
Indica a quin polígon s'assigna l'espai ocupat pel micropolígon que desapareix en els casos anteriorment descrits d'eliminació. Cal indicar POL_GRAN si voleu assignar l'espai al polígon contigu d'àrea més gran. El valor per defecte és FRONTERA_MES_LLARGA, que vol dir que s'elimina l'arc més llarg del micropolígon que desapareix. (Paràmetre d'entrada) /ATRIB_ELIM=
(Eliminar per atribut)
El polígon que absorbeix al micropolígon hereta els seus atributs temàtics (no els geomètrico-topològics) si el valor és 1, generant registre múltiple si eren diferents dels del polígon gran. El valor per defecte és 0, que vol dir que els atributs del micropolígon es perden. (Paràmetre d'entrada) /ALGORISME=
(Algorisme)
Aquest paràmetre serveix per a determinar el tipus d'algorisme que l'aplicació emprarà per a tallar els vectors en l'estructuració topològica. - ESCOMBRATGE: basat en la intersecció de segments de Bentley-Ottmann.
- DIRECTE: basat en l'exploració de tots els segments contra tots per a determinar les interseccions entre vectors.
- AUTOMATIC: el programa decideix automàticament quin dels dos algorismes s'utilitzarà.
(Paràmetre d'entrada) /SIMPLIFICA_VERTEXS
(Simplifica vèrtexs)
Simplifica els vèrtexs intermedis dels arcs, sempre i quan això no signifiqui un canvi en la topologia. (Paràmetre d'entrada) /NOM_REL_DE_CAPA=
(Rel de capa)
Opcionalment es pot afegir el nom del REL de capa que es genera i que vincula amb la capa capaSDO. (Paràmetre de sortida) /ORDENAR_LLISTA (Ordenar la llista) Permet ordenar la llista de capes alfabèticament. (Paràmetre d'entrada) /MOSTRA_TIPUS_CAPA
(Tipus de capa)
Opcionalment es pot fer que es mostri el tipus de cada una de les capes. Si això no es demana el procés serà molt més ràpid. (Paràmetre d'entrada) /NOM_FITXER_LLISTA_CAPES= (Fitxer informació) Opcionalment es pot afegir el nom del fitxer d'informació de capes del servidor. Pren l'extensió '.ini' i contindrà la llista de capes disponibles en aquesta base de dades. (Paràmetre de sortida)
Com saber quin tipus d'algorisme utilitzar en l'opció 1? (modificador opcional /ALGORISME=)
Trobareu més informació a sintaxi general.