view .hgtags @ 2398:8481e6266691

Fix corner case in area generation from stretch In case orthogonal lines of arbitrary length at the ends of the axis between two given distance marks cross the axis (e.g. because it describes a tight turn), the result of ST_Buffer with endcap=flat is not well defined. Test data have been amended to include such a case as well as appropriate data to test correctness of a fix. The fix includes construction of the afore mentioned orthogonal lines, splitting the given area by these lines and constructing the end result from those parts of the splitted area that intersect with the clipped axis. Due to numerical inaccuracy, the parts might overlap slightly and eventually cross the clipped axis where they should only touch. Therefore, a small buffer was introduced before testing intersection and intersecting parts are dissolved using ST_Union (which is necessary to revert splits inside the resulting polygon anyhow).
author Tom Gottfried <tom@intevation.de>
date Wed, 27 Feb 2019 18:00:35 +0100
parents 28f1652cfb4d
children fc7b24f89164
line wrap: on
line source

532c8392048fe720bf31b7efb475591ab95a74ec v1-uat1
136aaa7f00af0b500c5c75f9fd9aabfc7fa526ee v1.1.0
724758455a4e44d25b096f00bcb353ceda0e0d57 v2-preview20190111
0059aa870a396e2112efae43f822c0c133454d7a v2
83f9a131dfb69f3ea1f430728a0831ccf96316d7 v2.1.0
83f9a131dfb69f3ea1f430728a0831ccf96316d7 v2.1.0
4d69b79e9df6e2b646ac60f75f6655bb3c64f6c6 v2.1.0