Annotation of researchv10no/cmd/postscript/postmd/postmd.h, revision 1.1

1.1     ! root        1: /*
        !             2:  *
        !             3:  * An interval list used to map matrix elements into integers in the range 0 to
        !             4:  * 254 representing shades of gray on a PostScript printer. The list can be given
        !             5:  * using the -i option or can be set in the optional header that can preceed each
        !             6:  * matrix. The list should be a comma or space separated list that looks like,
        !             7:  *
        !             8:  *             num1,num2, ... ,numn
        !             9:  *
        !            10:  * where each num is a floating point number. The list must be given in increasing
        !            11:  * numerical order. The n numbers in the list partion the real line into 2n+1
        !            12:  * regions given by,
        !            13:  *
        !            14:  *             region1         element < num1
        !            15:  *             region2         element = num1
        !            16:  *             region3         element < num2
        !            17:  *             region4         element = num3
        !            18:  *                .                 .
        !            19:  *                .                 .
        !            20:  *                .                 .
        !            21:  *             region2n        element = numn
        !            22:  *             region2n+1      element > numn
        !            23:  *
        !            24:  * Every number in a given region is mapped into an integer in the range 0 to 254
        !            25:  * and that number, when displayed on a PostScript printer using the image operator,
        !            26:  * prints as a square filled with a gray scale that reflects the integer that was
        !            27:  * chosen. 0 maps to black and 255 white (that's why 255 is normally omitted).
        !            28:  *
        !            29:  * The shades of gray chosen by the program are normally generated automatically,
        !            30:  * but can be reassigned using the -g option or by including a grayscale line in
        !            31:  * the optional header. The grayscale list is comma or space separated list of
        !            32:  * integers between 0 and 255 that's used to map individual regions into arbitray
        !            33:  * shade of gray, thus overriding the default choice made in the program. The list
        !            34:  * should look like,
        !            35:  *
        !            36:  *             color1,color2, ... ,color2n+1
        !            37:  *
        !            38:  * where color1 applies to region1 and color2n+1 applies to region2n+1. If less
        !            39:  * than 2n+1 numbers are given the default assignments will be used for the missing
        !            40:  * regions. Each color must be an integer in the range 0 to 255.
        !            41:  *
        !            42:  * The default interval list is given below. The default grayscale maps 254 (almost
        !            43:  * white) into the first region and 0 (black) into the last.
        !            44:  *
        !            45:  */
        !            46: 
        !            47: #define DFLTILIST      "-1,0,1"
        !            48: 
        !            49: /*
        !            50:  *
        !            51:  * The active interval list is built from an interval string and stored in an array
        !            52:  * whose elements are of type Ilist.
        !            53:  *
        !            54:  */
        !            55: 
        !            56: typedef struct  {
        !            57:        double  val;                    /* only valid in kind is ENDPOINT */
        !            58:        int     color;                  /* gray scale color */
        !            59:        long    count;                  /* statistics for each region */
        !            60: } Ilist;
        !            61: 
        !            62: /*
        !            63:  *
        !            64:  * Non-integer function declarations.
        !            65:  *
        !            66:  */
        !            67: 
        !            68: char   *savestring();
        !            69: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.