Giter Site home page Giter Site logo

cgogn / cgogn Goto Github PK

View Code? Open in Web Editor NEW
47.0 15.0 20.0 34.43 MB

Combinatorial and Geometric modeling with Generic N-dimensional Maps

Home Page: http://cgogn.github.io

CMake 0.27% C++ 97.35% C 1.43% GLSL 0.08% Makefile 0.32% Shell 0.36% XSLT 0.01% HTML 0.01% Python 0.03% Smarty 0.01% Cuda 0.02% QMake 0.05% CSS 0.03% Batchfile 0.01% M4 0.02% Objective-C 0.02% Roff 0.01%

cgogn's Introduction

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 People

Contributors

basilesauvage avatar brainstorm67 avatar circlingthesun avatar david-cazier avatar etienneschmitt avatar kvanhoey avatar nicolasmaire avatar pierrekraemer avatar sylvainthery avatar tewk avatar tjund avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cgogn's Issues

no windows_dependencies folder

Hi,I try to build CGOGN,but i encountered build mistakes when build "ALL BUILD" on Windows platform,i also find no windows_dependencies folder in this project.Can you help me?
image

Initialization of vertex embedding for EmbeddedMap3

The intialization of the vertex embedding for cutEdge in embeddedMap3 is commented out. Uncommenting fails so I copied and modified the edge embedding code:

if(isOrbitEmbedded<VERTEX>())
    {
        // embed the new darts created in the cut vertex
        Algo::Topo::setOrbitEmbedding<VERTEX>(*this, d, getEmbedding<VERTEX>(d)) ;
        // embed a new cell for the new vertex and copy the attributes' line (c) Lionel
        Algo::Topo::setOrbitEmbeddingOnNewCell<VERTEX>(*this, nd) ;
    }

I can submit a pull request but there are other changes that you may not want on my branch.

error : Undefined interface

Bonjour,

J’obtiens l'erreur surface_deformation.h(53): error : Undefined interface (53: Q_INTERFACES(CGoGN::SCHNApps::Plugin) lorsque je compile les plugins pour SCHNApps.

Malgré plusieurs tentative de debug, je n'arrive à aucuns résultats concluant.

Cordialement,
Sébastien

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.