Quantcast
Channel: 初心者タグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 21113

spheroを動かしてみる②

$
0
0

今回のお題

星形(五芒星)を描く

工程

基本設計→詳細設計→実装→テストの順に実施

基本設計

五芒星を描くための基本動作を考える
星.jpg
1. ①の地点からスタートする
2. ②に向けて直進
3. ②の地点で③への方向に向きを変える
4. ③に向けて直進

以降は直進と向きを変える動作を繰り返していく

詳細設計

基本設計と前回作成した正方形の動作(spheroを動かしてみる➀)を元に動作を考える

考えた結果のフローチャートが以下
フロー.jpg

解説

  • 星形の一角が36°なので、方向を変えるには180°- 36°= 144°回転しなくてはいけない。
    そのため、回転の設定値を144°にする必要がある

  • 現在向いてる方向を0°にするために「Aimリセット」が必要。

実装

詳細設計を元に作成したプログラムは以h下。
sekkei.png

テスト結果

星形を描くことができなかった。

できなかった理由を考える

テストすると、回転実行中にAIMリセットが実行されてしまい、うまく動作しなかった。
「停止」のヘルプを見てみると、処理を停止するのではなく、速度を停止させる処理だった。
AIMリセットを遅らせるためには、「停止」ではなく「ディレイ」が適切だった。

「停止」部分を「ディレイ」に変更。直進する時間が長かったため合わせて調整
設計しなおしたフローチャートは以下。
詳細設計.jpg

実際に作成したプログラム

puroguramu.png

テスト結果

星型を描くことができた


Viewing all articles
Browse latest Browse all 21113

Trending Articles