A graphical user interface (GUI) for efficiently rendering 3D scenes in real-time.
This class always contains internally an instance of opengl::COpenGLScene, which the objects, viewports, etc. to be rendered.
Images can be grabbed automatically to disk for easy creation of videos. See CDisplayWindow3D::grabImagesStart (and for creating videos, mrpt::vision::CVideoFileWriter).
A short-cut for displaying 2D images (using the OpenGL rendering hardware) is available through setImageView() and setImageView_fast(). Internally, these methods call methods in the "main" viewport of the window (see COpenGLViewport).
Since the 3D rendering is performed in a detached thread, especial care must be taken when updating the 3D scene to be rendered. The process involves an internal critical section and it must always consist of these steps:
An alternative way of updating the scene is by creating, before locking the 3D window, a new object of class COpenGLScene, then locking the window only for replacing the smart pointer. This may be advantageous is generating the 3D scene takes a long time, since while the window is locked it will not be responsive to the user input or window redraw.
It is safer against exceptions to use the auxiliary class CDisplayWindow3DLocker.
Notice however that a copy of the smart pointer is made, so replacement of the entire scene via operator =
is not possible if using this method. Still, in general it should be preferred because the mutexes are automatically released in case of unexpected exceptions.
The window can also display a set of 2D text messages overlapped to the 3D scene. See CDisplayWindow3D::addTextMessage
For a list of supported events with the observer/observable pattern, see the discussion in mrpt::gui::CBaseGUIWindow. In addition to those events, this class introduces mrpt::gui::mrptEvent3DWindowGrabImageFile
** CDisplayWindow3D mouse view navigation cheatsheet **
Definition at line 99 of file CDisplayWindow3D.h.
#include <mrpt/gui/CDisplayWindow3D.h>
Public Member Functions | |
void * | operator new (size_t size) |
void * | operator new[] (size_t size) |
void | operator delete (void *ptr) throw () |
void | operator delete[] (void *ptr) throw () |
void | operator delete (void *memory, void *ptr) throw () |
void * | operator new (size_t size, const std::nothrow_t &) throw () |
void | operator delete (void *ptr, const std::nothrow_t &) throw () |
CDisplayWindow3D (const std::string &windowCaption=std::string(), unsigned int initialWindowWidth=400, unsigned int initialWindowHeight=300) | |
Constructor. More... | |
virtual | ~CDisplayWindow3D () |
Destructor. More... | |
mrpt::opengl::COpenGLScenePtr & | get3DSceneAndLock () |
Gets a reference to the smart shared pointer that holds the internal scene (carefuly read introduction in gui::CDisplayWindow3D before use!) This also locks the critical section for accesing the scene, thus the window will not be repainted until it is unlocked. More... | |
void | unlockAccess3DScene () |
Unlocks the access to the internal 3D scene. More... | |
void | forceRepaint () |
Repaints the window. forceRepaint, repaint and updateWindow are all aliases of the same method. More... | |
void | repaint () |
void | updateWindow () |
float | getFOV () const |
Return the camera field of view (in degrees) (used for gluPerspective) More... | |
void | setMinRange (double new_min) |
Changes the camera min clip range (z) (used for gluPerspective). The window is not updated with this method, call "forceRepaint" to update the 3D view. More... | |
void | setMaxRange (double new_max) |
Changes the camera max clip range (z) (used for gluPerspective. The window is not updated with this method, call "forceRepaint" to update the 3D view. More... | |
void | setFOV (float v) |
Changes the camera field of view (in degrees) (used for gluPerspective). The window is not updated with this method, call "forceRepaint" to update the 3D view. More... | |
void | resize (unsigned int width, unsigned int height) MRPT_OVERRIDE |
Resizes the window, stretching the image to fit into the display area. More... | |
void | setPos (int x, int y) MRPT_OVERRIDE |
Changes the position of the window on the screen. More... | |
void | setWindowTitle (const std::string &str) MRPT_OVERRIDE |
Changes the window title. More... | |
void | setCameraElevationDeg (float deg) |
Changes the camera parameters programmatically. More... | |
void | setCameraAzimuthDeg (float deg) |
Changes the camera parameters programmatically. More... | |
void | setCameraPointingToPoint (float x, float y, float z) |
Changes the camera parameters programmatically. More... | |
void | setCameraZoom (float zoom) |
Changes the camera parameters programmatically. More... | |
void | setCameraProjective (bool isProjective) |
Sets the camera as projective, or orthogonal. More... | |
float | getCameraElevationDeg () const |
Get camera parameters programmatically. More... | |
float | getCameraAzimuthDeg () const |
Get camera parameters programmatically. More... | |
void | getCameraPointingToPoint (float &x, float &y, float &z) const |
Get camera parameters programmatically. More... | |
float | getCameraZoom () const |
Get camera parameters programmatically. More... | |
bool | isCameraProjective () const |
Sets the camera as projective, or orthogonal. More... | |
void | useCameraFromScene (bool useIt=true) |
If set to true (default = false), the mouse-based scene navigation will be disabled and the camera position will be determined by the opengl viewports in the 3D scene. More... | |
bool | getLastMousePositionRay (mrpt::math::TLine3D &ray) const |
Gets the 3D ray for the direction line of the pixel where the mouse cursor is at. More... | |
virtual bool | getLastMousePosition (int &x, int &y) const MRPT_OVERRIDE |
Gets the last x,y pixel coordinates of the mouse. More... | |
virtual void | setCursorCross (bool cursorIsCross) MRPT_OVERRIDE |
Set cursor style to default (cursorIsCross=false) or to a cross (cursorIsCross=true) More... | |
void | grabImagesStart (const std::string &grab_imgs_prefix=std::string("video_")) |
Start to save rendered images to disk. More... | |
void | grabImagesStop () |
Stops image grabbing started by grabImagesStart. More... | |
void | captureImagesStart () |
Enables the grabbing of CImage objects from screenshots of the window. More... | |
void | captureImagesStop () |
Stop image grabbing. More... | |
bool | getLastWindowImage (mrpt::utils::CImage &out_img) const |
Retrieve the last captured image from the window. More... | |
mrpt::utils::CImagePtr | getLastWindowImagePtr () const |
Retrieve the last captured image from the window, as a smart pointer. More... | |
std::string | grabImageGetNextFile () |
Increments by one the image counter and return the next image file name (Users normally don't want to call this method). More... | |
bool | isCapturingImgs () const |
void | addTextMessage (const double x, const double y, const std::string &text, const mrpt::utils::TColorf &color=mrpt::utils::TColorf(1.0, 1.0, 1.0), const size_t unique_index=0, const mrpt::opengl::TOpenGLFont font=mrpt::opengl::MRPT_GLUT_BITMAP_TIMES_ROMAN_24) |
Add 2D text messages overlapped to the 3D rendered scene. More... | |
void | addTextMessage (const double x_frac, const double y_frac, const std::string &text, const mrpt::utils::TColorf &color, const std::string &font_name, const double font_size, const mrpt::opengl::TOpenGLFontStyle font_style=mrpt::opengl::NICE, const size_t unique_index=0, const double font_spacing=1.5, const double font_kerning=0.1, const bool draw_shadow=false, const mrpt::utils::TColorf &shadow_color=mrpt::utils::TColorf(0, 0, 0)) |
overload with more font parameters - refer to mrpt::opengl::gl_utils::glDrawText() Available fonts are enumerated at mrpt::opengl::gl_utils::glSetFont() More... | |
void | clearTextMessages () |
Clear all text messages created with addTextMessage(). More... | |
double | getRenderingFPS () const |
Get the average Frames Per Second (FPS) value from the last 250 rendering events. More... | |
mrpt::opengl::COpenGLViewportPtr | getDefaultViewport () |
A short cut for getting the "main" viewport of the scene object, it is equivalent to: More... | |
void | setImageView (const mrpt::utils::CImage &img) |
Set the "main" viewport into "image view"-mode, where an image is efficiently drawn (fitting the viewport area) using an OpenGL textured quad. More... | |
void | setImageView_fast (mrpt::utils::CImage &img) |
Just like setImageView but moves the internal image memory instead of making a copy, so it's faster but empties the input image. More... | |
void * | getWxObject () |
Read-only access to the wxDialog object. More... | |
void | notifyChildWindowDestruction () |
Called by wx main thread to set m_hwnd to NULL. More... | |
void | notifySemThreadReady () |
Called by wx main thread to signal the semaphore that the wx window is built and ready. More... | |
bool | isOpen () |
Returns false if the user has already closed the window. More... | |
int | waitForKey (bool ignoreControlKeys=true, mrptKeyModifier *out_pushModifier=NULL) |
Waits for any key to be pushed on the image or the console, and returns the key code. More... | |
bool | keyHit () const |
Returns true if a key has been pushed, without blocking waiting for a new key being pushed. More... | |
void | clearKeyHitFlag () |
Assure that "keyHit" will return false until the next pushed key. More... | |
int | getPushedKey (mrptKeyModifier *out_pushModifier=NULL) |
Returns the latest pushed key, or 0 if there is no new key stroke. More... | |
CObject * | clone () const |
Cloning interface for smart pointers. More... | |
RTTI classes and functions | |
mrpt::utils::CObjectPtr | duplicateGetSmartPtr () const |
Returns a copy of the object, indepently of its class, as a smart pointer (the newly created object will exist as long as any copy of this smart pointer). More... | |
Static Public Member Functions | |
static void * | operator new (size_t size, void *ptr) |
static CDisplayWindow3DPtr | Create (const std::string &windowCaption, unsigned int initialWindowWidth=400, unsigned int initialWindowHeight=300) |
Class factory returning a smart pointer. More... | |
Static Public Attributes | |
static const mrpt::utils::TRuntimeClassId | classCObject |
RTTI stuff | |
static const mrpt::utils::TRuntimeClassId | classCBaseGUIWindow |
Protected Member Functions | |
void | createOpenGLContext () |
Throws an exception on initialization error. More... | |
void | doRender () |
void | internalSetMinMaxRange () |
void | internal_setRenderingFPS (double FPS) |
Set the rendering FPS (users don't call this, the method is for internal MRPT objects only) More... | |
void | internal_emitGrabImageEvent (const std::string &fil) |
called by CMyGLCanvas_DisplayWindow3D::OnPostRenderSwapBuffers More... | |
void | createWxWindow (unsigned int initialWidth, unsigned int initialHeight) |
Must be called by child classes just within the constructor. More... | |
void | destroyWxWindow () |
Must be called by child classes in their destructors. The code cannot be put into this class' destructor. More... | |
void | publishEvent (const mrptEvent &e) const |
Called when you want this object to emit an event to all the observers currently subscribed to this object. More... | |
bool | hasSubscribers () const |
Can be called by a derived class before preparing an event for publishing with publishEvent to determine if there is no one subscribed, so it can save the wasted time preparing an event that will be not read. More... | |
Friends | |
class | C3DWindowDialog |
class | CMyGLCanvas_DisplayWindow3D |
RTTI stuff | |
typedef CDisplayWindow3DPtr | Ptr |
typedef CDisplayWindow3DPtr | ConstPtr |
static mrpt::utils::CLASSINIT | _init_CDisplayWindow3D |
static mrpt::utils::TRuntimeClassId | classCDisplayWindow3D |
static const mrpt::utils::TRuntimeClassId * | classinfo |
static const mrpt::utils::TRuntimeClassId * | _GetBaseClass () |
virtual const mrpt::utils::TRuntimeClassId * | GetRuntimeClass () const |
Returns information about the class of an object in runtime. More... | |
virtual mrpt::utils::CObject * | duplicate () const |
Returns a copy of the object, indepently of its class. More... | |
static mrpt::utils::CObject * | CreateObject () |
static CDisplayWindow3DPtr | Create () |
typedef CDisplayWindow3DPtr mrpt::gui::CDisplayWindow3D::ConstPtr |
Definition at line 102 of file CDisplayWindow3D.h.
typedef CDisplayWindow3DPtr mrpt::gui::CDisplayWindow3D::Ptr |
A typedef for the associated smart pointer
Definition at line 102 of file CDisplayWindow3D.h.
CDisplayWindow3D::CDisplayWindow3D | ( | const std::string & | windowCaption = std::string() , |
unsigned int | initialWindowWidth = 400 , |
||
unsigned int | initialWindowHeight = 300 |
||
) |
Constructor.
Definition at line 410 of file CDisplayWindow3D.cpp.
References mrpt::gui::CBaseGUIWindow::createWxWindow(), and m_3Dscene.
Referenced by Create().
|
virtual |
Destructor.
Definition at line 440 of file CDisplayWindow3D.cpp.
References mrpt::gui::CBaseGUIWindow::destroyWxWindow(), mrpt::synch::CCriticalSectionRecursive::enter(), mrpt::synch::CCriticalSectionRecursive::leave(), and m_csAccess3DScene.
|
staticprotected |
void CDisplayWindow3D::addTextMessage | ( | const double | x, |
const double | y, | ||
const std::string & | text, | ||
const mrpt::utils::TColorf & | color = mrpt::utils::TColorf(1.0,1.0,1.0) , |
||
const size_t | unique_index = 0 , |
||
const mrpt::opengl::TOpenGLFont | font = mrpt::opengl::MRPT_GLUT_BITMAP_TIMES_ROMAN_24 |
||
) |
Add 2D text messages overlapped to the 3D rendered scene.
The string will remain displayed in the 3D window until it's changed with subsequent calls to this same method, or all the texts are cleared with clearTextMessages().
x | The X position, interpreted as absolute pixels from the left if X>=1, absolute pixels from the left if X<0 or as a width factor if in the range [0,1[. |
y | The Y position, interpreted as absolute pixels from the bottom if Y>=1, absolute pixels from the top if Y<0 or as a height factor if in the range [0,1[. |
text | The text string to display. |
color | The text color. For example: TColorf(1.0,1.0,1.0) |
unique_index | An "index" for this text message, so that subsequent calls with the same index will overwrite this text message instead of creating new ones. |
You'll need to refresh the display manually with forceRepaint().
Definition at line 889 of file CDisplayWindow3D.cpp.
References mrpt::utils::non_copiable_ptr_basic< T >::get(), mrpt::gui::CBaseGUIWindow::m_hwnd, MRPT_UNUSED_PARAM, mrpt::gui::WxSubsystem::TRequestToWxMainThread::OPCODE, mrpt::gui::WxSubsystem::pushPendingWxRequest(), mrpt::gui::WxSubsystem::TRequestToWxMainThread::source3D, mrpt::gui::WxSubsystem::TRequestToWxMainThread::str, mrpt::gui::WxSubsystem::TRequestToWxMainThread::vector_x, mrpt::gui::WxSubsystem::TRequestToWxMainThread::x, and mrpt::gui::WxSubsystem::TRequestToWxMainThread::y.
Referenced by mrpt::graphslam::CGraphSlamEngine< GRAPH_T >::pauseExec(), and mrpt::graphslam::CGraphSlamEngine< GRAPH_T >::resumeExec().
void CDisplayWindow3D::addTextMessage | ( | const double | x_frac, |
const double | y_frac, | ||
const std::string & | text, | ||
const mrpt::utils::TColorf & | color, | ||
const std::string & | font_name, | ||
const double | font_size, | ||
const mrpt::opengl::TOpenGLFontStyle | font_style = mrpt::opengl::NICE , |
||
const size_t | unique_index = 0 , |
||
const double | font_spacing = 1.5 , |
||
const double | font_kerning = 0.1 , |
||
const bool | draw_shadow = false , |
||
const mrpt::utils::TColorf & | shadow_color = mrpt::utils::TColorf(0,0,0) |
||
) |
overload with more font parameters - refer to mrpt::opengl::gl_utils::glDrawText() Available fonts are enumerated at mrpt::opengl::gl_utils::glSetFont()
Definition at line 929 of file CDisplayWindow3D.cpp.
References mrpt::utils::TColorf::B, mrpt::utils::TColorf::G, mrpt::utils::non_copiable_ptr_basic< T >::get(), mrpt::gui::CBaseGUIWindow::m_hwnd, MRPT_UNUSED_PARAM, mrpt::gui::WxSubsystem::TRequestToWxMainThread::OPCODE, mrpt::gui::WxSubsystem::TRequestToWxMainThread::plotName, mrpt::gui::WxSubsystem::pushPendingWxRequest(), mrpt::utils::TColorf::R, mrpt::gui::WxSubsystem::TRequestToWxMainThread::source3D, mrpt::gui::WxSubsystem::TRequestToWxMainThread::str, mrpt::gui::WxSubsystem::TRequestToWxMainThread::vector_x, mrpt::gui::WxSubsystem::TRequestToWxMainThread::x, and mrpt::gui::WxSubsystem::TRequestToWxMainThread::y.
void CDisplayWindow3D::captureImagesStart | ( | ) |
Enables the grabbing of CImage objects from screenshots of the window.
Definition at line 845 of file CDisplayWindow3D.cpp.
References m_is_capturing_imgs.
void CDisplayWindow3D::captureImagesStop | ( | ) |
Stop image grabbing.
Definition at line 853 of file CDisplayWindow3D.cpp.
References m_is_capturing_imgs.
|
inlineinherited |
Assure that "keyHit" will return false until the next pushed key.
Definition at line 127 of file CBaseGUIWindow.h.
void CDisplayWindow3D::clearTextMessages | ( | ) |
Clear all text messages created with addTextMessage().
You'll need to refresh the display manually with forceRepaint().
Definition at line 993 of file CDisplayWindow3D.cpp.
References mrpt::utils::non_copiable_ptr_basic< T >::get(), mrpt::gui::CBaseGUIWindow::m_hwnd, mrpt::gui::WxSubsystem::TRequestToWxMainThread::OPCODE, mrpt::gui::WxSubsystem::pushPendingWxRequest(), and mrpt::gui::WxSubsystem::TRequestToWxMainThread::source3D.
|
inlineinherited |
|
static |
|
static |
Class factory returning a smart pointer.
Definition at line 430 of file CDisplayWindow3D.cpp.
References CDisplayWindow3D().
|
static |
|
protected |
Throws an exception on initialization error.
|
protectedinherited |
Must be called by child classes just within the constructor.
Definition at line 45 of file CBaseGUIWindow.cpp.
References mrpt::gui::WxSubsystem::createOneInstanceMainThread(), mrpt::gui::WxSubsystem::isConsoleApp, MRPT_END, MRPT_START, MRPT_UNUSED_PARAM, mrpt::gui::WxSubsystem::TRequestToWxMainThread::OPCODE, mrpt::gui::WxSubsystem::pushPendingWxRequest(), mrpt::system::sleep(), mrpt::gui::WxSubsystem::TRequestToWxMainThread::source2D, mrpt::gui::WxSubsystem::TRequestToWxMainThread::source3D, mrpt::gui::WxSubsystem::TRequestToWxMainThread::sourcePlots, mrpt::gui::WxSubsystem::TRequestToWxMainThread::str, THROW_EXCEPTION, mrpt::gui::WxSubsystem::TRequestToWxMainThread::voidPtr, mrpt::gui::WxSubsystem::TRequestToWxMainThread::x, and mrpt::gui::WxSubsystem::TRequestToWxMainThread::y.
Referenced by mrpt::gui::CDisplayWindow::CDisplayWindow(), CDisplayWindow3D(), and mrpt::gui::CDisplayWindowPlots::CDisplayWindowPlots().
|
protectedinherited |
Must be called by child classes in their destructors. The code cannot be put into this class' destructor.
Definition at line 105 of file CBaseGUIWindow.cpp.
References mrpt::gui::WxSubsystem::isConsoleApp, MRPT_END, MRPT_START, mrpt::gui::WxSubsystem::TRequestToWxMainThread::OPCODE, mrpt::gui::WxSubsystem::pushPendingWxRequest(), mrpt::system::sleep(), mrpt::gui::WxSubsystem::TRequestToWxMainThread::source2D, mrpt::gui::WxSubsystem::TRequestToWxMainThread::source3D, mrpt::gui::WxSubsystem::TRequestToWxMainThread::sourcePlots, and mrpt::gui::WxSubsystem::waitWxShutdownsIfNoWindows().
Referenced by mrpt::gui::CDisplayWindow::~CDisplayWindow(), ~CDisplayWindow3D(), and mrpt::gui::CDisplayWindowPlots::~CDisplayWindowPlots().
|
protected |
|
virtual |
Returns a copy of the object, indepently of its class.
Implements mrpt::utils::CObject.
|
inlineinherited |
Returns a copy of the object, indepently of its class, as a smart pointer (the newly created object will exist as long as any copy of this smart pointer).
Definition at line 162 of file CObject.h.
References mrpt::utils::CObjectPtr.
Referenced by mrpt::obs::CRawlog::addActions(), mrpt::slam::CIncrementalMapPartitioner::addMapFrame(), and mrpt::obs::CRawlog::addObservations().
void CDisplayWindow3D::forceRepaint | ( | ) |
Repaints the window. forceRepaint, repaint and updateWindow are all aliases of the same method.
Definition at line 545 of file CDisplayWindow3D.cpp.
References mrpt::utils::non_copiable_ptr_basic< T >::get(), mrpt::gui::CBaseGUIWindow::m_hwnd, mrpt::gui::WxSubsystem::TRequestToWxMainThread::OPCODE, mrpt::gui::WxSubsystem::pushPendingWxRequest(), and mrpt::gui::WxSubsystem::TRequestToWxMainThread::source3D.
Referenced by mrpt::graphslam::optimizers::CLevMarqGSO< GRAPH_T >::fitGraphInView(), mrpt::graphslam::deciders::CICPCriteriaERD< GRAPH_T >::initializeVisuals(), mrpt::graphslam::optimizers::CLevMarqGSO< GRAPH_T >::initOptDistanceVisualization(), mrpt::graphslam::optimizers::CLevMarqGSO< GRAPH_T >::toggleGraphVisualization(), mrpt::graphslam::deciders::CICPCriteriaERD< GRAPH_T >::toggleLaserScansVisualization(), mrpt::graphslam::optimizers::CLevMarqGSO< GRAPH_T >::toggleOptDistanceVisualization(), mrpt::graphslam::optimizers::CLevMarqGSO< GRAPH_T >::updateGraphVisualization(), mrpt::graphslam::optimizers::CLevMarqGSO< GRAPH_T >::updateOptDistanceVisualization(), mrpt::graphslam::detail::CEdgeCounter::updateTextMessages(), mrpt::graphslam::deciders::CICPCriteriaERD< GRAPH_T >::updateVisuals(), and CGraphSlamHandler< GRAPH_T >::~CGraphSlamHandler().
opengl::COpenGLScenePtr & CDisplayWindow3D::get3DSceneAndLock | ( | ) |
Gets a reference to the smart shared pointer that holds the internal scene (carefuly read introduction in gui::CDisplayWindow3D before use!) This also locks the critical section for accesing the scene, thus the window will not be repainted until it is unlocked.
Definition at line 528 of file CDisplayWindow3D.cpp.
References mrpt::synch::CCriticalSectionRecursive::enter(), m_3Dscene, and m_csAccess3DScene.
Referenced by mrpt::gui::CDisplayWindow3DLocker::CDisplayWindow3DLocker(), mrpt::detectors::CFaceDetection::experimental_viewFacePointsAndEigenVects(), mrpt::detectors::CFaceDetection::experimental_viewFacePointsScanned(), mrpt::detectors::CFaceDetection::experimental_viewRegions(), mrpt::graphslam::optimizers::CLevMarqGSO< GRAPH_T >::fitGraphInView(), mrpt::graphslam::deciders::CICPCriteriaERD< GRAPH_T >::initializeVisuals(), mrpt::graphslam::optimizers::CLevMarqGSO< GRAPH_T >::initOptDistanceVisualization(), CGraphSlamHandler< GRAPH_T >::initVisualization(), mrpt::graphslam::optimizers::CLevMarqGSO< GRAPH_T >::toggleGraphVisualization(), mrpt::graphslam::deciders::CICPCriteriaERD< GRAPH_T >::toggleLaserScansVisualization(), mrpt::graphslam::optimizers::CLevMarqGSO< GRAPH_T >::toggleOptDistanceVisualization(), mrpt::graphslam::optimizers::CLevMarqGSO< GRAPH_T >::updateGraphVisualization(), mrpt::graphslam::optimizers::CLevMarqGSO< GRAPH_T >::updateOptDistanceVisualization(), and mrpt::graphslam::deciders::CICPCriteriaERD< GRAPH_T >::updateVisuals().
float CDisplayWindow3D::getCameraAzimuthDeg | ( | ) | const |
Get camera parameters programmatically.
Definition at line 710 of file CDisplayWindow3D.cpp.
References mrpt::utils::non_copiable_ptr_basic< T >::get(), mrpt::gui::C3DWindowDialog::m_canvas, and mrpt::gui::CBaseGUIWindow::m_hwnd.
float CDisplayWindow3D::getCameraElevationDeg | ( | ) | const |
Get camera parameters programmatically.
Definition at line 697 of file CDisplayWindow3D.cpp.
References mrpt::utils::non_copiable_ptr_basic< T >::get(), mrpt::gui::C3DWindowDialog::m_canvas, and mrpt::gui::CBaseGUIWindow::m_hwnd.
void CDisplayWindow3D::getCameraPointingToPoint | ( | float & | x, |
float & | y, | ||
float & | z | ||
) | const |
Get camera parameters programmatically.
Definition at line 723 of file CDisplayWindow3D.cpp.
References mrpt::utils::non_copiable_ptr_basic< T >::get(), mrpt::gui::C3DWindowDialog::m_canvas, mrpt::gui::CBaseGUIWindow::m_hwnd, and MRPT_UNUSED_PARAM.
float CDisplayWindow3D::getCameraZoom | ( | ) | const |
Get camera parameters programmatically.
Definition at line 743 of file CDisplayWindow3D.cpp.
References mrpt::utils::non_copiable_ptr_basic< T >::get(), mrpt::gui::C3DWindowDialog::m_canvas, and mrpt::gui::CBaseGUIWindow::m_hwnd.
mrpt::opengl::COpenGLViewportPtr CDisplayWindow3D::getDefaultViewport | ( | ) |
A short cut for getting the "main" viewport of the scene object, it is equivalent to:
Definition at line 1022 of file CDisplayWindow3D.cpp.
References mrpt::synch::CCriticalSectionRecursive::enter(), mrpt::synch::CCriticalSectionRecursive::leave(), m_3Dscene, and m_csAccess3DScene.
float CDisplayWindow3D::getFOV | ( | ) | const |
Return the camera field of view (in degrees) (used for gluPerspective)
Definition at line 675 of file CDisplayWindow3D.cpp.
References mrpt::utils::non_copiable_ptr_basic< T >::get(), mrpt::gui::C3DWindowDialog::m_canvas, and mrpt::gui::CBaseGUIWindow::m_hwnd.
|
virtual |
Gets the last x,y pixel coordinates of the mouse.
Implements mrpt::gui::CBaseGUIWindow.
Definition at line 769 of file CDisplayWindow3D.cpp.
References mrpt::utils::non_copiable_ptr_basic< T >::get(), mrpt::gui::C3DWindowDialog::m_canvas, mrpt::gui::CBaseGUIWindow::m_hwnd, and MRPT_UNUSED_PARAM.
Referenced by getLastMousePositionRay().
bool CDisplayWindow3D::getLastMousePositionRay | ( | mrpt::math::TLine3D & | ray | ) | const |
Gets the 3D ray for the direction line of the pixel where the mouse cursor is at.
Definition at line 785 of file CDisplayWindow3D.cpp.
References mrpt::synch::CCriticalSectionRecursive::enter(), getLastMousePosition(), mrpt::synch::CCriticalSectionRecursive::leave(), m_3Dscene, and m_csAccess3DScene.
bool CDisplayWindow3D::getLastWindowImage | ( | mrpt::utils::CImage & | out_img | ) | const |
Retrieve the last captured image from the window.
You MUST CALL FIRST captureImagesStart to enable image grabbing.
Definition at line 861 of file CDisplayWindow3D.cpp.
References m_last_captured_img, and m_last_captured_img_cs.
CImagePtr CDisplayWindow3D::getLastWindowImagePtr | ( | ) | const |
Retrieve the last captured image from the window, as a smart pointer.
This method is more efficient than getLastWindowImage since only a copy of the pointer is performed, while getLastWindowImage would copy the entire image.
You MUST CALL FIRST captureImagesStart to enable image grabbing. If there was no time yet for grabbing any image, an empty smart pointer will be returned.
Definition at line 880 of file CDisplayWindow3D.cpp.
References m_last_captured_img, and m_last_captured_img_cs.
|
inherited |
Returns the latest pushed key, or 0 if there is no new key stroke.
out_pushModifier | If set to !=NULL, the modifiers of the key stroke will be saved here. |
Definition at line 188 of file CBaseGUIWindow.cpp.
References mrpt::gui::MRPTKMOD_NONE, and mrpt::system::sleep().
|
inline |
Get the average Frames Per Second (FPS) value from the last 250 rendering events.
Definition at line 284 of file CDisplayWindow3D.h.
|
virtual |
Returns information about the class of an object in runtime.
Reimplemented from mrpt::gui::CBaseGUIWindow.
|
inlineinherited |
Read-only access to the wxDialog object.
Definition at line 75 of file CBaseGUIWindow.h.
References mrpt::utils::non_copiable_ptr_basic< T >::get().
Referenced by mrpt::gui::WxSubsystem::CWXMainFrame::OnTimerProcessRequests().
std::string CDisplayWindow3D::grabImageGetNextFile | ( | ) |
Increments by one the image counter and return the next image file name (Users normally don't want to call this method).
Definition at line 834 of file CDisplayWindow3D.cpp.
References mrpt::format(), m_grab_imgs_idx, and m_grab_imgs_prefix.
void CDisplayWindow3D::grabImagesStart | ( | const std::string & | grab_imgs_prefix = std::string("video_") | ) |
Start to save rendered images to disk.
Images will be saved independently as png files, depending on the template path passed to this method. For example:
path_prefix: "./video_"
Will generate "./video_000001.png", etc.
If this feature is enabled, the window will emit events of the type mrpt::gui::mrptEvent3DWindowGrabImageFile() which you can subscribe to.
Definition at line 817 of file CDisplayWindow3D.cpp.
References m_grab_imgs_idx, and m_grab_imgs_prefix.
void CDisplayWindow3D::grabImagesStop | ( | ) |
Stops image grabbing started by grabImagesStart.
Definition at line 826 of file CDisplayWindow3D.cpp.
References m_grab_imgs_prefix.
|
inlineprotectedinherited |
Can be called by a derived class before preparing an event for publishing with publishEvent to determine if there is no one subscribed, so it can save the wasted time preparing an event that will be not read.
Definition at line 52 of file CObservable.h.
Referenced by mrpt::gui::CWindowDialog::OnMouseDown(), mrpt::gui::CWindowDialog::OnMouseMove(), mrpt::gui::CWindowDialog::OnResize(), and mrpt::opengl::COpenGLViewport::render().
|
protected |
called by CMyGLCanvas_DisplayWindow3D::OnPostRenderSwapBuffers
Definition at line 1015 of file CDisplayWindow3D.cpp.
References mrpt::utils::CObservable::publishEvent().
|
protected |
Set the rendering FPS (users don't call this, the method is for internal MRPT objects only)
Definition at line 1008 of file CDisplayWindow3D.cpp.
References m_last_FPS.
|
protected |
bool CDisplayWindow3D::isCameraProjective | ( | ) | const |
Sets the camera as projective, or orthogonal.
Definition at line 756 of file CDisplayWindow3D.cpp.
References mrpt::utils::non_copiable_ptr_basic< T >::get(), mrpt::gui::C3DWindowDialog::m_canvas, and mrpt::gui::CBaseGUIWindow::m_hwnd.
|
inline |
Definition at line 235 of file CDisplayWindow3D.h.
|
inherited |
Returns false if the user has already closed the window.
Definition at line 212 of file CBaseGUIWindow.cpp.
Referenced by mrpt::gui::CDisplayWindowPlots::addPopupMenuEntry(), mrpt::gui::CDisplayWindowPlots::axis(), mrpt::gui::CDisplayWindowPlots::axis_equal(), mrpt::gui::CDisplayWindowPlots::axis_fit(), mrpt::gui::CDisplayWindowPlots::clear(), mrpt::gui::CDisplayWindowPlots::enableMousePanZoom(), mrpt::gui::CDisplayWindowPlots::image(), mrpt::gui::CDisplayWindowPlots::internal_plot(), mrpt::gui::CDisplayWindowPlots::plotEllipse(), mrpt::gui::CDisplayWindowPlots::resize(), resize(), mrpt::gui::CDisplayWindow::resize(), mrpt::gui::CDisplayWindowPlots::setPos(), setPos(), mrpt::gui::CDisplayWindow::setPos(), mrpt::gui::CDisplayWindowPlots::setWindowTitle(), setWindowTitle(), mrpt::gui::CDisplayWindow::setWindowTitle(), and CGraphSlamHandler< GRAPH_T >::~CGraphSlamHandler().
|
inlineinherited |
Returns true if a key has been pushed, without blocking waiting for a new key being pushed.
Definition at line 122 of file CBaseGUIWindow.h.
|
inherited |
Called by wx main thread to set m_hwnd to NULL.
Definition at line 145 of file CBaseGUIWindow.cpp.
Referenced by mrpt::gui::CWindowDialog::OnClose(), and mrpt::gui::C3DWindowDialog::OnClose().
|
inherited |
Called by wx main thread to signal the semaphore that the wx window is built and ready.
Definition at line 220 of file CBaseGUIWindow.cpp.
Referenced by mrpt::gui::WxSubsystem::CWXMainFrame::OnTimerProcessRequests().
Definition at line 102 of file CDisplayWindow3D.h.
|
inline |
Definition at line 102 of file CDisplayWindow3D.h.
Definition at line 102 of file CDisplayWindow3D.h.
Definition at line 102 of file CDisplayWindow3D.h.
|
inline |
Definition at line 102 of file CDisplayWindow3D.h.
Definition at line 102 of file CDisplayWindow3D.h.
|
inline |
Definition at line 102 of file CDisplayWindow3D.h.
|
inline |
Definition at line 102 of file CDisplayWindow3D.h.
Called when you want this object to emit an event to all the observers currently subscribed to this object.
Definition at line 49 of file CObservable.cpp.
References MRPT_END, and MRPT_START.
Referenced by internal_emitGrabImageEvent(), mrpt::gui::CWindowDialog::OnChar(), mrpt::gui::CWindowDialog::OnClose(), mrpt::gui::C3DWindowDialog::OnClose(), mrpt::gui::CWindowDialog::OnMouseDown(), mrpt::gui::CWindowDialog::OnMouseMove(), mrpt::gui::CWindowDialog::OnResize(), mrpt::gui::C3DWindowDialog::OnResize(), and mrpt::opengl::COpenGLViewport::render().
|
inline |
|
virtual |
Resizes the window, stretching the image to fit into the display area.
Implements mrpt::gui::CBaseGUIWindow.
Definition at line 453 of file CDisplayWindow3D.cpp.
References mrpt::gui::CBaseGUIWindow::isOpen(), mrpt::gui::CBaseGUIWindow::m_caption, MRPT_UNUSED_PARAM, mrpt::gui::WxSubsystem::TRequestToWxMainThread::OPCODE, mrpt::gui::WxSubsystem::pushPendingWxRequest(), mrpt::gui::WxSubsystem::TRequestToWxMainThread::source3D, mrpt::gui::WxSubsystem::TRequestToWxMainThread::x, and mrpt::gui::WxSubsystem::TRequestToWxMainThread::y.
Referenced by mrpt::detectors::CFaceDetection::experimental_viewFacePointsAndEigenVects(), mrpt::detectors::CFaceDetection::experimental_viewFacePointsScanned(), and mrpt::detectors::CFaceDetection::experimental_viewRegions().
void CDisplayWindow3D::setCameraAzimuthDeg | ( | float | deg | ) |
Changes the camera parameters programmatically.
Definition at line 591 of file CDisplayWindow3D.cpp.
References mrpt::utils::non_copiable_ptr_basic< T >::get(), mrpt::gui::C3DWindowDialog::m_canvas, mrpt::gui::CBaseGUIWindow::m_hwnd, and MRPT_UNUSED_PARAM.
Referenced by mrpt::detectors::CFaceDetection::experimental_viewFacePointsAndEigenVects(), mrpt::detectors::CFaceDetection::experimental_viewFacePointsScanned(), mrpt::detectors::CFaceDetection::experimental_viewRegions(), and mrpt::graphslam::optimizers::CLevMarqGSO< GRAPH_T >::fitGraphInView().
void CDisplayWindow3D::setCameraElevationDeg | ( | float | deg | ) |
Changes the camera parameters programmatically.
Definition at line 566 of file CDisplayWindow3D.cpp.
References mrpt::utils::non_copiable_ptr_basic< T >::get(), mrpt::gui::C3DWindowDialog::m_canvas, mrpt::gui::CBaseGUIWindow::m_hwnd, and MRPT_UNUSED_PARAM.
Referenced by mrpt::detectors::CFaceDetection::experimental_viewFacePointsAndEigenVects(), mrpt::detectors::CFaceDetection::experimental_viewFacePointsScanned(), mrpt::detectors::CFaceDetection::experimental_viewRegions(), and mrpt::graphslam::optimizers::CLevMarqGSO< GRAPH_T >::fitGraphInView().
void CDisplayWindow3D::setCameraPointingToPoint | ( | float | x, |
float | y, | ||
float | z | ||
) |
Changes the camera parameters programmatically.
Definition at line 605 of file CDisplayWindow3D.cpp.
References mrpt::utils::non_copiable_ptr_basic< T >::get(), mrpt::gui::C3DWindowDialog::m_canvas, mrpt::gui::CBaseGUIWindow::m_hwnd, and MRPT_UNUSED_PARAM.
Referenced by mrpt::detectors::CFaceDetection::experimental_viewFacePointsAndEigenVects(), mrpt::detectors::CFaceDetection::experimental_viewFacePointsScanned(), mrpt::detectors::CFaceDetection::experimental_viewRegions(), and mrpt::graphslam::optimizers::CLevMarqGSO< GRAPH_T >::fitGraphInView().
void CDisplayWindow3D::setCameraProjective | ( | bool | isProjective | ) |
Sets the camera as projective, or orthogonal.
Definition at line 637 of file CDisplayWindow3D.cpp.
References mrpt::utils::non_copiable_ptr_basic< T >::get(), mrpt::gui::C3DWindowDialog::m_canvas, mrpt::gui::CBaseGUIWindow::m_hwnd, and MRPT_UNUSED_PARAM.
Referenced by mrpt::graphslam::optimizers::CLevMarqGSO< GRAPH_T >::fitGraphInView().
void CDisplayWindow3D::setCameraZoom | ( | float | zoom | ) |
Changes the camera parameters programmatically.
Definition at line 623 of file CDisplayWindow3D.cpp.
References mrpt::utils::non_copiable_ptr_basic< T >::get(), mrpt::gui::C3DWindowDialog::m_canvas, mrpt::gui::CBaseGUIWindow::m_hwnd, and MRPT_UNUSED_PARAM.
Referenced by mrpt::detectors::CFaceDetection::experimental_viewFacePointsAndEigenVects(), mrpt::detectors::CFaceDetection::experimental_viewFacePointsScanned(), mrpt::detectors::CFaceDetection::experimental_viewRegions(), and mrpt::graphslam::optimizers::CLevMarqGSO< GRAPH_T >::fitGraphInView().
|
virtual |
Set cursor style to default (cursorIsCross=false) or to a cross (cursorIsCross=true)
Implements mrpt::gui::CBaseGUIWindow.
Definition at line 802 of file CDisplayWindow3D.cpp.
References mrpt::utils::non_copiable_ptr_basic< T >::get(), mrpt::gui::C3DWindowDialog::m_canvas, mrpt::gui::CBaseGUIWindow::m_hwnd, and MRPT_UNUSED_PARAM.
void CDisplayWindow3D::setFOV | ( | float | v | ) |
Changes the camera field of view (in degrees) (used for gluPerspective). The window is not updated with this method, call "forceRepaint" to update the 3D view.
Definition at line 685 of file CDisplayWindow3D.cpp.
References mrpt::utils::non_copiable_ptr_basic< T >::get(), mrpt::gui::C3DWindowDialog::m_canvas, and mrpt::gui::CBaseGUIWindow::m_hwnd.
void CDisplayWindow3D::setImageView | ( | const mrpt::utils::CImage & | img | ) |
Set the "main" viewport into "image view"-mode, where an image is efficiently drawn (fitting the viewport area) using an OpenGL textured quad.
Call this method with the new image to update the displayed image (but recall to first lock the parent openglscene's critical section, then do the update, then release the lock, and then issue a window repaint). Internally, the texture is drawn using a mrpt::opengl::CTexturedPlane The viewport can be reverted to behave like a normal viewport by calling setNormalMode()
Definition at line 1030 of file CDisplayWindow3D.cpp.
References mrpt::synch::CCriticalSectionRecursive::enter(), mrpt::synch::CCriticalSectionRecursive::leave(), m_3Dscene, and m_csAccess3DScene.
void CDisplayWindow3D::setImageView_fast | ( | mrpt::utils::CImage & | img | ) |
Just like setImageView but moves the internal image memory instead of making a copy, so it's faster but empties the input image.
Definition at line 1038 of file CDisplayWindow3D.cpp.
References mrpt::synch::CCriticalSectionRecursive::enter(), mrpt::synch::CCriticalSectionRecursive::leave(), m_3Dscene, and m_csAccess3DScene.
void CDisplayWindow3D::setMaxRange | ( | double | new_max | ) |
Changes the camera max clip range (z) (used for gluPerspective. The window is not updated with this method, call "forceRepaint" to update the 3D view.
Definition at line 661 of file CDisplayWindow3D.cpp.
References m_3Dscene.
void CDisplayWindow3D::setMinRange | ( | double | new_min | ) |
Changes the camera min clip range (z) (used for gluPerspective). The window is not updated with this method, call "forceRepaint" to update the 3D view.
Definition at line 648 of file CDisplayWindow3D.cpp.
References m_3Dscene.
|
virtual |
Changes the position of the window on the screen.
Implements mrpt::gui::CBaseGUIWindow.
Definition at line 480 of file CDisplayWindow3D.cpp.
References mrpt::gui::CBaseGUIWindow::isOpen(), mrpt::gui::CBaseGUIWindow::m_caption, MRPT_UNUSED_PARAM, mrpt::gui::WxSubsystem::TRequestToWxMainThread::OPCODE, mrpt::gui::WxSubsystem::pushPendingWxRequest(), mrpt::gui::WxSubsystem::TRequestToWxMainThread::source3D, mrpt::gui::WxSubsystem::TRequestToWxMainThread::x, and mrpt::gui::WxSubsystem::TRequestToWxMainThread::y.
Referenced by CGraphSlamHandler< GRAPH_T >::initVisualization().
|
virtual |
Changes the window title.
Implements mrpt::gui::CBaseGUIWindow.
Definition at line 504 of file CDisplayWindow3D.cpp.
References mrpt::gui::CBaseGUIWindow::isOpen(), mrpt::gui::CBaseGUIWindow::m_caption, MRPT_UNUSED_PARAM, mrpt::gui::WxSubsystem::TRequestToWxMainThread::OPCODE, mrpt::gui::WxSubsystem::pushPendingWxRequest(), mrpt::gui::WxSubsystem::TRequestToWxMainThread::source3D, and mrpt::gui::WxSubsystem::TRequestToWxMainThread::str.
Referenced by mrpt::detectors::CFaceDetection::experimental_viewFacePointsAndEigenVects(), mrpt::detectors::CFaceDetection::experimental_viewFacePointsScanned(), and mrpt::detectors::CFaceDetection::experimental_viewRegions().
void CDisplayWindow3D::unlockAccess3DScene | ( | ) |
Unlocks the access to the internal 3D scene.
It is safer to use mrpt::gui::CDisplayWindow3DLocker instead. Typically user will want to call forceRepaint after updating the scene.
Definition at line 537 of file CDisplayWindow3D.cpp.
References mrpt::synch::CCriticalSectionRecursive::leave(), and m_csAccess3DScene.
Referenced by mrpt::detectors::CFaceDetection::experimental_viewFacePointsAndEigenVects(), mrpt::detectors::CFaceDetection::experimental_viewFacePointsScanned(), mrpt::detectors::CFaceDetection::experimental_viewRegions(), mrpt::graphslam::optimizers::CLevMarqGSO< GRAPH_T >::fitGraphInView(), mrpt::graphslam::deciders::CICPCriteriaERD< GRAPH_T >::initializeVisuals(), mrpt::graphslam::optimizers::CLevMarqGSO< GRAPH_T >::initOptDistanceVisualization(), CGraphSlamHandler< GRAPH_T >::initVisualization(), mrpt::graphslam::optimizers::CLevMarqGSO< GRAPH_T >::toggleGraphVisualization(), mrpt::graphslam::deciders::CICPCriteriaERD< GRAPH_T >::toggleLaserScansVisualization(), mrpt::graphslam::optimizers::CLevMarqGSO< GRAPH_T >::toggleOptDistanceVisualization(), mrpt::graphslam::optimizers::CLevMarqGSO< GRAPH_T >::updateGraphVisualization(), mrpt::graphslam::optimizers::CLevMarqGSO< GRAPH_T >::updateOptDistanceVisualization(), mrpt::graphslam::deciders::CICPCriteriaERD< GRAPH_T >::updateVisuals(), and mrpt::gui::CDisplayWindow3DLocker::~CDisplayWindow3DLocker().
|
inline |
Definition at line 159 of file CDisplayWindow3D.h.
void CDisplayWindow3D::useCameraFromScene | ( | bool | useIt = true | ) |
If set to true (default = false), the mouse-based scene navigation will be disabled and the camera position will be determined by the opengl viewports in the 3D scene.
Definition at line 577 of file CDisplayWindow3D.cpp.
References mrpt::utils::non_copiable_ptr_basic< T >::get(), mrpt::gui::C3DWindowDialog::m_canvas, mrpt::gui::CBaseGUIWindow::m_hwnd, and MRPT_UNUSED_PARAM.
|
inherited |
Waits for any key to be pushed on the image or the console, and returns the key code.
This method remove key strokes previous to its call, so it will always wait. To get the latest pushed key, see
ignoreControlKeys | If set to false, any push of shift, cmd, control, etc... will make this method to return. |
out_pushModifier | If set to !=NULL, the modifiers of the key stroke will be saved here. |
Definition at line 154 of file CBaseGUIWindow.cpp.
References mrpt::system::os::getch(), mrpt::system::os::kbhit(), mrpt::gui::MRPTKMOD_NONE, and mrpt::system::sleep().
Referenced by find_chessboard_corners_multiple(), and mrpt::vision::CFeature::internal_distanceBetweenPolarImages().
|
friend |
Definition at line 105 of file CDisplayWindow3D.h.
|
friend |
Definition at line 106 of file CDisplayWindow3D.h.
|
staticprotected |
Definition at line 102 of file CDisplayWindow3D.h.
|
staticinherited |
Definition at line 49 of file CBaseGUIWindow.h.
|
static |
Definition at line 102 of file CDisplayWindow3D.h.
|
staticinherited |
|
static |
Definition at line 102 of file CDisplayWindow3D.h.
|
protected |
Internal OpenGL object (see general discussion in about usage of this object)
Definition at line 108 of file CDisplayWindow3D.h.
Referenced by CDisplayWindow3D(), get3DSceneAndLock(), getDefaultViewport(), getLastMousePositionRay(), setImageView(), setImageView_fast(), setMaxRange(), and setMinRange().
|
protectedinherited |
The caption of the window.
Definition at line 63 of file CBaseGUIWindow.h.
Referenced by mrpt::gui::CDisplayWindowPlots::resize(), resize(), mrpt::gui::CDisplayWindow::resize(), mrpt::gui::CDisplayWindowPlots::setPos(), setPos(), mrpt::gui::CDisplayWindow::setPos(), mrpt::gui::CDisplayWindowPlots::setWindowTitle(), setWindowTitle(), and mrpt::gui::CDisplayWindow::setWindowTitle().
|
protected |
Critical section for accesing m_3Dscene.
Definition at line 109 of file CDisplayWindow3D.h.
Referenced by get3DSceneAndLock(), getDefaultViewport(), getLastMousePositionRay(), setImageView(), setImageView_fast(), unlockAccess3DScene(), and ~CDisplayWindow3D().
|
protected |
Definition at line 113 of file CDisplayWindow3D.h.
|
protected |
Definition at line 114 of file CDisplayWindow3D.h.
|
protected |
Definition at line 117 of file CDisplayWindow3D.h.
Referenced by grabImageGetNextFile(), and grabImagesStart().
|
protected |
Definition at line 116 of file CDisplayWindow3D.h.
Referenced by grabImageGetNextFile(), grabImagesStart(), and grabImagesStop().
|
protectedinherited |
The window handle.
Definition at line 64 of file CBaseGUIWindow.h.
Referenced by addTextMessage(), clearTextMessages(), forceRepaint(), getCameraAzimuthDeg(), getCameraElevationDeg(), getCameraPointingToPoint(), getCameraZoom(), getFOV(), mrpt::gui::CDisplayWindow::getLastMousePosition(), mrpt::gui::CDisplayWindowPlots::getLastMousePosition(), getLastMousePosition(), isCameraProjective(), setCameraAzimuthDeg(), setCameraElevationDeg(), setCameraPointingToPoint(), setCameraProjective(), setCameraZoom(), mrpt::gui::CDisplayWindow::setCursorCross(), mrpt::gui::CDisplayWindowPlots::setCursorCross(), setCursorCross(), setFOV(), mrpt::gui::CDisplayWindow::showImage(), and useCameraFromScene().
|
protected |
Definition at line 119 of file CDisplayWindow3D.h.
Referenced by captureImagesStart(), and captureImagesStop().
|
protectedinherited |
Definition at line 67 of file CBaseGUIWindow.h.
Referenced by mrpt::gui::CWindowDialog::OnChar().
|
protectedinherited |
Definition at line 68 of file CBaseGUIWindow.h.
Referenced by mrpt::gui::CWindowDialog::OnChar().
|
protectedinherited |
Definition at line 69 of file CBaseGUIWindow.h.
Referenced by mrpt::gui::CWindowDialog::OnChar().
|
protected |
Definition at line 120 of file CDisplayWindow3D.h.
Referenced by getLastWindowImage(), and getLastWindowImagePtr().
|
protected |
Definition at line 121 of file CDisplayWindow3D.h.
Referenced by getLastWindowImage(), and getLastWindowImagePtr().
|
protected |
Definition at line 127 of file CDisplayWindow3D.h.
Referenced by internal_setRenderingFPS().
|
protected |
Definition at line 125 of file CDisplayWindow3D.h.
|
protectedinherited |
This semaphore will be signaled when the wx window is built and ready.
Definition at line 61 of file CBaseGUIWindow.h.
|
protectedinherited |
This semaphore will be signaled when the wx window is destroyed.
Definition at line 62 of file CBaseGUIWindow.h.
Referenced by mrpt::gui::CWindowDialog::OnClose(), and mrpt::gui::C3DWindowDialog::OnClose().
Page generated by Doxygen 1.8.14 for MRPT 1.5.7 Git: 5902e14cc Wed Apr 24 15:04:01 2019 +0200 at lun oct 28 01:39:17 CET 2019 |