對於一些背景,this is the game我試圖畫在等距的風格。基本的三角學在python中不能正常工作
我只是想要得到正確的計算,而不是以黑客的方式做,但一部分不工作,我不太確定其他部分(我會保存另一部分問題稍後)。
因此,忘記中間的小方格,董事會由n
lenels組成。我希望能夠計算這些座標,以便我可以對它們進行進一步的計算,但觸發不起作用,並且盡我所知(記住我上次在多年前做過),它應該。
這是一個簡單的代碼來繪製第一方陣:
import turtle
import math
iso_angle = 20
grid_length = 100
turtle.right(iso_angle)
turtle.forward(grid_length)
turtle.right(180 - iso_angle * 2)
turtle.forward(grid_length)
turtle.right(iso_angle * 2)
turtle.forward(grid_length)
turtle.right(180 - iso_angle * 2)
turtle.forward(grid_length)
使用sohcahtoa,我想我能夠計算所產生的正方形的寬度和高度,因爲它是有效的由4個三角形,我可以將其中一個三角形的高度加倍。
#s = o/h
#sin(iso_angle) = o/grid_length
#o = sin(iso_angle) * grid_length
height = 2 * sin(iso_angle) * grid_length
width = 2 * cos(iso_angle) * grid_length
然而,當我移動龜下降height
,它不屬於在廣場的邊緣。它甚至不會在邊緣的多個距離中移動,它似乎最終會產生一些隨機距離。寬度交換也不起作用。
我在哪裏出錯了?
'sin'和'cos'預計以弧度表示的角度,而不是度數。 – hobbs
@hobbs:你打敗了我。無論如何,這是一個受過教育的猜測,所以我必須首先在https://docs.python.org/2/library/math.html上進行驗證。 – usr2564301
啊,我給了這個想法,但意外地將弧度轉換爲度數而不是其他方式。無論如何,它似乎現在工作,謝謝,我應該離開這個問題嗎? – Peter