The Minsky Circle Algorithm

Post here to discuss generating video signals.

Moderators: Chuckt, Garth, bitfogav

Post Reply [phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable
Chuckt
I practically live here!
I practically live here!
Posts: 1127
Joined: Sun Mar 28, 2010 1:36 pm
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

The Minsky Circle Algorithm

Post by Chuckt » Sun Aug 30, 2015 3:01 pm

The Minsky Circle Algorithm

https://nbickford.wordpress.com/2011/04 ... algorithm/

What I've read elsewhere is that making a circle on a bitmapped display (or possibly LEDs) is possible with add, subtract and shift operations.
The algorithm is important to master because it could be used for LEDs as well.

Other biographical information to aid in understanding and locating this information:
ITEM 149 (Minsky): CIRCLE ALGORITHM

Here is an elegant way to draw almost circles on a point-plotting display:
NEW X = OLD X - epsilon * OLD Y
NEW Y = OLD Y + epsilon * NEW(!) X

This makes a very round ellipse centered at the origin with its size determined by the initial point. epsilon determines the angular velocity of the circulating point, and slightly affects the eccentricity. If epsilon is a power of 2, then we don't even need multiplication, let alone square roots, sines, and cosines! The "circle" will be perfectly stable because the points soon become periodic.

The circle algorithm was invented by mistake when I tried to save one register in a display hack! Ben Gurley had an amazing display hack using only about six or seven instructions, and it was a great wonder. But it was basically line-oriented. It occurred to me that it would be exciting to have curves, and I was trying to get a curve display hack with minimal instructions.
From: PROGRAMMING HACKS
http://www.cl.cam.ac.uk/~am21/hakmemc.html

https://en.wikipedia.org/wiki/Marvin_Minsky

External Credit due to:
http://forums.parallax.com/discussion/1 ... -and-shift

User avatar
brad
Site Admin
Site Admin
Posts: 2578
Joined: Fri Mar 26, 2010 10:30 pm
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

Re: The Minsky Circle Algorithm

Post by brad » Mon Aug 31, 2015 9:58 am

Thanks for the info Chuck!

I've looked into all sorts of ways of drawing circles on displays such as LED matrix's. depending on the math you're using, it can be a very slow process!

Post Reply
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

Who is online

Users browsing this forum: No registered users and 8 guests