You could do the ST_Segmentize and then use my GetVector function to explode 
the line at those points.

http://www.spatialdbadvisor.com/postgis_tips_tricks/128/exploding-a-linestring-or-polygon-into-individual-vectors-in-postgis

The only thing is that ST_Segmentize may introduce shorter vectors around the 
existing vertices as in the following example:

select ST_Distance(ST_MakePoint((vect.*).startcoord.x,(vect.*).startcoord.y),
                   ST_MakePoint((vect.*).endcoord.x,(vect.*).endcoord.y))
  from ST_GetVector(ST_Segmentize('LINESTRING(0 0, 1 1, 2 2, 3 
3)'::geometry,0.25)) as vect;

st_distance
double precision
----------------
0.25
0.25
0.25
0.25
0.25
0.164213562373095
0.25
0.25
0.25
0.25
0.25
0.164213562373094
0.25
0.25
0.25
0.25
0.25
0.164213562373094

HTH

regards
Simon

On Tue, 03 Apr 2012 03:38:02 +1000, Ed Linde <edoli...@gmail.com> wrote:

Hi All,
I see that ST_Segmentize allows me to introduce points to a line string "x" meters apart. 
I was wondering ifthere was a way to break the line string so that I can get lines "x" 
meters in length returned as separate rows..
all belonging to the one segment ID?

Cheers,
Ed




--
Holder of "2011 Oracle Spatial Excellence Award for Education and Research."
SpatialDB Advice and Design, Solutions Architecture and Programming,
Oracle Database 10g Administrator Certified Associate; Oracle Database 10g SQL 
Certified Professional
Oracle Spatial, SQL Server, PostGIS, MySQL, ArcSDE, Manifold GIS, FME, Radius 
Topology and Studio Specialist.
39 Cliff View Drive, Allens Rivulet, 7150, Tasmania, Australia.
Website: www.spatialdbadvisor.com
  Email: si...@spatialdbadvisor.com
  Voice: +61 362 396397
Mobile: +61 418 396391
Skype: sggreener
Longitude: 147.20515 (147° 12' 18" E)
Latitude: -43.01530 (43° 00' 55" S)
GeoHash: r22em9r98wg
NAC:W80CK 7SWP3
_______________________________________________
postgis-users mailing list
postgis-users@postgis.refractions.net
http://postgis.refractions.net/mailman/listinfo/postgis-users

Reply via email to