mirror of https://github.com/CGAL/cgal
enhance the conditional build of the edit plugin
This commit is contained in:
parent
a72ba8fac3
commit
abae9100f0
|
|
@ -120,7 +120,6 @@ if(CGAL_Qt4_FOUND AND QT4_FOUND AND OPENGL_FOUND AND QGLVIEWER_FOUND)
|
|||
qt4_wrap_ui( PreferencesUI_FILES Preferences.ui )
|
||||
qt4_wrap_ui( point_inside_polyhedronUI_FILES Point_inside_polyhedron_widget.ui)
|
||||
qt4_wrap_ui( polyhedron_slicerUI_FILES Polyhedron_slicer_widget.ui)
|
||||
qt4_wrap_ui( editionUI_FILES Deform_mesh.ui )
|
||||
qt4_wrap_ui( funcUI_FILES Function_dialog.ui )
|
||||
|
||||
qt4_generate_moc( "MainWindow.h" "${CMAKE_CURRENT_BINARY_DIR}/MainWindow_moc.cpp" )
|
||||
|
|
@ -145,7 +144,6 @@ if(CGAL_Qt4_FOUND AND QT4_FOUND AND OPENGL_FOUND AND QGLVIEWER_FOUND)
|
|||
Scene_polyhedron_item.cpp
|
||||
Scene_polyhedron_transform_item.cpp
|
||||
Scene_polylines_item.cpp
|
||||
Scene_edit_polyhedron_item.cpp
|
||||
Scene_textured_polyhedron_item.cpp
|
||||
Scene_c2t3_item.cpp
|
||||
Scene_nef_polyhedron_item.cpp
|
||||
|
|
@ -212,11 +210,6 @@ if(CGAL_Qt4_FOUND AND QT4_FOUND AND OPENGL_FOUND AND QGLVIEWER_FOUND)
|
|||
|
||||
add_item(custom_manipulated_frame Custom_manipulated_frame.cpp Custom_manipulated_frame.moc)
|
||||
|
||||
add_item(scene_edit_polyhedron_item Scene_edit_polyhedron_item.cpp Scene_edit_polyhedron_item.moc ${editionUI_FILES})
|
||||
# special
|
||||
target_link_libraries(scene_edit_polyhedron_item scene_polyhedron_item custom_manipulated_frame)
|
||||
|
||||
|
||||
if(EIGEN3_FOUND OR TAUCS_FOUND)
|
||||
add_item(scene_textured_polyhedron_item Scene_textured_polyhedron_item.cpp texture.cpp Scene_textured_polyhedron_item.moc)
|
||||
endif(EIGEN3_FOUND OR TAUCS_FOUND)
|
||||
|
|
@ -418,9 +411,18 @@ if(CGAL_Qt4_FOUND AND QT4_FOUND AND OPENGL_FOUND AND QGLVIEWER_FOUND)
|
|||
|
||||
polyhedron_demo_plugin(trivial_plugin Polyhedron_demo_trivial_plugin)
|
||||
|
||||
if(TAUCS_FOUND OR EIGEN3_FOUND )
|
||||
# Edit polyhedron scene item and plugin
|
||||
if ( TAUCS_FOUND OR ( EIGEN3_FOUND AND ( SUPERLU_FOUND OR ( "${EIGEN3_VERSION}" VERSION_GREATER "3.1.90" ) ) ) )
|
||||
qt4_wrap_ui( editionUI_FILES Deform_mesh.ui )
|
||||
qt4_automoc( Scene_edit_polyhedron_item.cpp )
|
||||
add_item(scene_edit_polyhedron_item Scene_edit_polyhedron_item.cpp Scene_edit_polyhedron_item.moc ${editionUI_FILES})
|
||||
|
||||
target_link_libraries(scene_edit_polyhedron_item scene_polyhedron_item custom_manipulated_frame)
|
||||
|
||||
polyhedron_demo_plugin(edit_polyhedron_plugin Polyhedron_demo_edit_polyhedron_plugin ${editionUI_FILES})
|
||||
target_link_libraries(edit_polyhedron_plugin scene_polyhedron_item scene_edit_polyhedron_item)
|
||||
else()
|
||||
message(STATUS "NOTICE: Nor Eigen 3.1.91, nor Eigen 3.1 and SuperLU, nor TAUCS were found. Polyhedron edit plugin will not be available.")
|
||||
endif()
|
||||
|
||||
polyhedron_demo_plugin(cut_plugin Polyhedron_demo_cut_plugin)
|
||||
|
|
|
|||
|
|
@ -20,9 +20,14 @@
|
|||
#define CGAL_EIGEN_SOLVER_TRAITS_H
|
||||
|
||||
#include <CGAL/basic.h> // include basic.h before testing #defines
|
||||
|
||||
#include <Eigen/Sparse>
|
||||
#if EIGEN_VERSION_AT_LEAST(3, 1, 91)
|
||||
#include <Eigen/SparseLU>
|
||||
#endif
|
||||
#if defined(CGAL_SUPERLU_ENABLED)
|
||||
#include <Eigen/SuperLUSupport>
|
||||
#endif
|
||||
|
||||
#include <CGAL/Eigen_matrix.h>
|
||||
#include <CGAL/Eigen_vector.h>
|
||||
#include <boost/shared_ptr.hpp>
|
||||
|
|
@ -45,11 +50,12 @@ namespace internal {
|
|||
struct Get_eigen_matrix< ::Eigen::SimplicialCholesky<EigenMatrix>,FT>{
|
||||
typedef Eigen_sparse_symmetric_matrix<FT> type;
|
||||
};
|
||||
|
||||
#if EIGEN_VERSION_AT_LEAST(3, 1, 91)
|
||||
template <class FT, class EigenMatrix, class EigenOrdering>
|
||||
struct Get_eigen_matrix< ::Eigen::SparseLU<EigenMatrix, EigenOrdering >, FT> {
|
||||
typedef Eigen_sparse_matrix<FT> type;
|
||||
};
|
||||
#endif
|
||||
} //internal
|
||||
|
||||
/// The class Eigen_solver_traits
|
||||
|
|
|
|||
|
|
@ -36,15 +36,7 @@
|
|||
// for default parameters
|
||||
#if defined(CGAL_EIGEN3_ENABLED)
|
||||
#include <CGAL/Eigen_solver_traits.h> // for sparse linear system solver
|
||||
|
||||
#include <CGAL/Deformation_Eigen_polar_closest_rotation_traits_3.h> // for 3x3 closest rotation computer
|
||||
|
||||
#if defined(CGAL_SUPERLU_ENABLED)
|
||||
#include <Eigen/SuperLUSupport>
|
||||
#else
|
||||
#include <Eigen/SparseLU>
|
||||
#endif
|
||||
|
||||
#include <CGAL/Deformation_Eigen_polar_closest_rotation_traits_3.h> // for 3x3 closest rotation computer
|
||||
#endif
|
||||
|
||||
namespace CGAL {
|
||||
|
|
|
|||
Loading…
Reference in New Issue