X-Git-Url: http://git.droids-corp.org/?p=aversive.git;a=blobdiff_plain;f=projects%2Fmicrob2010%2Ftests%2Ftourel_beacon%2Fmain.c;fp=projects%2Fmicrob2010%2Ftests%2Ftourel_beacon%2Fmain.c;h=90fa109cbfba3083376159b601d2098268d9d5f1;hp=8c14f412744175280b5425f990c07fb316f1eea9;hb=657979175089eef7f2de8918b6bff47dbd08f2e2;hpb=5787cfdb9987e3e5cf650e6ad1586663b191af20 diff --git a/projects/microb2010/tests/tourel_beacon/main.c b/projects/microb2010/tests/tourel_beacon/main.c index 8c14f41..90fa109 100644 --- a/projects/microb2010/tests/tourel_beacon/main.c +++ b/projects/microb2010/tests/tourel_beacon/main.c @@ -529,14 +529,17 @@ int main(int argc, char **argv) } /* da_error algo errpercent errdeg */ - if (argc == 5 && strcmp(mode, "da_error") == 0) { + if ((argc == 5 && strcmp(mode, "da_error") == 0) || + (argc == 5 && strcmp(mode, "da_error_mm") == 0)) { int x, y, algo; double err_val_deg; double err_val_percent; + double err_val_mm; double err, d0, d1, a; algo = atoi(argv[2]); err_val_percent = atof(argv[3]); /* how many % of error for dist */ + err_val_mm = atof(argv[3]); /* how many mm of error for dist */ err_val_deg = atof(argv[4]); /* how many degrees of error */ for (x=0; x<300; x++) { @@ -547,9 +550,15 @@ int main(int argc, char **argv) posxy_to_abs_angles(pos, &a0, &a1, &a2, 0, err_val_deg); d0 = pt_norm(&pos, &beacon0); - d0 += d0 * err_val_percent / 100.; d1 = pt_norm(&pos, &beacon1); - d1 += d1 * err_val_percent / 100.; + if (strcmp(mode, "da_error") == 0) { + d0 += d0 * err_val_percent / 100.; + d1 += d1 * err_val_percent / 100.; + } + else { + d0 += err_val_mm; + d1 += err_val_mm; + } if (ad_to_posxya(&tmp, &a, algo, &beacon0, &beacon1, a0, a1, d0, d1) < 0)