IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Sep 30, 2012, 8:03:14 AM (14 years ago)
Author:
eugene
Message:

add "where" option to plot, zplot, zcplot

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/eam_branches/ipp-20120905/Ohana/src/opihi/lib.data/PlotVectors.c

    r20936 r34490  
    11# include "display.h"
    22
    3 int PlotVectorSingle (int kapa, Vector *vec, char *mode) {
    4 
    5   int i, Npts;
     3int PlotVectorSingle (int kapa, Vector *vec, char *mask, char *mode) {
     4
     5  int i, Npts, Nout;
    66  float *temp;
    77
     
    99  ALLOCATE (temp, float, Npts);
    1010
     11  Nout = 0;
    1112  if (vec->type == OPIHI_FLT) {
    1213    opihi_flt *value = vec->elements.Flt;
    1314    for (i = 0; i < Npts; i++) {
    14       temp[i] = value[i];
     15      if (mask && mask[i]) continue;
     16      temp[Nout] = value[i];
     17      Nout ++;
    1518    }
    1619  } else {
    1720    opihi_int *value = vec->elements.Int;
    1821    for (i = 0; i < Npts; i++) {
    19       temp[i] = value[i];
    20     }
    21   }
    22   KapaPlotVector (kapa, Npts, temp, mode);
    23 
    24   free (temp);
    25 
    26   return (TRUE);
    27 }
    28 
    29 int PlotVectorPair (int kapa, Vector *xVec, Vector *yVec, Graphdata *graphmode) {
    30 
    31   int i, Npts;
     22      if (mask && mask[i]) continue;
     23      temp[Nout] = value[i];
     24      Nout ++;
     25    }
     26  }
     27  KapaPlotVector (kapa, Nout, temp, mode);
     28
     29  free (temp);
     30
     31  return (TRUE);
     32}
     33
     34int PlotVectorPair (int kapa, Vector *xVec, Vector *yVec, char *mask, Graphdata *graphmode) {
     35
     36  int i, Npts, Nout;
    3237  float *temp;
    3338
     
    3742  ALLOCATE (temp, float, Npts);
    3843
    39   KapaPrepPlot (kapa, Npts, graphmode);
    40 
     44  Nout = 0;
    4145  if (xVec->type == OPIHI_FLT) {
    4246    opihi_flt *value = xVec->elements.Flt;
    4347    for (i = 0; i < Npts; i++) {
    44       temp[i] = value[i];
     48      if (mask && mask[i]) continue;
     49      temp[Nout] = value[i];
     50      Nout ++;
    4551    }
    4652  } else {
    4753    opihi_int *value = xVec->elements.Int;
    4854    for (i = 0; i < Npts; i++) {
    49       temp[i] = value[i];
    50     }
    51   }
    52   KapaPlotVector (kapa, Npts, temp, "x");
    53 
     55      if (mask && mask[i]) continue;
     56      temp[Nout] = value[i];
     57      Nout ++;
     58    }
     59  }
     60  KapaPrepPlot (kapa, Nout, graphmode);
     61  KapaPlotVector (kapa, Nout, temp, "x");
     62
     63  Nout = 0;
    5464  if (yVec->type == OPIHI_FLT) {
    5565    opihi_flt *value = yVec->elements.Flt;
    5666    for (i = 0; i < Npts; i++) {
    57       temp[i] = value[i];
     67      if (mask && mask[i]) continue;
     68      temp[Nout] = value[i];
     69      Nout ++;
    5870    }
    5971  } else {
    6072    opihi_int *value = yVec->elements.Int;
    6173    for (i = 0; i < Npts; i++) {
    62       temp[i] = value[i];
    63     }
    64   }
    65   KapaPlotVector (kapa, Npts, temp, "y");
    66 
    67   free (temp);
    68 
    69   return (TRUE);
    70 }
    71 
    72 int PlotVectorTriplet (int kapa, Vector *xVec, Vector *yVec, Vector *zVec, Graphdata *graphmode) {
    73 
    74   int i, Npts;
     74      if (mask && mask[i]) continue;
     75      temp[Nout] = value[i];
     76      Nout ++;
     77    }
     78  }
     79  KapaPlotVector (kapa, Nout, temp, "y");
     80
     81  free (temp);
     82
     83  return (TRUE);
     84}
     85
     86int PlotVectorTriplet (int kapa, Vector *xVec, Vector *yVec, Vector *zVec, char *mask, Graphdata *graphmode) {
     87
     88  int i, Npts, Nout;
    7589  float *temp;
    7690
     
    8195  ALLOCATE (temp, float, Npts);
    8296
    83   KapaPrepPlot (kapa, Npts, graphmode);
    84 
     97  Nout = 0;
    8598  if (xVec->type == OPIHI_FLT) {
    8699    opihi_flt *value = xVec->elements.Flt;
    87100    for (i = 0; i < Npts; i++) {
    88       temp[i] = value[i];
     101      if (mask && mask[i]) continue;
     102      temp[Nout] = value[i];
     103      Nout ++;
    89104    }
    90105  } else {
    91106    opihi_int *value = xVec->elements.Int;
    92107    for (i = 0; i < Npts; i++) {
    93       temp[i] = value[i];
    94     }
    95   }
    96   KapaPlotVector (kapa, Npts, temp, "x");
    97 
     108      if (mask && mask[i]) continue;
     109      temp[Nout] = value[i];
     110      Nout ++;
     111    }
     112  }
     113  KapaPrepPlot (kapa, Nout, graphmode);
     114  KapaPlotVector (kapa, Nout, temp, "x");
     115
     116  Nout = 0;
    98117  if (yVec->type == OPIHI_FLT) {
    99118    opihi_flt *value = yVec->elements.Flt;
    100119    for (i = 0; i < Npts; i++) {
    101       temp[i] = value[i];
     120      if (mask && mask[i]) continue;
     121      temp[Nout] = value[i];
     122      Nout ++;
    102123    }
    103124  } else {
    104125    opihi_int *value = yVec->elements.Int;
    105126    for (i = 0; i < Npts; i++) {
    106       temp[i] = value[i];
    107     }
    108   }
    109   KapaPlotVector (kapa, Npts, temp, "y");
    110 
     127      if (mask && mask[i]) continue;
     128      temp[Nout] = value[i];
     129      Nout ++;
     130    }
     131  }
     132  KapaPlotVector (kapa, Nout, temp, "y");
     133
     134  Nout = 0;
    111135  if (zVec->type == OPIHI_FLT) {
    112136    opihi_flt *value = zVec->elements.Flt;
    113137    for (i = 0; i < Npts; i++) {
    114       temp[i] = value[i];
     138      if (mask && mask[i]) continue;
     139      temp[Nout] = value[i];
     140      Nout ++;
    115141    }
    116142  } else {
    117143    opihi_int *value = zVec->elements.Int;
    118144    for (i = 0; i < Npts; i++) {
    119       temp[i] = value[i];
    120     }
    121   }
    122   KapaPlotVector (kapa, Npts, temp, "z");
     145      if (mask && mask[i]) continue;
     146      temp[Nout] = value[i];
     147      Nout ++;
     148    }
     149  }
     150  KapaPlotVector (kapa, Nout, temp, "z");
    123151
    124152  free (temp);
Note: See TracChangeset for help on using the changeset viewer.