Commit Graph

23 Commits

Author SHA1 Message Date
Andreas Fabri 19c83c644f Add #ifdefs for VTK, and add #includes 2013-09-16 18:39:48 +02:00
Laurent Rineau 8f59fd9592 Turn QPL into LGPLv3+ 2012-01-13 16:33:35 +00:00
Andreas Fabri 629bf20530 Remove ';' 2010-05-14 10:03:19 +00:00
Laurent Rineau 43cc745311 Commit work of previous days (week-end, yesterday and this morning):
The surface mesher Qt4 demo can now deal with labellized images.
2008-10-07 13:00:59 +00:00
Laurent Rineau ef6d4c019d - edges and facets are now taggued with the index of the PSC element of
lower dimension that contains them,
- the oracle sets tags in points as well,
- the edges default criteria can now enforce that an edge must have its two
  end points on the same curved edge,
- new facets criteria to enforce a facet to have its three vertices on the
  same surface patch.
- The surface is now pass by const reference to the oracle (that was one
  reason of the  poor performances of the polyhedral oracle!).

ALL THAT CODE WILL NEED A FULL REVIEW BEFORE CGAL-3.4.
2008-01-28 09:38:18 +00:00
Laurent Rineau 3edae701c3 oups, the Polyhedral_oracle return Kernel::Point_3 as intersection object 2007-11-14 12:56:06 +00:00
Laurent Rineau a7bdd984c3 cosmetic 2007-11-14 12:17:17 +00:00
Laurent Rineau fbc8cd5d3c new version: compute the piecewise-smooth graph using the enriched polyhedron 2007-11-14 10:55:55 +00:00
Laurent Rineau 1c985577b2 Quick backup. Sorry, no comment. 2007-11-05 15:07:07 +00:00
Laurent Rineau 681862491a update, more OpenGL stuff 2007-11-02 14:00:38 +00:00
Laurent Rineau f924e04db6 - Add a macro CGAL_SURFACE_MESHER_POLYHEDRAL_SURFACE_USE_PINPOLYHEDRON that
triggers the use of PointInPolyhedron, from Dr. Liu Jianfei"
  <liujianfei@pku.edu.cn>. His code is not shipped.
  That does not seem to be faster. :-(
2007-10-18 14:48:41 +00:00
Laurent Rineau 2c03c1cf43 rename all shared pointer into "*_ptr" 2007-10-17 16:39:22 +00:00
Laurent Rineau 1f029db333 In Surface_mesher, a "Surface" is an object that can be passed by copy.
Generalize the use of boost::shared_ptr for all data of Polyhedral_surface_3<>
2007-10-17 16:27:23 +00:00
Laurent Rineau 79efcce674 Attempt to replace the octree by something else: the Segment_tree_3 (from
SearchStructures).
It is actually slower, so I disable it by default. :-(
2007-10-17 12:59:45 +00:00
Laurent Rineau 5053a73fea fix std::max->CGAL_NTS max 2007-10-16 12:01:45 +00:00
Laurent Rineau fd97c81e8a In Surface_mesher:
- Polyhedral_oracle::initial_points_: use input points in random order,
  - Polyhedral_surface is know templated by a new tag, that can be
    "Has_no_edges" or "Has_edges", so that the edges detection and handling
    is triggered.
  - Polyhedral_oracle::is_in_volume()  now tests if the point is in the
    bounding box, before anything else. That solved several issues, when
    the point tested had very big coordinates.
In Mesh_3:
  - Mesh_criteria's size_bound is know squared in the constructor.
2007-06-10 20:50:11 +00:00
Laurent Rineau d381828fa7 I do not know what to say... That version just work!!
I can remesh piecewise smooth surface...
2007-05-30 16:52:43 +00:00
Laurent Rineau 37c7266f76 Merge the branch "temporary_branch_during_trunk_freeze" back to the trunk.
Details below (thank to svnmerge).

Merged revisions 38016,38018-38083,38085-38637 via svnmerge from 
svn+ssh://lrineau@scm.gforge.inria.fr/svn/cgal/branches/temporary_branch_during_trunk_freeze/Surface_mesher

........
  r38022 | lrineau | 2007-04-10 15:11:14 +0200 (Tue, 10 Apr 2007) | 1 line
  
  no-op modifications
........
  r38023 | lrineau | 2007-04-10 15:13:06 +0200 (Tue, 10 Apr 2007) | 1 line
  
  add an intersection computation method to the polyhedral oracle: Triangle-curve
........
  r38026 | lrineau | 2007-04-10 16:14:12 +0200 (Tue, 10 Apr 2007) | 1 line
  
  use vectors instead of lists, and use the correct type Facet_circulator from C2t3
........
  r38028 | lrineau | 2007-04-10 16:18:48 +0200 (Tue, 10 Apr 2007) | 5 lines
  
  
  - Use sets or vectors instead of lists
  - Add marked edges
  - Marked edges are not removed when incident facets are removed.
    They are counted isolated, instead
........
  r38029 | lrineau | 2007-04-10 16:33:09 +0200 (Tue, 10 Apr 2007) | 2 lines
  
  typos
........
  r38306 | lrineau | 2007-04-18 17:58:24 +0200 (Wed, 18 Apr 2007) | 1 line
  
  new version, that should work, now. :-S
........
  r38327 | lrineau | 2007-04-19 03:13:46 +0200 (Thu, 19 Apr 2007) | 1 line
  
  add Edge_info into C2t3, and make the surfacic centers be cached into those edge infos
........
  r38328 | lrineau | 2007-04-19 03:36:21 +0200 (Thu, 19 Apr 2007) | 1 line
  
  forgot that part
........
  r38413 | lrineau | 2007-04-23 02:22:23 +0200 (Mon, 23 Apr 2007) | 1 line
  
  new version o Surface_mesher, with documentation.
........
  r38635 | lrineau | 2007-05-11 15:49:29 +0200 (Fri, 11 May 2007) | 1 line
  
  fix compilation
........
  r38636 | lrineau | 2007-05-11 15:49:52 +0200 (Fri, 11 May 2007) | 1 line
  
  updated documentation
........
  r38637 | lrineau | 2007-05-11 15:50:12 +0200 (Fri, 11 May 2007) | 1 line
  
  update for piecewise-smooth surfaces
........
2007-05-11 14:09:56 +00:00
Laurent Rineau 61e2a2ebfd - New codebase for <CGAL/Polyhedral_surface_3.h>, that uses
Polyhedron_3.
- Added "Facet neighbor(Facet f, int j) const;" in
  <CGAL/Complex_2_in_triangulation_3.h>.
- New code for output_surface_facets_to_off() in
  <CGAL/IO/Complex_2_in_triangulation_3_file_writer.h>. Now uses
  Polyhedron_3 I/O operators (maybe temporarily), and *orients the output*,
  as mush as possible, without any call to any surface oracle.
  The ordering code is adapted from reorient_faces() in TDS_2.
- Updated demo/Surface_mesher/polyhedron_remesher.cpp, so that it works.

Notes for the CGAL-3.3 release manager: 
  - Surface_mesher/demo/Surface_mesher is "dont_submitted".
  - The changes in Surface_mesher/include/CGAL/ only impact undocumented
  features of the package. Actually, maybe output_surface_facets_to_off()
  should be documented (with an adapted API) now that it orients the facets.
2007-04-04 09:52:34 +00:00
Laurent Rineau cb2e689c05 fix SVN keywords 2007-04-03 13:59:17 +00:00
Laurent Rineau 035da295a4 commit several things that change only debug outputs, or the polyhedral oracle 2007-02-28 18:22:28 +00:00
Laurent Rineau 782ca4aad2 ** In DS_for_queries_3:
- added a public member function
       Bbox bbox() const;
     to Data_structure_using_octree_3<>.
   - fix several bad coding patterns, in Data_structure_using_octree_3.h
   - fix the header of Data_structure_using_octree_3.h
   - trivial destructor for Constrained_Element, to delete the "type"
   member.
** In Surface_mesher:
   - added a public member function
       Bbox bbox() const;
     to Polyhedral_surface_3<>.
2006-08-10 16:00:25 +00:00
Laurent Rineau 5c6b881a1d ** In Surface_mesher:
- remove subdirectories of include/CGAL/Surface_mesher: files of Criteria/
  and Oracles/ are moved one step back.
- repear the polyhedral oracle
- Implicit_oracle.h is now Implicit_surface_oracle.h (and the class has
been renamed too.
- no longer "Kernel_point" trick in Implicit_surface_oracle.h
- *but* "Kernel_point" trick is needed in Polyhedral_oracle.h! :-(

** In Mesh_3:
- repear examples/Mesh_3/polyhedral_surface_mesher.C
- add two input files in ./inputs/*.off (with their medit files)
2006-06-13 13:08:19 +00:00