IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Jun 8, 2011, 11:47:27 AM (15 years ago)
Author:
eugene
Message:

updates to allow read vectors from CSV files; point colors scaled by vector (zcplot)

Location:
branches/eam_branches/ipp-20110505/Ohana
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • branches/eam_branches/ipp-20110505/Ohana

  • branches/eam_branches/ipp-20110505/Ohana/src/opihi/Makefile

    r8566 r31615  
    2323
    2424all:
    25         for i in $(PROGRAM) $(SPECIAL); do make $$i || exit; done
    26         make pantasks_client
    27         make pantasks_server
     25        for i in $(PROGRAM) $(SPECIAL); do $(MAKE) $$i || exit; done
     26        $(MAKE) pantasks_client
     27        $(MAKE) pantasks_server
    2828
    2929libs:
    30         for i in $(LIBS); do make $$i || exit; done
     30        for i in $(LIBS); do $(MAKE) $$i || exit; done
    3131
    3232extras:
    33         for i in $(EXTRAS); do make $$i || exit; done
     33        for i in $(EXTRAS); do $(MAKE) $$i || exit; done
    3434
    3535install:
    36         for i in $(PROGRAM) $(SPECIAL); do make $$i.install || exit; done
    37         make pantasks_client.install
    38         make pantasks_server.install
     36        for i in $(PROGRAM) $(SPECIAL); do $(MAKE) $$i.install || exit; done
     37        $(MAKE) pantasks_client.install
     38        $(MAKE) pantasks_server.install
    3939
    4040extras-install:
    41         for i in $(EXTRAS); do make $$i.install || exit; done
     41        for i in $(EXTRAS); do $(MAKE) $$i.install || exit; done
    4242
    4343clean:
    44         for i in $(PROGRAM) $(SPECIAL) $(EXTRAS) $(LIBS); do make $$i.clean || exit; done
     44        for i in $(PROGRAM) $(SPECIAL) $(EXTRAS) $(LIBS); do $(MAKE) $$i.clean || exit; done
    4545
    4646libs-uninstall:
    47         for i in $(LIBS); do make $$i.uninstall || exit; done
     47        for i in $(LIBS); do $(MAKE) $$i.uninstall || exit; done
    4848
    4949dist: clean
    50         for i in $(PROGRAM) $(SPECIAL) $(EXTRAS) $(LIBS); do make $$i.dist || exit; done
     50        for i in $(PROGRAM) $(SPECIAL) $(EXTRAS) $(LIBS); do $(MAKE) $$i.dist || exit; done
    5151        rm -rf bin
    5252        rm -rf lib
     
    5555
    5656pantasks_client pantasks_server:
    57         if [ -d pantasks ]; then (cd pantasks && make $@); fi
     57        if [ -d pantasks ]; then (cd pantasks && $(MAKE) $@); fi
    5858
    5959pantasks_client.install: pantasks_client
    60         if [ -d pantasks ]; then (cd pantasks && make $@); fi
     60        if [ -d pantasks ]; then (cd pantasks && $(MAKE) $@); fi
    6161
    6262pantasks_server.install: pantasks_server
    63         if [ -d pantasks ]; then (cd pantasks && make $@); fi
     63        if [ -d pantasks ]; then (cd pantasks && $(MAKE) $@); fi
    6464
    6565$(PROGRAM) $(LIBS) $(EXTRAS):
    66         if [ -d "$@" ]; then (cd $@ && make); fi
     66        if [ -d "$@" ]; then (cd $@ && $(MAKE)); fi
    6767
    6868%.install:
    69         if [ -d "$*" ]; then make $*; fi
    70         if [ -d "$*" ]; then (cd $* && make install); fi
     69        if [ -d "$*" ]; then $(MAKE) $*; fi
     70        if [ -d "$*" ]; then (cd $* && $(MAKE) install); fi
    7171
    7272%.clean:
    73         if [ -d "$*" ]; then (cd $* && make clean); fi
     73        if [ -d "$*" ]; then (cd $* && $(MAKE) clean); fi
    7474
    7575%.dist:
    76         if [ -d "$*" ]; then (cd $* && make dist); fi
     76        if [ -d "$*" ]; then (cd $* && $(MAKE) dist); fi
    7777
    7878%.uninstall:
    79         if [ -d "$*" ]; then (cd $* && make uninstall); fi
     79        if [ -d "$*" ]; then (cd $* && $(MAKE) uninstall); fi
    8080
    8181.PHONY: $(PROGRAM) $(LIBS) pantasks_server pantasks_client
  • branches/eam_branches/ipp-20110505/Ohana/src/opihi/cmd.data/init.c

    r31450 r31615  
    137137int zap              PROTO((int, char **));
    138138int zplot            PROTO((int, char **));
     139int zcplot            PROTO((int, char **));
    139140
    140141static Command cmds[] = { 
     
    284285  {1, "zap",          zap,              "assign values to pixel regions"},
    285286  {1, "zplot",        zplot,            "plot x y with size scaled by z"},
     287  {1, "zcplot",       zcplot,           "plot x y with color scaled by z"},
    286288};
    287289
  • branches/eam_branches/ipp-20110505/Ohana/src/opihi/cmd.data/read_vectors.c

    r31598 r31615  
    22
    33FILE *f = (FILE *) NULL;
    4 char filename[1024];
     4char filename[2048];
    55
    66int datafile (int argc, char **argv) {
     
    8484    colstr = argv[2*i+2];
    8585    for (j = 0; j < strlen (colstr); j++) {
    86       if (!isdigit(colstr[j])) {
    87         gprint (GP_ERR, "USAGE: read name N name N ...\n");
    88         free (vec);
    89         free (col);
    90         return (FALSE);   
    91       }
    92     }
    93     col[i] = atof (colstr);
     86      if (isdigit(colstr[j])) {
     87        col[i] = atof (colstr);
     88        continue;
     89      }
     90      // allow 'excel' columns names of the form A-Z, AA-AZ, BA-BZ, .. ZA-ZZ
     91      if (strlen(colstr) >= 3) goto bad_colname;
     92      if (colstr[0] < 'A') goto bad_colname;
     93      if (colstr[0] > 'Z') goto bad_colname;
     94      if (colstr[1] && colstr[1] < 'A') goto bad_colname;
     95      if (colstr[1] && colstr[1] > 'Z') goto bad_colname;
     96
     97      col[i] = colstr[0] - 'A' + 1;
     98      if (colstr[1]) {
     99        col[i] *= 26;
     100        col[i] += colstr[1] - 'A' + 1;
     101      }
     102      continue;
     103
     104    bad_colname:
     105      gprint (GP_ERR, "USAGE: read name N name N ...\n");
     106      free (vec);
     107      free (col);
     108      return (FALSE);   
     109    }
    94110  }
    95111
     
    105121    scan_line (f, buffer);
    106122  }
     123
     124  int Nfield = 0;
     125  int Nline = 0;
    107126
    108127  Nstart = 0;
     
    139158          }
    140159          vec[i][0].elements.Flt[N] = value;
     160          if (status) {
     161              Nfield ++;
     162          }
    141163          if (!status) vec[i][0].elements.Flt[N] = NAN;
    142164        }
    143165        if (status) N++;
    144166      }
     167      Nline ++;
     168      if (c1) {
     169          // fprintf (stderr, "line %d, chars %ld, fields %d\n", Nline, (c1 - c0), Nfield);
     170      }
     171      Nfield = 0;
    145172      c0 = c1 + 1;
    146173      if (N == NELEM) {
  • branches/eam_branches/ipp-20110505/Ohana/src/opihi/cmd.data/tvcolors.c

    r25757 r31615  
    55  int N, kapa;
    66  char *name;
    7   KapaImageData data;
     7  // KapaImageData data;
    88
    99  name = NULL;
     
    1313    remove_argument (N, &argc, argv);
    1414  }
    15   if (!GetImage (&data, &kapa, name)) return (FALSE);
     15  if (!GetGraph (NULL, &kapa, name)) return (FALSE);
    1616  FREE (name);
    1717
  • branches/eam_branches/ipp-20110505/Ohana/src/opihi/cmd.data/zplot.c

    r20936 r31615  
    5858}
    5959
     60int zcplot (int argc, char **argv) {
     61 
     62  int i, kapa;
     63  opihi_flt *out;
     64  double min, range;
     65  Graphdata graphmode;
     66  Vector *xvec, *yvec, *zvec, Zvec;
    6067
     68  if (!style_args (&graphmode, &argc, argv, &kapa)) return (FALSE);
     69
     70  if (argc != 6) {
     71    gprint (GP_ERR, "USAGE: zplot <x> <y> <z> min max\n");
     72    return (FALSE);
     73  }
     74
     75  min = atof(argv[4]);
     76  range = atof(argv[5]) - min;
     77
     78  /* find vectors */
     79  if ((xvec = SelectVector (argv[1], OLDVECTOR, TRUE)) == NULL) return (FALSE);
     80  if ((yvec = SelectVector (argv[2], OLDVECTOR, TRUE)) == NULL) return (FALSE);
     81  if ((zvec = SelectVector (argv[3], OLDVECTOR, TRUE)) == NULL) return (FALSE);
     82  if (xvec[0].Nelements != yvec[0].Nelements) {
     83    gprint (GP_ERR, "vectors %s and %s not the same length\n", argv[1], argv[2]);
     84    return (FALSE);
     85  }
     86  if (xvec[0].Nelements != zvec[0].Nelements) {
     87    gprint (GP_ERR, "vectors %s and %s not the same length\n", argv[1], argv[3]);
     88    return (FALSE);
     89  }
     90  SetVector (&Zvec, OPIHI_FLT, zvec[0].Nelements);
     91  out = Zvec.elements.Flt;
     92 
     93  if (zvec[0].type == OPIHI_FLT) {
     94    opihi_flt *in = zvec[0].elements.Flt;
     95    for (i = 0; i < Zvec.Nelements; i++, in++, out++) {
     96      *out = MIN (1.0, MAX (0.01, (*in - min) / range));
     97    }
     98  } else {
     99    opihi_int *in = zvec[0].elements.Int;
     100    for (i = 0; i < Zvec.Nelements; i++, in++, out++) {
     101      *out = MIN (1.0, MAX (0.01, (*in - min) / range));
     102    }
     103  }
     104
     105  /* point size determined by Zvec */
     106  graphmode.style = 2; /* plot points */
     107  graphmode.color = -1; /* point color determined by Zvec */
     108  graphmode.etype = 0; /* no errorbars */
     109  PlotVectorTriplet (kapa, xvec, yvec, &Zvec, &graphmode);
     110
     111  free (Zvec.elements.Ptr);
     112
     113  return (TRUE);
     114
     115}
     116
     117
Note: See TracChangeset for help on using the changeset viewer.