53 #include <visp3/core/vpConfig.h>
55 #ifdef VISP_HAVE_COIN3D_AND_GUI
57 #if defined(VISP_HAVE_SOWIN)
59 #include <Inventor/Win/SoWin.h>
60 #include <Inventor/Win/viewers/SoWinExaminerViewer.h>
62 #elif defined(VISP_HAVE_SOQT)
64 #include <Inventor/Qt/SoQt.h>
65 #include <Inventor/Qt/viewers/SoQtExaminerViewer.h>
67 #elif defined(VISP_HAVE_SOXT)
69 #include <Inventor/Xt/SoXt.h>
70 #include <Inventor/Xt/viewers/SoXtExaminerViewer.h>
76 #include <Inventor/nodes/SoBaseColor.h>
77 #include <Inventor/nodes/SoCone.h>
78 #include <Inventor/nodes/SoCube.h>
79 #include <Inventor/nodes/SoImage.h>
80 #include <Inventor/nodes/SoLightModel.h>
81 #include <Inventor/nodes/SoPerspectiveCamera.h>
82 #include <Inventor/nodes/SoRotationXYZ.h>
83 #include <Inventor/nodes/SoSeparator.h>
84 #include <Inventor/nodes/SoTranslation.h>
85 #include <Inventor/sensors/SoTimerSensor.h>
87 #if defined(VISP_HAVE_SOWIN)
89 #elif defined(VISP_HAVE_SOQT)
91 #elif defined(VISP_HAVE_SOXT)
96 #include <visp3/core/vpCameraParameters.h>
97 #include <visp3/core/vpDebug.h>
98 #include <visp3/core/vpHomogeneousMatrix.h>
116 #if defined(VISP_HAVE_SOWIN)
117 class VISP_EXPORT
vpViewer :
public SoWinExaminerViewer
118 #elif defined(VISP_HAVE_SOQT)
119 class VISP_EXPORT
vpViewer :
public SoQtExaminerViewer
120 #elif defined(VISP_HAVE_SOXT)
121 class VISP_EXPORT
vpViewer :
public SoXtExaminerViewer
129 #if defined(VISP_HAVE_SOWIN)
131 #elif defined(VISP_HAVE_SOQT)
133 #elif defined(VISP_HAVE_SOXT)
138 void resize(
int x,
int y,
bool fixed =
false);
142 vpViewerType viewerType;
144 SbBool processSoEvent(
const SoEvent *
const event);
145 #if defined(VISP_HAVE_SOWIN)
146 static HWND
init(
const char *appname) {
return SoWin::init(appname); };
147 static void mainLoop() { SoWin::mainLoop(); };
148 static void exitMainLoop() { SoWin::exitMainLoop(); };
149 #elif defined(VISP_HAVE_SOQT)
150 static QWidget *
init(
const char *appname) {
return SoQt::init(appname); };
151 static void mainLoop() { SoQt::mainLoop(); };
152 static void exitMainLoop() { SoQt::exitMainLoop(); };
153 #elif defined(VISP_HAVE_SOXT)
154 static Widget
init(
const char *appname) {
return SoXt::init(appname); };
155 static void mainLoop() { SoXt::mainLoop(); };
156 static void exitMainLoop() { SoXt::exitMainLoop(); };
Implementation of a simulator based on Coin3d (www.coin3d.org).
virtual void mainLoop()
activate the mainloop
void init()
perform some initialization
vpViewer * externalView
view from an external camera
Viewer used by the simulator.
void resize(int x, int y, bool fixed=false)
virtual void actualRedraw(void)
vpViewer(HWND parent, vpSimulator *simu, vpViewerType type)