GaitGeneration by Graph Search
|
ノードの情報を表示するGUIのクラス. [詳解]
#include <dxlib_gui_node_displayer.h>
公開メンバ関数 | |
DxlibGuiNodeDisplayer (int window_x, int window_y, const std::shared_ptr< const IHexapodCoordinateConverter > &converter_ptr, const std::shared_ptr< const IHexapodJointCalculator > &calculator_ptr, const std::shared_ptr< const IHexapodPostureValidator > &checker_ptr) | |
void | SetNode (const RobotStateNode &node) override |
ノードをセットする. | |
void | Update () override |
GUIの更新,毎フレーム実行すること. | |
void | Draw () const override |
GUIの描画. | |
![]() | |
AbstractDxlibGui ()=delete | |
AbstractDxlibGui (int width, int height) | |
virtual | ~AbstractDxlibGui ()=default |
void | SetPos (int pos_x, int pos_y, unsigned int option=kDxlibGuiAnchorLeftTop, bool this_is_first_time=false) |
GUIの位置を設定する. Dxlibの画面の座標は左上を原点とし,右下に行くほど値が大きくなる. 横方向にx軸,縦方向にy軸をとる. | |
void | SetVisible (bool visible) override |
GUIの表示を行うかどうかを設定する. | |
constexpr bool | IsVisible () const override |
GUIの表示を行うかどうかを返す. | |
void | ClickedAction (const DxlibMouseState &state) override |
GUIがクリックされたときに実行される関数. CursorOnGuiが true を返すときに呼び出される. 複数のGUIが重なっている場合は,優先度の高いものから順に呼び出される. | |
bool | CursorOnGui (int cursor_x, int cursor_y) const noexcept override |
GUIの上にカーソルがあるかどうかを返す. | |
bool | IsDraggable (int cursor_x, int cursor_y) const override |
ドラッグ可能な位置にあるかを判定する. | |
bool | IsDragged () const override |
ドラッグ中かどうかを取得する. | |
void | SetDragged (const bool is_dragged) override |
ドラッグ中かどうかを設定する. | |
void | DraggedAction (int cursor_dif_x, int cursor_dif_y, unsigned int mouse_key_bit) override |
ドラッグ中の処理を行う. カーソルは上にあるけど,ドラッグ中ではない場合でも呼び出される. | |
![]() | |
virtual | ~IDxlibGui ()=default |
![]() | |
virtual | ~IDxlibClickable ()=default |
![]() | |
virtual | ~IDxlibDraggable ()=default |
![]() | |
virtual | ~IDxlibNodeSetter ()=default |
その他の継承メンバ | |
![]() | |
void | DrawBackground (const std::string &str) const |
![]() | |
std::vector< std::unique_ptr< SimpleButton > > | button_ |
ボタンのリスト. | |
const int | width_ |
GUIの横幅. | |
const int | height_ |
GUIの縦幅. | |
bool | visible_ { true } |
GUIが表示されているかどうかのフラグ. | |
bool | is_dragging_ { false } |
int | gui_left_pos_x_ { 0 } |
GUIの左端の位置. | |
int | gui_top_pos_y_ { 0 } |
GUIの上端の位置. | |
int | init_pos_x_ { 0 } |
SetされたGUIの左上のX座標. | |
int | init_pos_y_ { 0 } |
SetされたGUIの左上のY座標. | |
int | font_handle_ { -1 } |
フォントハンドル. | |
![]() | |
static constexpr int | kTitleBarHeight { 32 } |
タイトルバーの高さ. | |
ノードの情報を表示するGUIのクラス.
dxlib_gui_node_displayer.h の 29 行目に定義があります。
designlab::DxlibGuiNodeDisplayer::DxlibGuiNodeDisplayer | ( | int | window_x, |
int | window_y, | ||
const std::shared_ptr< const IHexapodCoordinateConverter > & | converter_ptr, | ||
const std::shared_ptr< const IHexapodJointCalculator > & | calculator_ptr, | ||
const std::shared_ptr< const IHexapodPostureValidator > & | checker_ptr | ||
) |
|
overridevirtual |
GUIの描画.
designlab::AbstractDxlibGuiを実装しています。
dxlib_gui_node_displayer.cpp の 117 行目に定義があります。
|
overridevirtual |
ノードをセットする.
node | ノード番号. |
designlab::IDxlibNodeSetterを実装しています。
dxlib_gui_node_displayer.cpp の 89 行目に定義があります。
|
overridevirtual |
GUIの更新,毎フレーム実行すること.
designlab::AbstractDxlibGuiを実装しています。
dxlib_gui_node_displayer.cpp の 103 行目に定義があります。