「鉄道模型シミュレーターNX」で学ぶPythonプログラミング ラストの第5章いってみましょう(^-^)/ アマゾンで入荷予定が出ましたが、2021年6月28日って遅すぎ(^_^;) 増刷待ちなのかな?
5-1.踏切の制御
踏切の動作をプログラミングするとここまで複雑になるのか(^_^;) というのが分かりますね。自動センサーでやってしまいたいわ。AKAGIさんが開発している「ATENXA」を使うのもアリですが、まだNXで踏切パーツを持っていないので試せないか(^_^;)
P.191
・//、%、!=って何?
色々な演算子です。
//は小数部分を切り捨てて整数部分を求めた割り算です。%は割り算をやった結果の余りです。!=は等しくない時ということです。
その他の演算子についてはコチラの一覧で。
5-2.ImGUIを使った自作インタフェース
P.193
・ImGUIのImって何?って私が思いました(^_^;)
本の中にも説明がありますが補足すると「Immediate Mode GUI」の略だそうです。即時モードGUIつまりはプログラマー用のGUIってことらしいですね。GUIはグラフィカルユーザーインターフェイスの略で、文字ベースのCUI(キャラクターユーザーインターフェイス)と対比されます。
5-3.自作モジュールを作ろう
P.200
・コードスペルニットって何?って私が思いました(^_^;)
コードスニペットという用語はあるみたいですが、コードスペルニットというのは見つからないです。ちなみにコードスニペットとは繰り返し登場するコードの断片、またはそれをすぐに呼び出せるように管理するエディタの機能のことらしいです。
P.201
・コンパイルって何?
ソフトウェアの設計図(ソースコード)をコンピュータが実行可能な形式(オブジェクトコード)に変換する作業のことです。
5-4.ファイルを読み書きしよう
open、read、writeといったファイル入出力系コマンドが見られますね。でもcloseがないなぁ。大丈夫なのかな?と思ったら
P.206
・withって何?って私が思いました(^_^;)
色々と必要な前処理や後処理を自動でやってくれる構文らしいです。なのでopen後にcloseがなかったのですね。withについてはコチラ。openの使い方はコチラで。
<翻訳>with open(path_w, mode='w') as f:
書き込みモードでファイルpath_wを開いて以降fとして扱い、後処理は自動で行う。
・append、formatって何?って私が思いました(^_^;)
appendはリスト(配列)に要素を追加するコマンドらしいです。詳しくはコチラ。formatは書式設定に関するコマンドらしいです。詳しくはコチラ。
<翻訳>stream.append("{0}_{1}\n".format(t.GetID(), t.GetNAME()))
リストstream内に以下を付け加える。
「t.GetID()で得られる値」_「t.GetNAME()で得られる値」改行
・joinって何?って私が思いました(^_^;)
文字列のリストを一つの文字列に連結するコマンドらしいです。詳しくはコチラ。
<翻訳>text = ''.join(stream)
リストstream内の文字を単純に連結する。
ということでとり急ぎやってまいりましたが、アイマジック社のマニュアルは開発者のメモ書き程度のものでアレで理解しろという方が無理ですから、VRM-NXのプログラミングを覚えようと思ったら本書は必須アイテムになりそうです。
私は特に第5章のImGUI、自作モジュールあたりに興味がありますね。あと第4章の閉塞運転も取り入れてみたいですが難しそう(^_^;) そのうち周回フライスルーカメラも移植したいですし、やりたいことは色々ありますね。