10 zweite Loesung ist achsensymmetrisch zur Verbindungslinie
11 zwischen Freund und einem selbst, also nur dX und dY vertauscht.
14 void seek_target (float X1, float Y1, float X2, float Y2, int E1, int E2) {
16 /* (X1,Y1) eigene Koordinaten */
17 /* (X2,Y2) freundliche Koordinaten */
18 /* E1 eigene Signalstaerke vom target */
19 /* E2 Signalstaerke des Targets vom Freund */
21 double zaehler, nenner, zusatz;
23 printf("Debug: %f %f %f %f %d %d \n", X1, Y1, X2, Y2, E1, E2);
25 zaehler=MAXSIGNAL*(1./E2-1./E1)-(X1-X2)*(X1-X2)-(Y1-Y2)*(Y1-Y2);
26 nenner=2*sqrt((X1-X2)*(X1-X2)+(Y1-Y2)*(Y1-Y2));
27 zusatz=sqrt((double)MAXSIGNAL/E1);
29 delta1=zusatz*sin(acos(zaehler/(nenner*zusatz)));
30 delta2=zaehler/nenner;
47 seek_target (a, b, c, d, e, f);
48 /* wir sind im ursprung, kumpel 10 einheiten ueber uns! */
50 printf("Debug: seek_target ausgefuehrt!\n");
52 printf("1. Moeglichkeit: (%f;%f)\n", delta1, delta2);
53 printf("2. Moeglichkeit: (%f;%f)\n", delta2, delta1);