2016-09-20 98 views
1

我使用VPython來模擬一個從牆上彈起的球。這不會產生一個窗口,我不知道爲什麼

爲了讓我的代碼更優雅,我決定使用類繼承來設置我的對象的尺寸和屬性(此刻,它是球和牆)。在我運行代碼之後,shell沒有產生任何錯誤,但是它也沒有產生窗口。

我是相當新的編程,我在Wine Mint 18上使用VPython 2.7。我有一種感覺,我錯過了某些明顯的東西,但我不知道它是什麼。

到目前爲止我的代碼如下:

from visual import * 

class Obj(object): 

def __init__(self, pos, color): #sets the position and color 
     self.pos = pos 
     self.color = color 

class Sphere(Obj): 

    def __init__(self, pos, color, radius): 
     super(Sphere, self).__init__(pos, color) 
     self.radius = radius 

class Box(Obj): 

    def __init__self, pos, color, radius): 
     super(Box, self).__init__(pos, color) 
     self.size = size 
     self.opacity = opacity 


ball1 = Sphere((-5,0,0,), color.orange, 0.25) 
wallR = Box((6,0,0), color.cyan, (0.,12,12), 0.3) 
+3

我沒有看到任何與初始化窗口相關的代碼。你可以請張貼嗎?你當前的代碼只處理你想要在窗口中繪製的對象。 – Daneel

+0

你可能通過初始化一個窗口來舉例說明你的意思嗎? –

回答

0

我想你從來沒有處理圖形方面之前,因爲沒有任何關於它在你發佈的代碼。那麼該開始了! 默認情況下,python在控制檯模式下工作。爲了顯示一個實際的窗口,使用圖標和其他東西,你需要使用TKinterpygame這樣的模塊,在代碼中明確地寫出它。

我建議你閱讀我在這裏找到的教程:http://code.activestate.com/recipes/502241-bouncing-ball-simulation/,因爲它做你想做的(與TKinter),包括窗口部分。看看它,讓我們看看你是否仍然需要幫助!

相關問題