Page MenuHomePhabricator

0001-Changes-to-make-sources-compatible-with-SOFA-16.12.patch

Authored By
menguy
Sep 6 2017, 4:59 PM
Size
15 KB
Referenced Files
None
Subscribers
None

0001-Changes-to-make-sources-compatible-with-SOFA-16.12.patch

From 977f5351b9fdc3461a23c3d9072ac2d5753dce3e Mon Sep 17 00:00:00 2001
From: Camille KREWCUN <camille.krewcun@uca.fr>
Date: Fri, 4 Aug 2017 17:12:13 +0200
Subject: [PATCH 1/2] Changes to make MITK Simulation's sources compatible with SOFA 16.12
Signed-off-by: Camille KREWCUN <camille.krewcun@uca.fr>
---
Modules/Simulation/CMakeLists.txt | 2 ++
Modules/Simulation/mitkExportMitkVisitor.cpp | 2 +-
Modules/Simulation/mitkExportMitkVisitor.h | 2 +-
Modules/Simulation/mitkIndexROI.cpp | 2 +-
Modules/Simulation/mitkPlaneIntersectionVisitor.cpp | 2 +-
Modules/Simulation/mitkPlaneIntersectionVisitor.h | 2 +-
Modules/Simulation/mitkSetVtkRendererVisitor.h | 2 +-
Modules/Simulation/mitkSimulation.cpp | 3 ++-
Modules/Simulation/mitkSimulation.h | 2 +-
Modules/Simulation/mitkSimulationInteractor.cpp | 20 ++++++++++----------
Modules/Simulation/mitkSimulationObjectFactory.cpp | 5 -----
Modules/Simulation/mitkSimulationService.cpp | 10 ++++++++++
Modules/Simulation/mitkSimulationVtkMapper3D.cpp | 2 +-
Modules/Simulation/mitkVtkModel.h | 2 +-
.../src/internal/QmitkSceneTreeWidget.cpp | 4 ++--
.../src/internal/QmitkSceneTreeWidget.h | 2 +-
.../src/internal/org_mitk_simulation_Activator.cpp | 10 ++++++++++
.../src/internal/org_mitk_simulation_Activator.h | 1 +
.../org.mitk.simulation/src/mitkMeshMitkLoader.cpp | 20 ++++++++++----------
19 files changed, 57 insertions(+), 38 deletions(-)
diff --git a/Modules/Simulation/CMakeLists.txt b/Modules/Simulation/CMakeLists.txt
index b3ef1af..1c18842 100644
--- a/Modules/Simulation/CMakeLists.txt
+++ b/Modules/Simulation/CMakeLists.txt
@@ -1,8 +1,10 @@
+
MITK_CREATE_MODULE(
DEPENDS MitkSceneSerializationBase
PACKAGE_DEPENDS
PUBLIC SOFA
PRIVATE GLUT GLEW
+ AUTOLOAD_WITH MitkCore
)
if(TARGET ${MODULE_TARGET})
diff --git a/Modules/Simulation/mitkExportMitkVisitor.cpp b/Modules/Simulation/mitkExportMitkVisitor.cpp
index ce2c402..cce2116 100644
--- a/Modules/Simulation/mitkExportMitkVisitor.cpp
+++ b/Modules/Simulation/mitkExportMitkVisitor.cpp
@@ -18,7 +18,7 @@ See LICENSE.txt or http://www.mitk.org for details.
#include <mitkNodePredicateDataType.h>
#include <mitkSimulation.h>
#include <mitkSurface.h>
-#include <sofa/component/visualmodel/VisualModelImpl.h>
+#include <SofaBaseVisual/VisualModelImpl.h>
#include <vtkCellArray.h>
#include <vtkFloatArray.h>
#include <vtkPointData.h>
diff --git a/Modules/Simulation/mitkExportMitkVisitor.h b/Modules/Simulation/mitkExportMitkVisitor.h
index e498e4a..3297e31 100644
--- a/Modules/Simulation/mitkExportMitkVisitor.h
+++ b/Modules/Simulation/mitkExportMitkVisitor.h
@@ -18,7 +18,7 @@ See LICENSE.txt or http://www.mitk.org for details.
#define mitkExportMitkVisitor_h
#include <mitkDataStorage.h>
-#include <sofa/simulation/common/Visitor.h>
+#include <sofa/simulation/Visitor.h>
#include <MitkSimulationExports.h>
namespace mitk
diff --git a/Modules/Simulation/mitkIndexROI.cpp b/Modules/Simulation/mitkIndexROI.cpp
index ac4dd53..93ce0ee 100644
--- a/Modules/Simulation/mitkIndexROI.cpp
+++ b/Modules/Simulation/mitkIndexROI.cpp
@@ -48,7 +48,7 @@ void mitk::IndexROI::init()
if (loader != nullptr)
{
- BaseData* parent = loader->findField("position");
+ BaseData* parent = loader->findData("position");
if (parent != nullptr)
{
diff --git a/Modules/Simulation/mitkPlaneIntersectionVisitor.cpp b/Modules/Simulation/mitkPlaneIntersectionVisitor.cpp
index 6bf0e9d..67667e1 100644
--- a/Modules/Simulation/mitkPlaneIntersectionVisitor.cpp
+++ b/Modules/Simulation/mitkPlaneIntersectionVisitor.cpp
@@ -15,7 +15,7 @@ See LICENSE.txt or http://www.mitk.org for details.
===================================================================*/
#include "mitkPlaneIntersectionVisitor.h"
-#include <sofa/component/visualmodel/VisualModelImpl.h>
+#include <SofaBaseVisual/VisualModelImpl.h>
mitk::PlaneIntersectionVisitor::PlaneIntersectionVisitor(const Point3D& point, const Vector3D& normal, const sofa::core::ExecParams* params)
: Visitor(params),
diff --git a/Modules/Simulation/mitkPlaneIntersectionVisitor.h b/Modules/Simulation/mitkPlaneIntersectionVisitor.h
index 72ec905..8209a37 100644
--- a/Modules/Simulation/mitkPlaneIntersectionVisitor.h
+++ b/Modules/Simulation/mitkPlaneIntersectionVisitor.h
@@ -19,7 +19,7 @@ See LICENSE.txt or http://www.mitk.org for details.
#include <mitkPoint.h>
#include <mitkVector.h>
-#include <sofa/simulation/common/Visitor.h>
+#include <sofa/simulation/Visitor.h>
#include <MitkSimulationExports.h>
namespace mitk
diff --git a/Modules/Simulation/mitkSetVtkRendererVisitor.h b/Modules/Simulation/mitkSetVtkRendererVisitor.h
index bde9069..5553bb4 100644
--- a/Modules/Simulation/mitkSetVtkRendererVisitor.h
+++ b/Modules/Simulation/mitkSetVtkRendererVisitor.h
@@ -17,7 +17,7 @@ See LICENSE.txt or http://www.mitk.org for details.
#ifndef mitkSetVtkRendererVisitor_h
#define mitkSetVtkRendererVisitor_h
-#include <sofa/simulation/common/Visitor.h>
+#include <sofa/simulation/Visitor.h>
#include <MitkSimulationExports.h>
class vtkRenderer;
diff --git a/Modules/Simulation/mitkSimulation.cpp b/Modules/Simulation/mitkSimulation.cpp
index 3c81545..0218af6 100644
--- a/Modules/Simulation/mitkSimulation.cpp
+++ b/Modules/Simulation/mitkSimulation.cpp
@@ -15,7 +15,8 @@ See LICENSE.txt or http://www.mitk.org for details.
===================================================================*/
#include "mitkSimulation.h"
-#include <sofa/simulation/graph/DAGSimulation.h>
+#include <SofaSimulationGraph/DAGSimulation.h>
+#include <SofaSimulationCommon/xml/XML.h>
#include "mitkGeometry3D.h"
static sofa::simulation::Simulation::SPtr CreateSimulation()
diff --git a/Modules/Simulation/mitkSimulation.h b/Modules/Simulation/mitkSimulation.h
index cc1af57..4cc3f33 100644
--- a/Modules/Simulation/mitkSimulation.h
+++ b/Modules/Simulation/mitkSimulation.h
@@ -20,7 +20,7 @@ See LICENSE.txt or http://www.mitk.org for details.
#include <mitkBaseData.h>
#include <mitkSchedulableProcess.h>
#include <sofa/core/visual/DrawToolGL.h>
-#include <sofa/simulation/common/Simulation.h>
+#include <sofa/simulation/Simulation.h>
#include <MitkSimulationExports.h>
namespace mitk
diff --git a/Modules/Simulation/mitkSimulationInteractor.cpp b/Modules/Simulation/mitkSimulationInteractor.cpp
index 398631c..0fa8244 100644
--- a/Modules/Simulation/mitkSimulationInteractor.cpp
+++ b/Modules/Simulation/mitkSimulationInteractor.cpp
@@ -15,16 +15,16 @@ See LICENSE.txt or http://www.mitk.org for details.
===================================================================*/
#include <mitkInteractionPositionEvent.h>
-#include <sofa/component/collision/AttachBodyPerformer.h>
-#include <sofa/component/collision/ComponentMouseInteraction.h>
-#include <sofa/component/collision/FixParticlePerformer.h>
-#include <sofa/component/collision/RayContact.h>
-#include <sofa/component/collision/RayModel.h>
-#include <sofa/component/container/MechanicalObject.h>
-#include <sofa/simulation/common/CollisionVisitor.h>
-#include <sofa/simulation/common/DeleteVisitor.h>
-#include <sofa/simulation/common/MechanicalVisitor.h>
-#include <sofa/simulation/common/Node.h>
+#include <SofaUserInteraction/AttachBodyPerformer.h>
+#include <SofaUserInteraction/ComponentMouseInteraction.h>
+#include <SofaUserInteraction/FixParticlePerformer.h>
+#include <SofaUserInteraction/RayContact.h>
+#include <SofaUserInteraction/RayModel.h>
+#include <SofaBaseMechanics/MechanicalObject.h>
+#include <sofa/simulation/CollisionVisitor.h>
+#include <sofa/simulation/DeleteVisitor.h>
+#include <sofa/simulation/MechanicalVisitor.h>
+#include <sofa/simulation/Node.h>
#include <vtkCamera.h>
#include "mitkSimulation.h"
#include "mitkSimulationInteractor.h"
diff --git a/Modules/Simulation/mitkSimulationObjectFactory.cpp b/Modules/Simulation/mitkSimulationObjectFactory.cpp
index 2a8dbd2..4447760 100644
--- a/Modules/Simulation/mitkSimulationObjectFactory.cpp
+++ b/Modules/Simulation/mitkSimulationObjectFactory.cpp
@@ -23,19 +23,14 @@ See LICENSE.txt or http://www.mitk.org for details.
#include <mitkCoreObjectFactory.h>
#include <boost/core/ignore_unused.hpp>
#include <sofa/helper/system/glut.h>
-#include <sofa/component/init.h>
#include <sofa/core/ObjectFactory.h>
#include <sofa/core/visual/VisualParams.h>
-#include <sofa/simulation/common/xml/initXml.h>
static void InitializeSofa()
{
int argc = 0;
glutInit(&argc, nullptr);
- sofa::component::init();
- sofa::simulation::xml::initXml();
-
sofa::core::visual::VisualParams::defaultInstance()->setSupported(sofa::core::visual::API_OpenGL);
}
diff --git a/Modules/Simulation/mitkSimulationService.cpp b/Modules/Simulation/mitkSimulationService.cpp
index d7e1a35..68fe55c 100644
--- a/Modules/Simulation/mitkSimulationService.cpp
+++ b/Modules/Simulation/mitkSimulationService.cpp
@@ -39,10 +39,20 @@ static void SwitchSimuluationContext(mitk::Simulation::Pointer activeSimulation)
mitk::SimulationService::SimulationService()
: m_Scheduler(SchedulingAlgorithm::WeightedRoundRobin)
{
+ m_ActiveSimulation = Simulation::New();
+
+ sofa::simulation::setSimulation(m_ActiveSimulation->GetSOFASimulation().get());
+ sofa::core::visual::VisualParams::defaultInstance()->drawTool() = m_ActiveSimulation->GetDrawTool();
}
mitk::SimulationService::~SimulationService()
{
+ if (m_ActiveSimulation.IsNotNull())
+ {
+ sofa::simulation::setSimulation(NULL);
+ sofa::core::visual::VisualParams::defaultInstance()->drawTool() = NULL;
+ m_ActiveSimulation = nullptr;
+ }
}
mitk::Simulation::Pointer mitk::SimulationService::GetActiveSimulation() const
diff --git a/Modules/Simulation/mitkSimulationVtkMapper3D.cpp b/Modules/Simulation/mitkSimulationVtkMapper3D.cpp
index 4b56fff..0b9e342 100644
--- a/Modules/Simulation/mitkSimulationVtkMapper3D.cpp
+++ b/Modules/Simulation/mitkSimulationVtkMapper3D.cpp
@@ -18,7 +18,7 @@ See LICENSE.txt or http://www.mitk.org for details.
#include "mitkSimulation.h"
#include "mitkSimulationVtkMapper3D.h"
#include "mitkVtkSimulationPolyDataMapper3D.h"
-#include <sofa/component/visualmodel/VisualStyle.h>
+#include <SofaBaseVisual/VisualStyle.h>
#include <sofa/core/visual/VisualParams.h>
mitk::SimulationVtkMapper3D::LocalStorage::LocalStorage()
diff --git a/Modules/Simulation/mitkVtkModel.h b/Modules/Simulation/mitkVtkModel.h
index 7939e88..57267e5 100644
--- a/Modules/Simulation/mitkVtkModel.h
+++ b/Modules/Simulation/mitkVtkModel.h
@@ -21,7 +21,7 @@ See LICENSE.txt or http://www.mitk.org for details.
#include <mitkPoint.h>
#include <mitkSurface.h>
#include <mitkVector.h>
-#include <sofa/component/visualmodel/VisualModelImpl.h>
+#include <SofaBaseVisual/VisualModelImpl.h>
#include <sofa/helper/system/gl.h>
#include <vtkCellArray.h>
#include <vtkFloatArray.h>
diff --git a/Plugins/org.mitk.gui.qt.simulation/src/internal/QmitkSceneTreeWidget.cpp b/Plugins/org.mitk.gui.qt.simulation/src/internal/QmitkSceneTreeWidget.cpp
index c3946e2..3e9ce26 100644
--- a/Plugins/org.mitk.gui.qt.simulation/src/internal/QmitkSceneTreeWidget.cpp
+++ b/Plugins/org.mitk.gui.qt.simulation/src/internal/QmitkSceneTreeWidget.cpp
@@ -17,8 +17,8 @@ See LICENSE.txt or http://www.mitk.org for details.
#include "QmitkSceneTreeWidget.h"
#include <sofa/core/collision/CollisionGroupManager.h>
#include <sofa/core/collision/ContactManager.h>
-#include <sofa/simulation/common/Colors.h>
-#include <sofa/simulation/common/Node.h>
+#include <sofa/simulation/Colors.h>
+#include <sofa/simulation/Node.h>
template <class T>
static inline T* as(QmitkSceneTreeWidget::Base* base)
diff --git a/Plugins/org.mitk.gui.qt.simulation/src/internal/QmitkSceneTreeWidget.h b/Plugins/org.mitk.gui.qt.simulation/src/internal/QmitkSceneTreeWidget.h
index 09fe9f4..b083d5b 100644
--- a/Plugins/org.mitk.gui.qt.simulation/src/internal/QmitkSceneTreeWidget.h
+++ b/Plugins/org.mitk.gui.qt.simulation/src/internal/QmitkSceneTreeWidget.h
@@ -19,7 +19,7 @@ See LICENSE.txt or http://www.mitk.org for details.
#include <QMap>
#include <QTreeWidget>
-#include <sofa/simulation/common/MutationListener.h>
+#include <sofa/simulation/MutationListener.h>
namespace sofa
{
diff --git a/Plugins/org.mitk.simulation/src/internal/org_mitk_simulation_Activator.cpp b/Plugins/org.mitk.simulation/src/internal/org_mitk_simulation_Activator.cpp
index 78fdd5f..1629fe6 100644
--- a/Plugins/org.mitk.simulation/src/internal/org_mitk_simulation_Activator.cpp
+++ b/Plugins/org.mitk.simulation/src/internal/org_mitk_simulation_Activator.cpp
@@ -26,6 +26,12 @@ See LICENSE.txt or http://www.mitk.org for details.
#include <sofa/core/ObjectFactory.h>
#include <sofa/helper/system/PluginManager.h>
+#include <sofa/gui/Main.h>
+#include <SofaSimulationGraph/init.h>
+#include <mitkSimulation.h>
+#include <mitkISimulationService.h>
+#include "sofa/simulation/simulationcore.h"
+
static void RegisterSofaClasses()
{
int MeshMitkLoaderClass = sofa::core::RegisterObject("").add<mitk::MeshMitkLoader>();
@@ -90,6 +96,9 @@ void mitk::org_mitk_simulation_Activator::start(ctkPluginContext* context)
RegisterSofaClasses();
LoadSofaPlugins();
AddPropertyFilters();
+
+ sofa::gui::initMain();
+ sofa::simulation::graph::init();
QmitkNodeDescriptorManager* nodeDescriptorManager = QmitkNodeDescriptorManager::GetInstance();
@@ -102,5 +111,6 @@ void mitk::org_mitk_simulation_Activator::start(ctkPluginContext* context)
void mitk::org_mitk_simulation_Activator::stop(ctkPluginContext*)
{
+ sofa::simulation::graph::cleanup();
Context = nullptr;
}
diff --git a/Plugins/org.mitk.simulation/src/internal/org_mitk_simulation_Activator.h b/Plugins/org.mitk.simulation/src/internal/org_mitk_simulation_Activator.h
index ad63a1f..b309a4f 100644
--- a/Plugins/org.mitk.simulation/src/internal/org_mitk_simulation_Activator.h
+++ b/Plugins/org.mitk.simulation/src/internal/org_mitk_simulation_Activator.h
@@ -19,6 +19,7 @@ See LICENSE.txt or http://www.mitk.org for details.
#include <ctkPluginActivator.h>
+
namespace mitk
{
class org_mitk_simulation_Activator : public QObject, public ctkPluginActivator
diff --git a/Plugins/org.mitk.simulation/src/mitkMeshMitkLoader.cpp b/Plugins/org.mitk.simulation/src/mitkMeshMitkLoader.cpp
index f69e1ea..fb12574 100644
--- a/Plugins/org.mitk.simulation/src/mitkMeshMitkLoader.cpp
+++ b/Plugins/org.mitk.simulation/src/mitkMeshMitkLoader.cpp
@@ -105,11 +105,11 @@ bool mitk::MeshMitkLoader::load()
// polyData = vtkPolyData::SafeDownCast(transformFilter->GetOutputDataObject(0));
- sofa::helper::vector<sofa::defaulttype::Vector3>& positions = *this->positions.beginEdit();
- sofa::helper::vector<Edge>& edges = *this->edges.beginEdit();
- sofa::helper::vector<Triangle>& triangles = *this->triangles.beginEdit();
- sofa::helper::vector<Quad>& quads = *this->quads.beginEdit();
- sofa::helper::vector<sofa::helper::vector<unsigned int> > polygons = *this->polygons.beginEdit();
+ sofa::helper::vector<sofa::defaulttype::Vector3>& positions = *this->d_positions.beginEdit();
+ sofa::helper::vector<Edge>& edges = *this->d_edges.beginEdit();
+ sofa::helper::vector<Triangle>& triangles = *this->d_triangles.beginEdit();
+ sofa::helper::vector<Quad>& quads = *this->d_quads.beginEdit();
+ sofa::helper::vector<sofa::helper::vector<unsigned int> > polygons = *this->d_polygons.beginEdit();
vtkPoints* points = polyData->GetPoints();
vtkIdType numPoints = points->GetNumberOfPoints();
@@ -174,11 +174,11 @@ bool mitk::MeshMitkLoader::load()
}
}
- this->positions.endEdit();
- this->edges.endEdit();
- this->triangles.endEdit();
- this->quads.endEdit();
- this->polygons.endEdit();
+ this->d_positions.endEdit();
+ this->d_edges.endEdit();
+ this->d_triangles.endEdit();
+ this->d_quads.endEdit();
+ this->d_polygons.endEdit();
return true;
}
--
2.8.1.windows.1

File Metadata

Mime Type
text/x-diff
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
229676
Default Alt Text
0001-Changes-to-make-sources-compatible-with-SOFA-16.12.patch (15 KB)

Event Timeline