another fix find_closest_arc() if arc was saved with negative "b" angle

This commit is contained in:
stefan schippers 2025-10-30 01:53:00 +01:00
parent 1c1edfe159
commit 442436a8aa
1 changed files with 1 additions and 3 deletions

View File

@ -351,8 +351,6 @@ static void find_closest_arc(double mx, double my, int override_lock)
dist *= dist; /* square d */
angle = fmod(atan2(xctx->arc[c][i].y-my, mx-xctx->arc[c][i].x)*180./XSCH_PI, 360.);
if(angle<0.) angle +=360.;
angle1 = xctx->arc[c][i].a;
angle2 = fmod(xctx->arc[c][i].a + xctx->arc[c][i].b, 360.);
if(xctx->arc[c][i].b < 0) {
angle1 = fmod(xctx->arc[c][i].a + xctx->arc[c][i].b, 360.);
if(angle1 < 0.) angle1 += 360.;
@ -366,7 +364,7 @@ static void find_closest_arc(double mx, double my, int override_lock)
}
match=0;
if(dist < d) {
if(xctx->arc[c][i].b==360.) match=1;
if(fabs(xctx->arc[c][i].b)==360.) match=1;
if(angle2<angle1) {
if(angle >= angle1 || angle<= angle2) {
match=1;