プログラムドローツール
 カメでドローツールを作ってみよう。
 カメが動いて図形をかくようすをプログラムとしてテキストボックスに保存すれば、ドローツールになります。
 テキストボックスに保存されたプログラムを実行すれば、カメが動いて図形を書きます。
 ドローツールでは、書いた図形のデータをどのような形式で保存するかを考えます。このデータ形式をLOGO言語のプログラム形式でテキストボックスに保存すると、図形を再表示するにはテキストボックスのプログラムを実行すれば良いことになります。
   
使い方 (1)を左クリックすると、マウスで が動くようになります。
  そのまま左クリックする(あるいは数字1を押す)と、起点がプログラムに書かれます。
(2)数字キーの2,3を押して、図形を書きます。
(3)図形を印刷するときは、を左クリックして、ページ2から印刷します。
CAD1000×800.mwx
オブジェクトの準備 最初に作品で必要なオブジェクトを準備します。 
   カメオブジェクト  形  カメの中の命令

CADのもと.mwx 
     無し
     1起点
   ←小さな点   無し 
 
手順の記述 手順タブエリアにプログラムを書きます。
を左クリックしたときの最初に呼ばれる手順を書きます。 

手順は GO
プログラム、 フォントのサイズは 10 文末へ
全部「ペンを上げる」 7再描画2
無限に「かめ2、 位置は マウスの位置 X座標は 最初 位置 Y座標は 最後 位置」
無限に「コマンド」
終わり
メインとなる手順を書きます。 

ここで、キーボードの入力を判定して、サブとなる手順を呼びます。
手順は コマンド
操作は アスキー 受けた字
もし 操作 = 49 「1起点」
もし 操作 = 50 「2直線」
もし 操作 = 51 「3曲線」
もし 操作 = 55 「7再描画」
もし 操作 = 56 「8取り消す」
もし 操作 = 48 「0全部消す」
もし 操作 = 57 「9終わる」
終わり 
ここからは、サブとなる手順です。
1起点は、図形を描く、はじめの位置です。 
手順は 1起点
かめ1、 ペンを上げる 位置は マウスの位置
かめ2、 ペンを上げる 位置は マウスの位置
プログラム、 書く (リスト "ペンを上げる "位置は 位置)
終わり
2直線は、かめ1 から かめ2までに直線を書きます。 
手順は 2直線
かめ1、 方向 "かめ2
仮の名前は 「X0 向き」
仮の名前は 「X1 四捨五入 距離 "かめ2」
ペンを下ろす 前へ :X1 ペンを上げる
かめ1、 位置は 頼む "かめ2 「位置」
プログラム、 書く (リスト "ペンを下ろす "向きは :X0 "前へ :X1 "ペンを上げる)
終わり 
3曲線は、かめ1 から かめ2 へ曲線を描きます。 
手順は 3曲線
かめ1、 仮の名前は 「X0 向き」
方向 "かめ2 仮の名前は 「X1 向き」
向きは :X0
もし (絶対値 差 :X0 :X1) < 1 「止まる」

もしどちらかを :X0 < :X1

もしどちらかを :X1 - :X0 > 180 
 「
 仮の名前は 「回転 :X0 + 360 - :X1」
 仮の名前は 「L (四捨五入 (距離 "かめ2) ÷ :回転 ÷ 1.2 × 10) ÷ 10」
 ペンを下ろす 繰り返す 整数 :回転 「左へ 1.2 前へ :L」 ペンを上げる
 プログラム、 書く (リスト "ペンを下ろす "繰り返す 整数 :回転 (リスト "左へ "1.2 "前へ :L) "ペンを上げる
 」
 「
 仮の名前は 「回転 :X1 - :X0」
 仮の名前は 「L (四捨五入 (距離 "かめ2) ÷ :回転 ÷ 1.2 × 10) ÷ 10」
 ペンを下ろす 繰り返す 整数 :回転 「右へ 1.2 前へ :L」 ペンを上げる
 プログラム、 書く (リスト "ペンを下ろす "繰り返す 整数 :回転 (リスト "右へ "1.2 "前へ :L) "ペンを上げる
 」


もしどちらかを :X1 - :X0 < -180 
 「
 仮の名前は 「回転 360 - :X0 + :X1」
 仮の名前は 「L (四捨五入 (距離 "かめ2) ÷ :回転 ÷ 1.2 × 10) ÷ 10」
 ペンを下ろす 繰り返す 整数 :回転 「右へ 1.2 前へ :L」 ペンを上げる
 プログラム、 書く (リスト "ペンを下ろす "繰り返す 整数 :回転 (リスト "右へ "1.2 "前へ :L) "ペンを上げる
 」
 「
 仮の名前は 「回転 :X0 - :X1」
 仮の名前は 「L (四捨五入 (距離 "かめ2) ÷ :回転 ÷ 1.2 × 10) ÷ 10」
 ペンを下ろす 繰り返す 整数 :回転 「左へ 1.2 前へ :L」 ペンを上げる
 プログラム、 書く (リスト "ペンを下ろす "繰り返す 整数 :回転 (リスト "左へ "1.2 "前へ :L) "ペンを上げる
 」

終わり
8取り消すは、図形の最後の1行を消して、描き直します。 
手順は 8取り消す
プログラム、 文末へ 選ぶ 一字上へ 切り取る
7再描画
終わり
0全部消すは、プログラムを全部消して、最初の画面にします。 
手順は 0全部消す
絵だけ消す 罫線
プログラムは "
フォントのサイズは 10
終わり 
9終わるは、プログラムを終えます。 
手順は 9終わる
みんなとまる
終わり 
7再描画と7再描画2は、図形のプログラムを実行して、表示しなおします。 
手順は 7再描画
かめ1、 位置は マウスの位置
7再描画2
終わり
手順は 7再描画2
絵だけ消す 罫線
かめ1、 やる プログラム
終わり 
罫線は、画面に20ドットの方眼を描きます。 
手順は 罫線
かめ3、 ペンを上げる 帰る
ペンを下ろす ペンのサイズは 1 色は 81 ペンを下ろす
繰り返す 50

前へ 800
横の位置は 横の位置 + 20

向きは 90
繰り返す 40

前へ 1000
縦の位置は 縦の位置 + 20

色は 9 ペンを上げる
終わり 
を左クリックストすると、ページ1の画面をページ2にコピーします。
ページ2には、ボタンなどが無いので、書いた図形だけを印刷できます。
手順は ページ2にコピー
背景のスナップ
ページ2
もとのまま
終わり