- G++ 3.4 support : add missing "this->".

This commit is contained in:
Sylvain Pion 2003-04-06 12:57:27 +00:00
parent e5cf20259f
commit 1a2f656efe
4 changed files with 50 additions and 42 deletions

View File

@ -1,5 +1,8 @@
Generator Package: Release changes:
---------------------------------------------------------------------
2.65 (6 Apr 2003)
- G++ 3.4 support : add missing "this->".
2.64 (22 Aug 2002)
- default Creator now uses number type from given point types
instead of double; default creator is now documented

View File

@ -209,7 +209,7 @@ Vertex_data(ForwardIterator begin, ForwardIterator end,
const PolygonTraits& pgn_traits)
: Base_class(begin, end, pgn_traits)
{
edges.insert(edges.end(), m_size, Edge_data());
edges.insert(edges.end(), this->m_size, Edge_data());
}
template <class ForwardIterator, class PolygonTraits>
@ -260,23 +260,23 @@ insertion_event(Tree *tree, Vertex_index prev_vt,
// assert(result.second)
td_prev.tree_it = result.first;
td_prev.is_in_tree = true;
if (!is_simple_result) return false;
if (!this->is_simple_result) return false;
result = tree->insert(mid_vt);
// assert(result.second)
td_mid.tree_it = result.first;
td_mid.is_in_tree = true;
if (!is_simple_result) return false;
if (!this->is_simple_result) return false;
} else {
result = tree->insert(mid_vt);
// assert(result.second)
td_mid.tree_it = result.first;
td_mid.is_in_tree = true;
if (!is_simple_result) return false;
if (!this->is_simple_result) return false;
result = tree->insert(prev_vt);
// assert(result.second)
td_prev.tree_it = result.first;
td_prev.is_in_tree = true;
if (!is_simple_result) return false;
if (!this->is_simple_result) return false;
}
return true;
}
@ -348,7 +348,7 @@ replacement_event(Tree *tree, Vertex_index cur_edge, Vertex_index next_edge)
td.is_in_tree = false;
new_td.tree_it = tree->insert(seg_above, next_edge);
new_td.is_in_tree = true;
return is_simple_result;
return this->is_simple_result;
}
template <class ForwardIterator, class PolygonTraits>
@ -463,10 +463,10 @@ template <class ForwardIterator, class PolygonTraits>
void Vertex_data<ForwardIterator, PolygonTraits>::
sweep(Tree *tree)
{
if (m_size < 3)
if (this->m_size < 3)
return;
bool success = true;
for (Index_t i=0; i< m_size; ++i) {
for (Index_t i=0; i< this->m_size; ++i) {
Vertex_index cur = index_at_rank(Vertex_order(i));
Vertex_index prev_vt = prev(cur), next_vt = next(cur);
if (ordered_left_to_right(cur, next_vt)) {
@ -484,7 +484,7 @@ sweep(Tree *tree)
break;
}
if (!success)
is_simple_result = false;
this->is_simple_result = false;
}
}
// ----- End of implementation of i_generator_polygon functions. -----

View File

@ -58,11 +58,11 @@ void
Random_points_in_disc_2<P,Creator>::
generate_point() {
typedef typename Creator::argument_type T;
double alpha = _rnd.get_double() * 2.0 * CGAL_PI;
double r = d_range * CGAL_CLIB_STD::sqrt( _rnd.get_double());
double alpha = this->_rnd.get_double() * 2.0 * CGAL_PI;
double r = this->d_range * CGAL_CLIB_STD::sqrt( this->_rnd.get_double());
Creator creator;
d_item = creator( T(r * CGAL_CLIB_STD::cos(alpha)),
T(r * CGAL_CLIB_STD::sin(alpha)));
this->d_item = creator( T(r * CGAL_CLIB_STD::cos(alpha)),
T(r * CGAL_CLIB_STD::sin(alpha)));
}
@ -93,10 +93,10 @@ void
Random_points_on_circle_2<P,Creator>::
generate_point() {
typedef typename Creator::argument_type T;
double a = _rnd.get_double() * 2.0 * CGAL_PI;
double a = this->_rnd.get_double() * 2.0 * CGAL_PI;
Creator creator;
d_item = creator( T(d_range * CGAL_CLIB_STD::cos(a)),
T(d_range * CGAL_CLIB_STD::sin(a)));
this->d_item = creator( T(this->d_range * CGAL_CLIB_STD::cos(a)),
T(this->d_range * CGAL_CLIB_STD::sin(a)));
}
@ -130,8 +130,9 @@ Random_points_in_square_2<P,Creator>::
generate_point() {
typedef typename Creator::argument_type T;
Creator creator;
d_item = creator( T(d_range * (2 * _rnd.get_double() - 1.0)),
T(d_range * (2 * _rnd.get_double() - 1.0)));
this->d_item =
creator( T(this->d_range * (2 * this->_rnd.get_double() - 1.0)),
T(this->d_range * (2 * this->_rnd.get_double() - 1.0)));
}
@ -165,23 +166,23 @@ void
Random_points_on_square_2<P,Creator>::
generate_point() {
typedef typename Creator::argument_type T;
double d = _rnd.get_double() * 4.0;
double d = this->_rnd.get_double() * 4.0;
int k = int(d);
d = d_range * (2 * (d - k) - 1.0);
CGAL_assertion( - d_range <= d && d < d_range);
d = this->d_range * (2 * (d - k) - 1.0);
CGAL_assertion( - this->d_range <= d && d < this->d_range);
Creator creator;
switch (k) {
case 0:
d_item = creator( T(d), T(-d_range));
this->d_item = creator( T(d), T(-this->d_range));
break;
case 1:
d_item = creator( T(d), T(d_range));
this->d_item = creator( T(d), T(this->d_range));
break;
case 2:
d_item = creator( T(-d_range), T(d));
this->d_item = creator( T(-this->d_range), T(d));
break;
case 3:
d_item = creator( T( d_range), T(d));
this->d_item = creator( T( this->d_range), T(d));
break;
}
}
@ -226,11 +227,11 @@ void
Random_points_on_segment_2<P,Creator>::
generate_point() {
typedef typename Creator::argument_type T;
double la = _rnd.get_double();
double la = this->_rnd.get_double();
double mu = 1.0 - la;
Creator creator;
d_item = creator( T(mu * to_double(_p.x()) + la * to_double(_q.x())),
T(mu * to_double(_p.y()) + la * to_double(_q.y())));
this->d_item = creator(T(mu * to_double(_p.x()) + la * to_double(_q.x())),
T(mu * to_double(_p.y()) + la * to_double(_q.y())));
}
template < class P >
@ -270,7 +271,7 @@ public:
template < class P >
void
Points_on_segment_2<P>::
generate_point() { d_item = _p + (_q-_p) * d_i / (d_mx-1); }
generate_point() { this->d_item = _p + (_q-_p) * d_i / (d_mx-1); }
template <class OutputIterator, class Creator>
OutputIterator

View File

@ -60,12 +60,15 @@ generate_point() {
typedef typename Creator::argument_type T;
do {
Creator creator;
d_item = creator( T(d_range * ( 2 * _rnd.get_double() - 1.0)),
T(d_range * ( 2 * _rnd.get_double() - 1.0)),
T(d_range * ( 2 * _rnd.get_double() - 1.0)));
this->d_item =
creator( T(this->d_range * ( 2 * this->_rnd.get_double() - 1.0)),
T(this->d_range * ( 2 * this->_rnd.get_double() - 1.0)),
T(this->d_range * ( 2 * this->_rnd.get_double() - 1.0)));
}
while (CGAL::to_double(d_item.x() * d_item.x() + d_item.y() * d_item.y() +
d_item.z() * d_item.z()) >= d_range * d_range);
while (CGAL::to_double(this->d_item.x() * this->d_item.x() +
this->d_item.y() * this->d_item.y() +
this->d_item.z() * this->d_item.z()) >=
this->d_range * this->d_range);
}
@ -96,13 +99,13 @@ void
Random_points_on_sphere_3<P,Creator>::
generate_point() {
typedef typename Creator::argument_type T;
double alpha = _rnd.get_double() * 2.0 * CGAL_PI;
double z = 2 * _rnd.get_double() - 1.0;
double alpha = this->_rnd.get_double() * 2.0 * CGAL_PI;
double z = 2 * this->_rnd.get_double() - 1.0;
double r = std::sqrt( 1 - z * z);
Creator creator;
d_item = creator( T(d_range * r * CGAL_CLIB_STD::cos(alpha)),
T(d_range * r * CGAL_CLIB_STD::sin(alpha)),
T(d_range * z));
this->d_item = creator( T(this->d_range * r * CGAL_CLIB_STD::cos(alpha)),
T(this->d_range * r * CGAL_CLIB_STD::sin(alpha)),
T(this->d_range * z));
}
@ -131,9 +134,10 @@ Random_points_in_cube_3<P,Creator>::
generate_point() {
typedef typename Creator::argument_type T;
Creator creator;
d_item = creator( T(d_range * ( 2 * _rnd.get_double() - 1.0)),
T(d_range * ( 2 * _rnd.get_double() - 1.0)),
T(d_range * ( 2 * _rnd.get_double() - 1.0)));
this->d_item =
creator( T(this->d_range * ( 2 * this->_rnd.get_double() - 1.0)),
T(this->d_range * ( 2 * this->_rnd.get_double() - 1.0)),
T(this->d_range * ( 2 * this->_rnd.get_double() - 1.0)));
}