这是我的家庭作业的问题:圆周距离问题
通过添加一个名为正是DIST(方法展开您的Circle类),接受一个点的x和y的值,并返回点的距离在圆的外侧的坐标空间中(或者如果点在圆上或内部则为零)。
下面的代码:
myCircle = Circle(1,1,1)
print myCircle.dist(3,4)
应打印大约输出:
2.6055512754639891
但是我无法理解的问题。从圆的外侧返回坐标空间中的点是什么意思?你能解释一下吗?
这是我的家庭作业的问题:圆周距离问题
通过添加一个名为正是DIST(方法展开您的Circle类),接受一个点的x和y的值,并返回点的距离在圆的外侧的坐标空间中(或者如果点在圆上或内部则为零)。
下面的代码:
myCircle = Circle(1,1,1)
print myCircle.dist(3,4)
应打印大约输出:
2.6055512754639891
但是我无法理解的问题。从圆的外侧返回坐标空间中的点是什么意思?你能解释一下吗?
找到圆心和给定点之间的距离。从距离中减去半径。负值在圆圈内。
顺便说一句,它并没有要求你“在坐标空间中返回点......”这是要求你返回坐标空间中点的**距离** ...... – Jason 2011-04-28 01:03:33
这可能意味着对圆的最近点的距离,所以它的最小 - 最大问题wherre你减少点的距离circumfurance
您可以轻松地检查点在圆内不是。一旦你这样做了,并确定它在外面,你需要找到一条线圈normal并通过这个点。圆圈周长的长度为您提供答案。
提示:任何通过圆心的线都是正常的。
所以你有点(x,y)
,半径r
和中心(x0,y0)
。我认为你在这里有足够的信息来解决问题:)
>>> from math import hypot
>>> hypot(3-1,4-1) # How far is the point from the centre of the circle?
3.6055512754639891
>>> hypot(3-1,4-1)-1 # Now subtract the radius
2.6055512754639891
>>>
你有TA可以去吗? – 2011-04-28 00:14:43
基本上,创建一个名为Circle()的方法,给定一个(x,y)点计算从该点到圆的边缘的最短距离。 – 2011-04-28 00:16:04
如果这是“近似”2.6055512754639891我想看到确切的答案。 – Martin 2011-04-28 00:16:27