Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!rutgers!uwm.edu!uakari.primate.wisc.edu!ginosko!uunet!mcsun!ukc!stc!root44!hrc63!paj From: paj@hrc63.uucp (Mr P Johnson "Baddow") Newsgroups: comp.graphics Subject: Re: Cleaning up freehand drawings Summary: Elastic band and weight Message-ID: <694@hrc63.uucp> Date: 25 Sep 89 15:07:59 GMT References: <1580002@hp-ptp.HP.COM> <8387@ardent.UUCP> Organization: GEC Hirst Research Centre, Wembley, England. (uk.co.gec-rl-hrc) Lines: 27 In article <8387@ardent.UUCP>, sleat@ez.ardent.com (Michael Sleator) writes: > ... > Perhaps you are trying to solve the problem in the wrong domain. It seems > to me that what you really want is a low pass filter on the curvature. In > general, the "jigglies" (to coin a term) will be significantly higher > frequency curvature components than the intended curves. This suggests > that there is ample room for choosing a filter cutoff frequency that will > kill the jigglies > ... How about this? Have the mouse cursor attached by a rubber band to a heavy cursor. The heavy cursor draws the line and is dragged about by the mouse cursor. The rubber band between them might be pure rubber or there might be damping in the system. I have never seen a system like this, let alone used one, but if I ever want to implement freehand drawing I will try it. It has the advantage of being simple and intuitive (hence easy to get the hang of) while providing exactly the sort of smoothing you want. Sharp corners can be implemented by large mouse movements, straight or nearly straight lines by giving a pull to start the weight and then following it with the mouse. -- Paul Johnson, | `The moving finger writes, And having writ, moves on,' GEC-Marconi Research | Omar Kyham when contemplating `vi'. ------------------------------------------------------------------------------ The company has put a radio inside my head: it controls everything I say!