% ASTROSYM.UNI : AstroSym (Version 2.20, Aug. 10, 2002) - file 6 of 8 % Peter Schmitt eMail: Peter.Schmitt@univie.ac.at % Institute of Mathematics, University of Vienna Vienna, Austria %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% beginchar(O+0,U#,U#,0u#); "Sol"; D:=U/16; % diameter of central circle corners; centers; PEN; draw BC..CL..TC..CR..BC..cycle; % main circle Pen; draw fullcircle scaled D shifted CC; % central circle endchar; beginchar(O+1,46u#,80u#,16u#); "Mercurius"; corners; centers; VV := (CC-CL) rotated 90; bC:=CC-VV; tC:=CC+2VV+vP/3; D:=length(CR-CL); % circles: diameter s:=length(TC-tC); a:= angle(s,(D/2)+-+s); % upper partial sector: angle SPEN; cross (bC,BC, 3/2,-2P); % bottom cross PEN; draw fullcircle scaled D shifted CC; % central circle draw halfcircle scaled D rotated (90+a) shifted tC; % upper partial circle draw halfcircle scaled D rotated -(90+a) shifted tC; endchar; beginchar(O+5,44u#,70u#,0u#); "Iuppiter"; corners; Centers (3/4,1/5); Top (4/5); PEN; draw tC--BC; % right vertical bar draw CL--CR; % horizontal bar draw CL{tC-CL}..{TL-CC}TL; % left vertical arc endchar; beginchar(O+6,44u#,72u#,12u#); "Saturnus"; Corners (P,P,d+P,P);; Centers (1/6,5/9); % BC and TC : left vertical bar RT (1/2,1); % bR : right arc (right) HOR (0,1/3); Top (6/7); % tl and tr : upper horizontal bar BOT (2/3,7/9); Bl:=Bl-vd; % Bl Br:=Br-(0,d); % Br SPEN; draw tl--tr; draw BC--TC; % left cross PEN; draw CC{dir 20}..{down}bR..{dir250}Bl..{dir-70}Br; % right arc endchar; beginchar(O+11,1U#,72u#,0u#); "Aries"; corners; BOT (1/2,1/2); % Bl = Br : lower middle point TOP (1/6,5/6); % (temporary) Tl and Tr : upper arcs (tops) HH:= Tl-TL; VV:= HH rotated -90; tr:=Tr+VV; % tr : right upper halfcircle (centre) D:=length(tr-br); R:=length(HH); s:=D+-+R; % calculating direction of bar b:=angle(s,R); b:=b+angle(tr-Br); Tr:=tr+(HH rotated (b+90)); % Tr : (left endpoint) tR:=tr+(HH rotated (b-90)); % tR : (right endpoint) tl:=Tl+VV; a:=180-b; % tl : left upper halfcircle (centre) Tl:=tl+(HH rotated (a-90)); % Tl : (right endpoint) tL:=tl+(HH rotated (a+90)); % tL : (left endpoint) PEN; draw Bl--Tl{dir a}..{dir (a-180)}tL; % left part draw Br--Tr{dir b}..{dir (b-180)}tR; % right part endchar; beginchar(O+12,1U#,72u#,8u#); "Taurus"; corners; Centers(1/2,5/9); % BC and CC : lower circle (top and bottom) HOR (1/8,7/8); % Tl and Tr : upper arcs (tops) Bot (5/18); % bl and br : lower circle (left and right) LFT (0,4/5); RT (0,4/5); % tL and tR : upper arcs (left and right) PEN; draw Tl{dir 235}..{down}tL..CC..br..BC..bl..CC..{up}tR..{dir 145}Tr; endchar; beginchar(O+13,56u#,72u#,8u#); "Gemini"; corners; HOR (2/7,5/7); Top (7/8); Bot (1/8); PEN; draw BL..bl..br..BR; draw TL..tl..tr..TR; % bottom and upper arc draw tl--bl; draw tr--br; % left and right vertical bar endchar; beginchar(O+14,84u#,68u#,0u#); "Cancer"; corners; centers; Cl:=2/7[CL,CR]; RT (0,4/5); PEN; draw CL{up}..{down}Cl..{up}CL % left circle ..{right}(TC-2hP/3)..(tR-4hP/3+vP/2); % upper arc picture upper; upper := currentpicture; % adding rotated copy addto currentpicture also upper rotated 180 shifted 2CC; endchar; beginchar(O+15,68u#,80u#,10u#); "Leo"; Corners(P,P,d+P,P); centers; % TC HOR (1/6,17/20); Top (3/4); % tl and tr : main arc (left and right) BOT (1/3,2/3); rr:=(Bl-BL)/2; bL:=BL+(rr rotated 90); bl:=bL+2rr; % bL and bl : lower left circle Br:=BR-(2d,0); % Br and BR : lower right arc PEN; draw bl{up}..{down}bL..{up}bl % lower left circle ..{up}tl..{right}TC..{down}tr % main arc ..{down}Br..{up}BR; % lower right arc endchar; beginchar(O+16,100u#,68u#,10u#); "Virgo"; Corners (P,P,d+P,P); LFT (0,3/4); % tL : left upper arc (left end) HOR (1/3,2/3); Top (3/4); % tl and tr : upper arcs (endpoints) TOP (4/14,4/14+1/3); Tl:=Tl-(0,4u); Tr:=Tr-(0,4u); % Tl and Tr : upper arcs (tops) RT (1/5,3/4); % tR : right upper arc (right end) % bR and tR : right vertical bar (ends) TR:=(4/14+2/3)[TL,TR]; % TR : right upper arc (top) bC:=.5[Bl,Br]-(0,d/2); % bC : lower right stroke (endpoint) br:=Br-(0,d); % br : middle right bar (lower end) Br:=Br+vP; % Br : lower right vertical stroke (left) BR:=2/3[Br,BR]; % BR : lower right vertical stroke (right) PEN; draw TL--BL; draw tl--Bl; draw tr--br; draw tR--bR; % vertical bars draw tL{dir 40}..{right}Tl..{down}tl; % left upper arc draw tl{dir 40}..{right}Tr..{down}tr; % middle upper arc draw tr{dir 40}..{right}TR..{down}tR; % right upper arc draw bR{dir250}..{dir190}BR--Br; % lower right stroke: right part draw Br{left}..{dir 235}bC; % lower right stroke: left part endchar; beginchar(O+17,64u#,56u#,-8u#); "Libra"; corners; Centers (1/2,7/15); % CL and CR : upper bars (outer ends) TOP (1/4,3/4); VV:=(TC-Tl) rotated -90; tl:=Tl+VV; tr:=Tr+VV; % tl and tr : upper arc (left and right) R:=length(VV); D:=length(TC-CC); % calculating intersection of t:=(R+-+(D-R))/length(BR-BL); % upper arc with upper bars HOR (1/2-t,1/2+t); Bot (7/15); % (bl and cl renamed:) Cl:=bl; Cr:=br; % Cl and Cr : upper arc (inner ends) % Cl:=bl+hP; Cr:=br-hP; % Cl and Cr : upper arc (inner ends) bL:=CL-vP; bl:=Cl-vP; br:=Cr-vP; bR:=CR-vP; % shift upper bars slightly down PEN; draw BL--BR; % bottom bar draw (CL+vP)--bL--bl--Cl % left and right upper bar & Cl..{up}tl..{right}TC..{down}tr..Cr % upper arc & Cr--br--bR--(CR+vP); endchar; beginchar(O+18,(14/15)*100u#-(13/15)*P#+p#,68u#,10u#); "Scorpio"; Corners (P,P,d+P,P); LFT (0,3/4); % tL : left upper arc (left end) HOR (5/14,10/14); Top (3/4); % tl and tr : upper arcs (endpoints) TOP (4/14,9/14); Tl:=Tl-(0,4u); Tr:=Tr-(0,4u); % Tl and Tr : upper arcs (tops) RT (1/6,1); % bR : lower right arrow (point) br:=1/5[Br,BR]-(0,d); % br : lower right arc (bottom) BR:=2/3[Br,BR]; % Br and BR : lower right arc (endpoints) PEN; draw TL--BL; draw tl--Bl; draw tr--Br; % vertical bars draw tL{dir 40}..{right}Tl..{down}tl; draw tl{dir 40}..{right}Tr..{down}tr; draw BR{dir angle(BR-bR)}..{left}br..{up}(Br); Pen; arrow (BR,bR, 1, 1/4,1/2); endchar; beginchar(O+19,56u#,80u#,8u#); "Sagittarius"; corners; bl:=(1/5)[BL,TR]; tr:=(4/5)[BL,TR]; VV:=TR-BL; a:=angle(VV); HH:= VV/10 rotated 90; bL := bl+HH; Bl := bl-HH; PEN; draw BL--tr; draw bL--Bl; % shaft and short bar Pen; arrow (tr,TR, 5/6, .3,.5); % point endchar; beginchar(O+20,56u#,1U#,0); "Capricornus"; corners; % TR: top bar (right end) Centers (2/3,2/3); % BC and CC: loop (bottom and top) HOR (1/3,1); Bot (1/3); % bl and br: loop (left and right) TOP(1/4,1); % Tl: top bar (left end) LFT (.45,1); % bL: end of loop PEN; draw Tl--TR{dir225} % top bar ..{down}bl..{right}BC..{up}br..{left}CC..bL; % lower loop endchar; beginchar(O+22,56u#,72u#,8u#); "Pisces"; corners; HOR (1/5,4/5); Top (1/2); PEN; draw BL..tl..TL; draw BR..tr..TR; % left and right arc draw tl--tr; % vertical bar endchar; beginchar(O+23,44u#,72u#,12u#); "Saturnus 2"; corners; Centers (4/9,8/11); HOR (0,8/9); Top (19/22); RT (6.3/11,1); % bR Bl:=2/9[BL,BR]; Bot(.8/12); % Bl, bl bC:=1/5[BC,TC]; % bC SPEN; draw tl--tr; draw CC--TC; % upper cross PEN; draw CC{right}..{down}bR..bC..{dir250}bl..{dir-70}Bl; % lower arc endchar; beginchar(O+27,76u#,50u#,-22u#); "Aquarius 2"; corners; % upper strokes: Centers (3/5,1/2); % CL and CC : left stroke (left end, right bottom) TOP (1/4,5/6); % Tl and Tr : left stroke (left top, right end) % Tr and CR : right stoke (left and right end) PEN; draw (CL+vP)..{right}Tl..{right}(CC+vP)..{dir20}(Tr-vP/2); %left stroke draw Tr..{right}(CR+vP); % right stroke picture upper; upper:= currentpicture; addto currentpicture also upper shifted (0,-(h+d)/2); endchar; beginchar(O+28,78u#,56u#,-9u#); "Aquarius 3"; Corners(P,P,(h+d)/2+P,P); % upper stroke : points on central line: centers; % CL and CR : ends HOR (1/5,3/5); Bot(1/2); % bl and br : down crossing HOR (2/5,4/5); Top(1/2); % tl and tr : up crossing PEN; draw CL{up}..bl{down}..tl{up}..br{down}..tr{up}..CR{down}; picture upper; upper:= currentpicture; % lower stroke addto currentpicture also upper shifted (0,-(h+d)/2); endchar; beginchar(O+29,U#,U#,0u#); "Terra 2"; corners; centers; VV:=(BC-BL) rotated 90; TC:=CC+VV; BC:=CC-VV; PEN; draw TC..CR..BC..CL..TC..cycle; % circle draw BC--TC; draw CL--CR; % cross in circle endchar; beginchar(O+32,88u#,56u#,0); "Libra 3"; % larger variant corners; Centers (1/2,7/15); % CL and CR : upper bars (outer ends) TOP (1/4,3/4); VV:=(TC-Tl) rotated -90; tl:=Tl+VV; tr:=Tr+VV; % tl and tr : upper arc (left and right) R:=length(VV); D:=length(TC-CC); % calculating intersection of t:=(R+-+(D-R))/length(BR-BL); % upper arc with upper bars HOR (1/2-t,1/2+t); Bot (7/15); % (bl and cl renamed:) Cl:=bl; Cr:=br; % Cl and Cr : upper arc (inner ends) bL:=CL-vP; bl:=Cl-vP; br:=Cr-vP; bR:=CR-vP; % shift upper bars slightly down % CL:=CL+8u;CR:=CR+8u; % left and right points CL:=1/3[bL,TL];CR:=1/3[bR,TR]; % left and right points PEN; draw BL--BR; % bottom bar draw (CL+vP)--bL--bl--Cl % left and right upper bar & Cl..{up}tl..{right}TC..{down}tr..Cr % upper arc & Cr--br--bR--(CR+vP); endchar; %% moon : phases beginchar(O+10,10/11U#,U#,0u#); "Luna = (moon) last quarter"; corners; Centers(4/11,1/2); VV:=(TL-BL)/2; HH:=VV rotated -90; BC:=BL+HH; TC:=TL+HH; % CL=BL+VV; R:=length(HH); D:=length(BR-BL); t:=(R+-+(D-R))/2R; RT (1/2-t,1/2+t); PEN; draw tR..TC..CL..BC..bR; % big circle draw tR..CC..bR; % small circle endchar; temp := currentpicture; beginchar(O+41,10/11U#,U#,0u#); "(moon) first quarter"; currentpicture := temp xscaled -1 shifted (w,0); endchar; beginchar(O+42,10/11U#,U#,0u#); "(moon) last quarter - inverse"; PEN; filldraw tR..TC..CL..BC..bR % big circle & bR..CC..tR -- cycle; % small circle endchar; temp := currentpicture; beginchar(O+43,10/11U#,U#,0u#); "(moon) first quarter - inverse"; currentpicture := temp xscaled -1 shifted (w,0); endchar; beginchar(O+52,1.4U#,1.05U#,.35U#); "Pallas"; corners; Centers (.5,.4); PEN; draw TC--CL--CR--TC; % top triangle SPEN; cross (CC,BC, 1,-2P); % bottom cross endchar; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% reset O if 200 + char number > 255 ( uniform (thin) ) if O = 200 : O := 122 fi ; a:=(sqrt3)/2; % ratio (equilateral triangle) % used chars ( 58 60 ) 61 ( 63 ) beginchar(O+61,U#/a+2P#,U#+P#,.P#); "Trigon"; corners; centers; PEN; draw TC--BL--BR--TC; % triangle endchar; beginchar(O+64,68u#,80u#,0); "ascending node of moon"; Corners(P,P,P,P); centers; % TC HOR (1/6,5/6); Top (3/4); % tl and tr : main arc (left and right) BOT (1/3,2/3); rr:=(Bl-BL)/2; bL:=BL+(rr rotated 90); bl:=bL+2rr; % bL and bl : lower left circle bR:=BR+(rr rotated 90); br:=bR-2rr; % bR and br : lower right circle PEN; draw bl{up}..{down}bL..{up}bl % lower left circle ..{up}tl..{right}TC..{down}tr % main arc ..{down}br..{up}bR..br{down}; % lower right circle endchar; temp := currentpicture; beginchar(O+65,68u#,80u#,0); "descending node of moon"; currentpicture := ( temp yscaled -1 ) shifted ( 0,h ); endchar; endinput; %%%%%%%%%%%%%%%%%%%%%%%%%%% %%% end of ASTROSYM.UNI %%%