Geometron Instance Construction

Start with a simple demonstration of a filled square:

The first thing to do with this is construct the capacitor pads for the 0603 size SMT capacitors. Then I'll build the pads for the flip chip SQUID chips, the launch pads for the SMAs, some vias, transmission line(microstrip)

First I just want an 8x8 square pad where 1 unit = 1 mm. I also want it symmetric.

I now cut right to the finished product, a 0603 surface mount pad, now based on a unit of 1 mm
Everything in this file is based on one command, the line-in-close-figure command, or 0344 in octal code:


function doTheThing(localCommand){
...
    if(localCommand == 0344){   //line
		ctx.lineTo(x + side*Math.cos(theta),y + side*Math.sin(theta));
		ctx.stroke();		
    }
...

}
This is of note because it is different from the line used for line drawings without fill or for things other than fabrication layout, which looks like this:

function doTheThing(localCommand){
...
    if(localCommand == 0342){   //line
    	ctx.beginPath();
    	ctx.moveTo(x,y);
		ctx.lineTo(x + side*Math.cos(theta),y + side*Math.sin(theta));
		ctx.stroke();		
   		ctx.closePath();
    }
...
}
The distinction is important, since if you close the path when you don't want to it breaks the filled polygon that we need for fabrication layout, but if you fail to close the path when you mean to just make a discrete line segment you get a huge mess, which must be avoided. We need both even though this