モーフで遊ぶ
back
「四角形」のモーフを出していろいろ遊んでみるです。
ソースコードを順番にドゥ〜イットしてみてください。
Alt + d ( Cmd + d )
■モーフをだします
モーフのインスタンス生成
--------------------------------------------
rm _ RectangleMorph new.
--------------------------------------------
ワールドに表示
--------------------------------------------
rm openInWorld.
--------------------------------------------
■プロバティーを変える
位置を設定します。
--------------------------------------------
rm position: 100@100.
--------------------------------------------
大きさを設定します。
--------------------------------------------
rm extent: 30@30.
--------------------------------------------
色を設定します。
--------------------------------------------
rm color: Color red.
--------------------------------------------
枠線の色を設定します。
--------------------------------------------
rm borderColor: Color blue.
--------------------------------------------
枠線の太さを設定します。
--------------------------------------------
rm borderWidth: 5.
--------------------------------------------
■eToyのメソッドを使う
10前に進めます
--------------------------------------------
rm assuredPlayer forward: 10.
--------------------------------------------
10まわします
--------------------------------------------
rm assuredPlayer turn: 10.
--------------------------------------------
音を鳴らします「ゲコゲコ」
--------------------------------------------
rm assuredPlayer beep: 'croak'.
--------------------------------------------
向きを元に戻します
--------------------------------------------
rm heading: 0.
--------------------------------------------
■サブモーフをくっつけます
サブモーフにする「楕円」モーフを生成
--------------------------------------------
em _ EllipseMorph new openInWorld.
--------------------------------------------
大きさを設定します。
--------------------------------------------
em extent: 20@20.
--------------------------------------------
「楕円」を「四角形」のサブモーフにします(埋め込む)
--------------------------------------------
rm addMorph: em.
--------------------------------------------
位置を設定します。
--------------------------------------------
em position: rm position + (20@20).
--------------------------------------------
■アニメーション
X方向、Y方向ともに10移動させ、それを20回繰り返します。
--------------------------------------------
[20 timesRepeat: [
(Delay forMilliseconds: 10) wait.
rm position: rm position + (10@10)]] fork.
--------------------------------------------
6度回転させそれを60回繰り返します。
--------------------------------------------
[60 timesRepeat: [
(Delay forMilliseconds: 10) wait.
rm heading: rm heading + 6]] fork.
--------------------------------------------
RGBともにランダムに設定にし、それを20回繰り返します。
--------------------------------------------
[20 timesRepeat: [
(Delay forMilliseconds: 100) wait.
rm color: (Color r: 255 atRandom
g: 255 atRandom
b: 255 atRandom
range: 255)]] fork.
--------------------------------------------
angleの方向に8ドット移動させる。
angleは5度づつ増えていき360度まで繰り返します。
--------------------------------------------
angle _ 0.
[[angle > 360] whileFalse: [
(Delay forMilliseconds: 10) wait.
angle _ angle + 5.
rm position: rm position + (Point r: 8 degrees: angle)]] fork.
--------------------------------------------
|
下の入力ボックスに書き込んで”add to the page”ボタンで登録出来ます。
修正したい場合はページ左のアイコンの”edit”で出てくる画面で編集可能です。
ページ左のアイコンの”uploads”で画像(JPEG,GIF,PNG)のアップロードもできます。
Tuesday, 11 May 2004, 11:25:46 pm
(Point r: degrees:)を初めて知ったとき、うれしさのあまり思わず小躍りをしたおいらでした。--thoru
Link to this Page
|