Giter Site home page Giter Site logo

See the CGoGN Web site for more informations.

We provide:

  • CGoGN the core library
  • tutorials and examples
  • SCHNApps an integrated interface with plugin system.

CGoGN and SCHNApps are compatible with Linux, Mac and Windows The usage of C++11 enforce the usage of recent compilers (g++4.8, clang3.0, cl18)

Linux

Dependencies

  • install for following package cmake cmake-curses-gui cmake-qt-gui libXi-dev libXmu-dev libglew-dev zlib1g-dev uuid-dev libgsl0-dev libsuitesparse-dev python2.7-dev
  • for Qt4: libqt4-dev qt4-dev-tools qtcreator
  • for Qt5: qt5-default qtbase5-dev-tools qtcreator libqt5svg5-dev libqt5opengl5-dev

Supported compilers: g++ 4.8 or greater

Compiling

  • Launch cmake in a build directory with path to the CGoGN root directory as source parameter
  • If directory name finish by 'Debug' compilation is done in Debug mode, else in Release mode
  • Go in build directory and make (-j4 in your machine is 4 core)

CMake options (using gui or ccmake)

  • CGoGN_WITH_ASSIMP: build CGoGN with Assimp (or not)
  • CGoGN_WITH_ZINRI: build CGoGN with Zinri lib (or not)
  • CGoGN_WITH_QT: build CGoGN with Qt (or not)
  • CGoGN_DESIRED_QT_VERSION: Choose 4 or 5"
  • CGoGN_WITH_GLEWMX: use (or not) multi-contex GLEW (for VRJuggler).
  • CGoGN_USE_OGL_CORE_PROFILE: use (or not) OpenGL 3.3 core profile.
  • CGoGN_COMPILE_EXAMPLES: compile the examples.
  • CGoGN_COMPILE_TUTOS: compile the tutorials.
  • CGoGN_COMPILE_TESTS: compile the tests.
  • CGoGN_COMPILE_BENCHES: compile the benches.
  • CGoGN_COMPILE_SANDBOX: compile all in sandbox
  • CGoGN_ONELIB: build CGoGN in one lib instead of 4 separated libs

By default libraries are generated in dynamic version.

You can ideally do the same with QtCreator

Same compilation system for SCHNApps.

MacOS

Dependencies

  • XCode and command line tools.
  • Qt4 or Qt5 and QtCreator (native or with homebrew)
  • cmake (native or with homebrew)
  • install with homebrew : lzlib, glew, suite-sparse (you must first add the homebrew/science repository with the following command : brew tap homebrew/science)
  • for macport user installation of suite sparse must be done with "+metis" (sudo port install SuiteSparse +metis)

Supported compilers: clang 3.0 or greater

Compiling

As on linux

CMake Qt detection problem

If Qt is not found, add path to Qt to CMAKE_PREFIX_PATH variable.

Executables generation

For best system compatibility executables are generated in bin/Release/Contents/MacOS

Window

Dependencies

  • install (or compile) Qt (choose 32/64 bits)
  • install python 2.7 (choose 32/64 bits) (Needed for SCHNApps)
  • Other Windows dependencies are furnished at: http://cgogn.unistra.fr/download

Supported compilers: Visual C++ 2013 (12.0) or greater

Environment variables

  • set PYTHON_PATH to your python installation directory
  • set PYTHON_LIB to your python installation directory + \lib
  • add xxx\windows_dependencies\lib to PATH
  • add path to bin of Qt to PATH

Compiling

  • Use CMake with a build directory and path to the CGoGN root directory as source parameter
  • for CMake options see Linux compiling
  • generated visual solution (choose right compiler type)
  • launch Visual Studio !
  • build solution after choosing Debug/Release

CMake Qt detection problem

If Qt is not found set the QT_QMAKE_EXECUTABLE cmake variable.

DLL/Executables generation

To avoid dll loading problem, all dll and executable (even SCHNApps) are generated in bin/Release or bin/Debug of CGoGN root directory.

Same compilation system for SCHNApps.

Compiling simple application

To compile a Qt application using Qt, you just need to include apps_cmake.txt after setting the CGoGN_ROOT_DIR variable. See example provided in apps_cmake.txt comments.

cgogn's Projects

cgogn icon cgogn

Combinatorial and Geometric modeling with Generic N-dimensional Maps

cgogn_2 icon cgogn_2

n-dimensional Meshes with Combinatorial Maps

cgogn_3 icon cgogn_3

n-dimensional Meshes with Combinatorial Maps

cgogn_3b icon cgogn_3b

n-dimensional Meshes with Combinatorial Maps

schnapps icon schnapps

SCHNApps is a modular application with a QT UI for CGoGN (https://github.com/cgogn/CGoGN_2)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.