RWS@ZERMATT.LCS.MIT.EDU (Robert Scheifler) (07/11/88)
Date: 10 Jul 88 07:14:26 GMT From: ubvax!vsi1!daver!athsys!stergios@AMES.ARC.NASA.GOV (Stergios Marinopoulos) Now I'm usually not to picky, but after seeing this type of code in my first look into the mi section I start to wonder just how many other occurances of special "algorithms" there are when a simple operator whould do (in this case modulus seems well suited). Perhaps it's too early in the morning, but at least on my Sun 3/60, it is faster to do the compare and branch (and do nothing) than it is to take a modulus, when the magnitude of the angle is less than FULLCIRCLE (which it almost always will be). It is also faster to do the single addition and compare and branch again than it is to take a modulus, when the magnitude is less than 2*FULLCIRCLE. So, the "optimization" you suggest may not be an optimization on all hardware all of the time. Any way, I thought I would mention that if any one is interested in this approach, they they should check out MetaFont which allows this type of pen, heck I think it even supports pens described by splines! The problem with polygonal pens is not how to implement the algorithms, but how to choose the pens. Choosing the "best" polygon for a given line width appears to still be a very active area of research. In terms of trying to define a deterministic standard for wide lines, doing so with a polygonal pen specification still seems premature.