Pierre Alliez
09a9c58abc
added timing for remeshing
2008-07-26 22:01:56 +00:00
Pierre Alliez
e375a5bdb8
First running version of remeshing using AABB tree (needs cleaning)
2008-07-26 21:34:40 +00:00
Pierre Alliez
7032b35789
AABB tree now linked to oracle
2008-07-26 20:15:38 +00:00
Pierre Alliez
dfab7987ac
more on AABB tree for surface remeshing
2008-07-26 19:59:19 +00:00
Pierre Alliez
c259f9dd4e
surface remeshing now compiles fine - it remains to connect with the AABBtree collision model.
2008-07-26 19:08:44 +00:00
Pierre Alliez
94f71be161
1-line toolbar
2008-07-26 16:12:12 +00:00
Pierre Alliez
afee4ab133
move colllision model into a separate folder.
2008-07-26 14:37:18 +00:00
Pierre Alliez
91c7c4f562
move all intersection tests into a separate folder.
2008-07-26 14:36:21 +00:00
Pierre Alliez
001f880410
initial work on remeshing
2008-07-26 14:34:32 +00:00
Pierre Alliez
976a501b9e
uncomment subdivision functions as they now compile fine.
2008-07-26 10:34:56 +00:00
Andreas Fabri
2bf2b4ff3e
No need to include <CGAL/basic.h>
2008-07-25 21:21:02 +00:00
Andreas Fabri
d65736ebf4
Fix such that subdivision operations compile with VC7. Forward declaration needs some rework by Laurent
2008-07-25 21:19:22 +00:00
Pierre Alliez
20ca98dab6
removed icons.
...
fix cursors.
2008-07-24 20:52:49 +00:00
Sylvain Pion
dc3bf72707
Remove changes.txt files.
2008-07-24 17:47:16 +00:00
Pierre Alliez
fa9b69fafe
added tripod model to debug the kernel
2008-07-22 21:39:06 +00:00
Pierre Alliez
b268ca8b0e
added inside out operation
...
fixed kernel
2008-07-22 15:25:45 +00:00
Pierre Alliez
427fb2b74f
added menu inside out - need to write the code
2008-07-22 13:44:29 +00:00
Pierre Alliez
0bd6adbc43
a bit of cleanup on scene Bbox computation.
2008-07-20 14:34:49 +00:00
Pierre Alliez
39b907c461
global cleanup of mesh operations.
...
Laurent: I cannot understand why the icons specified and visible in the designer are not visible in the exec.
Also, I was unable to compile the subdivision functions.
2008-07-20 14:15:48 +00:00
Pierre Alliez
ca0b136bbd
icons for Boolean operations.
...
weird: they look fine in the designer but are not shown in the exec.
2008-07-18 20:30:57 +00:00
Laurent Rineau
35af0d054a
"Erase all" now work.
...
"Erase' now has the Delete key as shortcut.
2008-07-18 16:23:06 +00:00
Laurent Rineau
acf4ea73d5
Let the application remember in which directory lies the last open file.
...
That directory is used to load new files.
2008-07-18 13:49:02 +00:00
Laurent Rineau
7e60068d60
Fix the crash if arguments.isEmpty().
...
Add various checks.
2008-07-17 23:17:40 +00:00
Laurent Rineau
e8f7a4917a
Fix the crash if arguments.isEmpty().
2008-07-17 23:17:23 +00:00
Pierre Alliez
672daa420b
added translate for polyhedron kernel
2008-07-17 15:17:24 +00:00
Laurent Rineau
70add34bae
Allow the use of Meta instead of Alt, for the paths edition of QGLViewer.
2008-07-16 23:37:11 +00:00
Laurent Rineau
7c4e6dd0b8
Add Viewer::drawWithNames() and Viewer::postSelection(): that implements
...
the feature "selection with mouse" (Shift+LeftButton simple click).
Scene::draw now has a boolean parameter (draw with name or not).
2008-07-16 22:29:34 +00:00
Laurent Rineau
c99aa4d8cc
Add alpha channel to icons.
2008-07-16 22:04:55 +00:00
Laurent Rineau
cf3e194f55
Add action, with shortcuts, to:
...
- activate a polyhedron (Ctrl+Space)
- put polyhedron as selection A (Ctrl+A)
- put polyhedron as selection B (Ctrl+B)
2008-07-16 22:04:32 +00:00
Pierre Alliez
125b698c13
fix indent for kernel
2008-07-16 21:42:02 +00:00
Pierre Alliez
08d544bab7
more on polyhedron kernel using LP solver
...
remains to implement translate<Polyhedron>
2008-07-16 21:23:04 +00:00
Pierre Alliez
21bba71a11
started adding some icons - but could not figure out how to specify transparency
2008-07-16 20:30:03 +00:00
Laurent Rineau
d72c431eb3
Add a global preference "View edges", which is a QAction in the View menu.
...
Update: rename it "Superimpose edges".
2008-07-16 18:33:47 +00:00
Laurent Rineau
a872041a55
Add a global preference "View edges", which is a QAction in the View menu.
2008-07-16 18:32:15 +00:00
Laurent Rineau
fb91fc9f90
New icons for the checkmark in treeView.
2008-07-16 18:31:32 +00:00
Laurent Rineau
0c53947443
Add toolbars. We need icons.
2008-07-16 17:47:09 +00:00
Laurent Rineau
9ddb771a75
To reduce inter-dependancies, and thus compilation time, MainWindow no
...
longer derives from Ui::MainWindow. Instead, MainWindow now has a member:
Ui::MainWindow* ui;
That way, a single change in MainWindow.ui will no longer trigger the
recompilation of all .cpp that depend on MainWindow.h
2008-07-16 17:21:03 +00:00
Laurent Rineau
6ae6c2f660
Add tooltips to the Scene. Viewed in the treeView.
2008-07-16 17:07:22 +00:00
Laurent Rineau
96a79fccf5
Fix drawing of edges.
2008-07-16 16:39:19 +00:00
Laurent Rineau
d47ab0f489
Reindent.
2008-07-16 16:21:04 +00:00
Pierre Alliez
930db7897a
display lists - faster but not simpler
2008-07-16 15:16:29 +00:00
Laurent Rineau
1a6d8a5dbc
Add a toolbar.
2008-07-16 14:54:55 +00:00
Laurent Rineau
2841cf29ee
Fix a compilation error: Scene.cpp no longer includes the complete
...
definition of the type Polyhedron. You must use Scene::destroy instead of
"delete".
2008-07-16 14:50:50 +00:00
Laurent Rineau
e550425440
New function:
...
template <class Poly_A, class Poly_B>
void copy_to(const Poly_A& poly_a, Poly_B& poly_b)
to avoid the ugly hack using a temp file in
MainWindow_boolean_operations.cpp.
Maybe that function should be in CGAL, actually.
2008-07-16 14:48:15 +00:00
Pierre Alliez
6d6e98bb08
update TODO list
2008-07-16 14:41:48 +00:00
Pierre Alliez
069b83759b
more cleanup on simplify
2008-07-16 14:20:38 +00:00
Pierre Alliez
1a4079f2f8
simplification: added timer and output
2008-07-16 14:02:22 +00:00
Laurent Rineau
b98175b4f2
Updated todo: we need to disable several menu items.
2008-07-16 13:51:08 +00:00
Laurent Rineau
7ef44188a8
Attempt to fix a compilation error under Windows.
2008-07-16 13:49:50 +00:00
Laurent Rineau
8f569aa382
Use QInputDialog::getInteger to get the parameter for the simplification
...
algorithm.
2008-07-16 13:48:26 +00:00
Laurent Rineau
a30e08123b
Fix two warnings under Windows.
2008-07-16 13:16:48 +00:00
Pierre Alliez
592921e134
fix compilation issue
2008-07-16 13:01:55 +00:00
Pierre Alliez
69f346a20d
tried fixing compilation issues
2008-07-16 12:30:27 +00:00
Laurent Rineau
7273f1997c
Add a struct Scene::Bbox to avoid the inclusion of any CGAL header in
...
Scene.h. That should reduce compilation times.
2008-07-16 11:18:29 +00:00
Laurent Rineau
c5654c95e3
- Rename several actions, to remove all "_" in their names.
...
- Add several "&" in action texts.
- NEW files:
- "Polyhedron_type.h" defines the Kernel and Polyhedron types,
- "Polyhedron_type_fwd.h" can be used for a forward declaration of the
type "Polyhedron".
- New functions in Scene:
int selectionAndex();
int selectionBindex();
Boolean operations now use those functions to get the indices of the
polyhedra.
- The Exact_polyhedron is now only defined in
MainWindow_boolean_operations.cp, to reduce compilation times.
- The min/max problem is handled better, in MainWindow_pca.cpp (quote the
macros with () instead of using #undef).
- MainWindow_simplify.cpp now works!!
- Scene.h and Scene.cpp has been splitted in several parts, to decrease
compilation times:
- Scene_rendering.h declares:
void gl_render_facets(Polyhedron* poly);
void gl_render_edges(Polyhedron *poly);
- Scene_rendering.cpp defines those two functions by using
<CGAL/gl_render.h>
- Scene_polyhedron_operations.cpp contains operations that
create/delete/load/save polyhedra.
That way, Scene.h and Scene.cpp are CGAL-agnostic.
2008-07-16 11:08:06 +00:00
Pierre Alliez
792bc2eea8
a bit of cleanup on Scene
2008-07-16 08:41:43 +00:00
Pierre Alliez
66130f35a6
removed menu "Selections" - we'll see this for later
2008-07-16 08:33:00 +00:00
Pierre Alliez
d9a9f58477
fix std::cerr output when reading a file
2008-07-16 08:24:28 +00:00
Pierre Alliez
0023b1bce4
normalize models for Boolean operations
2008-07-16 08:20:06 +00:00
Pierre Alliez
62a8260dc9
add timer for Boolean operations
2008-07-16 08:17:03 +00:00
Pierre Alliez
2fc0cfe1dc
pca/boolean/self-intersect -> a bit of cleanup
2008-07-16 08:07:44 +00:00
Pierre Alliez
3b5ec29388
cleanup and reduce model sizes
2008-07-16 07:57:03 +00:00
Pierre Alliez
39a19c21cf
another attempt to simplify
2008-07-16 07:31:48 +00:00
Pierre Alliez
cc9ee7e489
another fix on curvature estimation
2008-07-16 07:25:21 +00:00
Pierre Alliez
1e6b97be68
monge form now complies with vertex normal - thanks Marc!
2008-07-15 13:19:23 +00:00
Pierre Alliez
a0a049cbcd
solve compilation bug on windows
2008-07-15 13:13:36 +00:00
Laurent Rineau
aab17114a3
Fix compilation errors.
2008-07-15 10:25:35 +00:00
Pierre Alliez
79eeb66f5b
curvature estimation: fix normal orientation bug
2008-07-15 09:55:38 +00:00
Pierre Alliez
78683b0ee6
now compiles in debug mode but refuses to exec.
2008-07-14 20:51:18 +00:00
Pierre Alliez
9b20194dba
more on curvature estimation
...
removed enriched polyhedron
removed make_quad (the soup is more generic)
separate compute_normal
2008-07-14 20:09:22 +00:00
Pierre Alliez
879088c116
more on curvature estimation
...
need to fix the normal orientation
2008-07-14 19:40:27 +00:00
Pierre Alliez
17688b2e03
curvature estimation - remains to represent result as a polyhedron
2008-07-14 16:49:17 +00:00
Pierre Alliez
b44dd2ba46
another attempt to get the mesh simplification compile on Windows.
2008-07-14 14:00:10 +00:00
Pierre Alliez
43be43d690
rename self-intersect
...
pca fit and self-intersect to red by default
2008-07-14 13:53:42 +00:00
Pierre Alliez
7626528ed1
tmp renaming to fix capitals
2008-07-14 13:47:16 +00:00
Pierre Alliez
e968a67d1c
ooops - forgot to add self intersection menu file
2008-07-14 13:27:58 +00:00
Pierre Alliez
0a8289a411
added self-intersection (needs a bit of cleanup)
...
PS: the (added) cow model self-interects
2008-07-14 13:27:09 +00:00
Pierre Alliez
5ed155720b
added menu save as... (save selected polyhedron)
...
remains to implement save all, and save (all selected polyhedra to their original filename)
normalized 3D models
cleanup boolean operations
2008-07-14 12:58:50 +00:00
Pierre Alliez
6df756e150
Added Boolean operations
...
Laurent: please take a look - you may have a cleaner solution for converting from inexact to exact polyhedron
2008-07-14 12:25:35 +00:00
Pierre Alliez
6c429f7ddf
PCAPCA plane fitting - the best fit line is added as a bar polyhedron
2008-07-14 10:20:38 +00:00
Pierre Alliez
5992d3ae35
PCA plane fitting - the best fit plane is added as a quad polyhedron
2008-07-14 06:59:50 +00:00
Pierre Alliez
36eb748188
added Loop subdivision
2008-07-13 20:27:19 +00:00
Pierre Alliez
e1c2d60890
more on polyhedron kernel computation using LP solver
2008-07-12 20:36:33 +00:00
Pierre Alliez
0c94d8efc0
render edges
2008-07-12 19:57:22 +00:00
Laurent Rineau
dbcbf05acb
Fix two compilation errors.
2008-07-12 17:07:02 +00:00
Pierre Alliez
c31d6713bd
added rendering file
...
another attempt to simplify a polyhedron (the basic one this time) but it does not compile...
2008-07-12 09:48:23 +00:00
Pierre Alliez
af6368c5db
drop the enriched polyhedron - rendering by calling a templated function instead.
2008-07-12 09:39:10 +00:00
Laurent Rineau
d3d6a5c1eb
- Store the MainWindow position/size in a QSetting.
...
- Added column A/B to Scene and SceneDelegate.
2008-07-11 16:23:59 +00:00
Pierre Alliez
387084df22
cleanup interface and viewer
2008-07-11 15:46:51 +00:00
Laurent Rineau
da771637ac
Un-inline Viewer::setAntiAliasing(bool). That decrease the readability of
...
the code.
2008-07-11 15:08:50 +00:00
Laurent Rineau
021767168f
Move convex_hull into MainWindow_convex_hull.cpp
...
and simplify into MainWindow_simplify.cpp
2008-07-11 14:55:20 +00:00
Andreas Fabri
e58b0960d6
Added find_package for OPENGL
2008-07-11 14:50:20 +00:00
Laurent Rineau
912bf47dbb
- Add two slots in Scene:
...
void Scene::polyhedronChanged(int i);
void Scene::polyhedronChanged(Polyhedron*);
That way, one no longer call viewer->updateGL() but
scene->polyhedronChanged, and the code is ready for one document with
multiple views (one just has to connect SIGNAL(Scene::dataChanged(..)) to
updateGL() of all viewers.
- Add accessors in Scene:
Polyhedron* polyhedron(int i);
QColor polyhedronColor(int);
QString polyhedronName(int);
bool isPolyhedronActivated(int);
RenderingMode polyhedronRenderingMode(int);
- Remove Scene::simplify and Scene::convex_hull: MainWindow does the joob
itself.
2008-07-11 14:24:22 +00:00
Laurent Rineau
337d4cbc9c
Scene::duplicate now uses Scene::addPolyhedron...
2008-07-11 13:55:46 +00:00
Laurent Rineau
a286206697
- Add a "static const QColor defaultColor;" to Scene,
...
- Add in Scene:
void addPolyhedron(Polyhedron* p,
QString name,
QColor color = defaultColor,
bool activated = true,
RenderingMode mode = Fill);
- Modify Scene::open to use addPolyhedron.
2008-07-11 13:53:51 +00:00
Laurent Rineau
1432cbb62f
Do not use inlined function in Scene (it does not make sens).
2008-07-11 13:30:58 +00:00
Laurent Rineau
f9f27d9e2a
Remove another todo entry!
2008-07-11 12:33:27 +00:00
Laurent Rineau
c5b91d2f33
Use "::Qt" for the Qt namespace, instead of "Qt" (because CGAL::Qt now
...
exists).
2008-07-11 12:19:46 +00:00
Laurent Rineau
d74cb9bac9
Scene::draw() now use the rendering mode.
2008-07-11 12:12:30 +00:00
Laurent Rineau
91b1ba8bed
(Add an attribue rendering_mode in Polyhedron_entry.)
...
The treeView now displays it.
The Scene::draw() does not use it, yet.
2008-07-11 12:05:48 +00:00