Boost C++ Libraries: Ticket #9941: bg::touches() for box geometries https://svn.boost.org/trac10/ticket/9941 <p> Hello, </p> <p> the bg::touches() algorithm is not implemented for box geometries. Corresponding documentation or - better - implementation would be nice! </p> <p> Discussion can be found under: <a class="ext-link" href="http://boost-geometry.203548.n3.nabble.com/touches-compile-error-tp4025154.html"><span class="icon">​</span>http://boost-geometry.203548.n3.nabble.com/touches-compile-error-tp4025154.html</a> </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/9941 Trac 1.4.3 Frank <glinkaf@…> Wed, 23 Apr 2014 10:24:42 GMT <link>https://svn.boost.org/trac10/ticket/9941#comment:1 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/9941#comment:1</guid> <description> <p> It is documented - sorry for the confusion! <br /> <br /> </p> <blockquote class="citation"> <p> <strong>Note</strong><br /> only implemented for polygon/multi_polygon </p> </blockquote> </description> <category>Ticket</category> </item> <item> <dc:creator>Mateusz Loskot</dc:creator> <pubDate>Wed, 23 Apr 2014 13:39:34 GMT</pubDate> <title>cc set https://svn.boost.org/trac10/ticket/9941#comment:2 https://svn.boost.org/trac10/ticket/9941#comment:2 <ul> <li><strong>cc</strong> <span class="trac-author">mateusz@…</span> added </li> </ul> Ticket awulkiew Wed, 23 Apr 2014 15:02:36 GMT <link>https://svn.boost.org/trac10/ticket/9941#comment:3 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/9941#comment:3</guid> <description> <p> I pushed the implementation to the develop. However there is an edge case when both Boxes are Point-sized, e.g.: box(pt(0 0,0 0), pt(0 0,0 0)). </p> <p> Spatial relations are well defined, e.g. touches() returns TRUE only if the interiors of both geometries do NOT overlap. </p> <p> In the case of Polygons we know what to do because according to the OGC the Polygon must have an interior, its area can't be 0. Boxes are different, they're not defined in the OGC standard. Bounding objects in general may have no area/volume since they may be an envelop of a single Point. So we should decide how a Point-sized Box should be treated: </p> <ol><li>as a Point - no boundary, only the interior which means that touches for equal Point-sized Boxes should return FALSE. </li><li>as an Areal geometry without interior, only boundary which means that touches for equal Point-sized Boxes should return TRUE (currently this is implemented). </li></ol><p> In general the handling of numerical errors is different for <a class="missing wiki">Box/Box</a> cases, that is, currently in all functions the error is not taken into account. It's because the test should be as simple as possible. However this way the algorithm calculating some spatial relation for Geometries may be not compatible with the algorithm calculating it for bounding Boxes of those Geometries. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>awulkiew</dc:creator> <pubDate>Mon, 06 Oct 2014 10:33:23 GMT</pubDate> <title>status changed; resolution set https://svn.boost.org/trac10/ticket/9941#comment:4 https://svn.boost.org/trac10/ticket/9941#comment:4 <ul> <li><strong>status</strong> <span class="trac-field-old">new</span> → <span class="trac-field-new">closed</span> </li> <li><strong>resolution</strong> → <span class="trac-field-new">fixed</span> </li> </ul> <p> Added in 1.56 with the above remarks. </p> Ticket