Consider the following statement:
SELECT ST_DFullyWithin(a1, a2, 100)
FROM ST_GeomFromText('LINESTRING(0 0, 0 1, 1 0, 0 0)') As a1
,ST_GeomFromText('POLYGON((0 0, 0 1, 1 0, 0 0))') As a2;
--actual{f}; expected{t}
According to the definition below, the result of ST_DFullyWithin(a1, a2, 100)
is expected to true
.
Returns true if the geometries are entirely within the specified distance of one another.
Because the geometry a1 is fully within each point of a2 in the distance of 100. The same as a2 to a1. However, Postgis doesn't consider the DFullyWithin relationship. So I believe it is an unexpected behavior here.
Version: POSTGIS="3.5.0dev 3.4.0rc1-748-gaedf3b14f" [EXTENSION] PGSQL="170" GEOS="3.13.0dev-CAPI-1.18.0" PROJ="8.2.1 NETWORK_ENABLED=OFF URL_ENDPOINT=https://cdn.proj.org USER_WRITABLE_DIRECTORY=/tmp/proj DATABASE_PATH=/usr/share/proj/proj.db" LIBXML="2.9.13" (1 row)