1#include "../include/skeletal_animation.h"
35 if (viewer.core().is_animating)
55 viewer.data_list.at(0).set_vertices(
m_left_hand->get_vertices());
59 viewer.data_list.at(1).set_vertices(
m_right_hand->get_vertices());
62 viewer.data_list.at(2).set_vertices(
m_face->get_vertices());
80 viewer.data_list.resize(3);
83 m_face = std::make_shared<Face>();
85 viewer.data_list.at(2).set_mesh(
m_face->get_vertices(),
86 m_face->get_surface_indices());
95 unsigned int baud_rate = 115200;
108 viewer.data_list.at(0).set_mesh(
m_left_hand->get_vertices(),
117 viewer.data_list.at(1).set_mesh(
m_right_hand->get_vertices(),
std::vector< EulerID > get_hand_angles(const std::vector< double > &joint_angles)
void initialize(const std::string &serial_com, unsigned int serial_baudrate)
Initialize the exoskeleton.
std::vector< double > get_joint_angles(void)
Get joint angles.
bool are_ports_set(void)
Check whether the USB ports have been sent by the user (Is OK pressed?).
std::string get_right_exoskeleton_port(void)
Get the USB port for the right exoskeleton.
std::string get_left_exoskeleton_port(void)
Get the USB port for the left exoskeleton.
Exoskeleton * m_left_exo
Exoskeleton handler pointer.
std::string m_hand_texture_name
Texture name.
MenuHandler * m_menu_handler
Menu handler pointer.
AnimatedHand * m_anim_hand
Animated hand pointer.
bool m_initialize_animation
Start animation flag.
bool animation_loop(igl::opengl::glfw::Viewer &viewer)
Animation loop callback.
void initialize(igl::opengl::glfw::Viewer *viewer, Exoskeleton *left_exo, AnimatedHand *anim_hand, MenuHandler *menu_handler)
Initialize animation.
Eigen::Vector3d m_right_origin
Right hand origin.
Eigen::Vector3d m_left_origin
Left hand origin.
std::shared_ptr< Face > m_face
Face handler.
std::shared_ptr< Hand > m_left_hand
Left and right hand.
std::string m_hand_graph_name
Skeleton graph filename.
std::shared_ptr< Hand > m_right_hand
void setup_meshes(igl::opengl::glfw::Viewer &viewer)
Setup meshes.
std::string m_hand_mesh_name
Mesh filename.