Hi all,

I have a table of line and a table of polygons. For a given line, I would like to get the polygon which has the biggest intersection with the line.
I tried something like this:

CREATE OR REPLACE FUNCTION distribution.get_zone_id(geometry) RETURNS integer AS '
    DECLARE
        inputgeom ALIAS FOR $1;
        id_poly integer;
    BEGIN
        SELECT id INTO id_poly
            FROM  polygons
            WHERE ST_Intersects(inputgeom,geometry) IS TRUE
            ORDER BY ST_Length(ST_Intersection(inputgeom,geometry)) DESC
            LIMIT 1;
        RETURN id_poly;
    END
' LANGUAGE 'plpgsql';

But I have the following error:
ERROR: Error performing intersection: TopologyException: side location conflict at 553524.92178241001 147945.03792368001

If anyone has any idea, tip or whatever, it is very welcome!

Greetings,

Denis
_______________________________________________
postgis-users mailing list
postgis-users@postgis.refractions.net
http://postgis.refractions.net/mailman/listinfo/postgis-users

Reply via email to