[BACK]Return to plotf.c CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / asir2000 / plot

Diff for /OpenXM_contrib2/asir2000/plot/plotf.c between version 1.7 and 1.9

version 1.7, 2000/11/09 01:51:13 version 1.9, 2001/06/04 02:49:49
Line 45 
Line 45 
  * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,   * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,
  * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.   * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.
  *   *
  * $OpenXM: OpenXM_contrib2/asir2000/plot/plotf.c,v 1.6 2000/11/07 06:06:40 noro Exp $   * $OpenXM: OpenXM_contrib2/asir2000/plot/plotf.c,v 1.8 2000/11/22 04:03:11 noro Exp $
 */  */
 #include "ca.h"  #include "ca.h"
 #include "parse.h"  #include "parse.h"
Line 76  void Popen_canvas(arg,rp)
Line 76  void Popen_canvas(arg,rp)
 NODE arg;  NODE arg;
 Obj *rp;  Obj *rp;
 {  {
         Q w300,sid;          Q w300,s_id;
         LIST geom;          LIST geom;
         int stream,id,i;          int stream,id,i;
         NODE n,n0;          NODE n,n0;
Line 99  Obj *rp;
Line 99  Obj *rp;
                                 error("open_canvas : invalid argument"); break;                                  error("open_canvas : invalid argument"); break;
                 }                  }
         /* open_canvas in ox_plot requires          /* open_canvas in ox_plot requires
            [sid (Q),             [s_id (Q),
                 geom=[xsize,ysize] (LIST),                  geom=[xsize,ysize] (LIST),
                 wname=name (STRING)]                  wname=name (STRING)]
         */          */
Line 108  Obj *rp;
Line 108  Obj *rp;
                 stream = current_s;                  stream = current_s;
         else          else
                 current_s = stream;                  current_s = stream;
         STOQ(stream,sid);          STOQ(stream,s_id);
         if ( !geom ) {          if ( !geom ) {
                 STOQ(300,w300);                  STOQ(300,w300);
                 MKNODE(n0,w300,0); MKNODE(n,w300,n0); MKLIST(geom,n);                  MKNODE(n0,w300,0); MKNODE(n,w300,n0); MKLIST(geom,n);
         }          }
         MKSTR(fname,"open_canvas");          MKSTR(fname,"open_canvas");
         arg = mknode(4,sid,fname,geom,wname);          arg = mknode(4,s_id,fname,geom,wname);
         Pox_cmo_rpc(arg,rp);          Pox_cmo_rpc(arg,rp);
 }  }
   
Line 122  void Pifplot(arg,rp)
Line 122  void Pifplot(arg,rp)
 NODE arg;  NODE arg;
 Obj *rp;  Obj *rp;
 {  {
         Q m2,p2,w300,sid;          Q m2,p2,w300,s_id;
         NODE defrange;          NODE defrange;
         LIST xrange,yrange,range[2],list,geom;          LIST xrange,yrange,range[2],list,geom;
         VL vl,vl0;          VL vl,vl0;
Line 203  Obj *rp;
Line 203  Obj *rp;
                         error("ifplot : cannot happen"); break;                          error("ifplot : cannot happen"); break;
         }          }
         /* ifplot in ox_plot requires          /* ifplot in ox_plot requires
            [sid (Q),             [s_id (Q),
                 formula (Obj),                  formula (Obj),
                 xrange=[x,xmin,xmax] (LIST),                  xrange=[x,xmin,xmax] (LIST),
                 yrange=[y,ymin,ymax] (LIST),                  yrange=[y,ymin,ymax] (LIST),
Line 216  Obj *rp;
Line 216  Obj *rp;
                 stream = current_s;                  stream = current_s;
         else          else
                 current_s = stream;                  current_s = stream;
         STOQ(stream,sid);          STOQ(stream,s_id);
         if ( !geom ) {          if ( !geom ) {
                 STOQ(300,w300);                  STOQ(300,w300);
                 MKNODE(n0,w300,0); MKNODE(n,w300,n0); MKLIST(geom,n);                  MKNODE(n0,w300,0); MKNODE(n,w300,n0); MKLIST(geom,n);
         }          }
         MKSTR(fname,"plot");          MKSTR(fname,"plot");
         arg = mknode(8,sid,fname,poly,xrange,yrange,0,geom,wname);          arg = mknode(8,s_id,fname,poly,xrange,yrange,0,geom,wname);
         Pox_rpc(arg,rp);          Pox_rpc(arg,rp);
 }  }
   
Line 230  void Pconplot(arg,rp)
Line 230  void Pconplot(arg,rp)
 NODE arg;  NODE arg;
 Obj *rp;  Obj *rp;
 {  {
         Q m2,p2,w300,sid;          Q m2,p2,w300,s_id;
         NODE defrange;          NODE defrange;
         LIST xrange,yrange,zrange,range[3],list,geom;          LIST xrange,yrange,zrange,range[3],list,geom;
         VL vl,vl0;          VL vl,vl0;
Line 327  Obj *rp;
Line 327  Obj *rp;
                 current_s = stream;                  current_s = stream;
   
         /* conplot in ox_plot requires          /* conplot in ox_plot requires
            [sid (Q),             [s_id (Q),
                 formula (Obj),                  formula (Obj),
                 xrange=[x,xmin,xmax] (LIST),                  xrange=[x,xmin,xmax] (LIST),
                 yrange=[y,ymin,ymax] (LIST),                  yrange=[y,ymin,ymax] (LIST),
Line 340  Obj *rp;
Line 340  Obj *rp;
                 stream = current_s;                  stream = current_s;
         else          else
                 current_s = stream;                  current_s = stream;
         STOQ(stream,sid);          STOQ(stream,s_id);
         if ( !geom ) {          if ( !geom ) {
                 STOQ(300,w300);                  STOQ(300,w300);
                 MKNODE(n0,w300,0); MKNODE(n,w300,n0); MKLIST(geom,n);                  MKNODE(n0,w300,0); MKNODE(n,w300,n0); MKLIST(geom,n);
         }          }
         MKSTR(fname,"plot");          MKSTR(fname,"plot");
         arg = mknode(8,sid,fname,poly,xrange,yrange,zrange,geom,wname);          arg = mknode(8,s_id,fname,poly,xrange,yrange,zrange,geom,wname);
         Pox_rpc(arg,rp);          Pox_rpc(arg,rp);
 }  }
   
Line 354  void Pplot(arg,rp)
Line 354  void Pplot(arg,rp)
 NODE arg;  NODE arg;
 Obj *rp;  Obj *rp;
 {  {
         Q m2,p2,w300,sid;          Q m2,p2,w300,s_id;
         NODE defrange;          NODE defrange;
         LIST xrange,range[1],list,geom;          LIST xrange,range[1],list,geom;
         VL vl,vl0;          VL vl,vl0;
Line 382  Obj *rp;
Line 382  Obj *rp;
                                                         error("ifplot : invalid argument");                                                          error("ifplot : invalid argument");
                                                 else                                                  else
                                                         v[i++] = vl0->v;                                                          v[i++] = vl0->v;
                                   if ( i != 1 )
                                           error("ifplot : invalid argument");
                                 break;                                  break;
                         case O_LIST:                          case O_LIST:
                                 list = (LIST)BDY(arg);                                  list = (LIST)BDY(arg);
Line 417  Obj *rp;
Line 419  Obj *rp;
                         error("plot : cannot happen"); break;                          error("plot : cannot happen"); break;
         }          }
         /* conplot in ox_plot requires          /* conplot in ox_plot requires
            [sid (Q),             [s_id (Q),
                 formula (Obj),                  formula (Obj),
                 xrange=[x,xmin,xmax] (LIST),                  xrange=[x,xmin,xmax] (LIST),
                 yrange=0,                  yrange=0,
Line 429  Obj *rp;
Line 431  Obj *rp;
                 stream = current_s;                  stream = current_s;
         else          else
                 current_s = stream;                  current_s = stream;
         STOQ(stream,sid);          STOQ(stream,s_id);
         if ( !geom ) {          if ( !geom ) {
                 STOQ(300,w300);                  STOQ(300,w300);
                 MKNODE(n0,w300,0); MKNODE(n,w300,n0); MKLIST(geom,n);                  MKNODE(n0,w300,0); MKNODE(n,w300,n0); MKLIST(geom,n);
         }          }
         MKSTR(fname,"plot");          MKSTR(fname,"plot");
         arg = mknode(8,sid,fname,poly,xrange,0,0,geom,wname);          arg = mknode(8,s_id,fname,poly,xrange,0,0,geom,wname);
         Pox_rpc(arg,rp);          Pox_rpc(arg,rp);
 }  }
   
Line 443  void Pplotover(arg,rp)
Line 445  void Pplotover(arg,rp)
 NODE arg;  NODE arg;
 Obj *rp;  Obj *rp;
 {  {
         Q sid,index;          Q s_id,index;
         P poly;          P poly;
         STRING fname;          STRING fname;
   
         poly = (P)ARG0(arg);          poly = (P)ARG0(arg);
         sid = (Q)ARG1(arg);          s_id = (Q)ARG1(arg);
         index = (Q)ARG2(arg);          index = (Q)ARG2(arg);
         MKSTR(fname,"plotover");          MKSTR(fname,"plotover");
         arg = mknode(4,sid,fname,index,poly);          arg = mknode(4,s_id,fname,index,poly);
         Pox_rpc(arg,rp);          Pox_rpc(arg,rp);
 }  }
   
 /* arg = [x,y,r,sid,index] */  /* arg = [x,y,r,s_id,index] */
   
 void Pdrawcircle(arg,rp)  void Pdrawcircle(arg,rp)
 NODE arg;  NODE arg;
 Obj *rp;  Obj *rp;
 {  {
         Q sid,index;          Q s_id,index;
         Obj x,y,r;          Obj x,y,r;
         STRING fname;          STRING fname;
         NODE n;          NODE n;
Line 470  Obj *rp;
Line 472  Obj *rp;
         x = (Obj)ARG0(arg);          x = (Obj)ARG0(arg);
         y = (Obj)ARG1(arg);          y = (Obj)ARG1(arg);
         r = (Obj)ARG2(arg);          r = (Obj)ARG2(arg);
         sid = (Q)ARG3(arg);          s_id = (Q)ARG3(arg);
         index = (Q)ARG4(arg);          index = (Q)ARG4(arg);
         MKSTR(fname,"drawcircle");          MKSTR(fname,"drawcircle");
         n = mknode(3,x,y,r); MKLIST(pos,n);          n = mknode(3,x,y,r); MKLIST(pos,n);
         arg = mknode(4,sid,fname,index,pos);          arg = mknode(4,s_id,fname,index,pos);
         Pox_rpc(arg,rp);          Pox_rpc(arg,rp);
 }  }
   
 /* draw_obj(sid,cindex,point|line); point = [x,y], line = [xa,ya,xb,yb] */  /* draw_obj(s_id,cindex,point|line); point = [x,y], line = [xa,ya,xb,yb] */
 void Pdraw_obj(arg,rp)  void Pdraw_obj(arg,rp)
 NODE arg;  NODE arg;
 Obj *rp;  Obj *rp;
 {  {
         static STRING fname;          static STRING fname;
         Q sid,index;          Q s_id,index;
         LIST obj;          LIST obj;
   
         if ( !fname ) {          if ( !fname ) {
                 MKSTR(fname,"draw_obj");                  MKSTR(fname,"draw_obj");
         }          }
         sid = (Q)ARG0(arg);          s_id = (Q)ARG0(arg);
         index = (Q)ARG1(arg);          index = (Q)ARG1(arg);
         obj = (LIST)ARG2(arg);          obj = (LIST)ARG2(arg);
         /* ARG3(arg) = color */          /* ARG3(arg) = color */
         if ( argc(arg) == 4 )          if ( argc(arg) == 4 )
                 arg = mknode(5,sid,fname,index,obj,ARG3(arg));                  arg = mknode(5,s_id,fname,index,obj,ARG3(arg));
         else          else
                 arg = mknode(4,sid,fname,index,obj);                  arg = mknode(4,s_id,fname,index,obj);
         Pox_cmo_rpc(arg,rp);          Pox_cmo_rpc(arg,rp);
 }  }
   
Line 506  NODE arg;
Line 508  NODE arg;
 Obj *rp;  Obj *rp;
 {  {
         static STRING fname;          static STRING fname;
         Q sid,index;          Q s_id,index;
         LIST obj;          LIST obj;
   
         if ( !fname ) {          if ( !fname ) {
                 MKSTR(fname,"clear_canvas");                  MKSTR(fname,"clear_canvas");
         }          }
         sid = (Q)ARG0(arg);          s_id = (Q)ARG0(arg);
         index = (Q)ARG1(arg);          index = (Q)ARG1(arg);
         arg = mknode(3,sid,fname,index);          arg = mknode(3,s_id,fname,index);
         Pox_cmo_rpc(arg,rp);          Pox_cmo_rpc(arg,rp);
 }  }
   

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.9

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>