public int HitTest(double x, double y)
{
double dx, dy;
double v, min = double.MaxValue;
int r = 0;
dx = x - CurrentBezier.Point1.X;
dy = y - CurrentBezier.Point1.Y;
v = dx * dx + dy * dy;
if (v <= radius_s && v <= min)
{
min = v;
r = 1;
}
dx = x - CurrentBezier.Point2.X;
dy = y - CurrentBezier.Point2.Y;
v = dx * dx + dy * dy;
if (v <= radius_s && v <= min)
{
min = v;
r = 2;
}
dx = x - CurrentBezier.Point3.X;
dy = y - CurrentBezier.Point3.Y;
v = dx * dx + dy * dy;
if (v <= radius_s && v <= min)
{
min = v;
r = 3;
}
dx = x - CurrentBezier.Point4.X;
dy = y - CurrentBezier.Point4.Y;
v = dx * dx + dy * dy;
if (v <= radius_s && v <= min)
{
min = v;
r = 4;
}
return r;
}