W3C home > Mailing lists > Public > whatwg@whatwg.org > February 2008

[whatwg] Canvas arcTo

From: Philip Taylor <excors+whatwg@gmail.com>
Date: Sat, 2 Feb 2008 20:40:00 +0000
Message-ID: <ea09c0d10802021240v15dfadd8x4f7bd3d654644d2f@mail.gmail.com>
On 31/01/2008, Ian Hickson <ian at hixie.ch> wrote:
> On Mon, 2 Jul 2007, Philip Taylor wrote:
> > "If the point (x2, y2) is on the line defined by the points (x0, y0) and
> > (x1, y1) then the method must do nothing, as no arc would satisfy the
> > above constraints." - why would no arc satisfy the constraints? If P0,
> > P1, P2 are collinear and non-coincident, then (I think) any of the
> > (infinitely many) circles which have the given radius and touch
> > tangential to the line P0->P2 will satisfy the constraints (i.e. being
> > tangential to P0->P1 at some point and to P1->P2 at some point).
>
> The idea is to just take the two (infinite) lines that are defined by the
> points (end at P1, cross P0 and P2), and draw a circle with the given
> radius between them.
>
> When the lines are the same line (i.e. P0->P1 is parallel to P1->P2) then
> no circle with a finite non-zero radius can touch the line tangentially at
> more than two points, since for each half of the circle, every point has a
> different tangent, and the two points on opposite sides of the circle are
> tangents to parallel but distinct lines unless the radius is zero.
>
> No?

The circle can't touch tangentially at two distinct points, but
nothing said there had to be two distinct points. There just had to be
one point on the circle tangential to one line, and one point
tangential to the other line, so they could easily be equal points.


About the updated specification:

"the method must add a point (x&inf;, y&inf;)" - s/&inf;/&infin;/

"the infinite line that crosses the point (x0, y0) and ends at the
point (x1, y1)" - it could be clearer to say "half-infinite line". (It
seems the technical term is "ray" or "half-line", but those aren't as
clear.)

-- 
Philip Taylor
excors at gmail.com
Received on Saturday, 2 February 2008 12:40:00 UTC

This archive was generated by hypermail 2.3.1 : Monday, 13 April 2015 23:08:39 UTC