2014-09-27 2 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

Пожалуйста, сделайте * NOT * постпроцессный код с синтаксическими ошибками. –

+4

Скорее всего, вы смешиваете вкладки и пробелы. Убедитесь, что ваш редактор вставляет 4 пробела для каждого уровня отступов и без вкладок. –

+0

Кроме того, boolTime нуждается в «глобальном», как переменная ссылки в этой функции, если вы хотите сохранить изменения. – user3557327

ответ

1

Проблема была в том, что у меня были вкладки вместо 4 пробелов.

Спасибо!

Смежные вопросы