ホーム -> Python -> Python APIの解説 -> 定数
ホーム -> Python -> Python APIの解説 -> 定数
3. Enums (スマートトレインの動作設定名)
このクラスは、スマートトレインの動作に関わる「選択肢」をまとめたものです。
2. trainと紐づいており、プログラム中で使うことで、動きを細かく制御できます。
任意の16進数を使うのではなく、きちんと型指定された enum(列挙型)を使用することを推奨します。
記述はやや長くなりますが、「コードの読みやすさ」と「型の安全性」という大きなメリットがあります。
※このクラス群は trainlib_async.enums からも再エクスポートされています(非同期処理でも同様に使用可能です)。
スマートトレイン本体の、上部にあるボタンの押し方を表す定数です。
・SHORT = 1 → 短押し
・LONG = 2 → 長押し
前方・後方のどちらのセンサーが反応したかを識別する定数です。
・FRONT = 1 → 前方センサー
・BACK = 2 → 後方センサー
スマートトレインの進行方向を指定するための定数です。
・CURRENT = 0 → 現在の方向を維持
・FORWARD = 1 → 前に進む
・BACKWARD = 2 → 後ろに進む
・STOP = 3 → その場で停止
・INVERT = 4 → 今の進行方向を逆にする
スナップを検知した時、何色かを判定するための定数です。
RGB形式への変換や、ランダムな色の取得が可能です。
・BLACK = 0 → 黒
・RED = 1 → 赤
・GREEN = 2 → 緑
・YELLOW = 3 → 黄
・BLUE = 4 → 青
・MAGENTA = 5 → 紫
・CYAN = 6 → 水色
・WHITE = 7 → 白
・UNKNOWN = 8 → 不明な色(センサーが色を特定できなかった場合)
to_rgb_bytes()
→ 色を RGB形式(0〜255の数値3つ)に変換します。
例:(255, 0, 0) は赤色
random(including_black=True)
→ ランダムに1色を選びます。
→ 引数 including_black を False にすると、黒を除外して色を選べます。
【SpeedLevel】
スマートトレインの速度を表す定数です。
緑色のスナップの命令と同じ速度基準です。
・STOP = 0 → 止まる
・LEVEL1 = 1 → 遅いスピード
・LEVEL2 = 2 → ふつうのスピード
・LEVEL3 = 3 → 速めのスピード
分岐レールで、スマートトレインがどちらの方向に進むかを表す定数です。
・NONE = 0 → 進行方向を指定しない
・LEFT = 1 → 左へ進む
・RIGHT = 2 → 右へ進む
・STEER = 3 → 左または右へ進む
・STRAIGHT = 4 → まっすぐ進む
・ALL = 7 → 全方向を含む特殊な判定用の定数(命令としては使用しない)
train.stopDriving() を使ったときに、何で停止したかを示す定数です。
・NONE = 0 → 停止理由なし
・MOVEMENT_STOP = 1 → 列車の動きを止めたことを知らせる
・END_ROUTE = 2 → ルートの終点に到達したことを知らせる