mirror of https://github.com/CGAL/cgal
fixes to please VC++ (could not accept within classes typedefs of
the form: typedef MyClass<T> MyClass;)
This commit is contained in:
parent
79c60995c4
commit
e33c38384a
|
|
@ -1,3 +1,7 @@
|
|||
10 August 2006: Menelaos Karavelas
|
||||
- fixes to please VC++ (could not accept within classes typedefs of
|
||||
the form: typedef MyClass<T> MyClass;)
|
||||
|
||||
25 July 2006: Menelaos Karavelas
|
||||
- fixes to please g++ 3.3.2 @ SunOS platform
|
||||
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@ template< class K >
|
|||
class Sign_of_Voronoi_radius
|
||||
{
|
||||
public:
|
||||
typedef Voronoi_radius<K> Voronoi_radius;
|
||||
typedef Voronoi_radius_2<K> Voronoi_radius;
|
||||
typedef typename K::FT FT;
|
||||
typedef typename K::Sign Sign;
|
||||
|
||||
|
|
@ -74,13 +74,13 @@ public:
|
|||
};
|
||||
|
||||
template< class K >
|
||||
class Bounded_side_of_CCW_circle
|
||||
class Bounded_side_of_CCW_circle_2
|
||||
{
|
||||
private:
|
||||
Sign_of_Voronoi_radius<K> test;
|
||||
|
||||
public:
|
||||
typedef Voronoi_radius<K> Voronoi_radius;
|
||||
typedef Voronoi_radius_2<K> Voronoi_radius;
|
||||
typedef typename K::Bounded_side Bounded_dide;
|
||||
|
||||
public:
|
||||
|
|
|
|||
|
|
@ -36,11 +36,11 @@ CGAL_APOLLONIUS_GRAPH_2_BEGIN_NAMESPACE
|
|||
//--------------------------------------------------------------------
|
||||
|
||||
template< class K >
|
||||
class Orientation_wrt_symmetry_axis
|
||||
class Orientation_wrt_symmetry_axis_2
|
||||
{
|
||||
public:
|
||||
typedef typename K::Point_2 Point_2;
|
||||
typedef Voronoi_circle<K> Voronoi_circle;
|
||||
typedef Voronoi_circle_2<K> Voronoi_circle;
|
||||
typedef typename K::FT FT;
|
||||
typedef typename K::Orientation Orientation;
|
||||
|
||||
|
|
@ -72,10 +72,10 @@ public:
|
|||
//--------------------------------------------------------------------
|
||||
|
||||
template< class K >
|
||||
class Compare_Voronoi_radii
|
||||
class Compare_Voronoi_radii_2
|
||||
{
|
||||
public:
|
||||
typedef Voronoi_circle<K> Voronoi_circle;
|
||||
typedef Voronoi_circle_2<K> Voronoi_circle;
|
||||
typedef typename K::FT FT;
|
||||
typedef typename K::Sign Sign;
|
||||
typedef typename K::Comparison_result Comparison_result;
|
||||
|
|
@ -247,18 +247,18 @@ public:
|
|||
//--------------------------------------------------------------------
|
||||
|
||||
template< class K >
|
||||
class Order_on_finite_bisector
|
||||
class Order_on_finite_bisector_2
|
||||
{
|
||||
public:
|
||||
typedef Voronoi_circle<K> Voronoi_circle;
|
||||
typedef Voronoi_circle_2<K> Voronoi_circle;
|
||||
typedef typename K::Site_2 Site_2;
|
||||
typedef typename K::FT FT;
|
||||
typedef typename K::Comparison_result Comparison_result;
|
||||
typedef typename K::Orientation Orientation;
|
||||
|
||||
typedef Compare_Voronoi_radii<K> Compare_Voronoi_radii;
|
||||
typedef Compare_Voronoi_radii_2<K> Compare_Voronoi_radii;
|
||||
|
||||
typedef Orientation_wrt_symmetry_axis<K>
|
||||
typedef Orientation_wrt_symmetry_axis_2<K>
|
||||
Orientation_wrt_symmetry_axis;
|
||||
|
||||
public:
|
||||
|
|
@ -315,23 +315,23 @@ class Finite_edge_interior_conflict
|
|||
{
|
||||
public:
|
||||
typedef typename K::Site_2 Site_2;
|
||||
typedef Weighted_point_inverter<K> Weighted_point_inverter;
|
||||
typedef Inverted_weighted_point<K> Inverted_weighted_point;
|
||||
typedef Voronoi_radius<K> Voronoi_radius;
|
||||
typedef Voronoi_circle<K> Voronoi_circle;
|
||||
typedef Bitangent_line<K> Bitangent_line;
|
||||
typedef Weighted_point_inverter_2<K> Weighted_point_inverter;
|
||||
typedef Inverted_weighted_point_2<K> Inverted_weighted_point;
|
||||
typedef Voronoi_radius_2<K> Voronoi_radius;
|
||||
typedef Voronoi_circle_2<K> Voronoi_circle;
|
||||
typedef Bitangent_line_2<K> Bitangent_line;
|
||||
typedef typename K::FT FT;
|
||||
typedef typename K::Sign Sign;
|
||||
typedef typename K::Bounded_side Bounded_side;
|
||||
typedef typename K::Comparison_result Comparison_result;
|
||||
|
||||
typedef Bounded_side_of_CCW_circle<K> Bounded_side_of_CCW_circle;
|
||||
typedef Order_on_finite_bisector<K> Order_on_finite_bisector;
|
||||
typedef Bounded_side_of_CCW_circle_2<K> Bounded_side_of_CCW_circle;
|
||||
typedef Order_on_finite_bisector_2<K> Order_on_finite_bisector;
|
||||
|
||||
typedef Sign_of_distance_from_bitangent_line<K>
|
||||
typedef Sign_of_distance_from_bitangent_line_2<K>
|
||||
Sign_of_distance_from_bitangent_line;
|
||||
|
||||
typedef Sign_of_distance_from_CCW_circle<K>
|
||||
typedef Sign_of_distance_from_CCW_circle_2<K>
|
||||
Sign_of_distance_from_CCW_circle;
|
||||
|
||||
public:
|
||||
|
|
@ -444,23 +444,23 @@ class Finite_edge_interior_conflict_degenerated
|
|||
{
|
||||
public:
|
||||
typedef typename K::Site_2 Site_2;
|
||||
typedef Weighted_point_inverter<K> Weighted_point_inverter;
|
||||
typedef Inverted_weighted_point<K> Inverted_weighted_point;
|
||||
typedef Voronoi_radius<K> Voronoi_radius;
|
||||
typedef Voronoi_circle<K> Voronoi_circle;
|
||||
typedef Bitangent_line<K> Bitangent_line;
|
||||
typedef Weighted_point_inverter_2<K> Weighted_point_inverter;
|
||||
typedef Inverted_weighted_point_2<K> Inverted_weighted_point;
|
||||
typedef Voronoi_radius_2<K> Voronoi_radius;
|
||||
typedef Voronoi_circle_2<K> Voronoi_circle;
|
||||
typedef Bitangent_line_2<K> Bitangent_line;
|
||||
typedef typename K::FT FT;
|
||||
typedef typename K::Sign Sign;
|
||||
typedef typename K::Comparison_result Comparison_result;
|
||||
typedef typename K::Bounded_side Bounded_side;
|
||||
|
||||
typedef Bounded_side_of_CCW_circle<K> Bounded_side_of_CCW_circle;
|
||||
typedef Order_on_finite_bisector<K> Order_on_finite_bisector;
|
||||
typedef Bounded_side_of_CCW_circle_2<K> Bounded_side_of_CCW_circle;
|
||||
typedef Order_on_finite_bisector_2<K> Order_on_finite_bisector;
|
||||
|
||||
typedef Sign_of_distance_from_bitangent_line<K>
|
||||
typedef Sign_of_distance_from_bitangent_line_2<K>
|
||||
Sign_of_distance_from_bitangent_line;
|
||||
|
||||
typedef Sign_of_distance_from_CCW_circle<K>
|
||||
typedef Sign_of_distance_from_CCW_circle_2<K>
|
||||
Sign_of_distance_from_CCW_circle;
|
||||
public:
|
||||
template<class Method_tag>
|
||||
|
|
|
|||
|
|
@ -36,12 +36,12 @@ CGAL_APOLLONIUS_GRAPH_2_BEGIN_NAMESPACE
|
|||
//--------------------------------------------------------------------
|
||||
|
||||
template< class K >
|
||||
class Sign_of_distance_from_bitangent_line
|
||||
class Sign_of_distance_from_bitangent_line_2
|
||||
{
|
||||
public:
|
||||
typedef Bitangent_line<K> Bitangent_line;
|
||||
typedef Bitangent_line_2<K> Bitangent_line;
|
||||
typedef typename K::Site_2 Site_2;
|
||||
typedef Inverted_weighted_point<K> Inverted_weighted_point;
|
||||
typedef Inverted_weighted_point_2<K> Inverted_weighted_point;
|
||||
typedef typename K::FT FT;
|
||||
typedef typename K::Sign Sign;
|
||||
|
||||
|
|
@ -79,13 +79,13 @@ public:
|
|||
|
||||
|
||||
template< class K >
|
||||
class Sign_of_distance_from_CCW_circle
|
||||
class Sign_of_distance_from_CCW_circle_2
|
||||
{
|
||||
public:
|
||||
typedef Bitangent_line<K> Bitangent_line;
|
||||
typedef Inverted_weighted_point<K> Inverted_weighted_point;
|
||||
typedef typename K::FT FT;
|
||||
typedef typename K::Sign Sign;
|
||||
typedef Bitangent_line_2<K> Bitangent_line;
|
||||
typedef Inverted_weighted_point_2<K> Inverted_weighted_point;
|
||||
typedef typename K::FT FT;
|
||||
typedef typename K::Sign Sign;
|
||||
|
||||
public:
|
||||
inline Sign
|
||||
|
|
@ -138,21 +138,21 @@ public:
|
|||
|
||||
typedef typename K::Point_2 Point_2;
|
||||
typedef typename K::Site_2 Site_2;
|
||||
typedef Weighted_point_inverter<K> Weighted_point_inverter;
|
||||
typedef Inverted_weighted_point<K> Inverted_weighted_point;
|
||||
typedef Bitangent_line<K> Bitangent_line;
|
||||
typedef Voronoi_radius<K> Voronoi_radius;
|
||||
typedef Weighted_point_inverter_2<K> Weighted_point_inverter;
|
||||
typedef Inverted_weighted_point_2<K> Inverted_weighted_point;
|
||||
typedef Bitangent_line_2<K> Bitangent_line;
|
||||
typedef Voronoi_radius_2<K> Voronoi_radius;
|
||||
typedef typename K::FT FT;
|
||||
typedef typename K::Orientation Orientation;
|
||||
typedef typename K::Sign Sign;
|
||||
typedef typename K::Bounded_side Bounded_side;
|
||||
|
||||
typedef Bounded_side_of_CCW_circle<K> Bounded_side_of_CCW_circle;
|
||||
typedef Bounded_side_of_CCW_circle_2<K> Bounded_side_of_CCW_circle;
|
||||
|
||||
typedef Sign_of_distance_from_bitangent_line<K>
|
||||
typedef Sign_of_distance_from_bitangent_line_2<K>
|
||||
Sign_of_distance_from_bitangent_line;
|
||||
|
||||
typedef Sign_of_distance_from_CCW_circle<K>
|
||||
typedef Sign_of_distance_from_CCW_circle_2<K>
|
||||
Sign_of_distance_from_CCW_circle;
|
||||
|
||||
private:
|
||||
|
|
|
|||
|
|
@ -34,18 +34,18 @@ CGAL_APOLLONIUS_GRAPH_2_BEGIN_NAMESPACE
|
|||
//--------------------------------------------------------------------
|
||||
|
||||
template< class K >
|
||||
class Bounded_side_of_CCW_circular_arc
|
||||
class Bounded_side_of_CCW_circular_arc_2
|
||||
{
|
||||
public:
|
||||
typedef Weighted_point_inverter<K> Weighted_point_inverter;
|
||||
typedef Inverted_weighted_point<K> Inverted_weighted_point;
|
||||
typedef Voronoi_radius<K> Voronoi_radius;
|
||||
typedef Voronoi_circle<K> Voronoi_circle;
|
||||
typedef Bitangent_line<K> Bitangent_line;
|
||||
typedef typename K::FT FT;
|
||||
typedef typename K::Bounded_side Bounded_side;
|
||||
typedef typename K::Orientation Orientation;
|
||||
typedef typename K::Sign Sign;
|
||||
typedef Weighted_point_inverter_2<K> Weighted_point_inverter;
|
||||
typedef Inverted_weighted_point_2<K> Inverted_weighted_point;
|
||||
typedef Voronoi_radius_2<K> Voronoi_radius;
|
||||
typedef Voronoi_circle_2<K> Voronoi_circle;
|
||||
typedef Bitangent_line_2<K> Bitangent_line;
|
||||
typedef typename K::FT FT;
|
||||
typedef typename K::Bounded_side Bounded_side;
|
||||
typedef typename K::Orientation Orientation;
|
||||
typedef typename K::Sign Sign;
|
||||
|
||||
public:
|
||||
template< class Method_tag >
|
||||
|
|
@ -241,17 +241,17 @@ template < class K, class MTag >
|
|||
class Infinite_edge_interior_conflict_2
|
||||
{
|
||||
public:
|
||||
typedef K Kernel;
|
||||
typedef MTag Method_tag;
|
||||
typedef K Kernel;
|
||||
typedef MTag Method_tag;
|
||||
|
||||
typedef typename K::Site_2 Site_2;
|
||||
typedef Weighted_point_inverter<K> Weighted_point_inverter;
|
||||
typedef Inverted_weighted_point<K> Inverted_weighted_point;
|
||||
typedef Voronoi_radius<K> Voronoi_radius;
|
||||
typedef Voronoi_circle<K> Voronoi_circle;
|
||||
typedef Bitangent_line<K> Bitangent_line;
|
||||
typedef typename K::FT FT;
|
||||
typedef typename K::Bounded_side Bounded_side;
|
||||
typedef typename K::Site_2 Site_2;
|
||||
typedef Weighted_point_inverter_2<K> Weighted_point_inverter;
|
||||
typedef Inverted_weighted_point_2<K> Inverted_weighted_point;
|
||||
typedef Voronoi_radius_2<K> Voronoi_radius;
|
||||
typedef Voronoi_circle_2<K> Voronoi_circle;
|
||||
typedef Bitangent_line_2<K> Bitangent_line;
|
||||
typedef typename K::FT FT;
|
||||
typedef typename K::Bounded_side Bounded_side;
|
||||
|
||||
// typedef CGAL::Bounded_side_of_CCW_circle<K> Bounded_side_of_CCW_circle;
|
||||
// typedef CGAL::Sign_of_distance_from_bitangent_line<K>
|
||||
|
|
@ -260,7 +260,7 @@ public:
|
|||
// Sign_of_distance_from_CCW_circle;
|
||||
// typedef CGAL::Order_on_finite_bisector<K> Order_on_finite_bisector;
|
||||
|
||||
typedef Bounded_side_of_CCW_circular_arc<K>
|
||||
typedef Bounded_side_of_CCW_circular_arc_2<K>
|
||||
Bounded_side_of_CCW_circular_arc;
|
||||
|
||||
public:
|
||||
|
|
|
|||
|
|
@ -44,17 +44,17 @@ public:
|
|||
typedef MTag Method_tag;
|
||||
|
||||
typedef typename K::Site_2 Site_2;
|
||||
typedef Weighted_point_inverter<K> Weighted_point_inverter;
|
||||
typedef Inverted_weighted_point<K> Inverted_weighted_point;
|
||||
typedef Bitangent_line<K> Bitangent_line;
|
||||
typedef Voronoi_circle<K> Voronoi_circle;
|
||||
typedef Weighted_point_inverter_2<K> Weighted_point_inverter;
|
||||
typedef Inverted_weighted_point_2<K> Inverted_weighted_point;
|
||||
typedef Bitangent_line_2<K> Bitangent_line;
|
||||
typedef Voronoi_circle_2<K> Voronoi_circle;
|
||||
typedef typename K::FT FT;
|
||||
typedef typename K::Sign Sign;
|
||||
typedef typename K::Comparison_result Comparison_result;
|
||||
|
||||
typedef Order_on_finite_bisector<K> Order_on_finite_bisector;
|
||||
typedef Order_on_finite_bisector_2<K> Order_on_finite_bisector;
|
||||
|
||||
typedef Sign_of_distance_from_CCW_circle<K>
|
||||
typedef Sign_of_distance_from_CCW_circle_2<K>
|
||||
Sign_of_distance_from_CCW_circle;
|
||||
|
||||
public:
|
||||
|
|
|
|||
|
|
@ -47,10 +47,10 @@ public:
|
|||
typedef Site_2 argument_type;
|
||||
|
||||
private:
|
||||
typedef Weighted_point_inverter<K> Weighted_point_inverter;
|
||||
typedef Inverted_weighted_point<K> Inverted_weighted_point;
|
||||
typedef Voronoi_circle<K> Voronoi_circle;
|
||||
typedef Bitangent_line<K> Bitangent_line;
|
||||
typedef Weighted_point_inverter_2<K> Weighted_point_inverter;
|
||||
typedef Inverted_weighted_point_2<K> Inverted_weighted_point;
|
||||
typedef Voronoi_circle_2<K> Voronoi_circle;
|
||||
typedef Bitangent_line_2<K> Bitangent_line;
|
||||
typedef typename Bitangent_line::FT FT;
|
||||
|
||||
private:
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ CGAL_BEGIN_NAMESPACE
|
|||
CGAL_APOLLONIUS_GRAPH_2_BEGIN_NAMESPACE
|
||||
|
||||
template< class K >
|
||||
class Inverted_weighted_point
|
||||
class Inverted_weighted_point_2
|
||||
: public K::Site_2
|
||||
{
|
||||
public:
|
||||
|
|
@ -38,7 +38,7 @@ public:
|
|||
private:
|
||||
FT _p;
|
||||
public:
|
||||
Inverted_weighted_point(const K_Site_2& wp, const FT& p)
|
||||
Inverted_weighted_point_2(const K_Site_2& wp, const FT& p)
|
||||
: K_Site_2(wp), _p(p) {}
|
||||
|
||||
inline FT p() const { return _p; }
|
||||
|
|
@ -46,17 +46,17 @@ public:
|
|||
|
||||
|
||||
template< class K >
|
||||
class Weighted_point_inverter
|
||||
class Weighted_point_inverter_2
|
||||
{
|
||||
public:
|
||||
typedef typename K::Point_2 Point_2;
|
||||
typedef typename K::Site_2 Site_2;
|
||||
typedef Inverted_weighted_point<K> Inverted_weighted_point;
|
||||
typedef Inverted_weighted_point_2<K> Inverted_weighted_point;
|
||||
typedef typename K::FT FT;
|
||||
private:
|
||||
Site_2 _pole;
|
||||
public:
|
||||
Weighted_point_inverter(const Site_2& pole)
|
||||
Weighted_point_inverter_2(const Site_2& pole)
|
||||
: _pole(pole) {}
|
||||
|
||||
Inverted_weighted_point operator()(const Site_2& wp)
|
||||
|
|
@ -76,7 +76,7 @@ public:
|
|||
|
||||
|
||||
template< class K >
|
||||
class Voronoi_radius
|
||||
class Voronoi_radius_2
|
||||
{
|
||||
// this class stores the coefficients for the tritangent circle
|
||||
// radius equation. In particular we have:
|
||||
|
|
@ -84,21 +84,21 @@ class Voronoi_radius
|
|||
// x here represents the inverse of the radius
|
||||
public:
|
||||
typedef typename K::FT FT;
|
||||
typedef Inverted_weighted_point<K> Inverted_weighted_point;
|
||||
typedef Inverted_weighted_point_2<K> Inverted_weighted_point;
|
||||
|
||||
private:
|
||||
FT _a, _b, _c;
|
||||
FT _c2, _delta;
|
||||
FT _dxp, _dyp, _dwp;
|
||||
|
||||
Voronoi_radius(FT a, FT b, FT c, FT c2, FT delta,
|
||||
FT dxp, FT dyp, FT dwp)
|
||||
Voronoi_radius_2(FT a, FT b, FT c, FT c2, FT delta,
|
||||
FT dxp, FT dyp, FT dwp)
|
||||
: _a(a), _b(b), _c(c), _c2(c2), _delta(delta), _dxp(dxp),
|
||||
_dyp(dyp), _dwp(dwp) {}
|
||||
|
||||
public:
|
||||
Voronoi_radius(const Inverted_weighted_point& u1,
|
||||
const Inverted_weighted_point& u2)
|
||||
Voronoi_radius_2(const Inverted_weighted_point& u1,
|
||||
const Inverted_weighted_point& u2)
|
||||
{
|
||||
FT dxp = det2x2_by_formula(u1.x(), u1.p(), u2.x(), u2.p());
|
||||
FT dyp = det2x2_by_formula(u1.y(), u1.p(), u2.y(), u2.p());
|
||||
|
|
@ -132,15 +132,15 @@ public:
|
|||
|
||||
inline bool is_first_root() const { return CGAL::is_negative(_c2); }
|
||||
|
||||
Voronoi_radius get_symmetric()
|
||||
Voronoi_radius_2 get_symmetric()
|
||||
{
|
||||
return Voronoi_radius(_a, _b, _c, -_c2, _delta, -_dxp, -_dyp, -_dwp);
|
||||
return Voronoi_radius_2(_a, _b, _c, -_c2, _delta, -_dxp, -_dyp, -_dwp);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
template< class K >
|
||||
class Bitangent_line
|
||||
class Bitangent_line_2
|
||||
{
|
||||
// this class computes and stores the data for the left bitangent
|
||||
// line of the weighted points p1, p2 oriented from p1 to p2
|
||||
|
|
@ -149,7 +149,7 @@ class Bitangent_line
|
|||
public:
|
||||
typedef typename K::Point_2 Point_2;
|
||||
typedef typename K::Site_2 Site_2;
|
||||
typedef Inverted_weighted_point<K> Inverted_weighted_point;
|
||||
typedef Inverted_weighted_point_2<K> Inverted_weighted_point;
|
||||
typedef typename K::FT FT;
|
||||
protected:
|
||||
FT _a1, _a2;
|
||||
|
|
@ -160,8 +160,8 @@ protected:
|
|||
FT _dw;
|
||||
FT _dxw, _dyw;
|
||||
|
||||
Bitangent_line(FT a1, FT a2, FT b1, FT b2, FT c1, FT c2,
|
||||
FT delta, FT d, FT dw, FT dxw, FT dyw)
|
||||
Bitangent_line_2(FT a1, FT a2, FT b1, FT b2, FT c1, FT c2,
|
||||
FT delta, FT d, FT dw, FT dxw, FT dyw)
|
||||
: _a1(a1), _a2(a2), _b1(b1), _b2(b2), _c1(c1), _c2(c2),
|
||||
_delta(delta), _d(d), _dw(dw),_dxw(dxw), _dyw(dyw) {}
|
||||
|
||||
|
|
@ -188,7 +188,7 @@ protected:
|
|||
}
|
||||
|
||||
public:
|
||||
Bitangent_line(const Site_2& p1, const Site_2& p2)
|
||||
Bitangent_line_2(const Site_2& p1, const Site_2& p2)
|
||||
{
|
||||
FT dx = p1.x() - p2.x();
|
||||
FT dy = p1.y() - p2.y();
|
||||
|
|
@ -201,8 +201,8 @@ public:
|
|||
}
|
||||
|
||||
|
||||
Bitangent_line(const Inverted_weighted_point& u1,
|
||||
const Inverted_weighted_point& u2)
|
||||
Bitangent_line_2(const Inverted_weighted_point& u1,
|
||||
const Inverted_weighted_point& u2)
|
||||
{
|
||||
FT dxp = det2x2_by_formula(u1.x(), u1.p(), u2.x(), u2.p());
|
||||
FT dyp = det2x2_by_formula(u1.y(), u1.p(), u2.y(), u2.p());
|
||||
|
|
@ -214,38 +214,38 @@ public:
|
|||
store(dxp, dyp, dwp, dxy, dxw, dyw);
|
||||
}
|
||||
|
||||
Bitangent_line get_symmetric() const
|
||||
Bitangent_line_2 get_symmetric() const
|
||||
{
|
||||
return
|
||||
Bitangent_line(_a1, -_a2, _b1, -_b2, _c1, -_c2, _delta, _d,
|
||||
-_dw, -_dxw, -_dyw);
|
||||
Bitangent_line_2(_a1, -_a2, _b1, -_b2, _c1, -_c2, _delta, _d,
|
||||
-_dw, -_dxw, -_dyw);
|
||||
}
|
||||
|
||||
Bitangent_line get_rot90() const
|
||||
Bitangent_line_2 get_rot90() const
|
||||
{
|
||||
return
|
||||
Bitangent_line(-_b1, -_b2, _a1, _a2, _c1, _c2, _delta, _d,
|
||||
_dw, -_dyw, _dxw);
|
||||
Bitangent_line_2(-_b1, -_b2, _a1, _a2, _c1, _c2, _delta, _d,
|
||||
_dw, -_dyw, _dxw);
|
||||
}
|
||||
|
||||
Bitangent_line perpendicular(const Point_2& p) const
|
||||
Bitangent_line_2 perpendicular(const Point_2& p) const
|
||||
{
|
||||
// THIS DOES NOT KEEP TRACK OF THE ADDITIONALLY STORED
|
||||
// QUANTITIES; THIS IS INEVITABLE IN ANY CASE SINCE GIVEN p WE
|
||||
// CANNOT ANY LONGER HOPE TO KEEP TRACK OF THOSE
|
||||
Bitangent_line rotated = get_rot90();
|
||||
Bitangent_line_2 rotated = get_rot90();
|
||||
rotated._c1 = _b1 * p.x() - _a1 * p.y();
|
||||
rotated._c2 = _b2 * p.x() - _a2 * p.y();
|
||||
|
||||
return rotated;
|
||||
}
|
||||
|
||||
Bitangent_line perpendicular(const Inverted_weighted_point& u) const
|
||||
Bitangent_line_2 perpendicular(const Inverted_weighted_point& u) const
|
||||
{
|
||||
// THIS DOES NOT KEEP TRACK OF THE ADDITIONALLY STORED
|
||||
// QUANTITIES; THIS IS INEVITABLE IN ANY CASE SINCE GIVEN p WE
|
||||
// CANNOT ANY LONGER HOPE TO KEEP TRACK OF THOSE
|
||||
Bitangent_line rotated = get_rot90();
|
||||
Bitangent_line_2 rotated = get_rot90();
|
||||
rotated._c1 = (_b1 * u.x() - _a1 * u.y()) * u.p();
|
||||
rotated._c2 = (_b2 * u.x() - _a2 * u.y()) * u.p();
|
||||
|
||||
|
|
@ -270,12 +270,12 @@ public:
|
|||
|
||||
|
||||
template< class K >
|
||||
class Voronoi_circle : public Bitangent_line<K>
|
||||
class Voronoi_circle_2 : public Bitangent_line_2<K>
|
||||
{
|
||||
public:
|
||||
typedef Inverted_weighted_point<K> Inverted_weighted_point;
|
||||
typedef Bitangent_line<K> Bitangent_line;
|
||||
typedef Voronoi_radius<K> Voronoi_radius;
|
||||
typedef Inverted_weighted_point_2<K> Inverted_weighted_point;
|
||||
typedef Bitangent_line_2<K> Bitangent_line;
|
||||
typedef Voronoi_radius_2<K> Voronoi_radius;
|
||||
typedef typename Bitangent_line::FT FT;
|
||||
|
||||
protected:
|
||||
|
|
@ -289,14 +289,14 @@ protected:
|
|||
}
|
||||
|
||||
public:
|
||||
Voronoi_circle(const Voronoi_radius& vr)
|
||||
Voronoi_circle_2(const Voronoi_radius& vr)
|
||||
: Bitangent_line(FT(0), FT(0), FT(0), FT(0), vr.b(), vr.c2(),
|
||||
vr.delta(), vr.d(), FT(0), FT(0), FT(0)), _gamma(vr.c())
|
||||
{
|
||||
store(vr.dxp(), vr.dyp(), vr.dwp());
|
||||
}
|
||||
|
||||
Voronoi_circle(const Bitangent_line& bl)
|
||||
Voronoi_circle_2(const Bitangent_line& bl)
|
||||
: Bitangent_line(bl.a1(), bl.a2(), bl.b1(), bl.b2(), bl.c1(), bl.c2(),
|
||||
bl.delta(), bl.d(), bl.dw(), bl.dxw(), bl.dyw())
|
||||
{
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@ template < class K, class Method_tag >
|
|||
class Conflict_2
|
||||
{
|
||||
public:
|
||||
typedef Inverted_weighted_point<K> Inverted_weighted_point;
|
||||
typedef Inverted_weighted_point_2<K> Inverted_weighted_point;
|
||||
typedef typename K::RT RT;
|
||||
typedef typename K::Sign Sign;
|
||||
typedef Sign result_type;
|
||||
|
|
|
|||
|
|
@ -37,12 +37,12 @@ template < class K, class Method_tag >
|
|||
class Edge_conflict_2 : public Conflict_2<K, Method_tag>
|
||||
{
|
||||
private:
|
||||
typedef Conflict_2<K, Method_tag> Base;
|
||||
typedef Conflict_2<K, Method_tag> Base;
|
||||
public:
|
||||
typedef Inverted_weighted_point<K> Inverted_weighted_point;
|
||||
typedef bool result_type;
|
||||
typedef typename Base::Sign Sign;
|
||||
struct Arity {};
|
||||
typedef typename Base::Inverted_weighted_point Inverted_weighted_point;
|
||||
typedef bool result_type;
|
||||
typedef typename Base::Sign Sign;
|
||||
struct Arity {};
|
||||
|
||||
protected:
|
||||
|
||||
|
|
|
|||
|
|
@ -36,13 +36,15 @@ template < class K, class Method_tag >
|
|||
class Finite_edge_interior_conflict_new_2
|
||||
: public Edge_conflict_2<K, Method_tag>
|
||||
{
|
||||
private:
|
||||
typedef Edge_conflict_2<K,Method_tag> Base;
|
||||
public:
|
||||
typedef Inverted_weighted_point<K> Inverted_weighted_point;
|
||||
typedef Weighted_point_inverter<K> Weighted_point_inverter;
|
||||
typedef typename K::Site_2 Site_2;
|
||||
typedef typename K::Point_2 Point_2;
|
||||
typedef bool result_type;
|
||||
struct Arity {};
|
||||
typedef typename Base::Inverted_weighted_point Inverted_weighted_point;
|
||||
typedef Weighted_point_inverter_2<K> Weighted_point_inverter;
|
||||
typedef typename K::Site_2 Site_2;
|
||||
typedef typename K::Point_2 Point_2;
|
||||
typedef bool result_type;
|
||||
struct Arity {};
|
||||
|
||||
inline
|
||||
bool operator()(const Site_2& p1, const Site_2& p2,
|
||||
|
|
|
|||
|
|
@ -37,25 +37,27 @@ template < class K, class Method_tag >
|
|||
class Infinite_edge_interior_conflict_new_2
|
||||
: public Edge_conflict_2<K, Method_tag>
|
||||
{
|
||||
private:
|
||||
typedef Edge_conflict_2<K,Method_tag> Base;
|
||||
public:
|
||||
typedef Weighted_point_inverter<K> Weighted_point_inverter;
|
||||
typedef Inverted_weighted_point<K> Inverted_weighted_point;
|
||||
typedef typename K::Site_2 Site_2;
|
||||
typedef typename K::Point_2 Point_2;
|
||||
typedef bool result_type;
|
||||
typedef Arity_tag<5> Arity;
|
||||
typedef Weighted_point_inverter_2<K> Weighted_point_inverter;
|
||||
typedef typename Base::Inverted_weighted_point Inverted_weighted_point;
|
||||
typedef typename K::Site_2 Site_2;
|
||||
typedef typename K::Point_2 Point_2;
|
||||
typedef bool result_type;
|
||||
typedef Arity_tag<5> Arity;
|
||||
|
||||
inline
|
||||
bool operator()(const Site_2& p2, const Site_2& p3,
|
||||
inline
|
||||
bool operator()(const Site_2& p2, const Site_2& p3,
|
||||
const Site_2& p4, const Site_2& q, bool b) const
|
||||
{
|
||||
Weighted_point_inverter inverter(p2);
|
||||
Point_2 origin(0,0);
|
||||
Site_2 origin_site(origin,0);
|
||||
return edge_conflict_test(Inverted_weighted_point(origin_site, 1),
|
||||
inverter(p4), inverter(p3), inverter(q),
|
||||
b, 1, 1);
|
||||
}
|
||||
{
|
||||
Weighted_point_inverter inverter(p2);
|
||||
Point_2 origin(0,0);
|
||||
Site_2 origin_site(origin,0);
|
||||
return edge_conflict_test(Inverted_weighted_point(origin_site, 1),
|
||||
inverter(p4), inverter(p3), inverter(q),
|
||||
b, 1, 1);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue