Satimage 戻る| 次へ
フラクタル雪片
ホームページ > 情報センター > Onlineドキュメンテーション >オートメーション環境 >グラフィックエンジン > Fractal雪片 ツと 2Dグラフィックエンジン >Made?/長さ>
それぞれの線セグメントが1/3のオリジナルでそれぞれ長い4つのセグメントの人の長さの破線に取り替えられる過程を繰り返すことによって、雪の薄片を入手します。 ここで、オリジナルの図は正三角形でした。

スクリプトはあなたが長い多角形の世代を促進するのに使用することができる方法を示します。 標準の LineToを使用することの代わりに、スクリプトで示されるようにポイントのバッチで原始の addstrを使用してください。

輸入スクリプト

特性s: ""
DrawSnowflakeLoopに関して(a、b、n)
ツ????lobal xmlgk
ツ????そしてf(n>0)
ツ????????aにx1、y1をetします。
ツ????????bにx2、y2をetします。
ツ????????etはdyにdxします。(x2--x1)/3、(y2--y1)/3
ツ????????cをetします。x1+dx、y1+dy
ツ????????rawSnowflakeLoop(a、c、n--1)
ツ????????dx2、dy2をetします。dx / 2、--(sqrt3)/2*dy、(sqrt3)/2*が+ dy / 2をdxする
ツ????????dをetします。x1+dx+dx2、y1+dy+dy2
ツ????????rawSnowflakeLoop(c、d、n--1)
ツ????????cをetします。x1+2*dx、y1+2*dy
ツ????????rawSnowflakeLoop(d、c、n--1)
ツ????????rawSnowflakeLoop(c、b、n--1)
ツ????lse
ツ????????「etのsからs、」、」(ストリングとしてのb)
ツ????????そしてf(sを数える)>1000
ツ????????????AddPathへのエルxmlgk(「L」、「「s)、」
ツ????????????ストリングとしてのetのsからb
ツ????????if
ツ????if
終わりのDrawSnowflakeLoop
DrawItに関して(a、b、n)
ツ????lobal xmlgk
ツ????テキスト項目デリミタをetします。{","}
ツ????sをetする、「」
ツ????rawSnowflakeLoop(a、b、n)
ツ????AddPathへのエルxmlgk(「L」、「「s)、」
終わりのDrawIt

20にi1を設定してください。
350にi2を設定してください。
120にjを設定してください。
aを設定します。i1、j
bを設定します。i2、j
cを設定します。(i1+i2)/2、j+(i2--i1)*(cosパイ/6)
tを設定します。c、a、b、c
0にwを設定してください。

1〜5までのn_ステップで、繰り返してください。
ツ????BeginFigureへのet w(w)
ツ????etPenWidth(0.5)
ツ????etPenColor({0, 0, 0.8, 1})
ツ????2〜4までのiがあるepeat
ツ????????oveTo(tの項目i)
ツ????????rawIt(tの項目i、t、n_ステップの項目(i--1))
ツ????第反復
ツ????rawPath(2)
ツ????ndFigure()
ツ????milepause0.5
終わりの反復
Copyrightツゥ2005パリ、Satimage