Reference Vector

Collection of coordinates


新機能解説

Referece VectorASTER::MoveTowards の実装後 ASTER Rev.0.9.37 以降に導入された座標のデータコレクション。

C++ STL シーケンスコンテナの std::vector ではなく、std::deque ( 両端キュー ) で実装された xY-Coordinates を格納した構造体です。

JSON 経由で二次元配列データへアクセスすると処理が遅いので、メモリ領域を専用に設けて主に ASTER::MoveTowards で利用されます。

両端キュー ( std::deque )

Reference Vector では両端操作を頻繁に行う予定があります。

std::deque の特性として動的再割り当ての影響を受けにくく、両端操作を行う場合は std::vector よりも効率的なので std::deque を採用しました。

Reference Vector へ動的に生成された座標を保存し、MoveTowards と組み合わせることで応用が可能になります。

現在実装されている MoveTowards は等速直線移動ですが、Reference Vector を利用した疑似的な円運動など、MoveTowards で実現できる動作は今後のアップデートで更に増えます。

仕様

Reference Vector に保持できる座標 ( POINT 構造体 ) の数は ASTER::Motion & Controller の仕様と一致する 255 までと定められています。