3.對象和圖形

1.簡單的圖形編程

使用graphics庫,將graphics.py與圖形程序放在同一目錄下,或者放在python庫的系統目錄下,以便任何程序都可以使用它。

import graphics				#導入庫
#from graphics import * 

win = graphics.GrapWin()	#創建一個窗口,默認情況下爲200x200
win.close()					#關閉窗口

#圖形編程中最簡單的對象是Point(點)
p  = Point(50,60)			#定義一個點
p.getX()					#獲取x,y座標
p.getY()
p.draw(win)


>>> #### Open a graphics window
>>> win = GraphWin('Shapes')
>>> #### Draw a red circle centered at point (100,100) with radius 30
>>> center = Point(100,100)
>>> circ = Circle(center, 30)
>>> circ.setFill('red')
>>> circ.draw(win)
>>> #### Put a textual label in the center of the circle
>>> label = Text(center, "Red Circle")
>>> label.draw(win)
>>> #### Draw a square using a Rectangle object
>>> rect = Rectangle(Point(30,30), Point(70,70))
>>> rect.draw(win)
>>> #### Draw a line segment using a Line object
>>> line = Line(Point(20,30), Point(180, 165))
>>> line.draw(win)
>>> #### Draw an oval using the Oval object
>>> oval = Oval(Point(20,120), Point(180,199))
>>> oval.draw(win)

2.使用圖形對象

借用一個生物學的隱喻,如果我們說Fido 是一隻狗,實際上是說,Fido 是所有狗構成的大類中的一個特定個體。用OO 術語來說,Fido 是狗類的一個實例。因爲Fido 是這個類的一個實例,我們有某些預期。Fido 有四條腿,一條尾巴,冷而溼潤的鼻子,會吠叫。如果Rex 是狗,我們預期它會有類似的屬性,即使Fido 和Rex 可能在具體細節上不同,如大小或顏色。

#定義類對象
<class-name>(<param1>, <param2>, ...)
#如 p = Point(50,60)
#Point 類的構造函數需要兩個參數,給出新點的x 和y 座標。這些值作爲“實例變量”存儲在對象內。

爲了讓對象執行操作,我們向對象發送一條消息。對象響應的消息集稱爲對象的“方法”。

<object>.<method-name>(<param1>, <param2>, ...)
#如 p.getX()
#   p.getY()
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章