Removed any use of Regular_triangulation_euclidean_traits from Skin surface

This commit is contained in:
Mael Rouxel-Labbé 2017-04-12 18:29:51 +02:00
parent 81bc8604f0
commit ecf92c4689
6 changed files with 31 additions and 44 deletions

View File

@ -35,9 +35,6 @@
#include <boost/random/variate_generator.hpp>
#include <boost/shared_ptr.hpp>
// For the Weighted_converter
#include <CGAL/Regular_triangulation_euclidean_traits_3.h>
// Used for the triangulated mixed complex / Voronoi diagram
#include <CGAL/Triangulation_vertex_base_with_info_3.h>
#include <CGAL/Triangulation_cell_base_with_info_3.h>

View File

@ -28,7 +28,6 @@
#include <CGAL/basic.h>
#include <CGAL/Skin_surface_traits_3.h>
#include <CGAL/Regular_triangulation_euclidean_traits_3.h>
#include <CGAL/Filtered_predicate.h>
namespace CGAL {

View File

@ -63,11 +63,12 @@ public:
{
CGAL_PROFILER(std::string("Constructor : ") +
std::string(CGAL_PRETTY_FUNCTION));
Regular_triangulation_euclidean_traits_3<K> reg_traits;
p = reg_traits.construct_weighted_circumcenter_3_object()(wp0,wp1);
c = s*(1-s)*reg_traits.compute_squared_radius_smallest_orthogonal_sphere_3_object()(wp0,wp1);
Vector t = reg_traits.construct_vector_3_object()(reg_traits.construct_point_3_object()(wp1),
reg_traits.construct_point_3_object()(wp0));
K k;
p = k.construct_weighted_circumcenter_3_object()(wp0,wp1);
c = s*(1-s)*k.compute_squared_radius_smallest_orthogonal_sphere_3_object()(wp0,wp1);
Vector t = k.construct_vector_3_object()(k.construct_point_3_object()(wp1),
k.construct_point_3_object()(wp0));
FT den = t*t;
Q[0] = (- t.x()*t.x()/den + (1-s));
@ -87,13 +88,14 @@ public:
{
CGAL_PROFILER(std::string("Constructor : ") +
std::string(CGAL_PRETTY_FUNCTION));
Regular_triangulation_euclidean_traits_3<K> reg_traits;
p = reg_traits.construct_weighted_circumcenter_3_object()(wp0,wp1,wp2);
c = s*(1-s)*reg_traits.compute_squared_radius_smallest_orthogonal_sphere_3_object()(wp0,wp1,wp2);
Vector t = K().construct_orthogonal_vector_3_object()(reg_traits.construct_point_3_object()(wp0),
reg_traits.construct_point_3_object()(wp1),
reg_traits.construct_point_3_object()(wp2));
K k;
p = k.construct_weighted_circumcenter_3_object()(wp0,wp1,wp2);
c = s*(1-s)*k.compute_squared_radius_smallest_orthogonal_sphere_3_object()(wp0,wp1,wp2);
Vector t = K().construct_orthogonal_vector_3_object()(k.construct_point_3_object()(wp0),
k.construct_point_3_object()(wp1),
k.construct_point_3_object()(wp2));
FT den = t*t;
Q[0] = -(- t.x()*t.x()/den + s);
@ -114,9 +116,10 @@ public:
{
CGAL_PROFILER(std::string("Constructor : ") +
std::string(CGAL_PRETTY_FUNCTION));
Regular_triangulation_euclidean_traits_3<K> reg_traits;
p = reg_traits.construct_weighted_circumcenter_3_object()(wp0,wp1,wp2,wp3);
c = s*(1-s)*reg_traits.compute_squared_radius_smallest_orthogonal_sphere_3_object()(wp0,wp1,wp2,wp3);
K k;
p = k.construct_weighted_circumcenter_3_object()(wp0,wp1,wp2,wp3);
c = s*(1-s)*k.compute_squared_radius_smallest_orthogonal_sphere_3_object()(wp0,wp1,wp2,wp3);
Q[1] = Q[3] = Q[4] = 0;
Q[0] = Q[2] = Q[5] = -s;
}

View File

@ -23,8 +23,6 @@
#include <CGAL/license/Skin_surface_3.h>
#include <CGAL/Regular_triangulation_euclidean_traits_3.h>
#include <CGAL/predicates/predicates_for_mixed_complex_3.h>
namespace CGAL {
@ -109,18 +107,14 @@ private:
template <class K_>
class Skin_surface_traits_base_3
: public K_
// : public Regular_triangulation_euclidean_traits_3<K_>
{
// typedef Regular_triangulation_euclidean_traits_3<K_> Base;
public:
typedef K_ Kernel;
typedef Skin_surface_traits_base_3<Kernel> Self;
typedef typename Kernel::FT FT;
typedef CGAL::Side_of_mixed_cell_3<Self> Side_of_mixed_cell_3;
typedef typename Kernel::Construct_weighted_circumcenter_3
Construct_weighted_circumcenter_3;
typedef CGAL::Side_of_mixed_cell_3<Self> Side_of_mixed_cell_3;
typedef CGAL::Construct_anchor_point_3<Self> Construct_anchor_point_3;

View File

@ -71,13 +71,11 @@ public:
typedef typename Triangulated_mixed_complex::Vertex_handle TMC_Vertex_handle;
typedef typename Triangulated_mixed_complex::Cell_handle TMC_Cell_handle;
typedef typename Quadratic_surface::K Surface_traits;
typedef typename Surface_traits::RT Surface_RT;
typedef Regular_triangulation_euclidean_traits_3<Surface_traits> Surface_regular_traits;
typedef typename Quadratic_surface::Point Surface_point;
typedef typename Quadratic_surface::Vector Surface_vector;
typedef typename Surface_traits::Weighted_point_3 Surface_weighted_point;
typedef typename Quadratic_surface::Point Surface_point;
typedef typename Quadratic_surface::Vector Surface_vector;
typedef typename Surface_traits::Weighted_point_3 Surface_weighted_point;
typedef
Cartesian_converter < typename Rt_Bare_point::R,
@ -99,7 +97,7 @@ public:
Rt_Facet f;
Rt_Cell_handle ch;
typename Surface_regular_traits::Construct_point_3 wp2p;
typename Surface_traits::Construct_point_3 wp2p;
switch (s.dimension()) {
case 0: {
@ -117,11 +115,11 @@ public:
Surface_weighted_point p1 =
r2s_converter(e.first->vertex(e.third)->point());
create_hyperboloid(typename Surface_regular_traits::
create_hyperboloid(typename Surface_traits::
Construct_weighted_circumcenter_3()(p0,p1),
typename Surface_regular_traits::
typename Surface_traits::
Compute_squared_radius_smallest_orthogonal_sphere_3()(p0,p1),
typename Surface_regular_traits::
typename Surface_traits::
Construct_vector_3()(wp2p(p1),
wp2p(p0)),
r2s_converter(shrink),
@ -137,11 +135,11 @@ public:
Surface_weighted_point p2 =
r2s_converter(f.first->vertex((f.second+3)&3)->point());
create_hyperboloid(typename Surface_regular_traits::
create_hyperboloid(typename Surface_traits::
Construct_weighted_circumcenter_3()(p0,p1,p2),
typename Surface_regular_traits::
typename Surface_traits::
Compute_squared_radius_smallest_orthogonal_sphere_3()(p0,p1,p2),
typename Surface_regular_traits::
typename Surface_traits::
Construct_orthogonal_vector_3()(wp2p(p0),wp2p(p1),wp2p(p2)),
r2s_converter(1-shrink),
-1);
@ -157,10 +155,10 @@ public:
r2s_converter(ch->vertex(3)->point())
};
create_sphere(typename Surface_regular_traits::
create_sphere(typename Surface_traits::
Construct_weighted_circumcenter_3()
(pts[0],pts[1],pts[2],pts[3]),
typename Surface_regular_traits::
typename Surface_traits::
Compute_squared_radius_smallest_orthogonal_sphere_3()
(pts[0],pts[1],pts[2],pts[3]),
r2s_converter(1-shrink),

View File

@ -260,11 +260,7 @@ private:
Cartesian_converter<typename Rt_Bare_point::R, Tmc_traits > r2t_converter_object;
Construct_anchor_point_3<
// Regular_triangulation_euclidean_traits_3<
Triangulated_mixed_complex_traits>
// >
construct_anchor_point_3_obj;
Construct_anchor_point_3<Tmc_traits> construct_anchor_point_3_obj;
typename Tmc_traits::Compute_squared_radius_smallest_orthogonal_sphere_3 orthoweight_obj;
Compute_anchor_3<Regular> compute_anchor_obj;