Commit Graph

222 Commits

Author SHA1 Message Date
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
Andreas Fabri d856f80d79 fixed typo in documentation 2008-06-24 19:00:46 +00:00
Fernando Cacciola f93437ca22 Removed *unmodified* auto-generated CMakeLists.txt (now created by create_internal_release) 2008-05-05 14:01:55 +00:00
Fernando Cacciola b704509dcf Examples/Demos/Test CMake scripts updated 2008-03-05 21:14:02 +00:00
Fernando Cacciola a659cd852a Added project() and conditional test for CGAL_DIR 2008-02-14 15:42:36 +00:00
Fernando Cacciola 14043c43a0 Replaced CGALROOT by CGAL_DIR (the latters is used by CMake automatically) 2008-02-08 17:47:21 +00:00
Fernando Cacciola afddfc4fca CMake scripts for demos/examples/test added 2008-02-06 19:06:24 +00:00
Sylvain Pion cc55ce1341 Get rid of CGAL_REP_CLASS_DEFINED 2008-01-03 19:05:31 +00:00
Sylvain Pion a46b55bf71 The files "changes.txt", "description.txt", "long_description.txt" and "maintainer"
are now under /trunk/$Package/package_info/$Package/ .
2007-12-02 15:06:42 +00:00
Andreas Meyer c1e9765ff4 manual fix: moved labels inside sectioning command 2007-04-18 14:20:12 +00:00
Sylvain Pion 5285dd161b Spell check. 2007-04-17 16:26:35 +00:00
Andreas Meyer 41169fc270 * updated howtocite bibkeys for upcoming 3.3 release
* typo fixes/cosmetic changes
2007-03-29 17:40:13 +00:00
Sylvain Pion 847c23a15e Removing leading and trailing empty lines from all example files.
Using the following Perl script:
-----------------------------------------------------
#!/usr/bin/perl

local($/) = undef;
my $text = <>;

$text =~ s/\A\n+//mg;
$text =~ s/\n+\Z/\n/mg;

print "$text";
-----------------------------------------------------
2007-03-10 16:17:17 +00:00
Sylvain Pion ffe1e4ec1c More redundant filename removal.
The only survivors should be under Arrangement_2/examples
(some Doxygen syntax is used, so I don't touch them).
2007-03-10 15:22:41 +00:00
Sylvain Pion 6fb5cb906b Remove trailing white spaces and end of lines.
(using : perl -pi.bak -e 's/\s+$/\n/' */examples/*/*.cpp )
2007-03-10 14:59:41 +00:00
Sylvain Pion b8b87ab5a5 Actually, the "// file: example_bla.cpp" lines are not needed anymore,
since the manual tools know it.  So let's just remove them (many were
not uptodate with the filemane anyway).
2007-03-10 14:48:00 +00:00
Sylvain Pion 23edc11d3b Fix all first lines of examples "// file : example_file.C" to .cpp suffix.
Using :

for i in * ; do  cd $i ; for f in examples/*/*.cpp ; do ( head -1 $f | grep file | grep -v '\.cpp' ) && echo $f && perl -pi.bak -e 's/\.C$/.cpp/' $f ; done ; cd .. ; done
2007-03-10 14:34:05 +00:00
Sylvain Pion 02204d4ffb Add parentheses 2007-03-08 10:29:20 +00:00
Sylvain Pion 71e2a5ca6e remove warning 2007-03-03 08:57:28 +00:00
Sylvain Pion 069bcbde7f Remove references to "see the Support Library Manual", since
we have the big integrated thing now.
2007-02-09 13:31:16 +00:00
Andreas Fabri fa1debf22c Changed int to size_type to get rid of a warning and a potential error when the polyhedron is huge 2007-01-29 12:49:02 +00:00
Sylvain Pion fd6fea0f0c rename .C to .cpp 2007-01-27 20:57:04 +00:00
Sylvain Pion 2bdfec6cc0 Removal of remaining protect macros : those protecting other CGAL include files.
Done using the script Scripts/developer_scripts/cgal_conditional_include_remove.
2007-01-24 18:00:30 +00:00
Fernando Cacciola 40e17118d5 VC8 STL iterator fixes 2007-01-18 14:05:05 +00:00
Sylvain Pion c03659bc7a global update of maintainer files
(remove Lutz, Sven, Matthias, Geert-Jan...)
2006-12-05 14:01:13 +00:00
Andreas Meyer 0c1292b779 png->gif 2006-10-31 14:10:03 +00:00
Andreas Meyer 92e439cf19 added some more package description illustrations 2006-10-30 15:44:23 +00:00
Andreas Meyer b454b3febd manual cleanup:
* .C ---> .cpp
* removed ../examples from paths
* moved some demo/example files out of doc_tex into their respective place
* now it should build properly, again
2006-08-07 16:43:09 +00:00
Andreas Fabri b4900f306a changed .C to .cpp in examples 2006-07-09 19:35:55 +00:00
Andreas Fabri 3369647b30 fix of \ccPkgIntroducedInCGAL 2006-06-20 11:52:38 +00:00
Andreas Meyer 0e3d6b8143 manual bugfix (ccHowToCiteCgal) 2006-05-04 12:28:44 +00:00
Andreas Meyer dc3ce8747e \ccHowToCite --> \ccHowToCiteCgal 2006-05-03 11:24:03 +00:00
Andreas Fabri 6edf1a8f2b Added ccHowTocite 2006-05-02 19:24:11 +00:00
Andreas Meyer 09d2cb06c5 replaced
\ccPkgMaturity{Introduced in \cgal\ 
by 
\ccPkgIntroducedInCGAL{
2006-04-26 16:40:25 +00:00
Andreas Fabri 25af8db5ab fixed ccDepends 2006-04-11 14:09:18 +00:00
Andreas Fabri be11acb57f Added package description 2006-04-10 15:04:28 +00:00
Andreas Meyer 5b5a60cecf rewritten the whole manual
ok. seriously:

renamed \chapter into \ccUserChapter and \ccRefChapter
2006-04-06 17:03:37 +00:00
Andreas Fabri aa07823b44 cleanup of \sections 2006-04-05 13:45:15 +00:00
Marc Glisse 13380ebe5e Add some missing std:: and #include <c*> 2006-02-22 15:22:27 +00:00
Laurent Saboret db6a8f948c Change CVS keywords to SVN style 2006-02-16 14:30:13 +00:00
Laurent Saboret 1aad55d4cb Change CVS keywords to SVN style 2006-02-14 10:08:15 +00:00
Laurent Saboret 478dedc941 Move packages to trunk root 2006-02-14 08:58:18 +00:00