ESRI's ArcGIS Explorer is a lightweight desktop client for ArcGIS Server that yields a common operating picture, in two and three dimensions, while performing queries and analysis on the underlying data. The application accesses the full GIS capabilities of ArcGIS Server, including spatial analysis and 3D services, and can also use data layers and services from ArcIMS and ArcWeb Services. Local data such as shapefiles, file geodatabases, KML, JPEG2000, GeoTIFF, and IMG are supported.
Thursday, 31 May 2007
Geospatial Viewer
ESRI's ArcGIS Explorer is a lightweight desktop client for ArcGIS Server that yields a common operating picture, in two and three dimensions, while performing queries and analysis on the underlying data. The application accesses the full GIS capabilities of ArcGIS Server, including spatial analysis and 3D services, and can also use data layers and services from ArcIMS and ArcWeb Services. Local data such as shapefiles, file geodatabases, KML, JPEG2000, GeoTIFF, and IMG are supported.
Friday, 25 May 2007
Spatial Structure
The thinking behind spatial.
In an oracle database, spatial data is stored in a layer, which in simple terms can be considered to be a column in a table where the datatype is SDO_GEOMETRY. This is a simplified view of the model underlying Oracle Spatial.
A layer contains one or more geometries (at least one row in the table).
Geometries consist of one or more elements (at least one entry in the geometry object type).
To take a simple example: A point is represented in the layer as a geometry with one element of type point. Points are usually something indicating a specific position like a point of interest.
More complex shapes and are built up by combining more than one element into a geometry. These may, in the real world, be roads, coastlines, borders, rivers or even continents. These are built up by the combination of many elements, each element being a simple type, giving the geometry. In most cases the elements will follow on from each other to build up a complex geometry, but there is no restriction on a geometry having more than one 'shape', so a geometry could contain the 'shapes' for all the countries in Europe or all the States in the USA.
This means that your GIS application can show maps consisting of points of interest and routes.
To recap: The Spatial Model
Layer --> Geometry --> Element --> (point, line, polygon, compound line, compound polygon).
It is usual practice to keep related geometries in the same layer (column), so the 'roads' (one layer) are not mixed with the 'county borders' (separate layer).
In an oracle database, spatial data is stored in a layer, which in simple terms can be considered to be a column in a table where the datatype is SDO_GEOMETRY. This is a simplified view of the model underlying Oracle Spatial.
A layer contains one or more geometries (at least one row in the table).
Geometries consist of one or more elements (at least one entry in the geometry object type).
To take a simple example: A point is represented in the layer as a geometry with one element of type point. Points are usually something indicating a specific position like a point of interest.
More complex shapes and are built up by combining more than one element into a geometry. These may, in the real world, be roads, coastlines, borders, rivers or even continents. These are built up by the combination of many elements, each element being a simple type, giving the geometry. In most cases the elements will follow on from each other to build up a complex geometry, but there is no restriction on a geometry having more than one 'shape', so a geometry could contain the 'shapes' for all the countries in Europe or all the States in the USA.
This means that your GIS application can show maps consisting of points of interest and routes.
To recap: The Spatial Model
Layer --> Geometry --> Element --> (point, line, polygon, compound line, compound polygon).
It is usual practice to keep related geometries in the same layer (column), so the 'roads' (one layer) are not mixed with the 'county borders' (separate layer).
Friday, 18 May 2007
Polygons
Different Shapes
A geometry datatype in Oracle can be used to hold any imaginable real world shape.
The shapes are as you would think points, lines, compound lines, polygons and mixtures of all the items in the list. So a single geometry object can "contain" a polygon and lines and points. Though it is not a good idea to (mis)use the sdo_geometry datatype in this way. All of the shape primitives can be further extended from 2D to their 3D equivalents.
I have previously looked at points and will now look at polygons.
There are many more rules that cover what is and isn't a valid polygon in the oracle documentation.
A geometry datatype in Oracle can be used to hold any imaginable real world shape.
The shapes are as you would think points, lines, compound lines, polygons and mixtures of all the items in the list. So a single geometry object can "contain" a polygon and lines and points. Though it is not a good idea to (mis)use the sdo_geometry datatype in this way. All of the shape primitives can be further extended from 2D to their 3D equivalents.
I have previously looked at points and will now look at polygons.
- A polygon encloses an area. In other words, its start and end points are the same.
- A polygon can contain other polygons which can be thought of as islands or lakes which in turn can contain polygons ad infinitum.
- A polygon can be optimised by two points (rectangle) or three points (circle).
- The "sides"of a polygon cannot cross. Self crossing lines are valid. It is allowable to split such a geometry into self contained polygons that when viewed together look like a self crossing polygon.
- A polygon can be made up of any combination of compound linestrings.
There are many more rules that cover what is and isn't a valid polygon in the oracle documentation.
Thursday, 10 May 2007
What Are My X and Y Co-ordinates
In Oracle a geometry column hides the number of vertices and their values from you the casual coder.
Here is one method to extract (and display) the values of the geometry vertices.
You start by "loading" a working variable with the geometry in question.
Then you can get the number of vertices
Obviously this is merely an example but it can be expanded to suit your needs.
Here is one method to extract (and display) the values of the geometry vertices.
You start by "loading" a working variable with the geometry in question.
Select geoloc into work_geom from dual;
Then you can get the number of vertices
Select sdo_util.getnumvertices (work_geom) into vert from dual;
For nv in 1..vert loop
Select work_geom.sdo_ordinates ( (nv - 1 ) * 2 + 1) as x,
work_geom.sdo_ordinates ( (nv - 1 ) * 2 + 2) as y
Into x_out ,
y_out
from dual;
dbms_output.put_line( 'x = '||x_out||' and y = '||y_out );
End loop;
Obviously this is merely an example but it can be expanded to suit your needs.
Friday, 4 May 2007
Applied Imagery
3D Data Modeling

QTModeler from Applied Imagery builds and manipulates three-dimensional (3D) models of as many as 200 million vertices or 100 million points and builds both point clouds and gridded surface models. Users of version 5.1 can align multiple scans from Optech ILRIS 3D laser scanners with digital elevation model editing tools and manually remove spikes or other terrain features with area-smoothing or flattening tools. QTModeler is optimized for 3D LIDAR (light detection and ranging) and SAR (synthetic aperture radar) survey data.
Applied Imagery. www.appliedimagery.com/
QTModeler from Applied Imagery builds and manipulates three-dimensional (3D) models of as many as 200 million vertices or 100 million points and builds both point clouds and gridded surface models. Users of version 5.1 can align multiple scans from Optech ILRIS 3D laser scanners with digital elevation model editing tools and manually remove spikes or other terrain features with area-smoothing or flattening tools. QTModeler is optimized for 3D LIDAR (light detection and ranging) and SAR (synthetic aperture radar) survey data.
Applied Imagery. www.appliedimagery.com/
Wednesday, 2 May 2007
Point Overview
Geometric Data (Points)
Geometric co-ordinate points in Oracle spatial can be 2d, 3d or even 4d. These can be representative of anything like a building or location.
Points can also be oriented to show direction and can also be 2d, 3d or 4d. They are usually used to show vector information and orientation. This is purely for display purposes, the point does not move.
A simple point is represented by (x,y) and an oriented point by (x,y,x1,y1).
If you track a car around a maze you can plot the position every five seconds and get a breadcrumb like trail of points. If you add on orientation you can see direction of travel from a single point.
Geometric co-ordinate points in Oracle spatial can be 2d, 3d or even 4d. These can be representative of anything like a building or location.
Points can also be oriented to show direction and can also be 2d, 3d or 4d. They are usually used to show vector information and orientation. This is purely for display purposes, the point does not move.
A simple point is represented by (x,y) and an oriented point by (x,y,x1,y1).
If you track a car around a maze you can plot the position every five seconds and get a breadcrumb like trail of points. If you add on orientation you can see direction of travel from a single point.
Type of Spatial Data
There are many types of spatial data.
There is the obvious mapping connection of latitude and longitude. There is also a use for spatial data in CAD/CAM systems. This covers both the geographic and non-geographic uses for spatial data.
Geographic spatial data has to have an attribute set to help describe the data as a co-ordinate system i.e. latitude and longitude or BNG (British National Grid). Non geographical data in CAD/CAM systems would not have to set this attribute.
All the data is stored and manipulated in the same way. The only difference may be in the scale of data and permissible accuracy. The centre of a town is, well near enough is usually good enough (metres), whereas getting the size of a window wrong in architects drawings is only a matter of millimeters.
There is the obvious mapping connection of latitude and longitude. There is also a use for spatial data in CAD/CAM systems. This covers both the geographic and non-geographic uses for spatial data.
Geographic spatial data has to have an attribute set to help describe the data as a co-ordinate system i.e. latitude and longitude or BNG (British National Grid). Non geographical data in CAD/CAM systems would not have to set this attribute.
All the data is stored and manipulated in the same way. The only difference may be in the scale of data and permissible accuracy. The centre of a town is, well near enough is usually good enough (metres), whereas getting the size of a window wrong in architects drawings is only a matter of millimeters.
Tuesday, 1 May 2007
History of Oracle Spatial
We can trace the origins of Oracle spatial back to version 7.3 where more than just point data was stored. This was the Spatial Data Option giving us the initials SDO. You see the SDO initials on most spatially related objects and operators to this day.
Over the next couple of versions the product was renamed until settling upon Oracle spatial (in 10g). Spatial operations are performed in the database using SQL, a different syntax maybe, but in the database nonetheless. So it is not an external bolt-on solution.
Spatial is no longer a seperate part of the system and is built in to the system, from locator (spatial lite) in all versions to the full blown Oracle Spatial in Enterprise Edition. Locator allows you to store and index geomeries (points, lines, polygons, 2d shapes, 3d shapes etc...) and perform relationship operations and distance calculations.
Anything else like volume or area, or intersection and union operations require Spatial.
Over the next couple of versions the product was renamed until settling upon Oracle spatial (in 10g). Spatial operations are performed in the database using SQL, a different syntax maybe, but in the database nonetheless. So it is not an external bolt-on solution.
Spatial is no longer a seperate part of the system and is built in to the system, from locator (spatial lite) in all versions to the full blown Oracle Spatial in Enterprise Edition. Locator allows you to store and index geomeries (points, lines, polygons, 2d shapes, 3d shapes etc...) and perform relationship operations and distance calculations.
Anything else like volume or area, or intersection and union operations require Spatial.
Subscribe to:
Comments (Atom)