14 int crown(
double x1,
double x2,
double y1,
double y2) {
15 double d1=fabs(y1-y2)/2600+fabs(x1-x2)/1500;
16 double d2=fabs(y1-y2)/1300;
17 double max=(d1>d2 ? d1 : d2);
18 int ret=(int)(floor(max));
19 if (max-ret>0.2) ret++;
31 for (
int i=0;i<
ROW;i++) {
33 for (
int j=0;j<
ROW;j++) {
39 for (
int i=0;i<
nstat;i++) {
41 for (
int j=0;j<
nstat;j++) {
42 neighbour[array[i].Id*ROW+array[j].Id]=
crown(array[i].Easting,array[j].Easting,array[i].Northing,array[j].Northing);
43 distcrown[array[i].Id*ROW+array[j].Id]=
crown(array[i].Easting,array[j].Easting,array[i].Northing,array[j].Northing);
int crown(double x1, double x2, double y1, double y2)