Spam III: Liberal Education

People who sent me spam this week:

Mementos C. Aspires
Population B. Infanticides
Preciousness A. Bidirectional
Shyer L. Refugee
Mischievousness H. Guadalquivir [1]
Archivist E. Wrestling
Distentions C. Fishbowls
Neonates S. Carriageway
Reddest C. Impairment
Buzzard U. Coloratura [2]
Media H. Goldenest
Chic S. Newscast
Relives V. Etruscans [3]
Telemachus F. Neutralizers [4]
Unbend L. Unveil
Upholstery K. Burgeon
Lubumbashi H. Actress [5]
Tackled G. Transliterations
Knitter H. Klingon

[1] Guadalquivir – one of the major rivers of Spain, passes through Cordoba and Seville, ends in the Atlantic Ocean.

[2] Coloratura – The ornamentation of music written for the voice with florid passages, especially trills and runs.

[3] Etruscan – Of or relating to ancient Etruria or its people, language, or culture.

[4] Telemachus – The son of Odysseus and Penelope, who helped his father kill Penelope’s suitors.

[5] Lubumbashi – capital of Katanga province, SE Congo (Kinshasa)

Flash Stuff Here. Move Along…

In the middle of a cool project which is right on the cusp of being designered into oblivion, I discovered a nifty way to make things “snap to” a grid. Copy-and-paste into Flash MX/MX2004.

var gridSize = 20; // size of grid
 var nodeSize = 20; // size of individual nodes
 var nodes = 50; // number of nodes
 var radius = Stage.height/3; // radius of drawn circle
 var centerX = Stage.width/2; // center horizontally
 var centerY = Stage.height/2; // center vertically
 var steps = (Math.PI*2) / nodes; // math stuff
 var i=0;
 this.onEnterFrame = function() {
 if(i < nodes) {
 var m = _root.createEmptyMovieClip("node"+i,i);
 m.lineStyle(0,0x000000,100);
 m.beginFill(0x000000,10);
 m.moveTo(0,0);
 m.lineTo(nodeSize,0);
 m.lineTo(nodeSize,nodeSize);
 m.lineTo(0,nodeSize); m.lineTo(0,0);
 m.endFill();
 var mx = centerX + radius*Math.cos(steps*i); // horizontal snap
 if(mx%gridSize != 0) mx += (Math.floor(gridSize/2) - (mx%gridSize));
 var my = centerY + radius*Math.sin(steps*i); // vetical snap
 if(my%gridSize != 0) my += (Math.floor(gridSize/2) - (my%gridSize));
 m._x = mx;
 m._y = my;
 i++;
 radius += .1;
 } else {
 this.onEnterFrame = null;
 }
 }

It’s the modulus (mx % gridSize) which makes it cool. The Math.floor() which follows could also easily be Math.round() or Math.ceil(), depending on the constraints of the project.

People Who Spammed Me This Week

Banged A. Outmaneuvered
Stockades U. Khufu
Bridegrooms O. Serviles
Conjugates B. Pulleys
Posh G. Brooches
Horne P. Tatar
Bogies R. Jarred
Inhabit B. Haynes
Conclave B. Frenzied
Flexibility J. Carries
Piranhas I. Canned
Hyperbolae P. Unsnarling
Aristocrat L. Banality