rem: if(ppt->p[0].y > TWORADIUS) {
add: if(ppt->p[0].y >= TWORADIUS) {
context: void create_aa_points(MAP3D_POINT *ppt, double x, double y){	double deltax=0,deltay=0,inv_deltax,inv_deltay;	COORD nextx,nexty;	COUNT i;	double d1,d2,d3,d4,m[4];	// get  the integer value of this point	ppt->p[0].x=(COORD)(0.5+x);	ppt->p[0].y=(COORD)(0.5+y);	if(ppt->p[0].x > TWORADIUS) {		ppt->p[0].x=TWORADIUS;	} else if(ppt->p[0].x != 0) {		deltax=x-ppt->p[0].x;	}	if(ppt->p[0].y > TWORADIUS) {		ppt->p[0].y=TWORADIUS;	} else if(ppt->p[0].y != 0) {		deltay=y-ppt->p[0].y;	}	//if this point doesn't need modificaton, set m[0]=0	if(deltax==0 && deltay==0) {		ppt->m[0]=0;	} else {		//get the neighbboring points surrounding the 'ideal' poinnt		if(deltax!=0) {			nextx=ppt->p[0].x+((deltax >0) ?1 : -1);		} else {			nextx=ppt->p[0].x;		}		if(deltay!=0) {			nexty=ppt->p[0].y+((deltay >0) ?1 : -1);		} else {			nexty=ppt->p[0].y;		}		//(x1,y)		ppt->p[1].x=nextx;		ppt->p[1].y=ppt->p[0].y;		//(x,y1)		ppt->p[2].x=ppt->p[0].x;		ppt->p[2].y=nexty;		//(x1y1)		ppt->p[3].x=nextx;		ppt->p[3].y=nexty;		//the square  1x1, so opposite poinnts are at 1-delta		inv_deltax=1.0-fabs(deltax);		inv_deltax*=inv_deltax;		inv_deltay=1.0-fabs(deltay);		inv_deltay*=inv_deltay;		deltax*=deltax;		deltay*=deltay;		//d1-d4 contain the distances from the poinnts to the ideal point		d1=sqrt(deltax+deltay);		d2=sqrt(inv_deltax+deltay);		d3=sqrt(deltax+inv_deltay);		d4=sqrt(inv_deltax+inv_deltay);		//compute the weights.  the sum(ppt->m[])=65536		m[0]=1/(1+d1*(1/d2+1/d3+1/d4));		m[1]=m[0]*d1/d2;		m[2]=m[0]*d1/d3;		m[3]=m[0]*d1/d4;		for(i=0;i<4;i++)			ppt->m[i]=(DWORD)((1<<16)*m[i]+0.5);	}}