Я пытаюсь оценить, содержится ли круг в другой форме (в этом простом примере я буду использовать квадрат).
import matplotlib.pyplot as plt
from matplotlib.patches import Circle
from matplotlib import path
import matplotlib.patches as patches
c = Circle((0, 0), radius=3)
path_c = c.get_path()
p = path.Path([(-2, -2), (-2, 2), (2, 2), (2, -2), (-2, -2)])
fig = plt.figure()
ax = fig.add_subplot(111)
patch = patches.PathPatch(p, facecolor='orange', lw=2)
patch2 = patches.PathPatch(path_c, facecolor='blue', lw=2)
ax.add_patch(patch)
ax.add_patch(patch2)
ax.set_xlim(-2, 2)
ax.set_ylim(-2, 2)
plt.show()
print(p.contains_path(path_c))
Проблема, с которой я столкнулся, заключается в том, что независимо от того, что я ввожув круг, это всегда делает круг в начале координат с радиусом 1. Это только в том случае, когда я использую get_path, но это единственный способ, который я могу использовать, с помощью метода Вектор.path для объекта круга.
Любые мысли о том, какЯ могу проверить, содержится ли круг внутри другой фигуры?