[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [ft-devel] Signed distance fields: distance from any point to the gl
From: |
Behdad Esfahbod |
Subject: |
Re: [ft-devel] Signed distance fields: distance from any point to the glyph contours |
Date: |
Wed, 31 Oct 2012 13:23:05 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:16.0) Gecko/20121011 Thunderbird/16.0.1 |
On 12-10-31 01:16 PM, Alexei Podtelezhnikov wrote:
> On Wed, Oct 31, 2012 at 12:03 PM, Behdad Esfahbod <address@hidden> wrote:
>> On 12-10-31 07:25 AM, Alexei Podtelezhnikov wrote:
>>> On Tue, Oct 30, 2012 at 6:56 AM, Nicolas Rougier
>>> <address@hidden> wrote:
>>>
>>>> My question relates to a more direct way to compute the signed distance
>>>> and to know if anyone has already coded it by any chance ? Said
>>>> differently, is there a quick way to compute the shortest signed distance
>>>> from any point (x,y) to the glyph contours ?
>>>
>>> Quick? I do not think so. A glyph outline is a collection of contours
>>> is a collection of straight segments and Bézier curves.For the
>>> straight segments it is trivial. It is very difficult but surely
>>> doable for the conic and cubic curves. No it is not implemented.
>>
>> Distance to a cubic Bezier involves solving a fifth degree polynomial.
>
> Ouch! Not doable.
>
> The Freetype antialiased rendered does not do it either. It splits the
> curves until the curvature is no longer noticeable, then threats all
> segments as straight with trivial solutions as to where they cross
> scanlines. Why don't you adopt a similar approach?
Because I want a size independent representation that remains smooth no matter
how much you zoom in. Any line approximation will show unsmoothness if you
zoom in enough. With circular arcs that doesn't happen.