px = x1 - x2;
norm = y1 * y1 + px * px;
- u = ( y3 * y1 + ( x3 - x2 ) * px ) / norm;
if(norm <= 0){
u = 0;
}else{
+ u = ( y3 * y1 + ( x3 - x2 ) * px ) / norm;
if( u > 1){
u = 1;
}else if (u < 0){
center.longitude = boundary->circle.center->longitude;
location_get_distance(¢er, position, &distance);
- if (distance < boundary->circle.radius + tolerance) {
+ if (distance < boundary->circle.radius + tolerance && distance > boundary->circle.radius - tolerance) {
return TRUE;
}
break;
px = x1 - x2;
norm = y1 * y1 + px * px;
- u = ( y3 * y1 + ( x3 - x2 ) * px ) / norm;
if(norm <= 0){
u = 0;
}else{
+ u = ( y3 * y1 + ( x3 - x2 ) * px ) / norm;
if( u > 1){
u = 1;
}else if (u < 0){