2014-09-27 22 views
-2

我们正在使用面颊编程软件 它使用Python,但我们是在它很新,我们得到这个错误:Python的全局变量缩进

Indentation Error: unindent does not match any outer indentation level 
在标线

。任何想法为什么?

import viz 
import math 
import viztask 

count = 0 
boolTime = False 

viz.setMultiSample(4) 
viz.fov(20) 
viz.go() 

viz.phys.enable() 
viz.phys.setGravity([0, 0, 0]) 
viz.window.setFullscreen() 

viz.setOption('viz.model.apply_collada_scale',1) 
ball = viz.add('ball.dae') 
ball.setPosition([-0.1,1.5,4]) 
#ball.setScale([0.75,0.75,0.75]) 
ball.collideSphere() 


viz.setOption('viz.model.apply_collada_scale',1) 
path = viz.addChild('path.dae') 
path.setPosition([-1,1.0,4]) 
path.collideMesh() 

#collision 
path.enable(viz.COLLIDE_NOTIFY) 
def onCollide(e): 
     global count 
     count = count+1 
     print(count) 

viz.callback(viz.COLLIDE_BEGIN_EVENT, onCollide) 

#mouse 
viz.mouse.setOverride(viz.ON) 
link = None 
def grabBall(): 
    global link 
    link = viz.grab(viz.Mouse, ball) 
    boolTime = True     # ERROR HERE 

def releaseBall(): 
    global link 
    link.remove() 
    link = None 

def TestReactionTime(): 
    while boolTime: 
     #Wait for next frame to be drawn to screen 
     d = yield viztask.waitDraw() 

     #Save display time 
     displayTime = d.time 

     #Wait for keyboard reaction 
     d = yield viztask.waitMouseUp(viz.MOUSEBUTTON_LEFT) 

     #Calculate reaction time 
     reactionTime = d.time - displayTime 
     print(reactionTime) 

vizact.onmousedown(viz.MOUSEBUTTON_LEFT, TestReactionTime) 
vizact.onmousedown(viz.MOUSEBUTTON_LEFT,grabBall) 
vizact.onmouseup(viz.MOUSEBUTTON_LEFT,releaseBall) 
+1

请不要*后处理有语法错误的代码。 – 2014-09-27 16:16:32

+4

你最有可能混合标签和空格。确保您的编辑器为每个缩进级别插入4个空格,并且没有制表符。 – 2014-09-27 16:18:06

+0

另外,如果要保留更改,boolTime需要一个'global',就像该函数中的链接变量一样。 – user3557327 2014-09-27 16:26:06

回答

1

问题是我有标签而不是4个空格。

谢谢!