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