~/============================================================================ ~/ PLTLINES (1.1) (C) Copyright Heinz Spiess, CH-2558 Aegerten, 1991 ~/ ~/ A macro to plot the itineraries of a set of transit lines using a ~/ separate page for each line and adjusting the window optimally ~/ for each line. ~/ ~/ Call from main menu: ~ ~/ ~/ Calling parameters: ~/ line selection, e.g. 'mod=b','ptt___','hdw=30,60',... ~/ (note that 'all' is not allowed, use '______' instead) ~/ coord. distance used increase window size ~/ demarcations and annotations to be included into plots (when ~/ using interactive mode, demarcations must be first (if any), ~/ followed by 'a', followed by the annotations (e.g. '34axy') ~/ ~/ Notes: - Uses scalar ms91 - ms94 as scratch pad scalars for windows. ~/ - If switch 1 is on, the plots will be sent to plot file directly. ~/ - If switch 1 is off, the plots will be sent to the terminal and ~/ the user can process the with the usual graphical commands. ~/ - The details ofthe type of plots to be generated are coded directly ~/ into this macro, so they might have to be adapted in the macro. ~/ - The default module parameters of module 2.23 are used. ~/ - The plot file name must not contain '?' (no intercative query). ~/============================================================================ ~x=%0% ~?x<2 ~$stop 2.41 / get next line which satisfies the criteria and compute window ~z=0 ~x=0 ~:loop 1 ~?q=1 n / 0*hdw term is used to force a line expression 0*hdw+index1 ~x+1 %1% and ind=%x%,9999 5 2 / any line found? - quit if not ~?q>4 ~$end 91 index index r / x hold the line index ~x=%ms91% ~z+1 1 ~?q=1 n / 0*ttf term is used to force a segment expression (xi.min.xj)-%2%+0*ttf %1% and ind=%x% all 5 2 ~?q>4 ~$loop 91 minX min X line ind=%x% r 1 ~?q=1 n (xi.max.xj)+%2%+0*ttf %1% and ind=%x% all 5 3 93 maxX max X line ind=%x% r 1 ~?q=1 n (yi.min.yj)-%2%+0*ttf %1% and ind=%x% all 5 2 92 minY min Y line ind=%x% r 1 ~?q=1 n (yi.max.yj)+%2%+0*ttf %1% and ind=%x% all 5 3 94 maxY max Y line ind=%x% q 2.23 / generate transit line plots, modify details if necessary 1 ind=%x% y y * all y 1 %ms91%,%ms92% / optimal window for line %x% %ms93%,%ms94% / as computed in module 2.41 ~?q=1 n ~?q=0 ~$wait 2 / switch 1 ON, send plot to plot file %3% q 2.41 ~$loop ~:wait %3% ~* ~?q=0 ~$wait q 2.41 ~$loop ~:end q ~/ ~/************************************************************************** ~/ ~