Boost logo

Geometry :

Subject: [ggl] "touches" in boost.geometry?
From: Mateusz Łoskot (mateusz)
Date: 2011-10-19 20:25:58


On 19 October 2011 23:15, Adam Wulkiewicz <adam.wulkiewicz_at_[hidden]> wrote:
> Mateusz Loskot wrote:
>>
>> On 09/10/11 21:30, Adam Wulkiewicz wrote:
>>>
>>> Barend Gehrels wrote:
>>>>
>>>> Hi Aleksandar,
>>>>
>>>> The touches algorithm is planned but not included, also not in the
>>>> extensions. I once started it and today looked at it, but it is not
>>>> suitable for inclusion yet. However it is on the list.
>>>>
>>>> As far as I know it cannot be done by using existing algorithms.
>>>
>>>
>>> Hi Barand,
>>>
>>> Please add to the todo list an algorithm checking if geometries
>>> intersects but not taking boundries into account (intersects()&&
>>> !touches()
>>
>> It's imprecise, though it may be understood as self-contradicting.
>>
>> touches(A, B) is true if and only if
>> intersect(interior(A), interior(B)) is empty
>> and
>> intersect(boundary(A), boundary(B)) is non-empty
>>
>> I think in terms of the DE-9IM and I believe it's a good
>> idea to consider or DE-9IM ?as basis of all the geometric
>> relation predicates. It's a generic technique.
>
> It would definietly increase expressiveness of GGL. I feel lack of some
> functions describing relations between geometires. In terms of geometries
> which are interiors+boundires there is no touches()/meets() and this
> intersects_without_boundry() i mentioned earlier. And in terms of boundries
> we have only overlaps().
>
> It would be nice if default versions of algorithms worked on geometries
> (interiors+boundries) and there would be additional wrappers to pass
> specific parts of the geometry.
>
> But is it possible with current design of GGL Barend?

Yes, I'd let Barend to answer/decide as it's quite substantial issue
for overall library.

There could be an utility that calculates the intersection matrix for
geometries anyway.
And a generic relate(A, B) predicate resulting in the intersection
matrix configuration.

Best regards,

-- 
Mateusz Loskot, http://mateusz.loskot.net
Charter Member of OSGeo, http://osgeo.org
Member of ACCU, http://accu.org

Geometry list run by mateusz at loskot.net