Changeset 38738
- Timestamp:
- Sep 16, 2015, 6:22:00 AM (11 years ago)
- Location:
- branches/eam_branches/ipp-20150625/Ohana/src
- Files:
-
- 7 edited
-
kapa2/include/structures.h (modified) (1 diff)
-
kapa2/src/DrawFrame.c (modified) (9 diffs)
-
kapa2/src/Graphs.c (modified) (2 diffs)
-
kapa2/src/LoadFrame.c (modified) (1 diff)
-
kapa2/src/SetGraphData.c (modified) (1 diff)
-
libdvo/include/get_graphdata.h (modified) (1 diff)
-
opihi/cmd.data/box.c (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/eam_branches/ipp-20150625/Ohana/src/kapa2/include/structures.h
r38465 r38738 143 143 double fx, dfx, fy, dfy; /* axis location on graphic */ 144 144 double lweight; 145 double fLabelRange; 146 double fMinor; 145 147 int color; 146 148 } Axis; -
branches/eam_branches/ipp-20150625/Ohana/src/kapa2/src/DrawFrame.c
r38706 r38738 159 159 double lrange, factor, mantis, fmantis, power; 160 160 161 *range = (axis[0].max - axis[0].min);161 *range = axis->fLabelRange*(axis[0].max - axis[0].min); 162 162 if (fabs(*range) < MIN_RANGE) { 163 163 *range = (*range < 0) ? -MIN_RANGE : +MIN_RANGE; … … 183 183 if ((fmantis >= 1.0) && (fmantis < 1.999)) { 184 184 *major = 0.5 * power; 185 *minor = 0.1 * power;186 185 *nsignif = factor - 1; 187 186 if (axis[0].areticks == 1) { 188 187 *major = 0.25 * power; 189 *minor = 0.05 * power;190 188 *nsignif = factor - 2; 191 189 } … … 193 191 if ((fmantis >= 1.999) && (fmantis < 3.999)) { 194 192 *major = 1.0 * power; 195 *minor = 0.2 * power;196 193 *nsignif = factor; 197 194 if (axis[0].areticks == 1) { 198 195 *major = 0.5 * power; 199 *minor = 0.1 * power;200 196 *nsignif = factor - 1; 201 197 } … … 203 199 if ((fmantis >= 3.999) && (fmantis < 5.999)) { 204 200 *major = 1.0 * power; 205 *minor = 0.5 * power;206 201 *nsignif = factor; 207 202 if (axis[0].areticks == 1) { 208 203 *major = 1.0 * power; 209 *minor = 0.2 * power;210 204 *nsignif = factor; 211 205 } … … 213 207 if ((fmantis >= 5.999) && (fmantis < 7.999)) { 214 208 *major = 2.0 * power; 215 *minor = 0.5 * power;216 209 *nsignif = factor; 217 210 if (axis[0].areticks == 1) { 218 211 *major = 1.0 * power; 219 *minor = 0.5 * power;220 212 *nsignif = factor; 221 213 } … … 223 215 if ((fmantis >= 7.999) && (fmantis < 10.000)) { 224 216 *major = 2.5 * power; 225 *minor = 0.5 * power;226 217 *nsignif = factor - 1; 227 218 if (axis[0].areticks == 1) { 228 219 *major = 2.0 * power; 229 *minor = 0.5 * power;230 220 *nsignif = factor; 231 221 } 232 222 } 223 *minor = *major / axis->fMinor; 233 224 } 234 225 … … 237 228 TickMarkData *ticks; 238 229 double range, major, minor, first, value; 239 int i, NTICKS, done, ifirst,nsignif;230 int i, NTICKS, done, nsignif; 240 231 241 232 *nticks = 0; … … 254 245 ALLOCATE (ticks, TickMarkData, NTICKS); 255 246 256 // value of the tick mark 257 if (axis->min > 0.0) { 258 double minValue = axis->min / minor; 259 if (minValue - (int)minValue < +0.1) { 260 ifirst = (int) minValue; 261 } else { 262 ifirst = (int) (minValue + 1); 263 } 264 } else { 265 double minValue = axis->min / minor; 266 if (minValue - (int)minValue > -0.1) { 267 ifirst = (int) minValue; 268 } else { 269 ifirst = (int) (minValue - 1); 270 } 271 } 272 // ifirst = (axis->min < 0.0) ? (axis->min/minor - 0.01) : (axis->min/minor + 0.01); 247 // value of the first tick mark (near axis->min) 248 double minValue = axis->min / minor; 249 int ifirst = (int) minValue; 250 251 if ((axis->min > 0.0) && (minValue - ifirst > +0.1)) { 252 ifirst ++; 253 } 254 if ((axis->min < 0.0) && (minValue - ifirst < -0.1)) { 255 ifirst --; 256 } 273 257 first = minor*ifirst; 274 258 275 // allow undershoot by 1 pixel 276 // double overshoot = (axis->min - first) * dPixels; 277 // if (overshoot > 0.5) { 278 // if (range > 0) { 279 // first += minor; 280 // } else { 281 // first -= minor; 282 // } 283 // } 284 285 // XXX need to fix first and last value for printing label: currently prints first label 286 // too early & fails to do last label if too close 259 // only write the labels for the inner fRange of the axies 260 double minLabelValue = 0.5*(1.0 - 1.001*axis->fLabelRange)*(axis->max - axis->min) + axis->min; 261 double maxLabelValue = 0.5*(1.0 + 1.001*axis->fLabelRange)*(axis->max - axis->min) + axis->min; 287 262 288 263 // loop to find the ticks … … 294 269 ticks[i].IsMajor |= (fabs((int)((value + 0.5*minor)/major) - (value/major)) < 0.5*(minor/major)); 295 270 ticks[i].IsMajor |= (fabs((int)((value - 0.5*minor)/major) - (value/major)) < 0.5*(minor/major)); 296 ticks[i].IsLabel = (ticks[i].IsMajor && axis->islabel); 271 int inLabelRange = (range > 0) ? (value >= minLabelValue) && (value <= maxLabelValue) : (value <= minLabelValue) && (value >= maxLabelValue); 272 ticks[i].IsLabel = inLabelRange && ticks[i].IsMajor && axis->islabel; 297 273 ticks[i].value = value; 298 274 ticks[i].nsignif = nsignif; -
branches/eam_branches/ipp-20150625/Ohana/src/kapa2/src/Graphs.c
r37807 r38738 23 23 graph[0].axis[i].labelPad = NAN; 24 24 graph[0].axis[i].pad = NAN; 25 graph[0].axis[i].fLabelRange = 1.0; 26 graph[0].axis[i].fMinor = 5.0; 25 27 } 26 28 graph[0].data.ticktextPad = NAN; … … 35 37 graph[0].data.padYm = NAN; 36 38 graph[0].data.padYp = NAN; 39 40 graph[0].data.fLabelRangeXm = 1.0; 41 graph[0].data.fLabelRangeXp = 1.0; 42 graph[0].data.fLabelRangeYm = 1.0; 43 graph[0].data.fLabelRangeYp = 1.0; 44 45 graph[0].data.fMinorXm = 5.0; 46 graph[0].data.fMinorXp = 5.0; 47 graph[0].data.fMinorYm = 5.0; 48 graph[0].data.fMinorYp = 5.0; 37 49 38 50 for (i = 0; i < 8; i++) { -
branches/eam_branches/ipp-20150625/Ohana/src/kapa2/src/LoadFrame.c
r29539 r38738 36 36 graph[0].axis[2].labelPad = graph[0].data.labelPadXp; 37 37 graph[0].axis[3].labelPad = graph[0].data.labelPadYp; 38 39 graph[0].axis[0].fLabelRange = graph[0].data.fLabelRangeXm; 40 graph[0].axis[1].fLabelRange = graph[0].data.fLabelRangeYm; 41 graph[0].axis[2].fLabelRange = graph[0].data.fLabelRangeXp; 42 graph[0].axis[3].fLabelRange = graph[0].data.fLabelRangeYp; 43 44 graph[0].axis[0].fMinor = graph[0].data.fMinorXm; 45 graph[0].axis[1].fMinor = graph[0].data.fMinorYm; 46 graph[0].axis[2].fMinor = graph[0].data.fMinorXp; 47 graph[0].axis[3].fMinor = graph[0].data.fMinorYp; 38 48 39 49 for (i = 0; i < 4; i++) { -
branches/eam_branches/ipp-20150625/Ohana/src/kapa2/src/SetGraphData.c
r27790 r38738 27 27 graph[0].axis[2].labelPad = graph[0].data.labelPadXp; 28 28 graph[0].axis[3].labelPad = graph[0].data.labelPadYp; 29 30 graph[0].axis[0].fLabelRange = graph[0].data.fLabelRangeXm; 31 graph[0].axis[1].fLabelRange = graph[0].data.fLabelRangeYm; 32 graph[0].axis[2].fLabelRange = graph[0].data.fLabelRangeXp; 33 graph[0].axis[3].fLabelRange = graph[0].data.fLabelRangeYp; 34 35 graph[0].axis[0].fMinor = graph[0].data.fMinorXm; 36 graph[0].axis[1].fMinor = graph[0].data.fMinorYm; 37 graph[0].axis[2].fMinor = graph[0].data.fMinorXp; 38 graph[0].axis[3].fMinor = graph[0].data.fMinorYp; 29 39 30 40 graph[0].axis[0].pad = graph[0].data.padXm; -
branches/eam_branches/ipp-20150625/Ohana/src/libdvo/include/get_graphdata.h
r31647 r38738 11 11 double labelPadXm, labelPadYm, labelPadXp, labelPadYp; 12 12 double padXm, padXp, padYm, padYp; 13 double fLabelRangeXm, fLabelRangeXp, fLabelRangeYm, fLabelRangeYp; 14 double fMinorXm, fMinorXp, fMinorYm, fMinorYp; 13 15 Coords coords; 14 16 int flipeast, flipnorth; -
branches/eam_branches/ipp-20150625/Ohana/src/opihi/cmd.data/box.c
r34749 r38738 142 142 } 143 143 144 if ((N = get_argument (argc, argv, "-fminor"))) { 145 remove_argument (N, &argc, argv); 146 graphmode.fMinorXm = atof(argv[N]); 147 graphmode.fMinorXp = atof(argv[N]); 148 graphmode.fMinorYm = atof(argv[N]); 149 graphmode.fMinorYp = atof(argv[N]); 150 remove_argument (N, &argc, argv); 151 } 152 if ((N = get_argument (argc, argv, "-xfminor"))) { 153 remove_argument (N, &argc, argv); 154 graphmode.fMinorXm = atof(argv[N]); 155 remove_argument (N, &argc, argv); 156 } 157 if ((N = get_argument (argc, argv, "+xfminor"))) { 158 remove_argument (N, &argc, argv); 159 graphmode.fMinorXp = atof(argv[N]); 160 remove_argument (N, &argc, argv); 161 } 162 if ((N = get_argument (argc, argv, "-yfminor"))) { 163 remove_argument (N, &argc, argv); 164 graphmode.fMinorYm = atof(argv[N]); 165 remove_argument (N, &argc, argv); 166 } 167 if ((N = get_argument (argc, argv, "+yfminor"))) { 168 remove_argument (N, &argc, argv); 169 graphmode.fMinorYp = atof(argv[N]); 170 remove_argument (N, &argc, argv); 171 } 172 173 if ((N = get_argument (argc, argv, "-flabel"))) { 174 remove_argument (N, &argc, argv); 175 graphmode.fLabelRangeXm = atof(argv[N]); 176 graphmode.fLabelRangeXp = atof(argv[N]); 177 graphmode.fLabelRangeYm = atof(argv[N]); 178 graphmode.fLabelRangeYp = atof(argv[N]); 179 remove_argument (N, &argc, argv); 180 } 181 if ((N = get_argument (argc, argv, "-xflabel"))) { 182 remove_argument (N, &argc, argv); 183 graphmode.fLabelRangeXm = atof(argv[N]); 184 remove_argument (N, &argc, argv); 185 } 186 if ((N = get_argument (argc, argv, "+xflabel"))) { 187 remove_argument (N, &argc, argv); 188 graphmode.fLabelRangeXp = atof(argv[N]); 189 remove_argument (N, &argc, argv); 190 } 191 if ((N = get_argument (argc, argv, "-yflabel"))) { 192 remove_argument (N, &argc, argv); 193 graphmode.fLabelRangeYm = atof(argv[N]); 194 remove_argument (N, &argc, argv); 195 } 196 if ((N = get_argument (argc, argv, "+yflabel"))) { 197 remove_argument (N, &argc, argv); 198 graphmode.fLabelRangeYp = atof(argv[N]); 199 remove_argument (N, &argc, argv); 200 } 201 144 202 if (argc != 1) goto usage; 145 203 … … 174 232 gprint (GP_ERR, " alternatively, set each axis independently with:\n"); 175 233 gprint (GP_ERR, " -xpad, -ypad, +xpad, +ypad\n"); 234 gprint (GP_ERR, " \n"); 235 gprint (GP_ERR, " -fminor : set the number of minor ticks per major (all axes)\n"); 236 gprint (GP_ERR, " alternatively, set each axis independently with:\n"); 237 gprint (GP_ERR, " -xfminor, -yfminor, +xfminor, +yfminor\n"); 238 gprint (GP_ERR, " \n"); 239 gprint (GP_ERR, " -flabel : set the fraction of axis over which major ticks have labels (all axes)\n"); 240 gprint (GP_ERR, " alternatively, set each axis independently with:\n"); 241 gprint (GP_ERR, " -xflabel, -yflabel, +xflabel, +yflabel\n"); 176 242 177 243 return (FALSE);
Note:
See TracChangeset
for help on using the changeset viewer.
