2016-10-02 2 views
3

今日私はTranscryptでブラウザでツリーを描きたい。 私はSkulptでの作業であるPythonでコードを持っている:タートルと木をTranscryptで

import random 
import turtle 

def tree(size, myTurtle): 
    myTurtle.pensize(size/20) 

    if size < random.randint(1,2) * 20: 
     myTurtle.color("green") 
    else: 
     myTurtle.color("brown") 

    if size > 5: 
     myTurtle.forward(size) 
     myTurtle.left(25) 
     tree(size - random.randint(10, 20), myTurtle) 
     myTurtle.right(50) 
     tree(size - random.randint(10, 20), myTurtle) 
     myTurtle.left(25) 
     myTurtle.penup() 
     myTurtle.backward(size) 
     myTurtle.pendown() 

window = turtle.Screen() 
window.setup(800,600) 
window.bgcolor("white") 

myTurtle = turtle.Turtle() 
myTurtle.color("brown", "blue") 
myTurtle.left(90) 
myTurtle.speed(0) 
myTurtle.penup() 
myTurtle.setpos(0, -250) 
myTurtle.pendown() 

をそして、私はこの効果を得るために、ブラウザでそれを実行したい:

image があり、木の上にテキストを心配しないでください) 私はこれをSkulptで実行します。多分あなたはそれについて聞いています。上記の効果があります。 これをTranscryptで実行し、SkulptとBrythonと比較したいと思います。

あなたがここに見ることができるように: http://www.transcrypt.org/live/turtle_site/turtle_site.html

Transcryptは何とかカメで描くことができます。

Transcryptを使用するには、このコードをどのように変更しますか?

これを手伝ってもらえますか?

+0

SpróbujęCOSpokombinowaćIダムCIznać(MAMnadziejęZE zaraz)。 – Nf4r

+0

"Compile and run"はアドレス "http://www.transcrypt.org/compile"にコードを送信しますが、 "404 page not exist"(PL:cośim niedziała)のように応答します。 – furas

+0

Transcryptは 'あなたはブラウザで実行できるHTMLページを生成する方法を[Transcrypt doc](http://sterlicht.alwaysdata.net/transcrypt.org/docs/html/installation_use.html)で読んでください。 – furas

答えて

3

最初に:Transcryptの一部の機能が異なる名前を持っているか、存在しないため、コードでいくつかの変更が必要です。結果を表示するにはturtle.done()を追加する必要があります。

turtle_tree.py

import random 
import turtle 

def tree(size, myTurtle): 
    myTurtle.pensize(size/20) 

    if size < random.randint(1,2) * 20: 
     myTurtle.color("green") 
    else: 
     myTurtle.color("brown") 

    if size > 5: 
     myTurtle.forward(size) 
     myTurtle.left(25) 
     tree(size - random.randint(10, 20), myTurtle) 
     myTurtle.right(50) 
     tree(size - random.randint(10, 20), myTurtle) 
     myTurtle.left(25) 
     myTurtle.up()  # penup() 
     myTurtle.back(size) # backward(size) 
     myTurtle.down()  # pendown() 

#window = turtle.Screen() # doesn't exists 
#window.setup(800,600)  # doesn't exists 
#window.bgcolor("white") # doesn't exists 

myTurtle = turtle.Turtle() 
myTurtle.color("brown", "blue") 
myTurtle.left(90) 
myTurtle.speed(0) 
myTurtle.up()   # penup() 
myTurtle.goto(0, 250) # setpos(0, -250)  
myTurtle.down()  # pendown() 

tree(135, myTurtle) 

myTurtle.done() # display 

あなたはファイル01のフォルダ__javascript__を取得するJavaScript

transcrypt turtle_tree.py 

pip

pip install transcrypt 

コンパイルのPythonを使ってTranscryptをインストールします。(およびturtle_tree.min.jsturtle_tree.mod.jsしかし、あなたは今それを必要としない)

あなたはturtle_tree.jsをロードし、その結果を表示するために<div id="__turtlegraph__">を持っているHTMLファイルが必要です。

__javascript__フォルダ内のturtle_tree.html

<!DOCTYPE html> 

<html> 

<head> 
    <meta charset="utf-8"/> 
    <title>Turtle Tree</title> 

    <style> 
     #__turtlegraph__ { 
      height: 600px; 
      width: 800px; 
     } 
    </style> 
</head> 

<body> 

    <div id="__turtlegraph__"></div> 
    <script src='turtle_tree.js'></script> 

</body> 

</html> 

入れのHTMLファイルと、ブラウザで開きます。


Python 3.5.2/Linux Mint 17.3/Firefox 48.0でテスト済み - 1秒(1秒以下)で描画されます。

enter image description here

+0

こんにちは、私はTranscryptのTurtleモジュールでどの機能が最も欠けているのか興味を持っています。 –

+0

JSへのコンパイルでエラーが発生しました。トランスクリプトturtle_tree.py は "transcrypt"にする必要があります – Monica

+0

完璧に、ありがとうございます。 – Monica