我使用乌龟并在程序中插入2个形状,我试图让程序在对象相交时执行特定的功能。用if语句可以做到吗?
答案 0 :(得分:1)
我怀疑正确答案是“不”。 Turtle图形不会以对您有用的形式保持形状,也不提供形状操作方法。
你可以开发自己的包来表示对象,并包含一个交集方法,但这需要很多工作。如果您有兴趣,请参阅Luke Simonson所做的BOOST库形状方法(用C ++编写)(2009年,我认为)。
但是,如果您的形状足够规则,则可以制作接近检测器。例如,如果形状或多或少是圆形的,你可以简单地看到它们是否在彼此的r1 + r2范围内(在它们当前位置上的一个简单的距离函数),其中r1& r2是物体的半径。这是否足以满足您的目的?