Mystery of the Gappy Drawings- new controller version

I have uploadedĀ v1.7.1 of the controller here on github. I know it’s in the wrong place, but I couldn’t figure out restructuring the projects quite yet.

So, polargraph innovator Kongorilla pointed out that he was getting gaps in his pixel shaded drawings, some 8 months ago. I was baffled, but agreed that , forsooth, they were gaps. Like him, I’d seem them, but never seemed to be able to replicate them. Like a ninja, they seemed to melt into the night, leaving me with a haunted feeling.

a40k5-IMG_20140309_19193207622

Well, thanks to his work, including the sample drawing patch above, and encouraged by code sleuthing from Nosetinker (and literally no contribution from me), a solution has been found!

While the value forĀ grid size is displayed as integers, internally it is handled as a float. In the example above, the grid size was displayed as 41, but was actually 41.5, internally. When the positions of each pixel were calculated, and rounded to the nearest integer, 41.5 became 41. The next pixel along was put at 41.5+41.5: that is 83, and there’s no rounding there, but that means that there is 42 steps between them instead of 41.

So one pixel is 0.5 steps too high, and the next pixel is 0.5 steps too low. Simple! I had thought it would be something more tricky than that – thanks to Nosetinker and Kongorilla for shining a light on this – sorry it took me the better part of a year to get around to doing anything about it.

Note – I don’t have a machine right here to test it with, so it still might be something afoot. There are no updates to the firmware, but it is included in the zip.

(Note the first version of this, 1.7 wasn’t right, hence the extra .1)

2 thoughts on “Mystery of the Gappy Drawings- new controller version

Leave a Reply