Data Models – Computerised Tree Inventory System

ESRI hosts a set of community created, domain-specific, data models on its website. As I understand the licensing of these data models, they are effectively free and open source. I have converted some of these data models into a form that they can be used natively in any of the current spatially enables databases egRead More

Scheduling the Export of Spatial Data in Oracle to a Shapefile each night

While there is always a need for software like Safe Software’s Awesome FME to automate import and export tasks from your database, the ability to do so just using Oracle can also be enormously useful. I have implemented the approach described below many times over the years, in different customer sites. At one customer site,Read More

ST_Densify for Object PLSQL

The Java Topology Suite (JTS) has a linestring densifier function that is available in my Spatial Companion for Oracle (SC4O) solution. See here for documentation. For those who aren’t able to install SC4O (some DBAs don’t like it), there was a PL/SQL function in my the old GEOM Package implemetation on this website that allowsRead More

PLSQL ST_AsEWKT and ST_FromWKT Functions For Oracle (any version)

Previously I created the following Java stored procedures to enable the import/export of ZM aware WKT. ST_GeomFromText ST_GeomFromEWKT ST_AsText ST_AsEWKT These functions are necessary if one wishes to exchange geometry data with users of other databases that support WKT functions for 2D, 3D or 4D (ZM). For example, PostGIS supports the EWKT format and providesRead More

Noding and building a polygon from single, overlapping linestrings

The Spatial Companion 4 Oracle (SC4O) package (built using Java Topology Suite components) contains a method called ST_PolygonBuilder that can then form polygons from linestrings. However, ST_PolygonBuilder will not form polygons where it detects an unformed intersection: in this situation ST_PolygonBuilder has to be used with another SC4O method called ST_NodeLinestrings. ST_NodeLinestrings forms all intersectionsRead More

Extend (Reduce/Contract/Skrink) Function for Oracle

Recently I was looking at some cadastral data with a view to working out how to polygonize the linestrings. The data contains this sort of boundary understood anomaly. To be able to able to form intersections between the cadastral boundaries and the road frontage I need to be “extend” the linestrings along the direction ofRead More