Skip to content

Commit 2daf7eb

Browse files
authored
Merge pull request #179 from LIHPC-Computational-Geometry/issue-234-dev
Issue 234 dev
2 parents 871a841 + 4da9521 commit 2daf7eb

File tree

6 files changed

+28
-5
lines changed

6 files changed

+28
-5
lines changed

src/Magix3D/CMakeLists.txt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,9 @@ install (
4747
# Le script de lancement de Magix3D :
4848
find_package (QtPython3 REQUIRED)
4949
set (QtPython_RUNTIME_DIR "${QtPython3_RUNTIME_DIR}")
50-
#find_package (LimaScripting) # Faut il ajouter le PATH à Lima si installé ailleurs ?
50+
# On ajoute Lima qui fait partie intégrante du package "maillage" :
51+
find_package (Lima REQUIRED COMPONENTS LimaScripting)
52+
set (LIMA_BINDING_DIR ${LimaScripting_RUNTIME_DIR})
5153
set (MAGIX3D_BINDING_INSTALL_DIR ${PYTHON_BINDING_DIR})
5254
find_package (VTK REQUIRED COMPONENTS vtksys )
5355
set (VTK_LIBRARY_PATH "${VTK_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}")

src/Magix3D/cmake/Magix3D.in

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,10 @@ ROOT_DIR=@CMAKE_INSTALL_PREFIX@
2424

2525
# Spécificités Magix3D :
2626
export QT_PYTHON_SCRIPTS_DIR=@QtPython_RUNTIME_DIR@
27-
export PYTHONPATH=@CMAKE_INSTALL_PREFIX@/@MAGIX3D_BINDING_INSTALL_DIR@:@ADDPYTHONPACKAGES@$PYTHONPATH
27+
export PYTHONPATH=@CMAKE_INSTALL_PREFIX@/@MAGIX3D_BINDING_INSTALL_DIR@:@LIMA_BINDING_DIR@:@ADDPYTHONPACKAGES@$PYTHONPATH
2828
export PYTHONPATH=@QtPython_RUNTIME_DIR@:$PYTHONPATH
2929
export MGX3D_PATH=@CMAKE_INSTALL_PREFIX@/@MAGIX3D_BINDING_INSTALL_DIR@
30+
export LIMA_PATH=@LIMA_BINDING_DIR@
3031
HELP_URL="-helpURL $ROOT_DIR/share/doc/@CMAKE_PROJECT_NAME@/sphinx"
3132
WIKI_URL="-wikiURL @URL_WIKI@"
3233
QUALIF_URL="-qualifURL @URL_QUALIF@"

src/Magix3D/cmake/Magix3DPython.py.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
import sys
55

6-
dependencies = "@ADDPYTHONPACKAGES@"
6+
dependencies = "@LIMA_BINDING_DIR@:@ADDPYTHONPACKAGES@"
77
dependencies_tmp = dependencies.split(":")
88

99
sys.path.insert(1,"@CMAKE_INSTALL_PREFIX@/@MAGIX3D_BINDING_INSTALL_DIR@")

src/Magix3DBatch/CMakeLists.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,10 @@ add_executable (${MAGIX3D_BATCH_EXE} Magix3DBatch.cpp)
1313
target_link_libraries (${MAGIX3D_BATCH_EXE} PUBLIC pyMagix3D)
1414
target_link_libraries (${MAGIX3D_BATCH_EXE} PUBLIC z) # Pour Qt sous Ubuntu installé via l'installeur Qt)
1515

16+
# On ajoute Lima qui fait partie intégrante du package "maillage" :
17+
find_package (Lima REQUIRED COMPONENTS LimaScripting)
18+
set (LIMA_BINDING_DIR ${LimaScripting_RUNTIME_DIR})
19+
1620
# INSTALL_RPATH modifie le rpath pour les libs internes au projet :
1721
set_target_properties (${MAGIX3D_BATCH_EXE} PROPERTIES INSTALL_RPATH_USE_LINK_PATH 1 INSTALL_RPATH ${CMAKE_PACKAGE_RPATH_DIR})
1822

src/Magix3DBatch/cmake/Magix3DBatch.in

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,9 @@ fi
2323
ROOT_DIR=@CMAKE_INSTALL_PREFIX@
2424

2525
# Spécificités Magix3D :
26-
export PYTHONPATH=@CMAKE_INSTALL_PREFIX@/@MAGIX3D_BINDING_INSTALL_DIR@:@ADDPYTHONPACKAGES@$PYTHONPATH
26+
export PYTHONPATH=@CMAKE_INSTALL_PREFIX@/@MAGIX3D_BINDING_INSTALL_DIR@:@LIMA_BINDING_DIR@:@ADDPYTHONPACKAGES@$PYTHONPATH
2727
export MGX3D_PATH=@CMAKE_INSTALL_PREFIX@/@MAGIX3D_BINDING_INSTALL_DIR@
28+
export LIMA_PATH=@LIMA_BINDING_DIR@
2829
DEFAULT_CONFIG="-defaultConfig $ROOT_DIR/etc/magix3d.xml"
2930
CONFIG_PATCHS="-userConfigPatchs $ROOT_DIR/etc/magix3d_patchs.xml"
3031

src/QtComponents/QtMgx3DMainWindow.cpp

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3521,7 +3521,8 @@ void QtMgx3DMainWindow::showReady ( )
35213521
CHECK_NULL_PTR_ERROR(_pythonPanel)
35223522
_pythonPanel->setInterpreterName("Magix3D interpreter");
35233523
// On facilite la tache de l'utilisateur : récupération du contexte de cette session :
3524-
char *env = getenv("MGX3D_PATH");
3524+
char* env = getenv ("MGX3D_PATH");
3525+
char* limaEnv = getenv ("LIMA_PATH");
35253526
if (0 != env)
35263527
{
35273528
_pythonPanel->executeCommand("import sys");
@@ -3532,6 +3533,20 @@ void QtMgx3DMainWindow::showReady ( )
35323533
UTF8String importLine(Charset::UTF_8);
35333534
importLine << "import pyMagix3D as " << getMgx3DAlias();
35343535
_pythonPanel->executeCommand(importLine);
3536+
3537+
if (0 != limaEnv)
3538+
{
3539+
const string comment = PythonLogOutputStream::toComment (UTF8String ("Pour une utilisation directe et scriptée de l'API Lima :", Charset::UTF_8));
3540+
_pythonPanel->executeCommand (comment);
3541+
const string limaPath (limaEnv);
3542+
UTF8String limaPathCmd (Charset::UTF_8);
3543+
limaPathCmd << "sys.path.append(\"" << limaPath << "\")";
3544+
_pythonPanel->executeCommand (limaPathCmd);
3545+
UTF8String limaImportLine (Charset::UTF_8);
3546+
limaImportLine << "from LimaScripting import *";
3547+
_pythonPanel->executeCommand (limaImportLine);
3548+
} // if (0 != limaEnv)
3549+
35353550
UTF8String contextLine(Charset::UTF_8);
35363551
contextLine << getContextAlias() << " = " << getMgx3DAlias()
35373552
<< ".getContext(\"" << getContext().getName() << "\")";

0 commit comments

Comments
 (0)