[postgis-users] More details for errors
denis.rouzaud at gmail.com
Tue Mar 27 07:50:56 PDT 2012
Yes, it is 2.0
Well, I am turning around the problem...
I have to do a cast, as I used
in the first view to prevent errors of unconnected lines.
Right now the best solution I have is to let the view being unusable,
and another view to report errors.
This is not very satisfying as if a problem occurs, I cannot use my view
until I fix the geometric errors.
Basically, I need to compute a view with a LineMerge returning
LineString (i.e. leaving away features leading to MultiLineString) and
another view returning IDs of features leading to MULTI.
I thought about using ST_Touches but it only uses two geometries and I
can have more in the LineMerge. No idea what to look for...
Thanks for your help. I could go deeper in the problem!
On 03/27/2012 04:39 PM, Nicolas Ribot wrote:
> On 27 March 2012 16:09, Denis Rouzaud<denis.rouzaud at gmail.com> wrote:
>> Hi Nicolas,
>> Thanks again.
>> Well, this working, but this not performant...
>> Based on your suggestion, I tried this:
>> in view1:
>> AS wkb_geometry
>> Then in view2:
>> ST_CollectionHomogenize(wkb_geometry)::geometry(LineString,21781) AS
>> FROM view1
>> WHERE ST_NumGeometries(wkb_geometry) = 1;
>> And I can detect problems by doing:
>> SELECT id FROM view1 WHERE ST_NumGeometries(wkb_geometry) != 1;
>> But this is slowing down a lot.
>> I think that the ST_CollectionHomogenize is not the right way. Is there a
>> better function to transform multiline to line if I am sure I only have
> I did not know this function. 2.0 ?
> You can simply do:
> st_setsrid(ST_geometryN(wkb_geometry), 21781) AS
> FROM view1
> WHERE ST_NumGeometries(wkb_geometry) = 1;
> If geoms come from linemerge, no need to cast to a linestring. It is
> already one.
> postgis-users mailing list
> postgis-users at postgis.refractions.net
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the postgis-users