而True循环python

时间:2014-03-04 17:50:26

标签: python

我是初学者,我想在python中创建一个while循环。我有两条相交的共面曲线,我想在公共平面上移动第一条曲线,直到它们不再相交。我试过像:

vec = [0,0.1,0]
int = True
while True:
    move=rs.MoveObject(curve1,vec)
    int=rs.CurveCurveIntersection(curve1, curve2)
    if int = False:
        break

任何人都知道我做错了什么? 提前谢谢!

2 个答案:

答案 0 :(得分:3)

首先,您使用int关键字(整数类型)作为变量,并将'int'变量显式设置为False(这是if中的语法错误)。这可能会弄乱你的系统。您也没有显示错误消息。

intersect = rs.CurveCurveIntersection(curve1, curve2)
if not intersect:
  break

答案 1 :(得分:1)

可以简化为

vec = [0, .1, 0]

while rs.CurveCurveIntersection(curve1, curve2):
    move = rs.MoveObject(curve1, vec)

......我不太明白move是什么。

如果rs.MoveObject()修改了对象,则只需rs.MoveObject(curve1, vec);

如果它返回一个修改过的对象,则需要curve1 = rs.MoveObject(curve1, vec)代替(并且您当前的代码将导致无限循环)。