<html>
<head>
        <title></title>
        
<meta content="MSHTML 6.00.6000.16809" name="GENERATOR"></meta>
</head>

<body>
        
<div>OK, </div>
        
<div> </div>
        
<div>everything is about the definitions of boundaries an interior.</div>
        
<div> </div>
        
<div>from your definition Regina it is not logical that </div>
        
<div>SELECT ST_Touches('LINESTRING(0 0, 1 1, 0 2)'::geometry, 'LINESTRING(1 1, 2 2, 3 3)'::geometry);</div>
        
<div>returns true. </div>
        
<div>
                
<div>There is two multipoints as boundaries and they don't share any point.</div>
                
<div> </div></div>
        
<div>But I see it from </div>
        
<div>Kevins definition :</div>
        
<div>1. the intersection of (a) and (b) is not the empty set (which means they have to<br />
                interact somehow) AND<br />
                2. the intersection of the interior of (a) and the interior of (b)
                <span style="TEXT-DECORATION: underline">is the empty set</span><br />
                </div>
        
<div>The problem I think, is to see is why a multipoint of endpoints is the boundarie of a line, and why a point have interior but no boundarie. I don't see the logic but I guess it is just definitions that have to be done.</div>
        
<div> </div>
        
<div>In pactice it can give som strange behavior I think. The way I discovered this was that I wanted to check for touches in road-crosses. My dataset was quite big so I tested the end and startpoint against the lines instead of line to line, and then I thought I had some strange results.</div>
        
<div> </div>
        
<div>SELECT ST_Touches('LINESTRING(0 0, 1 1, 0 2)'::geometry, 'LINESTRING(1 1, 2 2, 3 3)'::geometry);</div>
        
<div>returns true but</div>
        
<div>SELECT ST_Touches('LINESTRING(0 0, 1 1, 0 2)'::geometry, st_startpoint('LINESTRING(1 1, 2 2, 3 3)'::geometry));</div>
        
<div>returns false.</div>
        
<div> </div>
        
<div>From the definitions I see it but from another point of view it is a little strange that the second part of Kevins statement falls when we take away two points of the line and it gets a point. </div>
        
<div>Why the rule that the "intersection of the interior of (a) and the interior of (b) is the empty set" turns to false when geometry b gets smaller. </div>
        
<div>In other words that the intersection appears when we remove two points....</div>
        
<div> </div>
        
<div>/Nicklas</div>
        
<div> </div>
        
<div><br />
                2009-04-08 codesite-noreply@google.com wrote:<br />
                <br />
                Updates:<br />
                > Status: Invalid<br />
                ><br />
                >Comment #1 on issue 148 by robe....@cityofboston.gov: st_touches doesn't <br />
                >work as it should on st_touches(line,point)<br />
                >http://code.google.com/p/postgis/issues/detail?id=148<br />
                ><br />
                >Nicklas -- I think this is by design. Touches is a weird thing -- but in <br />
                >the docs it<br />
                >says<br />
                ><br />
                >2 geometries only touch if their boundaries share points together. The <br />
                >boundary of a<br />
                >line string is a MULTIPOINT. If you do this<br />
                ><br />
                >SELECt ST_AsText(ST_Boundary('LINESTRING(0 0, 1 1, 0 2)'::geometry))<br />
                ><br />
                >you get this -- MULTIPOINT(0 0,0 2) -- so the only geometries that qualify <br />
                >as<br />
                >touching this linestring are 0 0 and 0 2 as you have observed.<br />
                ><br />
                >Kevin please correct me if I am wrong because this is a very touchy subject <br />
                >(well in<br />
                >terms of nuances anyway)<br />
                ><br />
                >--<br />
                >You received this message because you are listed in the owner<br />
                >or CC fields of this issue, or because you starred this issue.<br />
                >You may adjust your issue notification preferences at:<br />
                >http://code.google.com/hosting/settings<br />
                >_______________________________________________<br />
                >postgis-devel mailing list<br />
                >postgis-devel@postgis.refractions.net<br />
                >http://postgis.refractions.net/mailman/listinfo/postgis-devel<br />
                ><br />
                ></div>
</body>
</html>