Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
CGoGN
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
1
Issues
1
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
Operations
Operations
Incidents
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
CGoGN
CGoGN
Commits
09950e47
Commit
09950e47
authored
Jul 19, 2013
by
Thomas Jund
Browse files
Options
Browse Files
Download
Plain Diff
merge
parents
a9026e1f
5502db65
Changes
143
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
143 changed files
with
6918 additions
and
5387 deletions
+6918
-5387
Apps/Examples/clipping.cpp
Apps/Examples/clipping.cpp
+1
-1
Apps/Examples/frame_manip.cpp
Apps/Examples/frame_manip.cpp
+2
-2
Apps/Examples/texturesExample.cpp
Apps/Examples/texturesExample.cpp
+7
-7
Apps/Examples/texturesExample.h
Apps/Examples/texturesExample.h
+1
-1
Apps/Examples/viewer.cpp
Apps/Examples/viewer.cpp
+2
-1
Apps/Examples/viewer.h
Apps/Examples/viewer.h
+1
-0
Apps/Examples/volumeExplorer.cpp
Apps/Examples/volumeExplorer.cpp
+33
-22
Apps/Tuto/show_traversors.cpp
Apps/Tuto/show_traversors.cpp
+1
-1
Apps/Tuto/tuto5.cpp
Apps/Tuto/tuto5.cpp
+6
-6
Apps/Tuto/tuto_mt.cpp
Apps/Tuto/tuto_mt.cpp
+3
-3
Apps/Tuto/tuto_oper2.cpp
Apps/Tuto/tuto_oper2.cpp
+2
-1
Apps/Tuto/tuto_oper3.cpp
Apps/Tuto/tuto_oper3.cpp
+19
-8
Apps/Tuto/tuto_orbits.cpp
Apps/Tuto/tuto_orbits.cpp
+2
-2
CMakeLists.txt
CMakeLists.txt
+4
-3
README.TXT
README.TXT
+25
-13
README_MAC.TXT
README_MAC.TXT
+10
-2
SCHNApps/Plugins/differentialProperties/src/differentialProperties.cpp
...ins/differentialProperties/src/differentialProperties.cpp
+3
-0
SCHNApps/Plugins/render/src/renderDockTab.cpp
SCHNApps/Plugins/render/src/renderDockTab.cpp
+19
-10
SCHNApps/Plugins/renderExplod/src/renderExplodDockTab.cpp
SCHNApps/Plugins/renderExplod/src/renderExplodDockTab.cpp
+12
-6
SCHNApps/Plugins/renderScalar/forms/renderScalar.ui
SCHNApps/Plugins/renderScalar/forms/renderScalar.ui
+53
-26
SCHNApps/Plugins/renderScalar/include/renderScalar.h
SCHNApps/Plugins/renderScalar/include/renderScalar.h
+9
-0
SCHNApps/Plugins/renderScalar/include/renderScalarDockTab.h
SCHNApps/Plugins/renderScalar/include/renderScalarDockTab.h
+1
-0
SCHNApps/Plugins/renderScalar/src/renderScalar.cpp
SCHNApps/Plugins/renderScalar/src/renderScalar.cpp
+15
-1
SCHNApps/Plugins/renderScalar/src/renderScalarDockTab.cpp
SCHNApps/Plugins/renderScalar/src/renderScalarDockTab.cpp
+28
-10
SCHNApps/Plugins/renderTopoSurface/include/renderTopoSurface.h
...pps/Plugins/renderTopoSurface/include/renderTopoSurface.h
+4
-1
SCHNApps/Plugins/renderTopoSurface/src/renderTopoSurface.cpp
SCHNApps/Plugins/renderTopoSurface/src/renderTopoSurface.cpp
+16
-0
SCHNApps/Plugins/renderTopoSurface/src/renderTopoSurfaceDockTab.cpp
...lugins/renderTopoSurface/src/renderTopoSurfaceDockTab.cpp
+18
-9
SCHNApps/Plugins/renderVector/src/renderVectorDockTab.cpp
SCHNApps/Plugins/renderVector/src/renderVectorDockTab.cpp
+12
-7
SCHNApps/Plugins/surfaceDeformation/src/surfaceDeformationDockTab.cpp
...gins/surfaceDeformation/src/surfaceDeformationDockTab.cpp
+6
-3
SCHNApps/src/view.cpp
SCHNApps/src/view.cpp
+2
-2
apps_cmake.txt
apps_cmake.txt
+1
-3
include/Algo/Decimation/approximator.h
include/Algo/Decimation/approximator.h
+52
-168
include/Algo/Decimation/approximator.hpp
include/Algo/Decimation/approximator.hpp
+223
-0
include/Algo/Decimation/colorPerVertexApproximator.h
include/Algo/Decimation/colorPerVertexApproximator.h
+10
-12
include/Algo/Decimation/colorPerVertexApproximator.hpp
include/Algo/Decimation/colorPerVertexApproximator.hpp
+97
-1
include/Algo/Decimation/decimation.h
include/Algo/Decimation/decimation.h
+36
-8
include/Algo/Decimation/decimation.hpp
include/Algo/Decimation/decimation.hpp
+45
-91
include/Algo/Decimation/edgeSelector.h
include/Algo/Decimation/edgeSelector.h
+68
-78
include/Algo/Decimation/edgeSelector.hpp
include/Algo/Decimation/edgeSelector.hpp
+241
-289
include/Algo/Decimation/geometryApproximator.h
include/Algo/Decimation/geometryApproximator.h
+2
-3
include/Algo/Decimation/geometryApproximator.hpp
include/Algo/Decimation/geometryApproximator.hpp
+1
-4
include/Algo/Decimation/geometryPredictor.h
include/Algo/Decimation/geometryPredictor.h
+1
-1
include/Algo/Decimation/geometryPredictor.hpp
include/Algo/Decimation/geometryPredictor.hpp
+1
-1
include/Algo/Decimation/halfEdgeSelector.h
include/Algo/Decimation/halfEdgeSelector.h
+21
-608
include/Algo/Decimation/halfEdgeSelector.hpp
include/Algo/Decimation/halfEdgeSelector.hpp
+184
-2696
include/Algo/Decimation/lightfieldApproximator.h
include/Algo/Decimation/lightfieldApproximator.h
+0
-301
include/Algo/Decimation/lightfieldApproximator.hpp
include/Algo/Decimation/lightfieldApproximator.hpp
+0
-408
include/Algo/Decimation/predictor.h
include/Algo/Decimation/predictor.h
+1
-1
include/Algo/Decimation/selector.h
include/Algo/Decimation/selector.h
+36
-29
include/Algo/Decimation/simplifMesh.h
include/Algo/Decimation/simplifMesh.h
+1
-1
include/Algo/Decimation/simplifMesh.hpp
include/Algo/Decimation/simplifMesh.hpp
+1
-1
include/Algo/DecimationVolumes/approximator.h
include/Algo/DecimationVolumes/approximator.h
+72
-35
include/Algo/DecimationVolumes/decimator.h
include/Algo/DecimationVolumes/decimator.h
+3
-3
include/Algo/DecimationVolumes/decimator.hpp
include/Algo/DecimationVolumes/decimator.hpp
+5
-5
include/Algo/DecimationVolumes/edgeSelector.h
include/Algo/DecimationVolumes/edgeSelector.h
+3
-3
include/Algo/DecimationVolumes/edgeSelector.hpp
include/Algo/DecimationVolumes/edgeSelector.hpp
+3
-3
include/Algo/DecimationVolumes/geometryApproximator.h
include/Algo/DecimationVolumes/geometryApproximator.h
+80
-13
include/Algo/DecimationVolumes/geometryApproximator.hpp
include/Algo/DecimationVolumes/geometryApproximator.hpp
+89
-47
include/Algo/DecimationVolumes/operator.h
include/Algo/DecimationVolumes/operator.h
+3
-3
include/Algo/DecimationVolumes/operator.hpp
include/Algo/DecimationVolumes/operator.hpp
+3
-3
include/Algo/DecimationVolumes/selector.h
include/Algo/DecimationVolumes/selector.h
+6
-6
include/Algo/Export/export.h
include/Algo/Export/export.h
+3
-0
include/Algo/Export/exportVol.h
include/Algo/Export/exportVol.h
+126
-0
include/Algo/Export/exportVol.hpp
include/Algo/Export/exportVol.hpp
+800
-0
include/Algo/ImplicitHierarchicalMesh/ihm.h
include/Algo/ImplicitHierarchicalMesh/ihm.h
+18
-1
include/Algo/ImplicitHierarchicalMesh/ihm.hpp
include/Algo/ImplicitHierarchicalMesh/ihm.hpp
+23
-8
include/Algo/ImplicitHierarchicalMesh/ihm3.hpp
include/Algo/ImplicitHierarchicalMesh/ihm3.hpp
+5
-5
include/Algo/ImplicitHierarchicalMesh/subdivision.hpp
include/Algo/ImplicitHierarchicalMesh/subdivision.hpp
+84
-20
include/Algo/ImplicitHierarchicalMesh/subdivision3.hpp
include/Algo/ImplicitHierarchicalMesh/subdivision3.hpp
+2
-2
include/Algo/Import/import.h
include/Algo/Import/import.h
+20
-1
include/Algo/Import/import2tables.h
include/Algo/Import/import2tables.h
+6
-11
include/Algo/Import/import2tablesSurface.hpp
include/Algo/Import/import2tablesSurface.hpp
+187
-0
include/Algo/Import/import2tablesVolume.hpp
include/Algo/Import/import2tablesVolume.hpp
+0
-20
include/Algo/Import/importFileTypes.h
include/Algo/Import/importFileTypes.h
+132
-0
include/Algo/Import/importMSH.hpp
include/Algo/Import/importMSH.hpp
+477
-0
include/Algo/Import/importMesh.hpp
include/Algo/Import/importMesh.hpp
+18
-13
include/Algo/Import/importNAS.hpp
include/Algo/Import/importNAS.hpp
+436
-0
include/Algo/Import/importNodeEle.hpp
include/Algo/Import/importNodeEle.hpp
+54
-29
include/Algo/Import/importObjEle.hpp
include/Algo/Import/importObjEle.hpp
+45
-39
include/Algo/Import/importObjTex.h
include/Algo/Import/importObjTex.h
+22
-6
include/Algo/Import/importObjTex.hpp
include/Algo/Import/importObjTex.hpp
+41
-13
include/Algo/Import/importTet.hpp
include/Algo/Import/importTet.hpp
+29
-1
include/Algo/Import/importTs.hpp
include/Algo/Import/importTs.hpp
+13
-1
include/Algo/Import/importVBGZ.hpp
include/Algo/Import/importVBGZ.hpp
+294
-0
include/Algo/Import/importVTU.hpp
include/Algo/Import/importVTU.hpp
+398
-0
include/Algo/MC/image.h
include/Algo/MC/image.h
+3
-0
include/Algo/MC/image.hpp
include/Algo/MC/image.hpp
+51
-4
include/Algo/MC/marchingcube.hpp
include/Algo/MC/marchingcube.hpp
+1
-1
include/Algo/Modelisation/polyhedron.h
include/Algo/Modelisation/polyhedron.h
+5
-0
include/Algo/Modelisation/polyhedron.hpp
include/Algo/Modelisation/polyhedron.hpp
+128
-0
include/Algo/Modelisation/subdivision3.h
include/Algo/Modelisation/subdivision3.h
+3
-0
include/Algo/Modelisation/subdivision3.hpp
include/Algo/Modelisation/subdivision3.hpp
+91
-1
include/Algo/Multiresolution/Map2MR/lerpAttributes.h
include/Algo/Multiresolution/Map2MR/lerpAttributes.h
+4
-4
include/Algo/Multiresolution/Map2MR/map2MR_PM.h
include/Algo/Multiresolution/Map2MR/map2MR_PM.h
+9
-9
include/Algo/Multiresolution/Map2MR/map2MR_PM.hpp
include/Algo/Multiresolution/Map2MR/map2MR_PM.hpp
+26
-2
include/Algo/Multiresolution/Map3MR/Filters/bertramBoundary.h
...ude/Algo/Multiresolution/Map3MR/Filters/bertramBoundary.h
+782
-0
include/Algo/Multiresolution/Map3MR/Filters/lerp.h
include/Algo/Multiresolution/Map3MR/Filters/lerp.h
+3
-20
include/Algo/Multiresolution/Map3MR/Filters/schaefer.h
include/Algo/Multiresolution/Map3MR/Filters/schaefer.h
+190
-0
include/Algo/Multiresolution/Map3MR/map3MR_PM.h
include/Algo/Multiresolution/Map3MR/map3MR_PM.h
+125
-0
include/Algo/Multiresolution/Map3MR/map3MR_PM.hpp
include/Algo/Multiresolution/Map3MR/map3MR_PM.hpp
+298
-0
include/Algo/Remeshing/pliant.hpp
include/Algo/Remeshing/pliant.hpp
+2
-2
include/Algo/Render/GL2/drawerCells.hpp
include/Algo/Render/GL2/drawerCells.hpp
+2
-2
include/Algo/Render/GL2/explodeVolumeRender.hpp
include/Algo/Render/GL2/explodeVolumeRender.hpp
+1
-1
include/Algo/Render/GL2/topoRender.hpp
include/Algo/Render/GL2/topoRender.hpp
+22
-21
include/Algo/Render/SVG/mapSVGRender.hpp
include/Algo/Render/SVG/mapSVGRender.hpp
+2
-2
include/Container/fakeAttribute.h
include/Container/fakeAttribute.h
+27
-27
include/Topology/generic/dart.h
include/Topology/generic/dart.h
+4
-4
include/Topology/generic/genericmap.h
include/Topology/generic/genericmap.h
+11
-12
include/Topology/generic/mapBrowser.h
include/Topology/generic/mapBrowser.h
+1
-1
include/Topology/generic/traversor3.hpp
include/Topology/generic/traversor3.hpp
+1
-1
include/Topology/generic/traversorCell.h
include/Topology/generic/traversorCell.h
+36
-4
include/Topology/gmap/gmap0.hpp
include/Topology/gmap/gmap0.hpp
+2
-2
include/Topology/gmap/gmap1.hpp
include/Topology/gmap/gmap1.hpp
+3
-3
include/Topology/gmap/gmap3.h
include/Topology/gmap/gmap3.h
+1
-1
include/Topology/ihmap/ihm2.hpp
include/Topology/ihmap/ihm2.hpp
+8
-9
include/Topology/map/map1.hpp
include/Topology/map/map1.hpp
+3
-3
include/Topology/map/map3.h
include/Topology/map/map3.h
+2
-2
include/Utils/Qt/qtQGLV.h
include/Utils/Qt/qtQGLV.h
+7
-7
include/Utils/Qt/qtSimple.h
include/Utils/Qt/qtSimple.h
+8
-8
include/Utils/Qt/qtcolorschooser.h
include/Utils/Qt/qtcolorschooser.h
+1
-1
include/Utils/Shaders/shaderScalarField.frag
include/Utils/Shaders/shaderScalarField.frag
+5
-2
include/Utils/Shaders/shaderScalarField.h
include/Utils/Shaders/shaderScalarField.h
+4
-0
include/Utils/Shaders/shaderScalarField.vert
include/Utils/Shaders/shaderScalarField.vert
+58
-1
include/Utils/colorMaps.hpp
include/Utils/colorMaps.hpp
+12
-12
include/Utils/colourConverter.h
include/Utils/colourConverter.h
+6
-7
include/Utils/colourConverter.hpp
include/Utils/colourConverter.hpp
+0
-1
include/Utils/mark.h
include/Utils/mark.h
+4
-4
include/Utils/nameTypes.h
include/Utils/nameTypes.h
+24
-24
include/Utils/qem.h
include/Utils/qem.h
+11
-1
include/Utils/qem.hpp
include/Utils/qem.hpp
+20
-0
src/Algo/ImplicitHierarchicalMesh/ihm.cpp
src/Algo/ImplicitHierarchicalMesh/ihm.cpp
+38
-17
src/Algo/ImplicitHierarchicalMesh/ihm3.cpp
src/Algo/ImplicitHierarchicalMesh/ihm3.cpp
+1
-1
src/Topology/gmap/gmap2.cpp
src/Topology/gmap/gmap2.cpp
+3
-3
src/Topology/map/map2.cpp
src/Topology/map/map2.cpp
+2
-2
src/Utils/Qt/qtQGLV.cpp
src/Utils/Qt/qtQGLV.cpp
+1
-0
src/Utils/Qt/qtSimple.cpp
src/Utils/Qt/qtSimple.cpp
+1
-0
src/Utils/Qt/qthistodraw.cpp
src/Utils/Qt/qthistodraw.cpp
+1
-1
src/Utils/Shaders/shaderScalarField.cpp
src/Utils/Shaders/shaderScalarField.cpp
+13
-3
src/Utils/cgognStream.cpp
src/Utils/cgognStream.cpp
+1
-1
src/Utils/frameManipulator.cpp
src/Utils/frameManipulator.cpp
+1
-1
src/Utils/pickables.cpp
src/Utils/pickables.cpp
+5
-5
src/Utils/svg.cpp
src/Utils/svg.cpp
+3
-3
src/Utils/textureSticker.cpp
src/Utils/textureSticker.cpp
+2
-1
No files found.
Apps/Examples/clipping.cpp
View file @
09950e47
...
...
@@ -965,7 +965,7 @@ void Clipping::cb_keyPress(int code)
}
}
void
Clipping
::
cb_mousePress
(
int
button
,
int
x
,
int
y
)
void
Clipping
::
cb_mousePress
(
int
/*button*/
,
int
x
,
int
y
)
{
// Check if no animation is active
if
(
m_lastAnimatedClippingPreset
!=
NULL
)
...
...
Apps/Examples/frame_manip.cpp
View file @
09950e47
...
...
@@ -145,7 +145,7 @@ void MyQT::cb_redraw()
}
void
MyQT
::
cb_mousePress
(
int
button
,
int
x
,
int
y
)
void
MyQT
::
cb_mousePress
(
int
/*button*/
,
int
x
,
int
y
)
{
if
(
!
Shift
())
return
;
...
...
@@ -249,7 +249,7 @@ void MyQT::cb_mouseMove(int buttons, int x, int y)
}
void
MyQT
::
cb_wheelEvent
(
int
delta
,
int
x
,
int
y
)
void
MyQT
::
cb_wheelEvent
(
int
delta
,
int
/*x*/
,
int
/*y*/
)
{
if
(
!
Shift
())
return
;
...
...
Apps/Examples/texturesExample.cpp
View file @
09950e47
...
...
@@ -157,17 +157,17 @@ void TexView::cb_keyPress(int code)
updateGL
();
}
void
TexView
::
init
(
c
har
*
fnm
,
char
*
fnt
)
void
TexView
::
init
(
c
onst
std
::
string
&
fnm
,
const
std
::
string
&
fnt
)
{
if
(
fnm
==
NULL
)
if
(
fnm
.
empty
()
)
{
computeTore
();
m_fileNameTex
=
std
::
string
(
fnt
)
;
m_fileNameTex
=
fnt
;
}
else
{
m_fileNameMesh
=
std
::
string
(
fnm
)
;
m_fileNameTex
=
std
::
string
(
fnt
)
;
m_fileNameMesh
=
fnm
;
m_fileNameTex
=
fnt
;
std
::
vector
<
std
::
string
>
attrNames
;
m_obj
.
import
(
m_fileNameMesh
,
attrNames
);
...
...
@@ -260,11 +260,11 @@ int main(int argc, char**argv)
}
else
if
(
argc
==
2
)
{
tv
.
init
(
NULL
,
argv
[
1
]);
tv
.
init
(
""
,
argv
[
1
]);
}
else
{
tv
.
init
(
NULL
,
"x"
);
tv
.
init
(
""
,
"x"
);
}
...
...
Apps/Examples/texturesExample.h
View file @
09950e47
...
...
@@ -89,7 +89,7 @@ public:
~
TexView
();
void
init
(
c
har
*
fnm
,
char
*
fnt
);
void
init
(
c
onst
std
::
string
&
fnm
,
const
std
::
string
&
fnt
);
// callbacks of simpleQT to overdefine:
void
cb_redraw
();
...
...
Apps/Examples/viewer.cpp
View file @
09950e47
...
...
@@ -31,6 +31,7 @@ Viewer::Viewer() :
m_drawFaces
(
true
),
m_drawNormals
(
false
),
m_drawTopo
(
false
),
m_drawBoundaryTopo
(
true
),
m_render
(
NULL
),
m_phongShader
(
NULL
),
m_flatShader
(
NULL
),
...
...
@@ -229,7 +230,7 @@ void Viewer::importMesh(std::string& filename)
m_render
->
initPrimitives
<
PFP
>
(
myMap
,
Algo
::
Render
::
GL2
::
LINES
)
;
m_render
->
initPrimitives
<
PFP
>
(
myMap
,
Algo
::
Render
::
GL2
::
TRIANGLES
)
;
m_topoRender
->
updateData
<
PFP
>
(
myMap
,
position
,
0.85
f
,
0.85
f
)
;
m_topoRender
->
updateData
<
PFP
>
(
myMap
,
position
,
0.85
f
,
0.85
f
,
m_drawBoundaryTopo
)
;
bb
=
Algo
::
Geometry
::
computeBoundingBox
<
PFP
>
(
myMap
,
position
)
;
normalBaseSize
=
bb
.
diagSize
()
/
100.0
f
;
...
...
Apps/Examples/viewer.h
View file @
09950e47
...
...
@@ -98,6 +98,7 @@ public:
bool
m_drawFaces
;
bool
m_drawNormals
;
bool
m_drawTopo
;
bool
m_drawBoundaryTopo
;
VertexAttribute
<
VEC3
>
position
;
VertexAttribute
<
VEC3
>
normal
;
...
...
Apps/Examples/volumeExplorer.cpp
View file @
09950e47
...
...
@@ -33,24 +33,26 @@
#include "Utils/chrono.h"
#include "Algo/Export/exportVol.h"
PFP
::
MAP
myMap
;
VertexAttribute
<
PFP
::
VEC3
>
position
;
VolumeAttribute
<
PFP
::
VEC3
>
color
;
void
MyQT
::
volumes_onoff
(
bool
x
)
void
MyQT
::
volumes_onoff
(
bool
/*x*/
)
{
render_volumes
=
!
render_volumes
;
updateGL
();
}
void
MyQT
::
edges_onoff
(
bool
x
)
void
MyQT
::
edges_onoff
(
bool
/*x*/
)
{
render_edges
=
!
render_edges
;
updateGL
();
}
void
MyQT
::
topo_onoff
(
bool
x
)
void
MyQT
::
topo_onoff
(
bool
/*x*/
)
{
render_topo
=
!
render_topo
;
if
(
render_topo
)
...
...
@@ -88,7 +90,7 @@ void MyQT::clipping_onoff(bool x)
updateGL
();
}
void
MyQT
::
hide_onoff
(
bool
x
)
void
MyQT
::
hide_onoff
(
bool
/*x*/
)
{
hide_clipping
=
!
hide_clipping
;
updateGL
();
...
...
@@ -146,21 +148,21 @@ void MyQT::cb_Open()
size_t
pos
=
filename
.
rfind
(
"."
);
// position of "." in filename
std
::
string
extension
=
filename
.
substr
(
pos
);
if
(
extension
==
std
::
string
(
".off"
))
{
if
(
!
Algo
::
Volume
::
Import
::
importMeshToExtrude
<
PFP
>
(
myMap
,
filename
,
attrNames
))
{
std
::
cerr
<<
"could not import "
<<
filename
<<
std
::
endl
;
return
;
}
else
{
position
=
myMap
.
getAttribute
<
PFP
::
VEC3
,
VERTEX
>
(
attrNames
[
0
])
;
myMap
.
closeMap
();
}
}
else
{
//
if(extension == std::string(".off"))
//
{
//
if(!Algo::Volume::Import::importMeshToExtrude<PFP>(myMap, filename, attrNames))
//
{
//
std::cerr << "could not import " << filename << std::endl ;
//
return ;
//
}
//
else
//
{
//
position = myMap.getAttribute<PFP::VEC3, VERTEX>(attrNames[0]) ;
//
myMap.closeMap();
//
}
//
}
//
else
//
{
if
(
!
Algo
::
Volume
::
Import
::
importMesh
<
PFP
>
(
myMap
,
filename
,
attrNames
))
{
std
::
cerr
<<
"could not import "
<<
filename
<<
std
::
endl
;
...
...
@@ -168,7 +170,7 @@ void MyQT::cb_Open()
}
else
position
=
myMap
.
getAttribute
<
PFP
::
VEC3
,
VERTEX
>
(
attrNames
[
0
])
;
}
//
}
color
=
myMap
.
addAttribute
<
PFP
::
VEC3
,
VOLUME
>
(
"color"
);
...
...
@@ -270,7 +272,7 @@ void MyQT::cb_redraw()
}
void
MyQT
::
cb_mousePress
(
int
button
,
int
x
,
int
y
)
void
MyQT
::
cb_mousePress
(
int
/*button*/
,
int
x
,
int
y
)
{
if
(
!
Shift
())
return
;
...
...
@@ -299,7 +301,7 @@ void MyQT::cb_mousePress(int button, int x, int y)
}
}
void
MyQT
::
cb_mouseRelease
(
int
button
,
int
x
,
int
y
)
void
MyQT
::
cb_mouseRelease
(
int
/*button*/
,
int
/*x*/
,
int
/*y*/
)
{
if
(
hide_clipping
||
!
clip_volume
)
...
...
@@ -418,6 +420,12 @@ int main(int argc, char **argv)
color
[
i
][
0
]
/=
maxV
;
color
[
i
][
2
]
=
1.0
f
-
color
[
i
][
0
];
}
// Algo::Volume::Export::exportNAS<PFP>(myMap,position,"/tmp/test2.nas");
// Algo::Volume::Export::exportMSH<PFP>(myMap,position,"/tmp/test2.msh");
// Algo::Volume::Export::exportTet<PFP>(myMap,position,"/tmp/test2.tet");
// Algo::Volume::Export::exportNodeEle<PFP>(myMap,position,"/tmp/test2");
// Algo::Volume::Export::exportVTU<PFP>(myMap,position,"/tmp/test4.vtu");
}
else
{
...
...
@@ -437,6 +445,9 @@ int main(int argc, char **argv)
TraversorW
<
PFP
::
MAP
>
tra
(
myMap
);
for
(
Dart
d
=
tra
.
begin
();
d
!=
tra
.
end
();
d
=
tra
.
next
())
color
[
d
]
=
position
[
d
]
+
PFP
::
VEC3
(
0.5
,
0.5
,
0.5
);
// Algo::Volume::Export::exportMSH<PFP>(myMap,position,"/tmp/test2.msh");
// Algo::Volume::Export::exportNAS<PFP>(myMap,position,"/tmp/test1.nas");
// Algo::Volume::Export::exportVTU<PFP>(myMap,position,"/tmp/test3.vtu");
}
// un peu d'interface
QApplication
app
(
argc
,
argv
);
...
...
Apps/Tuto/show_traversors.cpp
View file @
09950e47
...
...
@@ -140,7 +140,7 @@ void MyQT::cb_redraw()
m_drawer
.
callList
();
}
void
MyQT
::
cb_mousePress
(
int
button
,
int
x
,
int
y
)
void
MyQT
::
cb_mousePress
(
int
/*button*/
,
int
x
,
int
y
)
{
if
(
Shift
())
{
...
...
Apps/Tuto/tuto5.cpp
View file @
09950e47
...
...
@@ -38,21 +38,21 @@ MAP myMap;
VertexAttribute
<
VEC3
>
position
;
Dart
dglobal
;
void
MyQT
::
balls_onoff
(
bool
x
)
void
MyQT
::
balls_onoff
(
bool
/*x*/
)
{
render_balls
=
!
render_balls
;
updateGL
();
CGoGNerr
<<
" balls_onoff "
<<
CGoGNendl
;
}
void
MyQT
::
vectors_onoff
(
bool
x
)
void
MyQT
::
vectors_onoff
(
bool
/*x*/
)
{
render_vectors
=
!
render_vectors
;
updateGL
();
CGoGNerr
<<
" vectors_onoff "
<<
CGoGNflush
;
}
void
MyQT
::
text_onoff
(
bool
x
)
void
MyQT
::
text_onoff
(
bool
/*x*/
)
{
render_text
=
!
render_text
;
updateGL
();
...
...
@@ -60,7 +60,7 @@ void MyQT::text_onoff(bool x)
}
void
MyQT
::
topo_onoff
(
bool
x
)
void
MyQT
::
topo_onoff
(
bool
/*x*/
)
{
render_topo
=
!
render_topo
;
updateGL
();
...
...
@@ -212,7 +212,7 @@ void MyQT::cb_redraw()
}
}
void
MyQT
::
cb_mousePress
(
int
button
,
int
x
,
int
y
)
void
MyQT
::
cb_mousePress
(
int
/*button*/
,
int
x
,
int
y
)
{
if
(
Shift
())
{
...
...
@@ -301,7 +301,7 @@ int main(int argc, char **argv)
CGoGNout
<<
"CGoGNOut dans la console"
<<
Geom
::
Vec3f
(
2.5
f
,
2.2
f
,
4.3
f
)
<<
CGoGNendl
;
// CGoGNout.toStatusBar(NULL
);
CGoGNout
.
noStatusBar
(
);
// bounding box
Geom
::
BoundingBox
<
PFP
::
VEC3
>
bb
=
Algo
::
Geometry
::
computeBoundingBox
<
PFP
>
(
myMap
,
position
);
...
...
Apps/Tuto/tuto_mt.cpp
View file @
09950e47
...
...
@@ -146,7 +146,7 @@ public:
FunctorAttribThreaded
(),
m_positions
(
pos
),
m_positions2
(
pos2
)
{}
void
run
(
unsigned
int
i
,
unsigned
int
threadID
)
void
run
(
unsigned
int
i
,
unsigned
int
/*threadID*/
)
{
m_positions2
[
i
]
=
1.1
f
*
m_positions
[
i
];
}
...
...
@@ -181,7 +181,7 @@ public:
m_positions
(
pos
),
m_positions2
(
pos2
)
{}
void
run
(
Dart
d
,
unsigned
int
threadID
)
void
run
(
Dart
d
,
unsigned
int
/*threadID*/
)
{
typename
XXX
::
VEC3
Q
(
0
,
0
,
0
);
int
nb
=
0
;
...
...
@@ -232,7 +232,7 @@ public:
unsigned
int
getNb
()
{
return
m_nb
;}
void
run
(
Dart
d
,
unsigned
int
threadID
)
void
run
(
Dart
d
,
unsigned
int
/*threadID*/
)
{
Dart
dd
=
this
->
m_map
.
phi2
(
d
);
typename
XXX
::
VEC3
V
=
m_positions
[
dd
]
-
m_positions
[
d
];
...
...
Apps/Tuto/tuto_oper2.cpp
View file @
09950e47
...
...
@@ -357,8 +357,9 @@ void MyQT::cb_Open()
void
MyQT
::
cb_Save
()
{
std
::
string
filename
=
selectFileSave
(
"Export
SVG
file "
,
"."
,
"(*.off)"
);
std
::
string
filename
=
selectFileSave
(
"Export
Off
file "
,
"."
,
"(*.off)"
);
Algo
::
Surface
::
Export
::
exportOFF
<
PFP
>
(
myMap
,
position
,
filename
.
c_str
());
//std::cout << "could not save file : " << filename << std::endl;
}
void
MyQT
::
importMesh
(
std
::
string
&
filename
)
...
...
Apps/Tuto/tuto_oper3.cpp
View file @
09950e47
...
...
@@ -88,7 +88,7 @@ void MyQT::clipping_onoff(bool x)
updateGL
();
}
void
MyQT
::
hide_onoff
(
bool
x
)
void
MyQT
::
hide_onoff
(
bool
/*x*/
)
{
hide_clipping
=
!
hide_clipping
;
updateMap
();
...
...
@@ -253,15 +253,26 @@ void MyQT::operation(int x)
dock
.
listOper
->
setCurrentRow
(
-
1
);
}
void
MyQT
::
createMap
(
int
n
)
void
MyQT
::
createMap
(
int
/*n*/
)
{
myMap
.
clear
(
true
);
position
=
myMap
.
getAttribute
<
VEC3
,
VERTEX
>
(
"position"
);
if
(
!
position
.
isValid
())
position
=
myMap
.
addAttribute
<
VEC3
,
VERTEX
>
(
"position"
);
Algo
::
Volume
::
Modelisation
::
Primitive3D
<
PFP
>
prim
(
myMap
,
position
);
prim
.
hexaGrid_topo
(
n
,
n
,
n
);
prim
.
embedHexaGrid
(
1.0
f
,
1.0
f
,
1.0
f
);
// Algo::Volume::Modelisation::Primitive3D<PFP> prim(myMap, position);
// prim.hexaGrid_topo(n,n,n);
// prim.embedHexaGrid(1.0f,1.0f,1.0f);
// Algo::Surface::Modelisation::Polyhedron<PFP> poly(myMap, position);
// poly.cylinder_topo(6,1,true,true);
// poly.embedCylinder(6.0,6.0,5.0);
// myMap.closeMap();
Dart
d
=
Algo
::
Surface
::
Modelisation
::
embedPrism
<
PFP
>
(
myMap
,
position
,
5
,
true
,
6.0
,
6.0
,
5.0
);
Dart
d2
=
Algo
::
Surface
::
Modelisation
::
embedPyramid
<
PFP
>
(
myMap
,
position
,
4
,
true
,
6.0
,
5.0
);
myMap
.
sewVolumes
(
myMap
.
phi2
(
d
),
d2
);
position
[
myMap
.
phi_1
(
myMap
.
phi2
(
d2
))]
+=
VEC3
(
9.0
,
-
5.0
,
-
2.5
);
myMap
.
check
();
...
...
@@ -429,7 +440,7 @@ void MyQT::cb_mousePress(int button, int x, int y)
}
}
void
MyQT
::
cb_mouseRelease
(
int
button
,
int
x
,
int
y
)
void
MyQT
::
cb_mouseRelease
(
int
/*button*/
,
int
/*x*/
,
int
/*y*/
)
{
if
(
hide_clipping
||
!
clip_volume
)
...
...
@@ -565,8 +576,8 @@ void MyQT::cb_keyPress(int keycode)
updateGL
();
break
;
case
'W'
:
m_ex1
=
0.9
f
;
m_ex2
=
0.9
f
;
m_ex1
=
0.9
5
f
;
m_ex2
=
0.9
5
f
;
m_render_topo
->
updateData
<
PFP
>
(
myMap
,
position
,
m_ex1
,
m_ex2
,
m_ex3
/*, nb*/
);
updateGL
();
break
;
...
...
Apps/Tuto/tuto_orbits.cpp
View file @
09950e47
...
...
@@ -42,7 +42,7 @@ VertexAttribute<VEC3> position ;
DartAttribute
<
VEC3
>
middleDarts
;
void
MyQT
::
text_onoff
(
bool
x
)
void
MyQT
::
text_onoff
(
bool
/*x*/
)
{
render_text
=
!
render_text
;
updateGL
();
...
...
@@ -162,7 +162,7 @@ void MyQT::cb_redraw()
}
void
MyQT
::
cb_mousePress
(
int
button
,
int
x
,
int
y
)
void
MyQT
::
cb_mousePress
(
int
/*button*/
,
int
x
,
int
y
)
{
if
(
Shift
())
{
...
...
CMakeLists.txt
View file @
09950e47
...
...
@@ -104,7 +104,7 @@ ENDIF (WITH_ZINRI)
IF
(
WITH_QT
)
add_definitions
(
-DWITH_QT
)
find_package
(
Qt
4
REQUIRED
)
find_package
(
Qt REQUIRED
)
SET
(
QT_USE_QTCORE TRUE
)
SET
(
QT_USE_QTOPENGL TRUE
)
SET
(
QT_USE_QTSVG TRUE
)
...
...
@@ -138,8 +138,9 @@ IF(WIN32)
set
(
CMAKE_CONFIGURATION_TYPES
"
${
CMAKE_CONFIGURATION_TYPES
}
"
CACHE STRING
"Only Release or Debug"
FORCE
)
# set(CMAKE_CONFIGURATION_TYPES "Release Debug" CACHE STRING "Only Release or Debug" FORCE)
ELSE
(
WIN32
)
SET
(
CMAKE_CXX_FLAGS
"
${
CMAKE_CXX_FLAGS
}
-Wall -fPIC"
)
SET
(
CMAKE_C_FLAGS
"
${
CMAKE_C_FLAGS
}
-Wall -fPIC"
)
SET
(
CMAKE_CXX_FLAGS
"
${
CMAKE_CXX_FLAGS
}
-Wall -Wextra -fPIC"
)
# SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wclobbered -Wempty-body -Wignored-qualifiers -Wmissing-field-initializers -Wsign-compare -Wtype-limits -Wuninitialized -fPIC")
SET
(
CMAKE_C_FLAGS
"
${
CMAKE_C_FLAGS
}
-Wall -Woverride-init -fPIC"
)
add_subdirectory
(
Release
)
add_subdirectory
(
Debug
)
add_subdirectory
(
${
CGoGN_ROOT_DIR
}
/Apps Apps
)
...
...
README.TXT
View file @
09950e47
...
...
@@ -3,7 +3,10 @@ installer les paquets suivants:
cmake libXi-dev libXmu-dev libglew-dev libxml2-dev libboost-all-dev zlib1g-dev qt4-designer qt4-dev-tools uuid-dev libgsl0-dev libsuitesparse-dev
Pour compiler CGoGN:
- aller dans ThirdParty, cd build, taper "cmake .", puis make ( avec -j x si vous avez x core sur votre machine) suivi de make install
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
...
...
@@ -44,19 +47,28 @@ install the following packages:
ccmake libXi-dev libXmu-dev libglew-dev libxml2-dev libboost-all-dev zlib1g-dev qt4-designer qt4-dev-tools uuid-dev libgsl0-dev libsuitesparse-dev
To compile CGoGN:
- Go ThirdParty, cd build, type "cmake .." and then make (with -j x if you have x core on your machine) followed by make install
We can set some option to not compile everything (see the README.TXT in ThirdParty)
You can also compile debug by creating a directory that ended Debug build instead
- Go to build and type "cmake .." and then make
Options (Boolean) are also available here:
BUILD_SHARED_LIBS (F) experimental!
WITH_ASSIMP (T)
WITH_NUMERICAL (T)
WITH_ZINRI (T)
WITH_QT (T)
to minimize dependencies and compilation time /
- first compile third-party libraries:
cd CGoGN/ThirdParty/build
cmake ..
make (-j x if you have x cores)
make install
Some options are available to not compile everything (see the README.TXT in ThirdParty)
- then compile CGoGN (the libs are generated in CGoGN/lib and some examples in CGoGN/bin):
cd CGoGN/build
cmake ..
make (-j x if you have x cores)
Some options are available:
BUILD_SHARED_LIBS (F) experimental !
WITH_ASSIMP (T)
WITH_NUMERICAL (T)
WITH_ZINRI (T)
WITH_QT (T)
to minimize dependencies and compilation time
FORCE_MR (2)
allow the compilation in 3 mode: mixed(0), multi-resolution(1), mono-resolution(2).
...
...
README_MAC.TXT
View file @
09950e47
*** english version below ***
Pour compiler CGoGN sur MAC (testé sur OS X 10.8.
2
)
Pour compiler CGoGN sur MAC (testé sur OS X 10.8.
3
)
Installer avec homebrew
cmake, lzlib, glew, boost149, suite-sparse, qt
Pour pouvoir installer le paquet suite-sparse, il faut avoir
prélablement ajouté le dépôt homebrew/science grâce à la commande suivante :
brew tap homebrew/science
=========================================================================================
ENGLISH VERSION
=========================================================================================
To compile CGoGN on MAC (tested on OSX 10.8.
2
)
To compile CGoGN on MAC (tested on OSX 10.8.
3
)
Install with homebrew
cmake, lzlib, glew, boost149, suite-sparse, qt
To install suite-sparse package, you must first
add the homebrew/science repository with the following command :
brew tap homebrew/science
SCHNApps/Plugins/differentialProperties/src/differentialProperties.cpp
View file @
09950e47
...
...
@@ -137,12 +137,15 @@ void DifferentialPropertiesPlugin::computeCurvatureFromDialog()
else
KnormalName
=
m_computeCurvatureDialog
->
KnormalAttributeName
->
text
();
bool
compute_kmean
=
(
m_computeCurvatureDialog
->
check_computeKmean
->
checkState
()
==
Qt
::
Checked
);
bool
compute_kgaussian
=
(
m_computeCurvatureDialog
->
check_computeKgaussian
->
checkState
()
==
Qt
::
Checked
);
bool
autoUpdate
=
(
currentItems
[
0
]
->
checkState
()
==
Qt
::
Checked
);
computeCurvature
(
mapName
,
positionName
,
normalName
,
KmaxName
,
kmaxName
,
KminName
,
kminName
,
KnormalName
,
compute_kmean
,
compute_kgaussian
,
autoUpdate
);
}
...
...
SCHNApps/Plugins/render/src/renderDockTab.cpp
View file @
09950e47
...
...
@@ -97,7 +97,8 @@ void RenderDockTab::positionVBOChanged(int index)
{
View
*
view
=
m_window
->
getCurrentView
();
MapHandlerGen
*
map
=
m_currentParams
->
selectedMap
;
m_plugin
->
changePositionVBO
(
view
,
map
,
map
->
getVBO
(
combo_positionVBO
->
currentText
()),
true
);
if
(
map
)
m_plugin
->
changePositionVBO
(
view
,
map
,
map
->
getVBO
(
combo_positionVBO
->
currentText
()),
true
);
}
}
...
...
@@ -107,7 +108,8 @@ void RenderDockTab::normalVBOChanged(int index)
{
View
*
view
=
m_window
->
getCurrentView
();
MapHandlerGen
*
map
=
m_currentParams
->
selectedMap
;
m_plugin
->
changeNormalVBO
(
view
,
map
,
map
->
getVBO
(
combo_normalVBO
->
currentText
()),
true
);
if
(
map
)
m_plugin
->
changeNormalVBO
(
view
,
map
,
map
->
getVBO
(
combo_normalVBO
->
currentText
()),
true
);
}
}
...
...
@@ -117,7 +119,8 @@ void RenderDockTab::renderVerticesChanged(bool b)
{
View
*
view
=
m_window
->
getCurrentView
();
MapHandlerGen
*
map
=
m_currentParams
->
selectedMap
;
m_plugin
->
changeRenderVertices
(
view
,
map
,
b
,
true
);
if
(
map
)
m_plugin
->
changeRenderVertices
(
view
,
map
,
b
,
true
);
}
}
...
...
@@ -127,7 +130,8 @@ void RenderDockTab::verticesScaleFactorChanged(int i)
{
View
*
view
=
m_window
->
getCurrentView
();
MapHandlerGen
*
map
=
m_currentParams
->
selectedMap
;
m_plugin
->
changeVerticesScaleFactor
(
view
,
map
,
i
/
50.0
,
true
);
if
(
map
)
m_plugin
->
changeVerticesScaleFactor
(
view
,
map
,
i
/
50.0
,
true
);
}
}
...
...
@@ -137,7 +141,8 @@ void RenderDockTab::renderEdgesChanged(bool b)
{
View
*
view
=
m_window
->
getCurrentView
();
MapHandlerGen
*
map
=
m_currentParams
->
selectedMap
;
m_plugin
->
changeRenderEdges
(
view
,
map
,
b
,
true
);
if
(
map
)
m_plugin
->
changeRenderEdges
(
view
,
map
,