# 2.11BSD#431 - /usr/src/usr.bin/plot/crtdriver.c

##### Functions

    fplt              X
    getsi             X
    getstr            X
    main              X

##### Variables

    deltx             X
    delty             X

       1: #ifndef lint
       2: static char sccsid[] = "@(#)crtdriver.c	4.2 (Berkeley) 1/9/85";
       3: #endif
       4:
       5: /*
       6: This driver is used with crtplot.c.
       7: It is essentially the same driver as the one in /usr/src/cmd/plot.
       8: Unfortunately, the curses library has some of the same names as does
       9: as the functions that the driver calls.  These have been changed.
      10:
      11: Also, one of the commands has been removed since they don't make sense
      12: for crt's.
      13: */
      14:
      15:
      16: #include <stdio.h>
      17:
      18: float deltx;
      19: float delty;
      20:
      21: main(argc,argv)  char **argv; {
      22:     int std=1;
      23:     FILE *fin;
      24:
      25:     while(argc-- > 1) {
      26:         if(*argv[1] == '-')
      27:             switch(argv[1][1]) {
      28:                 case 'l':
      29:                     deltx = atoi(&argv[1][2]) - 1;
      30:                     break;
      31:                 case 'w':
      32:                     delty = atoi(&argv[1][2]) - 1;
      33:                     break;
      34:                 }
      35:
      36:         else {
      37:             std = 0;
      38:             if ((fin = fopen(argv[1], "r")) == NULL) {
      39:                 fprintf(stderr, "can't open %s\n", argv[1]);
      40:                 exit(1);
      41:                 }
      42:             fplt(fin);
      43:             }
      44:         argv++;
      45:         }
      46:     if (std)
      47:         fplt( stdin );
      48:     exit(0);
      49:     }
      50:
      51:
      52: fplt(fin)  FILE *fin; {
      53:     int c;
      54:     char s[256];
      55:     int xi,yi,x0,y0,x1,y1,r/*,dx,n,i*/;
      56:     /*int pat[256];*/
      57:
      58:     openpl();
      59:     while((c=getc(fin)) != EOF){
      60:         switch(c){
      61:         case 'm':
      62:             xi = getsi(fin);
      63:             yi = getsi(fin);
      64:             plot_move(xi,yi);
      65:             break;
      66:         case 'l':
      67:             x0 = getsi(fin);
      68:             y0 = getsi(fin);
      69:             x1 = getsi(fin);
      70:             y1 = getsi(fin);
      71:             line(x0,y0,x1,y1);
      72:             break;
      73:         case 't':
      74:             getstr(s,fin);
      75:             label(s);
      76:             break;
      77:         case 'e':
      78:             plot_erase();
      79:             break;
      80:         case 'p':
      81:             xi = getsi(fin);
      82:             yi = getsi(fin);
      83:             point(xi,yi);
      84:             break;
      85:         case 'n':
      86:             xi = getsi(fin);
      87:             yi = getsi(fin);
      88:             cont(xi,yi);
      89:             break;
      90:         case 's':
      91:             x0 = getsi(fin);
      92:             y0 = getsi(fin);
      93:             x1 = getsi(fin);
      94:             y1 = getsi(fin);
      95:             space(x0,y0,x1,y1);
      96:             break;
      97:         case 'a':
      98:             xi = getsi(fin);
      99:             yi = getsi(fin);
     100:             x0 = getsi(fin);
     101:             y0 = getsi(fin);
     102:             x1 = getsi(fin);
     103:             y1 = getsi(fin);
     104:             arc(xi,yi,x0,y0,x1,y1);
     105:             break;
     106:         case 'c':
     107:             xi = getsi(fin);
     108:             yi = getsi(fin);
     109:             r = getsi(fin);
     110:             circle(xi,yi,r);
     111:             break;
     112:         case 'f':
     113:             getstr(s,fin);
     114:             linemod(s);
     115:             break;
     116:         default:
     117:             fprintf(stderr, "Unknown command %c (%o)\n", c, c);
     118:             break;
     119:             }
     120:         }
     121:     closepl();
     122:     }
     123: getsi(fin)  FILE *fin; {    /* get an integer stored in 2 ascii bytes. */
     124:     short a, b;
     125:     if((b = getc(fin)) == EOF)
     126:         return(EOF);
     127:     if((a = getc(fin)) == EOF)
     128:         return(EOF);
     129:     a = a<<8;
     130:     return(a|b);
     131: }
     132: getstr(s,fin)  char *s;  FILE *fin; {
     133:     for( ; *s = getc(fin); s++)
     134:         if(*s == '\n')
     135:             break;
     136:     *s = '\0';
     137: }

#### Defined functions

fplt defined in line 52; used 2 times

- in line 42-47(2)

getsi defined in line 123; used 23 times

- in line 62-70(6), 81-109(17)

getstr defined in line 132; used 2 times

- in line 74, 113

main defined in line 21; never used

#### Defined variables

deltx defined in line 18; used 1 times

- in line 29

delty defined in line 19; used 1 times

- in line 32

sccsid defined in line 2; never used

Last modified: 1987-02-17 Generated: 2016-12-26 | Generated by src2html V0.67 page hit count: 628 |