.PS # ArrestersMan.m4 # https://tex.stackexchange.com/questions/733192/spark-gap-in-circuit-package-and-voltage-arrow-capacitor cct_init sep = 0.2 rsep = 0.15 R1: [ arrester {`"\tt arrester"' at last line.c+(0,-0.2)} move sep arrester(,G) {`"\tt arrester(,G)"' at last line.c+(0,-0.2)} move sep arrester(,g) {`"\tt ...(,g)"' at last line.c+(0,-0.2)} move sep arrester(,M) {`"\tt \ldots(,M)"' at last line.c+(0,-0.2)} move sep arrester(,C) {`"\tt \ldots(,C)"' at last line.c+(0,-0.2)} move sep arrester(,A) {`"\tt \ldots(,A)"' at last line.c+(0,-0.2)} ] R2: [ arrester(,H) {`"\tt \ldots(,H)"' at last line.c+(0,-0.2)} move sep arrester(,HR) {`"\tt \ldots(,HR)"' at last line.c+(0,-0.2)} move sep arrester(,P) {`"\tt \ldots(,P)"' at last line.c+(0,-0.2)} move sep arrester(,s) {`"\tt \ldots(,s)"' at last line.c+(0,-0.2)} move sep arrester(,F) {`"\tt \ldots(,F)"' at last line.c+(0,-0.2)} move sep arrester(,S) {`"\tt \ldots(,S)"' at last line.c+(0,-0.2)} ] with .nw at R1.sw+(0,-rsep) define(`Dlabels', `{ thinlines_ arrow <- from last [].A up 0.1 left 0.1; "\sl A" rjust arrow <- from last [].B up 0.1 right 0.1; "\sl B" ljust arrow <- from last [].G up 0.05 right 0.15; "\sl G" ljust thicklines_ }') R3: [ arrester(,E) {`"\tt \ldots(,E)"' at last line.c+(0,-0.25)} move up_ 0.1 then right_ sep DE: arrester(,DE,,,fill_(0.95)) {`"\tt \ldots(,DE,{,},"' wid 61bp__ at last [].A+(-0.1,-0.40) ljust \ `"\tt fill\_(0.95))"' ljust } Dlabels # move down_ 0.1 then right_ sep*3 move right_ sep*3 arrester(,DS) {`"\tt \ldots(,DS)"' at last [].s+(0,-0.1)} Dlabels move sep*3 DEL: arrester(,DEL) {`"\tt \ldots(,DEL)"' at last [].s+(0,-0.1)} Dlabels move sep*3 DSL: arrester(up_ dimen_,DSL) {`"\tt \ldots(up\_ dimen\_,DSL)"' at last [].s+(0,-0.1)} { thinlines_ arrow <- from DSL.A up 0.1 left 0.1; "\sl A" rjust arrow <- from DSL.B down 0.1 right 0.1; "\sl B" ljust arrow <- from DSL.G up 0.05 left 0.15; "\sl G" rjust thicklines_ } ] with .nw at R2.sw+(0,-rsep) [ moveht *= 0.6 { arrester(,,:dimen_/5,:dimen_/3,shaded "red") `"\tt arrester(,{,}:dimen\_/5,:dimen\_/3,shaded \"red\")"' ljust } # move down_; right_ # { arrester(,,,,shaded "red" outlined "red") # `"\tt arrester(,{,},{,}shaded \"red\" outlined \"red\")"' ljust } move down_; right_ { S: arrester(,S,,,shaded "yellow") `"\tt arrester(,S,{,},shaded \"yellow\")"' ljust } move down_; right_ { Gg: arrester(,g,,:dimen_/6,shaded "red") `"\tt arrester(,g{,},:dimen\_/6,shaded \"red\")"' ljust } # move down_; right_ # { M: arrester(,M,,:dimen_/8,shaded "orange") # `"\tt arrester(,M{,},:dimen\_/8,shaded \"orange\")"' ljust } move down_; right_ { C: arrester(,C,,,shaded "blue") `"\tt arrester(,C,{,},shaded \"blue\")"' ljust } ] with .nw at R3.sw+(0,-rsep) .PE