%ColorSeps.jam
%For the folks in Fremont
(JaMImager) .run
(Griffin) .run
(.maskparityfill) {.maskfill}.cvx .def
(screenFreq) 85 .def
(.sethsvcolor) {docolor}.cvx .def
(.setgray) {1 .exch .sub 0 0 3 2 .roll docolor}.cvx .def
(name) (color-prtr) .def
(DoIt) {
{72.0 2540 .div .dup .scale 0 0 .translate name .run}.cvx .dosave
}.cvx .def
(mil) {.072 .mul}.cvx .def
(units) {3 mil .mul}.cvx .def
(unit) {units}.cvx .def
(ll) {50 mil}.cvx .def
(bPattern3) {400 mil 0 .translate 3 {bPattern ll 2 .mul 20 units .add 0 .translate}.cvx .rept}.cvx .def
(cPattern3) {400 mil 0 .translate
magenta cPattern ll 2 .mul 20 units .add 0 .translate
cyan cPattern ll 2 .mul 20 units .add 0 .translate
yellow cPattern ll 2 .mul 20 units .add 0 .translate
}.cvx .def
(doL) {0 0 ll 1 unit .maskrectangle 0 0 1 unit ll .maskrectangle}.cvx .def
(bPattern) {
{3 units 3 units .setcp .trans doL}.cvx .dosave
{-2 units 3 units .setcp .trans -1 1 .scale doL}.cvx .dosave
{-2 units -2 units .setcp .trans -1 -1 .scale doL}.cvx .dosave
{3 units -2 units .setcp .trans 1 -1 .scale doL}.cvx .dosave
}.cvx .def
(cPattern) {
(nll) ll 8 units .add .def
{nll .neg 0 .setcp .trans 0 0 nll 1 unit .maskrectangle}.cvx .dosave
{0 nll .neg .setcp .trans 0 0 1 unit nll .maskrectangle}.cvx .dosave
(nll) nll 1 unit .add .def
{0 0 .setcp .trans 0 0 nll 1 unit .maskrectangle}.cvx .dosave
{0 0 .setcp .trans 0 0 1 unit nll .maskrectangle}.cvx .dosave
}.cvx .def
(target) {
.5 .setstrokewidth
-0.25 -20 0.25 20 .drawbox
-20 -0.25 20 0.25 .drawbox
-15 0 .moveto 15 0 -15 0 .arcto .maskstrokeclosed
-8 0 .moveto 8 0 -8 0 .arcto .maskstrokeclosed
}.cvx .def
(lowerLeft) {25 25 .translate}.cvx .def
(upperLeft) {25 10.7 72 .mul .translate}.cvx .def
(lowerRight) {7.5 72 .mul 25 .translate}.cvx .def
(upperRight) {7.5 72 .mul 10.7 72 .mul .translate}.cvx .def
(doTargets) {
7.0 72 .mul 10 .setcp .drawtext
{lowerLeft target}.cvx .dosave
{upperLeft target}.cvx .dosave
{upperRight target}.cvx .dosave
{lowerRight target}.cvx .dosave
}.cvx .def
(doBPattern) {
{lowerLeft bPattern3}.cvx .dosave
{upperLeft bPattern3}.cvx .dosave
{upperRight bPattern3}.cvx .dosave
{lowerRight bPattern3}.cvx .dosave
}.cvx .def
(doCPattern) {
{lowerLeft cPattern3}.cvx .dosave
{upperLeft cPattern3}.cvx .dosave
{upperRight cPattern3}.cvx .dosave
{lowerRight cPattern3}.cvx .dosave
}.cvx .def
(makeBlack) {
name (-black.pd) .ropeconcat .openplatemakerpd
(black . . . ) .print
0.55 screenFreq 75 .setdotscreen
Griffin.BlackPass
black (black) doTargets doBPattern
DoIt
(closing) .print
.closepd
}.cvx .def
(makeCyan){
name (-cyan.pd) .ropeconcat .openplatemakerpd
(cyan . . . ) .print
0.55 screenFreq 60 .setdotscreen
Griffin.CyanPass
cyan (cyan) doTargets doCPattern
DoIt
(closing) .print
.closepd
}.cvx .def
(makeMagenta){
name (-magenta.pd) .ropeconcat .openplatemakerpd
(magenta . . . ) .print
0.55 screenFreq 30 .setdotscreen
Griffin.MagentaPass
magenta (magenta) doTargets doCPattern
DoIt
(closing) .print
.closepd
}.cvx .def
(makeYellow){
name (-yellow.pd) .ropeconcat .openplatemakerpd
(yellow . . . ) .print
0.55 screenFreq 0 .setdotscreen
Griffin.YellowPass
yellow (yellow) doTargets doCPattern
DoIt
(closing) .print
.closepd
}.cvx .def
(makeseps) {
(name) .exch .def
(Screening at ) .print screenFreq .print ( lines per inch) =
makeBlack
makeCyan
makeMagenta
makeYellow
Griffin.FullColor
} .cvx .def