- From: Calogero Alex Baldacchino <alex.baldacchino@email.it>
- Date: Wed, 21 Jan 2009 21:18:16 +0100
Philip Taylor ha scritto: > > But I don't know if it makes sense from the perspective of someone > who's got to write an independent implementation of it. Does the above > explanation make more sense than the text in the spec? and if so, does > it seem implementable? If so, it seems best to keep the spec's > behaviour and try to clarify the spec's text. But this doesn't seem > like an important case where users will be unhappy if e.g. the arcTo > call draws nothing when all the points are on the same line, so if > it's still a pain to implement the spec's behaviour then I would be > happy with changing what the spec requires. > > I haven't checked this part of the spec insofar; looking at the image you posted it seems the 3 points are used as control points in a somewhat algorithm to draw curve lines; personally, thinking to an API function to draw arcs, I prefer to have the specified points as being part of the arc itself (e.g., the two external ones are the extremes of a convex elliptical arc). Anyway, certainly what you say makes sense for an arc degenering to a line (that is, if all points lay on the same line). Assuming the angular coefficient and the start point of the line are known, it is easy to find the intersection between it and a clip region (through the mean-point algorithm) -- it should be the same with a (x2, y2) point very close with the (x0, y0)--(x1, y1) segment, that is if under a certain threshold one can't drow an arc and instead the result must be approximated to a half-infinite line (I think all an implementation needs is to remember an infinite line has been drawn and the last point in the subpath is infinitely far, so it can draw a parallel line when .lineTo() is invocked). WBR, Alex -- Caselle da 1GB, trasmetti allegati fino a 3GB e in piu' IMAP, POP3 e SMTP autenticato? GRATIS solo con Email.it http://www.email.it/f Sponsor: Con Danone Activia, puoi vincere cellulari Nokia e Macbook Air. Scopri come Clicca qui: http://adv.email.it/cgi-bin/foclick.cgi?mid=8549&d=21-1
Received on Wednesday, 21 January 2009 12:18:16 UTC