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
Laurent Rineau
ad787d98c0
Add an attribue rendering_mode in Polyhedron_entry.
2008-07-11 11:19:52 +00:00
Laurent Rineau
b91a56535c
Setup the treeview's columns widths and streching.
2008-07-11 09:58:00 +00:00
Laurent Rineau
89e61e3809
Delegation for the Color column: one left click pops up the QColorDialog.
2008-07-11 09:57:20 +00:00
Pierre Alliez
9fce504387
cleanup on convex hull
2008-07-10 21:10:51 +00:00
Laurent Rineau
4fb74af216
Minor improvements in the feature "last opened files".
2008-07-10 16:58:57 +00:00
Laurent Rineau
35a9309b87
- Update TODO.txt
...
- Last opened polyedron is selected.
- A duplicated polyhedron is selected.
- When a polyhedron is erase, select another one (the previous one if any).
2008-07-10 16:51:11 +00:00
Laurent Rineau
00e87cf498
- Remove Scene and Camera menu.
...
- Move Load/Erase/Duplicate into the File menu.
2008-07-10 15:49:13 +00:00
Laurent Rineau
7e9278f677
Handle recent files in the File menu.
2008-07-10 15:48:29 +00:00
Pierre Alliez
0e1b8e8ca9
attempt to simplify an enriched polyhedron but fails at compile time (we should ask Fernando some help!)
2008-07-10 15:29:21 +00:00
Laurent Rineau
d011d7ffc2
New title for MainWindow: "Polyhedron demo".
2008-07-10 15:05:33 +00:00
Pierre Alliez
1a682c6e71
resources into a separate folder
...
added data folder with toy meshes
2008-07-10 14:11:15 +00:00
Laurent Rineau
78a3a69d55
Update the scene delegate.
2008-07-10 14:08:10 +00:00
Laurent Rineau
b41991af69
- Rename "on_treeView_itemSelectionChanged()" to "selectionChanged()" to
...
avoid an auto-connection attempt.
- Activate anti-aliasing by default.
2008-07-10 14:07:07 +00:00
Laurent Rineau
30a92b28b4
More todo entries.
2008-07-10 13:59:38 +00:00
Pierre Alliez
121477b70f
enriched todo list
2008-07-10 13:58:22 +00:00
Laurent Rineau
fd228fea1f
Add a TODO file
2008-07-10 13:55:20 +00:00
Pierre Alliez
abaa8e6f51
convex hull added!
2008-07-10 13:49:13 +00:00
Laurent Rineau
00de2764fc
Switch back to QGLViewer as base class of 'Viewer'.
2008-07-10 13:00:44 +00:00
Pierre Alliez
d9ad075d4d
Better handling of relative paths. That fixes errors with CMake under Windows.
2008-07-10 12:10:35 +00:00
Pierre Alliez
5dc4729fd7
Include qgl.h from Qt, to fix compilation errors related to GL/gl.h (under Windows, windows.h must be included first). (lrineau)
2008-07-10 12:09:38 +00:00
Pierre Alliez
bffb220a35
Fix a compilation error with Visual (need to protect std::min from nasty macros). (lrineau)
2008-07-10 12:08:31 +00:00
Pierre Alliez
0796a642a7
First a warning with Visual (lrineau)
2008-07-10 12:07:39 +00:00
Laurent Rineau
aebde5a069
Attempt to fix compilation errors on Windows.
2008-07-10 11:45:43 +00:00
Pierre Alliez
b5a5b2e914
added menu convex hull
2008-07-10 11:18:32 +00:00
Pierre Alliez
ca272d25a3
fix windows compilation issue with HDS
2008-07-10 09:58:39 +00:00
Laurent Rineau
44e4421af1
Use -I./include.
2008-07-10 09:50:18 +00:00
Laurent Rineau
1b8c973eb7
commit the enriched polyhedron
2008-07-10 09:49:13 +00:00
Laurent Rineau
46836fc913
Add a "delegate" for the QTreeView that displays the scene. For the moment,
...
that delegate only handles the "Activated" column: it displays a green
checkmark iff the polyhedron is activated.
2008-07-10 08:13:42 +00:00
Laurent Rineau
89faa7f11f
- Add an action "Anti-aliasing" in the view menu. Off by default. Scene has
...
a setAntiAliasing fucntion.
- One can now drag-drop several files at once. Scene::open(QString) is
called for each.
- In Scene.cpp, Scene::open() displays a warning dialog when the file is
not an OFF file.
- The polyhedra list is now in a QDockWidget, on the left by default. That
way the list can be moved in the user interface (like other dock
widgets). The "View" menu has an option to show/hide the dock widget.
- Subdivision methods now call viewer-updateGL(), so that the viewer
repaint itself after a polygon is modified.
2008-07-09 14:41:09 +00:00
Laurent Rineau
105ccbab53
- The Scene now reacts to the selection by highlighting the selected
...
polyhedron.
- One can open several OFF files at one (use QFileDialog::getOpenFileNames
instead of QFileDialog::getOpenFileName).
- Added two subdivision methods.
2008-07-09 11:06:31 +00:00
Laurent Rineau
88f7f33c5f
First version of Polyhedron demo with Qt4.
2008-07-08 14:18:33 +00:00