Updated 2008/11/12 == Simple Projects == * ST_IsMeasured(geometry) TRUE or FALSE depending on existence of M * ST_LocateAlong(reference geometry, measure float) * ST_LocateBetween(reference geometry, start float, end float) * ST_IsValidReason(geometry) For invalid geometries return the GEOS reason * ST_CleanGeometry(geometry) Attempt to make invalid geometry valid * ST_SplitGeometry(polygon, line) returns components of polygon * ST_SplitGeometry(lineA, lineB) returns components of lineA * ST_SplitGeometry(line, point) returns components of line * ST_Hausdorf(g1 geometry, g2 geometry) returns double. Need to get def'n from JTS. * ST_AverageDistance(g1 geometry, g2 geometry, nsamples integer) returns double Sum of minimum distances at regular intervals up two geometries, divided by the number of samples. * ST_MaxDistance(g1 geometry, g2 geometry) returns double. What is the maximum distance between these two geometries. * ST_GeomFromKML(string) returns geometry. Ingests KML geometry parts only. * ST_GeomFromGML(string) returns geometry. Ingests GML geometry parts only. * ST_GeomFromGeoJSON(string) returns geometry. Ingests JSON geometry parts only. * ST_LatitudeFromText(string) returns float, LongitudeFromText(string) returns float for things like 132W 23' 23", or 45N 23.41232', or 123.14123W, etc, etc, etc. * ST_AsLatLonText(, [formatstring]) returns string. Format string could use DD DD.DD MM MM.MM SS SSSS.SSS style tokens and allow anything else (E, W, ", ', degree sign) to be interleaved within. == Larger projects == -- Complete Curve support -- The LWGEOM construct does not have quite enough space to hold all the typology variants of curves. And it certainly doesn't have enough space for encoding the line interpolation type. Complete curve support would require re-working all the way back into GEOS to support non-linear interpolations in all GEOS calculations, and may never get done. Intermediate curve support requires handling all curve types and stroking them into linear interpolations for hand-off to GEOS functions. Inexact but providing some utility. Current curve support does include indexing and in/out functions but needs much better documentation, particularly about the valid WKT and WKB forms. -- Geodetic support -- A new "geography" type which is indexed in cartesian 3-space, possibly using direction cosines as the ordinates, and supports some basic functions, most importantly, distance on all types, area on all types and an intersects predicate. Casts back to "geometry" could allow use with standard functionality. -- Topology -- Expand on the existing topology experiment, in particular buiding topologies from existing POLYGON and MULTIPOLYGON "coverages" (simple feature collections that have an expectation of no overlaps or gaps). -- GEOMETRY_COLUMNS -- Add the maintenance of GEOMETRY_COLUMNS to the "ANALYZE" operation, so that an ANALYZE automatically removes orphaned rows from GEOMETRY_COLUMNS and adds entries for new rows. -- Estimated Extent -- Fast extent estimation based on reading the head of the R-Tree. -- Nearest Neighbor -- Fast nearest neighbor searching based on traversing the R-Tree. See, http://citeseer.ist.psu.edu/roussopoulos95nearest.html http://citeseer.ist.psu.edu/91356.html