<br><br><div class="gmail_quote">On Sun, Feb 6, 2011 at 9:22 AM, Taco Hoekwater <span dir="ltr"><<a href="mailto:taco@elvenkind.com">taco@elvenkind.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div class="im">On 02/05/2011 04:02 PM, Laurent Méhats wrote:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<br>
I believe that glyph contours don't intersect each-other, nor<br>
self-intersect (is that always true ?),<br>
</blockquote>
<br></div>
That should be true, otherwise it is not a proper Type 1 font.<br>
But that is not quite the same as 'always': fonts that break this<br>
rule can exist and even though they are not valid, they would<br>
probably still work in everything except drawing programs.<br>
It should be extremely rare, though.<div class="im"><br>
<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
so my question would be: given two<br>
non intersecting nor self-intersecting cycles, is there a proper way to<br>
decide whether one lies inside the other ?<br>
</blockquote>
<br></div></blockquote><div>An idea:<br><br>Let c1 is a set of bezier curves that make a cycle, so it can be parametrized with t in [0,N];<br>let c2 another cycle.<br>Let c1 & c2 not intersecting , c1 not self intersecting, c2 not self intersecting<br>
<br>for tn = 1 to N:<br> r(tn) = straight line from c1(t=0) to c1(t=tn);<br>  if r(tn) intersect c2 then c2_is_inside_c1=true; break<br><br>if not(c2_is_inside_c1) then<br> for tn = 1 to N:<br>
  r(tn) = straight line from c2(t=0) to c2(t=tn);<br>
    if r(tn) intersect c2 then c1_is_inside_c2=true; break<br>
<br><br></div></div><br>-- <br>luigi<br><br>