Changeset 38062 for trunk/Ohana/src/opihi/cmd.data/zplot.c
Legend:
- Unmodified
- Added
- Removed
-
trunk
- Property svn:mergeinfo changed
-
trunk/Ohana
- Property svn:mergeinfo deleted
-
trunk/Ohana/src/opihi/cmd.data/zplot.c
r34613 r38062 4 4 5 5 char *outname = NULL; 6 int i, kapa, valid, size;6 int i, N, kapa, valid, size; 7 7 opihi_flt *out; 8 8 double min, range; 9 9 Graphdata graphmode; 10 Vector *xvec, *yvec, *zvec, Zvec;10 Vector *xvec, *yvec, *zvec, *dxmvec, *dxpvec, *dymvec, *dypvec, Zvec; 11 11 12 12 if (!style_args (&graphmode, &argc, argv, &kapa)) return (FALSE); 13 14 /* decide on error bars */ 15 dxmvec = dxpvec = dymvec = dypvec = NULL; 16 if ((N = get_argument (argc, argv, "-dx"))) { 17 remove_argument (N, &argc, argv); 18 if ((dxmvec = SelectVector (argv[N], OLDVECTOR, TRUE)) == NULL) return (FALSE); 19 remove_argument (N, &argc, argv); 20 } 21 if ((N = get_argument (argc, argv, "+dx"))) { 22 remove_argument (N, &argc, argv); 23 if ((dxpvec = SelectVector (argv[N], OLDVECTOR, TRUE)) == NULL) return (FALSE); 24 remove_argument (N, &argc, argv); 25 } 26 if ((N = get_argument (argc, argv, "-dy"))) { 27 remove_argument (N, &argc, argv); 28 if ((dymvec = SelectVector (argv[N], OLDVECTOR, TRUE)) == NULL) return (FALSE); 29 remove_argument (N, &argc, argv); 30 } 31 if ((N = get_argument (argc, argv, "+dy"))) { 32 remove_argument (N, &argc, argv); 33 if ((dypvec = SelectVector (argv[N], OLDVECTOR, TRUE)) == NULL) return (FALSE); 34 remove_argument (N, &argc, argv); 35 } 13 36 14 37 valid = (argc == 6); … … 40 63 } 41 64 65 /* set errorbar mode (these are NOT sticky) */ 66 graphmode.etype = 0; 67 if ((dymvec != NULL) && (dypvec == NULL)) dypvec = dymvec; 68 if ((dypvec != NULL) && (dymvec == NULL)) dymvec = dypvec; 69 if ((dypvec != NULL) || (dymvec != NULL)) graphmode.etype |= 0x01; 70 if ((dxmvec != NULL) && (dxpvec == NULL)) dxpvec = dxmvec; 71 if ((dxpvec != NULL) && (dxmvec == NULL)) dxmvec = dxpvec; 72 if ((dxpvec != NULL) || (dxmvec != NULL)) graphmode.etype |= 0x02; 73 42 74 /* find vectors */ 43 75 if ((xvec = SelectVector (argv[1], OLDVECTOR, TRUE)) == NULL) return (FALSE); … … 56 88 return (FALSE); 57 89 } 90 if (dypvec && (dypvec->Nelements != xvec->Nelements)) goto mismatch; 91 if (dymvec && (dymvec->Nelements != xvec->Nelements)) goto mismatch; 92 if (dxpvec && (dxpvec->Nelements != xvec->Nelements)) goto mismatch; 93 if (dxmvec && (dxmvec->Nelements != xvec->Nelements)) goto mismatch; 94 58 95 SetVector (&Zvec, OPIHI_FLT, zvec[0].Nelements); 59 96 out = Zvec.elements.Flt; 60 97 98 // note actual size is 3.3x plot -sz sizes. (DrawObjects.c:399) 61 99 if (zvec[0].type == OPIHI_FLT) { 62 100 opihi_flt *in = zvec[0].elements.Flt; … … 81 119 graphmode.style = 2; /* plot points */ 82 120 graphmode.size = -1; /* point size determined by Zvec */ 83 graphmode.etype = 0; /* no errorbars */84 121 PlotVectorTriplet (kapa, xvec, yvec, &Zvec, mask, &graphmode); 122 if (graphmode.etype & 0x01) { 123 PlotVectorSingle (kapa, dymvec, mask, "dym"); 124 PlotVectorSingle (kapa, dypvec, mask, "dyp"); 125 } 126 if (graphmode.etype & 0x02) { 127 PlotVectorSingle (kapa, dxmvec, mask, "dxm"); 128 PlotVectorSingle (kapa, dxpvec, mask, "dxp"); 129 } 85 130 86 131 free (Zvec.elements.Ptr); 87 132 if (mask) free (mask); 88 DeleteNamedVector (outname); 133 134 if (outname) { 135 DeleteNamedVector (outname); 136 free (outname); 137 } 89 138 90 139 return (TRUE); 91 140 141 mismatch: 142 gprint (GP_ERR, "error and data vector lengths are mismatched\n"); 143 if (outname) { 144 DeleteNamedVector (outname); 145 free (outname); 146 } 147 return (FALSE); 92 148 } 93 149
Note:
See TracChangeset
for help on using the changeset viewer.
