擅长:python、mysql、java
<p>要做到这一点,你可以使用两点之间的欧几里德距离(在2D中基本上简化为毕达哥拉定理)</p>
<p>假设您有这样的海龟坐标(与您提供的坐标样本格式相同,例如(X,Y)像素):</p>
<pre><code> turtle_coords = (10.0, 10.0)
</code></pre>
<p>您可以编写一个函数来计算海龟与任何其他点之间的距离(也可以使用numpy包中的<code>sqrt</code>函数)。此函数将海龟坐标(海龟坐标)视为一对(X海龟,Y海龟),将任何关注点坐标(点坐标)视为一对(X海龟,Y海龟)。在这些对中,您可以使用对[0]访问每个X值,使用对[1]访问每个Y值。距离函数如下所示:</p>
<pre><code> def distance(turtle_coords, point_coords):
return ((turtle_coords[0] - point_coords[0])**2 + (turtle_coords[1] - point_coords[1])**2)**0.5
</code></pre>
<p>然后,您可以循环使用<code>list_of_coords</code>变量的所有坐标,以便创建海龟与每个感兴趣点之间的距离列表</p>
<pre><code> distances = []
for point_coords in list_of_coords:
distances.append(distance(turtle_coords, point_coords))
</code></pre>
<p>然后,您就有了一个所提供的每个坐标和海龟坐标之间的距离列表。然后,您可以评估海龟是否足够接近某些坐标。假设您有一个距离阈值:</p>
<pre><code> distance_threshold = 10 # Say 10 pixels
close_to_coords = []
for distance in distances:
close_to_coords.append(distance <= distance_threshold)
# You get a list like [False, False, True, False , etc...]
</code></pre>