Skip to content

Commit

Permalink
- compile with osg
Browse files Browse the repository at this point in the history
  • Loading branch information
vwaurich committed Aug 22, 2016
1 parent c10ebe7 commit b1db329
Show file tree
Hide file tree
Showing 5 changed files with 75 additions and 4 deletions.
43 changes: 41 additions & 2 deletions OMEdit/OMEditGUI/Animation/AnimationWindowContainer.cpp
Expand Up @@ -34,7 +34,6 @@

#include "AnimationWindowContainer.h"


/*!
\class AnimationWindowContainer
\brief A MDI area for animation windows.
Expand All @@ -44,17 +43,57 @@
* \param pParent
*/
AnimationWindowContainer::AnimationWindowContainer(MainWindow *pParent)
: MdiArea(pParent)
: MdiArea(pParent),
osgViewer::CompositeViewer()
{
if (mpMainWindow->getOptionsDialog()->getAnimationPage()->getAnimationViewMode().compare(Helper::subWindow) == 0) {
setViewMode(QMdiArea::SubWindowView);
} else {
setViewMode(QMdiArea::TabbedView);
}

//time slider
_timeSlider = new QSlider(Qt::Horizontal, this);
_timeSlider->setFixedHeight(30);
_timeSlider->setMinimum(0);
_timeSlider->setMaximum(100);
_timeSlider->setSliderPosition(50);

//osg::ref_ptr<osgQt::GraphicsWindowQt> window = createGraphicsWindow(0, 0, 100, 100);
_sceneView = new osgViewer::View();
osgViewer::CompositeViewer::addView(_sceneView);
osg::ref_ptr<osg::Camera> camera = _sceneView->getCamera();

osg::ref_ptr<osg::GraphicsContext::Traits> traits = new osg::GraphicsContext::Traits();



// dont show this widget at startup
setVisible(false);
}

/*
osg::ref_ptr<osgQt::GraphicsWindowQt> AnimationWindowContainer::createGraphicsWindow(int x, int y, int w, int h,
const std::string& name, bool windowDecoration)
{
osg::ref_ptr<osg::DisplaySettings> ds = osg::DisplaySettings::instance().get();
osg::ref_ptr<osg::GraphicsContext::Traits> traits = new osg::GraphicsContext::Traits();
traits->windowName = name;
traits->windowDecoration = windowDecoration;
traits->x = x;
traits->y = y;
traits->width = w;
traits->height = h;
traits->doubleBuffer = true;
traits->alpha = ds->getMinimumNumAlphaBits();
traits->stencil = ds->getMinimumNumStencilBits();
traits->sampleBuffers = ds->getMultiSamples();
traits->samples = ds->getNumMultiSamples();
return new osgQt::GraphicsWindowQt(traits.get());
}
*/

/*!
* \brief AnimationWindowContainer::getUniqueName
* Returns a unique name for new animation window.
Expand Down
22 changes: 21 additions & 1 deletion OMEdit/OMEditGUI/Animation/AnimationWindowContainer.h
Expand Up @@ -37,14 +37,34 @@

#include "MainWindow.h"

#include <osgViewer/CompositeViewer>
#include <osgViewer/View>
#include <osgDB/ReadFile>
#include <osgGA/MultiTouchTrackballManipulator>
#include <osgViewer/ViewerEventHandlers>
#include <osg/Vec3>
#include <osg/io_utils>
#include <osg/MatrixTransform>
#include <osg/GraphicsContext>

#include <QtOpenGL/QGLWidget>
//#include <osgQt/GraphicsWindowQt>



class MainWindow;

class AnimationWindowContainer : public MdiArea
class AnimationWindowContainer : public MdiArea, public osgViewer::CompositeViewer
{
Q_OBJECT
public:
AnimationWindowContainer(MainWindow *pParent);
QString getUniqueName(QString name = QString("Animation"), int number = 4);
QSlider* _timeSlider;
//osg::ref_ptr<osgQt::GraphicsWindowQt> createGraphicsWindow(int x, int y, int w, int h, const std::string& name, bool windowDecoration)

osgViewer::View* _sceneView;
osg::ref_ptr<osg::GraphicsContext::Traits> traits;
};

#endif // ANIMATIONWINDOWCONTAINER_H
3 changes: 2 additions & 1 deletion OMEdit/OMEditGUI/OMEditGUI.pro
Expand Up @@ -76,7 +76,8 @@ win32 {
LIBS += -L../OMEditGUI/Debugger/Parser -lGDBMIParser \
-L$$(OMBUILDDIR)/lib/omc -lomantlr3 -lOMPlot -lomqwt \
-lOpenModelicaCompiler -lOpenModelicaRuntimeC -lfmilib -lModelicaExternalC -lomcgc -lpthread \
-lws2_32
-lws2_32 \
-L$$(OMDEV)/tools/msys/mingw32/lib -llibosg.dll -llibosgViewer.dll -llibosgQt.dll -llibOpenThreads.dll
INCLUDEPATH += $$(OMBUILDDIR)/include/omplot \
$$(OMBUILDDIR)/include/omplot/qwt \
$$(OMBUILDDIR)/include/omc/antlr3 $$(OMBUILDDIR)/include/omc/c
Expand Down
10 changes: 10 additions & 0 deletions OMEdit/OMEditGUI/Options/OptionsDialog.cpp
Expand Up @@ -591,6 +591,16 @@ void OptionsDialog::readPlottingSettings()
}
}

//! Reads the Animation section settings from omedit.ini
void OptionsDialog::readAnimationSettings()
{
// read the auto scale
if (mpSettings->contains("animation/autoScale")) {
mpPlottingPage->getAutoScaleCheckBox()->setChecked(mpSettings->value("animation/autoScale").toBool());
}
}


//! Reads the Fiagro section settings from omedit.ini
void OptionsDialog::readFigaroSettings()
{
Expand Down
1 change: 1 addition & 0 deletions OMEdit/OMEditGUI/Options/OptionsDialog.h
Expand Up @@ -82,6 +82,7 @@ class OptionsDialog : public QDialog
void readLineStyleSettings();
void readFillStyleSettings();
void readPlottingSettings();
void readAnimationSettings();
void readFigaroSettings();
void readDebuggerSettings();
void readFMISettings();
Expand Down

0 comments on commit b1db329

Please sign in to comment.