Robowflex
v0.1
Making MoveIt Easy
|
Open Scene Graph GUI for DART visualization. More...
#include <gui.h>
Classes | |
struct | DnDReturn |
Return from creating a movable frame. More... | |
struct | InteractiveOptions |
Options for creating an interactive marker. More... | |
struct | InteractiveReturn |
Return from creating an interactive marker. More... | |
Public Member Functions | |
Window (const WorldPtr &world) | |
Constructor. More... | |
void | customPreRefresh () override |
void | customPostRefresh () override |
void | run (std::function< void()> thread={}) |
Run the GUI. Blocks. More... | |
WindowWidgetPtr | getWidget () |
Get the IMGUI configurable widget. More... | |
void | addWidget (const WidgetPtr &widget) |
Add a new IMGUI widget. More... | |
WorldPtr | getWorld () |
Get world used for visualization. More... | |
const WorldPtr & | getWorldConst () const |
Get world used for visualization. More... | |
Animation | |
void | animatePath (const StateSpacePtr &space, const ompl::geometric::PathGeometric &path, std::size_t times=1, double fps=60, bool block=true) |
Animate a motion plan using the world. More... | |
void | animatePath (const PlanBuilder &builder, const ompl::geometric::PathGeometric &path, std::size_t times=1, double fps=60, bool block=true) |
Animate a motion plan using the world. This version of the call will automatically visualize either constrained or unconstrained paths. More... | |
Private Attributes | |
friend | TSREditWidget |
WorldPtr | world_ |
World to visualize. More... | |
WindowWidgetPtr | widget_ |
IMGUI widget. More... | |
std::vector< WidgetPtr > | widgets_ |
Other widgets;. More... | |
std::shared_ptr< std::thread > | animation_ {nullptr} |
Animation thread. More... | |
::osg::ref_ptr< Window > | node_ |
OSG Node. More... | |
Viewer | viewer_ |
Viewer. More... | |
GUI Interaction | |
using | InteractiveCallback = std::function< void(const dart::gui::osg::InteractiveFrame *)> |
Callback function on an interactive frame moving. More... | |
using | DnDCallback = std::function< void(const dart::dynamics::BodyNode *)> |
Callback function on a drag 'n drop frame moving. More... | |
InteractiveReturn | createInteractiveMarker (const InteractiveOptions &options) |
Create a new interactive marker in the GUI. More... | |
DnDReturn | enableNodeDragNDrop (dart::dynamics::BodyNode *node, const DnDCallback &callback={}) |
Enable drag 'n drop functionality on a body node being visualized. With DnD, the body node will automatically use IK to move wherever dragged. More... | |
using robowflex::darts::Window::DnDCallback = std::function<void(const dart::dynamics::BodyNode *)> |
using robowflex::darts::Window::InteractiveCallback = std::function<void(const dart::gui::osg::InteractiveFrame *)> |
Window::Window | ( | const WorldPtr & | world | ) |
Constructor.
[in] | world | World to visualize. |
Definition at line 76 of file gui.cpp.
void Window::addWidget | ( | const WidgetPtr & | widget | ) |
void Window::animatePath | ( | const PlanBuilder & | builder, |
const ompl::geometric::PathGeometric & | path, | ||
std::size_t | times = 1 , |
||
double | fps = 60 , |
||
bool | block = true |
||
) |
Animate a motion plan using the world. This version of the call will automatically visualize either constrained or unconstrained paths.
[in] | builder | Plan builder structure. |
[in] | path | The plan to visualize. |
[in] | times | Number of times to loop through animation. |
[in] | fps | Update rate. |
[in] | block | If true, blocks until animation is done. Otherwise, immediately returns. |
Definition at line 206 of file gui.cpp.
void Window::animatePath | ( | const StateSpacePtr & | space, |
const ompl::geometric::PathGeometric & | path, | ||
std::size_t | times = 1 , |
||
double | fps = 60 , |
||
bool | block = true |
||
) |
Animate a motion plan using the world.
[in] | space | State space of the plan. |
[in] | path | The plan to visualize. |
[in] | times | Number of times to loop through animation. |
[in] | fps | Update rate. |
[in] | block | If true, blocks until animation is done. Otherwise, immediately returns. |
Definition at line 160 of file gui.cpp.
Window::InteractiveReturn Window::createInteractiveMarker | ( | const InteractiveOptions & | options | ) |
|
override |
|
override |
Window::DnDReturn Window::enableNodeDragNDrop | ( | dart::dynamics::BodyNode * | node, |
const DnDCallback & | callback = {} |
||
) |
Enable drag 'n drop functionality on a body node being visualized. With DnD, the body node will automatically use IK to move wherever dragged.
[in] | node | Node to enable Drag 'n Drop on. |
[in] | callback | Callback function to call when node is dragged. |
Definition at line 146 of file gui.cpp.
WindowWidgetPtr Window::getWidget | ( | ) |
WorldPtr Window::getWorld | ( | ) |
const WorldPtr & Window::getWorldConst | ( | ) | const |
void Window::run | ( | std::function< void()> | thread = {} | ) |
|
private |
|
private |
|
private |
|
private |
|
private |