2014-09-05 2 views
1

У меня есть код, имитирующий движение руки в руке. поэтому через каждую единицу времени я определяю положение руки и вычисляю простое расстояние между положением руки и мишенью. плюс, когда рука достигает в пределах допустимого круга с некоторым значением радиуса k, можно сказать, что рука почти достигла цели. Моя проблема заключается в том, как проверить, достигли ли руки в круге допуска
код очень простойКруг толерантности с радиусом

tolerance_radius = 0.3 
d = norm(cur_pos[0] - pos_tar[0]) #distance between arm and target array 

это то, что я попытался

if abs(d) <tolerance_radius : 
    #almost touched 
else: 
    #calculate new position 

есть ли другой способ для этого конкретного случая, который может создать весь круг допуска на самом деле, а затем определить, является ли достигнута рука в круге или нет?

+0

Мой плохо! Отредактировано. – Hima

ответ

1

Если расстояние от руки до цели меньше tolerance_radius, то правда, еще нет:

if math.hypot(target.x - arm.x, target.y - arm.y) < tolerance_radius: 
    return True 
else 
    return False 
+0

Что-то полезное! – Hima

Смежные вопросы