Commit 44c3f5e8 authored by Sylvain Thery's avatar Sylvain Thery

repertoire build vide

Attention, maintenant faire cd build; cmake ..
parent e594fba4
......@@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 2.8)
project(CGoGN)
SET(CGoGN_ROOT_DIR ${CMAKE_SOURCE_DIR}/..)
SET(CGoGN_ROOT_DIR ${CMAKE_SOURCE_DIR})
# for GLEW
SET(CMAKE_MODULE_PATH ${CGoGN_ROOT_DIR}/cmake_modules/)
......
......@@ -5,9 +5,10 @@ cmake libXi-dev libXmu-dev libglew-dev libxml2-dev libboost-all-dev zlib1g-dev q
Pour compiler CGoGN:
- aller dans ThirdParty, cd build, taper "cmake ..", puis make ( avec -j x si vous avez x core sur votre machine)
On peut fixer certaines option pour ne pas tout compiler (cf le README.TXT dans ThirdParty)
On peut aussi compiler en debug en créant un répertoir qui fini par Debug à la place de build
- aller dans build et taper "cmake .", puis make
Des options sont ici aussi disponible:
- aller dans build et taper "cmake ..", puis make
Des options (booléennes) sont ici aussi disponible:
BUILD_SHARED_LIBS (F) experimental !
WITH_ASSIMP (T)
WITH_NUMERICAL (T)
......@@ -15,7 +16,6 @@ Pour compiler CGoGN:
WITH_QT (T)
afin de limiter les dépendances et le temps de compilation/
- la compilation des sous-parties se fait en allant dans les sous-repertoires de build
......@@ -23,7 +23,6 @@ Les applications (Examples et Tutos) sont dans le répertoire Apps
Les binaires sont générés dans le repertoire bin
Des exemples de données:
- fichiers trianbgz
- fichiers png (contenant des images voxel 3D)
......
......@@ -10,7 +10,7 @@ Le CMakeLists.txt a la racine de l'application doit commencer par
cmake_minimum_required(VERSION 2.8)
PROJECT(NOM_DE_L_APPLICATION)
SET(CGoGN_ROOT_DIR ${CMAKE_SOURCE_DIR}/../../CGoGN)
INCLUDE(${CGoGN_ROOT_DIR}/build/apps_cmake.txt)
INCLUDE(${CGoGN_ROOT_DIR}/apps_cmake.txt)
Le ../../CGoGN correspond au chemin relatif vers votre version de CGoGN
(ici placée au même niveau que CGoGN_Apps)
......
......@@ -12,10 +12,12 @@ pour eviter les pb de compilation.
Le plus sur mais plus long est de compiler soi-même Qt et Boost (bon courage)
Lancer CMake
Pour les "ThirdParty libs":
Lancer CMake (gui)
Mettre le chemin de la racine de CGoGN + /ThirdParty pour les sources
Mettre le chemin de la racine de CGoGN + /ThirdParty/buildRelease pour le build en release
Mettre le chemin de la racine de CGoGN + /ThirdParty/buildDebug pour le build en debug
Sous windows les 2 versions sont nécessaires.
La suite vaut pour les 2 répertoires:
Cliquer sur Configure
Choisir le bon compilateur (celui de votre version de Visual C++)
......@@ -25,9 +27,10 @@ Recliquer sur Configure
Cliquer sur Generate
Aller compiler sous visual(en release)
Pour CGoGN:
Relancer CMake
Mettre le chemin de la racine de CGoGN + /build pour les sources
Mettre le chemin de la racine de CGoGN + /Visual (par exemple) pour le build
Mettre le chemin de la racine de CGoGN pour les sources
Mettre le chemin de la racine de CGoGN + /build (par exemple) pour le build
Cliquer sur Configure
Choisir le bon compilateur (celui de votre version de Visual C++)
Modifier les variables comme pour ThirdParty (et CMAKE_PREFIX_PATH si nécessaire)
......
......@@ -270,7 +270,6 @@ ImageData<DIM,TYPE>(size)
template < unsigned int DIM, typename TYPE >
Image<DIM,TYPE>::~Image()
{
delete[] m_data_ptr;
this->m_data_ptr = NULL;
}
......@@ -307,8 +306,8 @@ bool Image<DIM,TYPE>::load(const unsigned char *ptr, unsigned int w, unsigned in
if (this->m_data_ptr != NULL)
delete[] this->m_data_ptr;
this->m_data_ptr = new T[sizeof(TYPE)*w*h];
memcpy(this->m_data_ptr, img.bits(), sizeof(TYPE)*w*h);
this->m_data_ptr = new TYPE[sizeof(TYPE)*w*h];
memcpy(this->m_data_ptr, ptr, sizeof(TYPE)*w*h);
this->m_size[0] = w;
this->m_size[1] = h;
......@@ -384,9 +383,9 @@ void Image<DIM,TYPE>::save(const std::string& filename)
{
CGoGN_STATIC_ASSERT(DIM==2, incompatible_Vector_constructor_dimension);
QImage* ptrIm = NULL;
if (this->m_data_ptr != NULL)
{
QImage* ptrIm = NULL;
switch(sizeof(TYPE))
{
case 1:
......@@ -402,8 +401,11 @@ void Image<DIM,TYPE>::save(const std::string& filename)
break;
}
}
ptrIm->save(QString(filename.c_str()));
delete ptrIm;
if (ptrIm != NULL)
{
ptrIm->save(QString(filename.c_str()));
delete ptrIm;
}
}
#endif
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment