[PostGIS] #6143: [topology] False edge crossing detected
PostGIS
trac at osgeo.org
Fri Oct 9 00:40:37 PDT 2026
#6143: [topology] False edge crossing detected
-----------------------+---------------------------
Reporter: strk | Owner: strk
Type: defect | Status: new
Priority: blocker | Milestone: PostGIS 3.7.0
Component: topology | Version: master
Resolution: | Keywords:
-----------------------+---------------------------
Description changed by strk:
Old description:
> The new lwline_have_nonboundary_2d_intersection function committed in
> d03570c8597d49e4ca382283b3385c22f52a5b7a returns true with this input:
>
> L1: LINESTRING(-1000000000000 -1000000000000, -1 0.0001)
> L2: LINESTRING(100000 -10000, -1 -0.00000000001)
>
> It can be checked like this:
> > select
> topology.TopoEdgesHaveInteriorIntersection('LINESTRING(-1000000000000
> -1000000000000, -1 0.0001)'::geometry, 'LINESTRING(100000 -10000, -1
> -0.00000000001)'::geometry);
>
> But GEOS Finds them non crossing:
> > select ST_IsSimple(ST_Collect('LINESTRING(-1000000000000
> -1000000000000, -1 0.0001)'::geometry, 'LINESTRING(100000 -10000, -1
> -0.00000000001)'::geometry));
>
> and ST_Distance reports them being 0.00010000001 units apart.
New description:
The new lwline_have_nonboundary_2d_intersection function committed in
d03570c8597d49e4ca382283b3385c22f52a5b7a returns true with this input:
{{{
L1: LINESTRING(-1000000000000 -1000000000000, -1 0.0001)
L2: LINESTRING(100000 -10000, -1 -0.00000000001)
}}}
It can be checked like this:
{{{
select
topology.TopoEdgesHaveInteriorIntersection('LINESTRING(-1000000000000
-1000000000000, -1 0.0001)'::geometry, 'LINESTRING(100000 -10000, -1
-0.00000000001)'::geometry);
}}}
But GEOS Finds them non crossing:
{{{
select ST_IsSimple(ST_Collect('LINESTRING(-1000000000000 -1000000000000,
-1 0.0001)'::geometry, 'LINESTRING(100000 -10000, -1
-0.00000000001)'::geometry));
}}}
and ST_Distance reports them being 0.00010000001 units apart.
--
--
Ticket URL: <https://trac.osgeo.org/postgis/ticket/6143#comment:2>
PostGIS <http://trac.osgeo.org/postgis/>
The PostGIS Trac is used for bug, enhancement & task tracking, a user and developer wiki, and a view into the subversion code repository of PostGIS project.
More information about the postgis-tickets
mailing list