makebigf.c 851 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. /* makebigf.c */
  2. #include "ransurf.h"
  3. #include "local_proto.h"
  4. void MakeBigF(void)
  5. {
  6. int R, C;
  7. double Dist, RDist, CDist;
  8. G_debug(2, "MakeBigF");
  9. for (R = 0; R < BigF.NumR; R++) {
  10. BigF.LowBF[R] = BigF.HihBF[R] = -1;
  11. RDist = (R - BigF.RowPlus) * NS;
  12. RDist *= RDist;
  13. for (C = 0; C < BigF.NumC; C++) {
  14. G_debug(3, "(R):%d", R);
  15. G_debug(3, "(C):%d", C);
  16. CDist = (C - BigF.ColPlus) * EW;
  17. CDist *= CDist;
  18. Dist = sqrt(CDist + RDist);
  19. if (Dist >= Filter.MaxDist) {
  20. BigF.F[R][C] = 0.0;
  21. if (BigF.HihBF[R] == -1)
  22. BigF.LowBF[R] = C;
  23. }
  24. else {
  25. BigF.F[R][C] = DD(Dist);
  26. BigF.HihBF[R] = C;
  27. }
  28. G_debug(3, "(BigF.F[R][C]):%.12lf", BigF.F[R][C]);
  29. }
  30. BigF.LowBF[R] -= BigF.ColPlus;
  31. BigF.HihBF[R] -= BigF.ColPlus;
  32. }
  33. }