Zobrazení prostorových dat v GeoRaptoru

From Wikivyuka
Revision as of 07:44, 24 August 2014 by Dur30 (talk | contribs)

Jump to: navigation, search

Propojení dat s prostorovou složkou, uložených v Oracle databázi, a vizualizační apliakcí GeoRaptor, umožňuje zobrazit geometrii dat a vybrané atributy v okně prohlížeče.

Na jednoduchém příkladě si ukážeme způsob přípravy jednoduchých prostorových dat typu Point a jejich zobrazení. (Inspirováno popisem ze stránek A Gentle Introduction: Create Table, Metadata Registration, Indexing and Mapping.)

Tvorba tabulky s bodovými daty
  • Vytvoříme si novou tabulku, do které vložíme bodová data.
DROP TABLE Point2D;
CREATE TABLE Point2D (
 id           integer, 
 label        varchar2(20), 
 angleDegrees number, 
 rgb          varchar2(20), 
 iRGB         integer, 
 geom         mdsys.sdo_geometry
);
  • Vložíme bodová data do tabulky Point2D níže uvedeným skriptem:
INSERT INTO Point2D (id, label, angleDegrees, rgb, iRgb, geom)
 SELECT rownum,
        CHR(dbms_random.value(65,90)) || to_char(round(dbms_random.value(0,1000),0),'FM9999') as label,
        ROUND(dbms_random.value(0,359.9),1) as angleDegrees,
        ROUND(dbms_random.value(0,255),0) || ',' || ROUND(dbms_random.value(0,255),0) || ',' || ROUND(dbms_random.value(0,255),0) as rgb,
        power(2,16)* ROUND(dbms_random.value(0,255),0) + 
        power(2,8) * ROUND(dbms_random.value(0,255),0) + 
                     ROUND(dbms_random.value(0,255),0) as irgb,
        mdsys.sdo_geometry(2001,NULL,
              MDSYS.SDO_POINT_TYPE(
                    ROUND(dbms_random.value(358880  - ( 10000 / 2 ),  
                                            358880  + ( 10000 / 2 )),2),
                    ROUND(dbms_random.value(5407473 - (  5000 / 2 ), 
                                            5407473 + (  5000 / 2 )),2),
                    NULL),
              NULL,NULL)
  FROM DUAL
CONNECT BY LEVEL <= 500; 
COMMIT;