Spatial(Geometry) Clustering

I'm trying to cluster some of my spatial and I'm not sure if I can do what I want.
I'm trying to cluster my data based on a spatial area. I can see that I can create clusters of all the data but what if I wanted to cluster only some of the data. That is generate clusters only for the pacific northwest instead of the whole world.
Alternatively, can I generate cluster based on distance? Group together nearby geometries into a single entry if the geometries are within a set distance. Can I also filter the results based on area?
Mark

Mark,
What is the purpose of your desire to cluster the data?
Are you looking for statistically significant correlations eg trade area analysis of geocoded in-store survey points?
Or are you simply looking for a method to spatially cluster data for physical organisation/storage and performance reasons?
Assuming you want to simply cluster data from an organisational perspective, have a look at this article of mine:
http://www.spatialdbadvisor.com/oracle_spatial_tips_tricks/138/spatial-sorting-of-data-via-morton-key
You have not provided any sample data so all I can do is suggest you look at the article and if it seems to implement what you want, try it against your data posting back to this thread any issues you have via real SQL.
regards
Simon

Similar Messages

  • Java.lang.ClassNotFoundException: oracle.spatial.geometry.JGeometry

    I have installed UIM 7.2.2 on Oracle Linux 5.6_64 bit. There was no error message during the installation. But we are getting java.lang.ClassNotFoundException: oracle.spatial.geometry.JGeometry exception during runtime, specially while opening UIM home page in the browser.
    Any suggestion?
    Thanks,
    Molay

    Hi,
    Please let me know the iPlanet service pack number that you are using.
    Thanks
    Ganesh .R
    Developer Technical Support
    Sun Microsystems
    http://www.sun.com/developers/support

  • WM and long table incl.spatial geometry?

    Hi all,
    KMS maintains the Danish Cadastre of land parcels, currently utilizing Oracle 8.1.7 in conjunction with a GIS system storing the graphics. In the near future the DataBase and all applications are to be rewritten in order incorporate all the graphics as SDO_geometry in Oracle Spatial, which we already utilize for other purposes, namely
         vers.: (32 bit) Oracle9i Enterprise Edition Release 9.2.0.2.0 - Production on Sun/SunOS 5.8 (64 bit) = Solaris 2.8
    I have read some introcuctionary papers about the Workspace Manager on the WM homepage and elsewhere as well as read parts of the "Oracle9i Application Developer's Guide - Workspace Manager Release 2 (9.2)". But I have no practical experience with Workspace Manager.
    Could some of you people using Workspace Manager inform me whether it is feasible to version enable a cadastral table
    1) holding of the order 25 million rows?
    2) each row storing an SDO_geometry?
    Does a version enabled table
    3) respond slower than otherwise to queries and updates?
    4) require lots more storage space?
    I am aware that one of the reasons behind developing Oracle Workspace Manager is to handle Long Term Transactions. On the KMS Cadastre there are a lot of short transactions and a few long transactions (days, weeks even months), which rather often are in conflict, because they take place in same geograhical location. The update frequency will of course be low on the 25 million records, as annually only about 20% of all parcels are updated.
    - Thanks in advance,
    Jens Ole Jensen
    Kort & MatrikelStyrelsen (WWW: http://www.kms.dk)
    Danmark

    Could some of you people using Workspace Manager inform me whether it is feasible to version enable a cadastral table
    1) holding of the order 25 million rows?
    2) each row storing an SDO_geometry?
    Yes. You can version such a table.
    Does a version enabled table
    3) respond slower than otherwise to queries and updates?
    There will be a performance impact due to versioning. But, it will not be very noticeable.
    4) require lots more storage space?
    No. Workspace Manager only versions rows that have been changed. In your case, since updates are fewer, as you mention, and since only changed rows are versioned, the growth in storage space should not be much.
    Hope this helps. We will be glad to help in tuning and sizing.
    regards
    Arun

  • Spatial geometry object

    Hi
    As execute query that retrieving data from oracle 9i spatial database, please look at these error message:
    java.sql.SQLException: ORA-13268: error obtaining dimension from USER_SDO_GEOM_METADATA
    ORA-06512: at "MDSYS.MD", line 1723
    ORA-06512: at "MDSYS.MDERR", line 8
    ORA-06512: at "MDSYS.SDO_3GL", line 365
    Cheers, Helen

    Hi
    please look at these:
    SQL> select * from user_sdo_geom_metadata where table_name='CCB_TAB';
    TABLE_NAME
    COLUMN_NAME
    DIMINFO(SDO_DIMNAME, SDO_LB, SDO_UB, SDO_TOLERANCE)
    SRID
    CCB_TAB
    TIGER.SPATIALINDEXFUNCS_PAK.GET_POLYLINE_GEOMETRY(TLID)
    SDO_DIM_ARRAY(SDO_DIM_ELEMENT('Lon', -180, 180, .005), SDO_DIM_ELEMENT('Lat', -9
    0, 90, .005))
    8265
    TABLE_NAME
    COLUMN_NAME
    DIMINFO(SDO_DIMNAME, SDO_LB, SDO_UB, SDO_TOLERANCE)
    SRID
    Cheers, Helen

  • SqlDeveloper 3.0 using Spatial Geometry Data

    Hi All,
    I am new to Oracle Spatial and have an SDO_GEOMETRY column on a table.
    I have populated it successfully with SDO_GEOMETRY function call using the latitude and longitude values.
    update GEO_DATA
    set GEO_POINT = SDO_GEOMETRY(2001
    ,4269
    ,SDO_POINT_TYPE(x, y, NULL)
    ,NULL
    ,NULL)
    where x and y are longitude and latitude values.
    The value of GEO_POINT looks like this: MDSYS.SDO_GEOMETRY(2001,4269,MDSYS.SDO_POINT_TYPE(-71.65555556,48.56472222,NULL),NULL,NULL)
    It is my understanding that prior to version3.0 of SQL Developer required the third part tool "GeoRaptor" and that SQL Developer 3.0 does not.
    I would like to view my Spatial data using SQL Developer but do not know part of the tool I should be using to view it in a map view.
    I tried the “Map View” from the “Tools” menu but do not understand how to use it.
    I can view it in the table but not as true spatial data.
    Any assistance would be greatly appreciated.
    Best Regards,
    Gary

    Hi Darren,
    The VARCHAR() FOR BIT DATA is a binary data type and Data Federator does not support binaries. But if in your case, it makes sense to map this column to a VARCHAR data type you can configure the DB2 connector to view this column as a VARCHAR.
    Your column can be mapped explicitly to a data type of your choice using a property: castColumnType.
    This property can be set updating the resource you selected when you registered you DB2 data source.
    If the resource is "jdbc.db2", then:
    1. Launch Data Federator Administrator
    2. Click on "Administration" tab
    3. Click on "Connector Settings"
    4. Select the right resource: "jdbc.db2"
    5. Click "Add a property"
    6. Select "castColumnType"
    7. Set its value to: VARCHAR() FOR BIT DATA=VARCHAR
    8. Click on Ok
    You should see this column as a VARCHAR.
    Regards,
    Mokrane
    PS: For the target table issue, we have forwarded your mail to the Data Federator Designer team.

  • Package oracle.spatial.geometry

    hi guys,
    do you know how to install the Oracle Spatial Java Class Library?
    i'm using Jdeveloper 10g.
    thank you

    Hi Angelo,
    Assuming that you have the jar files, you could add the spatial library to your project properties by right clicking the mouse on the project node, going to Project Properties, Libraries (under Profiles, Development), and then creating a new library name pointing to the spatial library files (jar files).

  • Cluster table with Spatial column

    Hi,
    I tried to create a spatial table(with one SDO_GEOMETRY column) with cluster on one attribute column. But I keep getting error ORA-03001: unimplemented feature.
    Is this mean that I can not cluster a table with SDO_GEOMETRY column?
    Thanks
    Helen

    Hi Helen,
    The parameter you mention is only for real application clusters, not for clustering columns of tables.
    As far as I can tell, when clustering columns of different tables together Oracle will try to
    store all of the data associated with those tables together on disk.
    The Oracle Spatial geometry datatype (mdsys.sdo_geometry) includes two varray types of
    length 1048576. Because these varrays can hold so much data Oracle "makes arraingements"
    to store data in these columns outside of the table in a lob segment (in reality, data is only
    stored out-of-line if there is over 4kb of data in the varray).
    Because of this (no ability to ensure the spatial data is stored with the clustering columns),
    the clustering mechnism is disabled when you have spatial data.
    I read through the doc and it is unclear - the only restriction I could find is using these columns
    as the clustering key.
    Hope this helps,
    Dan

  • Spatial & XML in Oracle 9.0.1

    Can We insert into Spatial - Geometry column of Oracle9i table using XSU?
    If so, please provide me the DTD a spatial column? It would be great if I get an example of the same.
    Regards,
    Easwar

    XSU currently doesn't have special handling for it? Would you help make sure if JDBC treat this like any other ADT? If not and you'd like XSU to support it. Please contact your Oracle support to file enhancement request.

  • DISPLAY SPATIAL DATA USING JDBC ON A JAVA FRAME

    I am trying to set up some spatial data and need help in getting some sample
    code for displaying the data on a Java Frame using JDBC.
    The shapes I am setting up are simple polygons, lines, circles. I was going
    through the samples in the demo directory under $ORACLE_HOME/md/demo/examples, but could not find any JDBC
    I would really appreciate if you can point me towards some sample code and any other spatial resources.
    Madhukar

    Here you go. It uses JDBC to fetch geoms, convert them into Java JGeometry objects, which then create Java2D shapes (these are functions of the public sdoapi.jar library). It then uses some class in the sdovis.jar library (the rendering engine of MapViewer) to setup the necessary viewport transform. If you know how to setup the viewport transform, then you dont even need sdovis. sdovis.jar is found in an deployed MapViewer's WEB-INF/lib directory. Or you can extract it from the mapviewer.ear's web.war file.
    import java.awt.*;
    import java.awt.geom.*;
    import java.awt.event.*;
    import java.awt.image.*;
    import java.sql.*;
    import javax.swing.*;
    import javax.swing.event.*;
    import java.util.*;
    import oracle.jdbc.OracleDriver;
    import oracle.sdovis.*;
    import oracle.sdovis.style.*;
    import oracle.sdovis.util.*;
    import oracle.spatial.geometry.JGeometry;
    import oracle.sql.STRUCT;
    * A very simple program that shows stuff from db in a JFrame
    * <p>
    public class tilsvgui2 extends JFrame
      final static int mapWidth  = 640;
      final static int mapHeight = 480;
      static JSDOGeometry geom = null;
      public tilsvgui2()
        setSize(mapWidth+40, mapHeight+40);
                    setVisible(true);
        this.addWindowListener(new java.awt.event.WindowAdapter() {
          public void windowClosing(WindowEvent e) { System.exit(0); }
            public void paint(Graphics g)
                    super.paint(g);
        int w = this.getWidth(), h = this.getHeight();
        Insets inset = this.getInsets();
        double[] mbr = geom.getMBR();
        //from sdovis; it will setup the viewport transform
        XFViewPort xfp = new XFViewPort();
        xfp.setDeviceView(inset.left, inset.top, w-inset.left-inset.right-1, h-inset.top-inset.bottom-1);
        xfp.setDataView(mbr[0], mbr[1], mbr[2], mbr[3]);
        AffineTransform af = xfp.getAffineTransform();    //get the viewport transform
        Shape shp = geom.createShape(af);    //create a proper shape that fits the viewport
        Graphics2D g2 = (Graphics2D) g;
        g2.setColor(Color.red);
        g2.drawRect(inset.left, inset.top, w-inset.left-inset.right-1, h-inset.top-inset.bottom-1);
        //draw the shape itself
        g2.setColor(Color.blue);
        g2.draw(shp);
      public static void getStuff() throws Exception
        System.out.println("Loading geometry...");
        Connection conn = getConnection("mapsrus.us.oracle.com", "1521", "orcl", "scott", "tiger");
        Statement  stmt = conn.createStatement();
        ResultSet  rset = stmt.executeQuery("select geom, totpop from counties where county='Merrimack' and state_abrv='NH'");
        while(rset.next())
          STRUCT st = (STRUCT) rset.getObject(1);
          geom = JSDOGeometry.loadFromDB(st);
          int population = rset.getInt(2);
          break; //displaying only the first geometry
        rset.close();
        stmt.close();
        conn.close();
      private static Connection getConnection(String host,
                                              String port,
                                              String sid,
                                              String username,
                                              String password)
        throws SQLException
        String thinConn = "jdbc:oracle:thin:@"+host+":"+port+":"+sid;
        Driver d = new OracleDriver();
        Connection conn = DriverManager.getConnection(thinConn,username,password);
        conn.setAutoCommit(false);
        return conn;
      public static void main(String[] args)
        try{
          getStuff();
        }catch(Exception e)
          e.printStackTrace(System.err);
        new tilsvgui2();
    }

  • Adding Spatial to Existing Database

    I am looking for information detailing how to use/implement the
    Spatial search to an existing database. Most of the information
    I have already read does not indicate how to set up pre-existing
    tables. We are using another company's database design within
    our product and rather than rebuilding or recreating the current
    tables, I would like to see if we could add the indexes without
    major changes.
    Thanks!

    does the existing database design include the storage of spatial
    geometry or is it your intention to add spatial data storage
    capabilities to an existing design?

  • [Q] Oracle Spatial Java Class Library: classes missing ?

    Hello !
    We are using Oracle 9.2.0.4 with Spatial features and we'd like to use the Java Library to get access to the object Geometries. We have downloaded the Spatial Java Library at:
    http://www.oracle.com/technology/software/products/spatial/index.html
    The "sdo_java_040319.zip" file contains "sdoutl.jar", "sdotopo.jar, "sdonm.jar" and "sdoapi.jar". *BUT* "sdoapi.jar" only contains the "oracle.spatial.geometry.JGeometry" class !
    Nothing about the "oracle.sdoapi.*",
    "oracle.sdoapi.geom", "oracle.sdoapi.adapter", ...
    "oracle.sdoapi.sref" !
    Where are they ?
    Thank you for your replies

    The JGeometry class is it.
    It's all you need with the new, supported sdoapi.
    The javadoc for JGeometry has an example of its usage.

  • Spatial Polygon Desgin Approach

    We have 10 spatial geometry "polygon" value types we need to store for point/polygon queries, as in county boundaries, psap boundaries, ilec boundaries, etc.
    The boundary sizes will vary in size.
    There will be appx 100,000 boundary records.
    As a design approach, would it be acceptable to place all of the different boundaries in a single sdo_geometry column, identifying each boundary record with a "type" and foreign key value back to the type table.
    As an example, for a "country" geometry we'd have a TYPE=COUNTY, a FOREIGN KEY back to the counties table to pull county data for that geometry, and the county sdo_geometry boundary value. For a "PSAP" geometry we'd have a TYPE=PSAP, a FOREIGN KEY back to the PSAP table to pull PSAP data for that geometry, and the PSAP sdo_geometry boundary value.
    We like the idea of storing all boundary data in a single sdo_geometry because we can run a single query against the sdo_geometry column and return all boundaries where a point interacts.
    Thanks in advance...

    Hi
    Design and data model all depends on use cases and according queries you will run on that data model or structure.
    you could also "classify" your data and store the polygon in different tables depending on their admin level or your types. you could then, if not yet available run the a series of spatial queries once to identify the admin structure of the polygons.
    Once you have that in place you could use the lowest level of admin polygon (table) to run the point in polygon spatial query and use that result back to find the higher level admins using non-spatial queries, which should still be faster.
    just again all depends on the "questions" and use cases you will have to tackle.
    just my 2cts
    Luc

  • Topology Built from Spatial Geometries

    Hello, I am trying creating topology from example:
    CREATE TABLE city_streets6_geom ( -- City streets/roads
    name VARCHAR2(30) PRIMARY KEY,
    geometry SDO_GEOMETRY);
    CREATE TABLE traffic_signs6_geom ( -- Traffic signs
    name VARCHAR2(30) PRIMARY KEY,
    geometry SDO_GEOMETRY);
    CREATE TABLE land_parcels6_geom ( -- Land parcels
    name VARCHAR2(30) PRIMARY KEY,
    geometry SDO_GEOMETRY);
    INSERT INTO user_sdo_geom_metadata
    (TABLE_NAME,
    COLUMN_NAME,
    DIMINFO,
    SRID)
    VALUES (
    'city_streets6_GEOM',
    'GEOMETRY',
    SDO_DIM_ARRAY(
    SDO_DIM_ELEMENT('X', 0, 65, 0.005),
    SDO_DIM_ELEMENT('Y', 0, 45, 0.005)
    NULL -- SRID
    INSERT INTO user_sdo_geom_metadata
    (TABLE_NAME,
    COLUMN_NAME,
    DIMINFO,
    SRID)
    VALUES (
    'traffic_signs6_GEOM',
    'GEOMETRY',
    SDO_DIM_ARRAY(
    SDO_DIM_ELEMENT('X', 0, 65, 0.005),
    SDO_DIM_ELEMENT('Y', 0, 45, 0.005)
    NULL -- SRID
    INSERT INTO user_sdo_geom_metadata
    (TABLE_NAME,
    COLUMN_NAME,
    DIMINFO,
    SRID)
    VALUES (
    'land_parcels6_GEOM',
    'GEOMETRY',
    SDO_DIM_ARRAY(
    SDO_DIM_ELEMENT('X', 0, 65, 0.005),
    SDO_DIM_ELEMENT('Y', 0, 45, 0.005)
    NULL -- SRID
    -- Load these tables (names and geometries for city streets/roads,
    -- traffic signs, and land parcels).
    -- Insert data into city street line geometries.
    -- R1
    INSERT INTO city_streets6_geom VALUES('R1',
    SDO_GEOMETRY(2002, NULL, NULL, SDO_ELEM_INFO_ARRAY(1, 2, 1),
    SDO_ORDINATE_ARRAY(9,14, 21,14, 35,14, 47,14)));
    -- R2
    INSERT INTO city_streets6_geom VALUES('R2',
    SDO_GEOMETRY(2002, NULL, NULL, SDO_ELEM_INFO_ARRAY(1, 2, 1),
    SDO_ORDINATE_ARRAY(36,38, 38,35, 41,34, 42,33, 45,32, 47,28, 50,28, 52,32,
    57,33, 57,36, 59,39, 61,38, 62,41, 47,42, 45,40, 41,40)));
    -- R3
    INSERT INTO city_streets6_geom VALUES('R3',
    SDO_GEOMETRY(2002, NULL, NULL, SDO_ELEM_INFO_ARRAY(1, 2, 1),
    SDO_ORDINATE_ARRAY(9,35, 13,35)));
    -- R4
    INSERT INTO city_streets6_geom VALUES('R4',
    SDO_GEOMETRY(2002, NULL, NULL, SDO_ELEM_INFO_ARRAY(1, 2, 1),
    SDO_ORDINATE_ARRAY(25,30, 25,35)));
    -- Insert data into traffic sign point geometries.
    -- S1
    INSERT INTO traffic_signs6_geom VALUES('S1',
    SDO_GEOMETRY(2001, NULL, SDO_POINT_TYPE(21,14,NULL), NULL, NULL));
    -- S2
    INSERT INTO traffic_signs6_geom VALUES('S2',
    SDO_GEOMETRY(2001, NULL, SDO_POINT_TYPE(35,14,NULL), NULL, NULL));
    -- S3
    INSERT INTO traffic_signs6_geom VALUES('S3',
    SDO_GEOMETRY(2001, NULL, SDO_POINT_TYPE(57,33,NULL), NULL, NULL));
    -- S4
    INSERT INTO traffic_signs6_geom VALUES('S4',
    SDO_GEOMETRY(2001, NULL, SDO_POINT_TYPE(20,37,NULL), NULL, NULL));
    -- Insert data into land parcel polygon geometries.
    -- P1
    INSERT INTO land_parcels6_geom VALUES('P1',
    SDO_GEOMETRY(2003, NULL, NULL, SDO_ELEM_INFO_ARRAY(1, 1003, 1),
    SDO_ORDINATE_ARRAY(9,6, 21,6, 21,14, 21,22, 9,22, 9,14, 9,6)));
    -- P2
    INSERT INTO land_parcels6_geom VALUES('P2',
    SDO_GEOMETRY(2003, NULL, NULL, SDO_ELEM_INFO_ARRAY(1,1003,1),
    SDO_ORDINATE_ARRAY(21,6, 35,6, 35,14, 35,22, 21,22, 21,14, 21,6)));
    -- P3
    INSERT INTO land_parcels6_geom VALUES('P3',
    SDO_GEOMETRY(2003, NULL, NULL, SDO_ELEM_INFO_ARRAY(1,1003,1),
    SDO_ORDINATE_ARRAY(35,6, 47,6, 47,14, 47,22, 35,22, 35,14, 35,6)));
    -- P4
    INSERT INTO land_parcels6_geom VALUES('P4',
    SDO_GEOMETRY(2003, NULL, NULL, SDO_ELEM_INFO_ARRAY(1,1003,1),
    SDO_ORDINATE_ARRAY(17,30, 31,30, 31,40, 17,40, 17,30)));
    -- P5 (polygon with a hole; exterior ring and one interior ring)
    INSERT INTO land_parcels6_geom VALUES('P5',
    SDO_GEOMETRY(2003, NULL, NULL, SDO_ELEM_INFO_ARRAY(1,1003,1, 11,2003,1),
    SDO_ORDINATE_ARRAY(3,30, 16,30, 16,38, 3,38, 3,30, 4,31, 4,34, 7,34, 7,31, 4,31)));
    -- Validate the layers.
    create table val_results (sdo_rowid ROWID, result VARCHAR2(2000));
    call SDO_GEOM.VALIDATE_LAYER_WITH_CONTEXT('city_streets6_GEOM','GEOMETRY','VAL_RESULTS');
    SELECT * from val_results;
    truncate table val_results;
    call SDO_GEOM.VALIDATE_LAYER_WITH_CONTEXT('traffic_signs6_GEOM','GEOMETRY','VAL_RESULTS');
    SELECT * from val_results;
    truncate table val_results;
    call SDO_GEOM.VALIDATE_LAYER_WITH_CONTEXT('land_parcels6_GEOM','GEOMETRY','VAL_RESULTS');
    SELECT * from val_results;
    drop table val_results;
    -- Create the spatial indexes.
    CREATE INDEX city_streets6_geom_idx ON city_streets6_geom(geometry)
    INDEXTYPE IS MDSYS.SPATIAL_INDEX;
    CREATE INDEX traffic_signs6_geom_idx ON traffic_signs6_geom(geometry)
    INDEXTYPE IS MDSYS.SPATIAL_INDEX;
    CREATE INDEX land_parcels6_geom_idx ON land_parcels6_geom(geometry)
    INDEXTYPE IS MDSYS.SPATIAL_INDEX;
    -- Start the main steps for using the topology data model with a
    -- topology built from Spatial geometry data.
    -- 1. Create the topology. (Null SRID in this example.)
    EXECUTE SDO_TOPO.CREATE_TOPOLOGY('CITY_DATA6', 0.00005);
    -- 2. Insert the universe face (F0). (id = -1, not 0)
    INSERT INTO CITY_DATA6_FACE$ values (
    -1, NULL, SDO_LIST_TYPE(), SDO_LIST_TYPE(), NULL);
    COMMIT;
    -- 3. Create feature tables.
    CREATE TABLE city_streets6 ( -- City streets/roads
    feature_name VARCHAR2(30) PRIMARY KEY,
    feature SDO_TOPO_GEOMETRY);
    CREATE TABLE traffic_signs6 ( -- Traffic signs
    feature_name VARCHAR2(30) PRIMARY KEY,
    feature SDO_TOPO_GEOMETRY);
    CREATE TABLE land_parcels6 ( -- Land parcels
    feature_name VARCHAR2(30) PRIMARY KEY,
    feature SDO_TOPO_GEOMETRY);
    -- 4. Associate feature tables with the topology.
    -- Add the three topology geometry layers to the CITY_DATA6 topology.
    -- Any order is OK.
    EXECUTE SDO_TOPO.ADD_TOPO_GEOMETRY_LAYER('CITY_DATA6', 'city_streets6', 'FEATURE','LINE');
    EXECUTE SDO_TOPO.ADD_TOPO_GEOMETRY_LAYER('CITY_DATA6', 'traffic_signs6','FEATURE', 'POINT');
    EXECUTE SDO_TOPO.ADD_TOPO_GEOMETRY_LAYER('CITY_DATA6', 'land_parcels6','FEATURE', 'POLYGON');
    -- As a result, Spatial generates a unique TG_LAYER_ID for each layer in
    -- the topology metadata (USER/ALL_SDO_TOPO_METADATA).
    -- 5. Create a TopoMap object and load the whole topology into cache for updating.
    EXECUTE SDO_TOPO_MAP.CREATE_TOPO_MAP('CITY_DATA6', 'CITY_DATA6_TOPOMAP');
    EXECUTE SDO_TOPO_MAP.LOAD_TOPO_MAP('CITY_DATA6_TOPOMAP', 'true');
    -- 6. Load feature tables, inserting data from the spatial tables and
    -- using SDO_TOPO_MAP.CREATE_FEATURE.
    BEGIN
    FOR street_rec IN (SELECT name, geometry FROM city_streets6_geom) LOOP
    INSERT INTO city_streets6 VALUES(street_rec.name,
    SDO_TOPO_MAP.CREATE_FEATURE('CITY_DATA6', 'city_streets6', 'FEATURE',
    street_rec.geometry));
    END LOOP;
    FOR sign_rec IN (SELECT name, geometry FROM traffic_signs6_geom) LOOP
    INSERT INTO traffic_signs6 VALUES(sign_rec.name,
    SDO_TOPO_MAP.CREATE_FEATURE('CITY_DATA6', 'traffic_signs6', 'FEATURE',
    sign_rec.geometry));
    END LOOP;
    FOR parcel_rec IN (SELECT name, geometry FROM land_parcels6_geom) LOOP
    INSERT INTO land_parcels6 VALUES(parcel_rec.name,
    SDO_TOPO_MAP.CREATE_FEATURE('CITY_DATA6', 'land_parcels6', 'FEATURE',
    parcel_rec.geometry));
    END LOOP;
    END;
    But process failed in sixth step with error:
    Error report:
    ORA-29532: java.lang.NumberFormatException: Infinite or NaN
    ORA-06512: line 3
    29532. 00000 - "Java call terminated by uncaught Java exception: %s"
    *Cause:    A Java exception or error was signaled and could not be
    resolved by the Java code.
    *Action:   Modify Java code, if this behavior is not intended.
    What should i do with this problem?
    Thanks

    thank you for reply.
    i can try to network topology.
    but i have more than one layer. for example lands, waters, etc.
    actually i need left face, right face, start node, end node etc. (topology info) information for my application.
    my question is on going...
    thanks for interest again

  • Validate - Why enter Spatial objects counter-clockwise

    1) SDO_GEOM.VALIDATE_LAYER issues the error message : 13367 (Wrong order)
    There is no explanation as to why this is invalid. I have worked with rectangular objects constructed in a clockwise manner which appear to work fine to determine whether points are either inside, touch or disjoint. What is the impact of not using the counter-clockwise order?
    2) Can anyone recommend a simple starter tutorial for Oracle Spatial?
    thanks,
    Francois Sigouin

    You don't say which version....
    Error:     ORA-13367 (ORA-13367)
    Text:     wrong orientation for interior/exterior rings
    Cause:     In an Oracle Spatial geometry, the exterior and/or interior rings are not oriented correctly.
    Action:     Be sure that the exterior rings are oriented counterclockwise and the interior rings are oriented clockwise.
    Why is like that? Because thats the way its designed, there will be an advantage...and a standard see Justins update...
    The impact of NOT holding this way is unpredictable results. By Oracle Spatial standards its invalid.
    Its the same as we do Long/Lat not lat/long.
    Its easy enough to fix apply...
    SDO_MIGRATE.TO_CURRENT(
    geom IN SDO_GEOMETRY,
    dim IN SDO_DIM_ARRAY
    ) RETURN SDO_GEOMETRY;
    for a single geom, or for the table...
    SDO_MIGRATE.TO_CURRENT(
    tabname IN VARCHAR2
    [, column_name IN VARCHAR2]);
    or
    SDO_MIGRATE.TO_CURRENT(
    tabname IN VARCHAR2,
    column_name IN VARCHAR2
    [, commit_int IN NUMBER]);
    Now to a good primer besides the manuals, the book is
    Pro Oracle Spatial
    By Oracle Spatial Developers and Geodan, NL
    Covers Spatial technology in Oracle (Oracle Locator, Spatial, Mapviewer products)
    Includes Sample code, Tips,…
    ISBN: 1-59059-383-9
    http://www.apress.com/book/bookDisplay.html?bID=315
    give us and example geom and I'll have a look at the issue. - yours rich

  • Plx help on Spatial data urgent.....

    I am doing a project that retrieve the data stored inside oracle 10g database using j2ee and jdeveloper...currently i am able to retrieve the data type String int etc...using the recordset and display it out...but how do i work wif the sdo_geometry object stored and displayed it out...if possible can gif me some example ??
    and oracle.spatial.geometry.* is residing in wat jar and where can i download it ??

    How do i actually find the corrdinates of the STRUCT object after loading into JGEMOTEORY..
    Currently my web service coding is as below:
    public String SearchPlaceByPostCode(String post_code)
    OracleResultSet rset = null;
    Statement stmt = null;
    String sql="SELECT HOUSE_BLK_NO,ROAD_NAME,POSTAL_CODE,BUILDING_NAME,sdo_geom.sdo_centroid(gblob_,0.05) centerPoint FROM SLA_LBSTR_INT_BLDG where postal_code like '%" userInput +"'";
    System.out.print("sql");
    String HOUSE_BLK_NO="",ROAD_NAME="",POSTAL_CODE="",BUILDING_NAME="";
    STRUCT centerPoint=null;
    JGeometry Loader=null;
    try{
    DBmgr dbMgr= new DBmgr();
    Connection connection = dbMgr.dbConnection();
    stmt = connection.createStatement();
    rset = (OracleResultSet)stmt.executeQuery(sql);
    if (rset.next())
    HOUSE_BLK_NO=rset.getString("HOUSE_BLK_NO");
    ROAD_NAME=rset.getString("ROAD_NAME");
    POSTAL_CODE=rset.getString("POSTAL_CODE");
    BUILDING_NAME=rset.getStrin("BUILDING_NAME");
    centerPoint=(STRUCT)rset.getObject("centerPoint");
    Loader = JGeometry.load(centerPoint);
    //Which methods shld i use here to find the X,Y points ??
    rset.close( );
    stmt.close( );
    catch(Exception e)
    System.err.println(e);
    return "The X coordinate is"+x "and Y coordinate is "+ y;
    }

Maybe you are looking for

  • Problem in upload flat file into bw-bps using web browser

    Hi All, I have follwed the steps as per the how to guide to upload flat file,its seems to be fine but when try to upload by running the URL its giving error "Value of variable Data Slice Global ( ZFIE0ALL ) cannot be determined " and warning "Errors

  • Change "to equal" to "to be greater than" in Wait for Field to equal Value"

    In Sharepoint Designer 2010, in the workflow Action "Wait for Field to equal Value", I could change the "to equal" to "to be greater than". I can't find how to do this in SPD 2013. Can someone please help? Thank you!

  • Panic 4, memory leak ?

    Hello The past days ever since i installed memory clean ultie from the appstore and did a clean my macbook seems to crash right after i did the memory clean i removed the program from my applications so i dont know wether this is actually the problem

  • Handling multiple requests

    Hi, I have a servlet which handles a simple process. The retrieved value is put in session and displayed in a jsp. When 2 instances of a same jsp (like in multi user access) pass on the request to this servlet, the retrieval is correct for both insta

  • After upgrade to Mavericks I have to shutdown using the power button.  Any fix for this?

    I have a mid 2011 iMac, just upgraded to OSX Mavericks.  It will no longer shut down using the menu.  I have to push and hold the power button.  This sometimes results in a very loud "snap" from my machine.  Tried reinstalling but still does the same