mirror of https://github.com/CGAL/cgal
Merge pull request #4514 from MaelRL/CGAL-Fix_warnings-GF
Fix (some) testuite warnings
This commit is contained in:
commit
98fafe4ef1
|
|
@ -39,7 +39,7 @@ public:
|
||||||
|
|
||||||
typedef typename Algebraic_kernel_d_1::Algebraic_real_1 Algebraic_real_1;
|
typedef typename Algebraic_kernel_d_1::Algebraic_real_1 Algebraic_real_1;
|
||||||
|
|
||||||
Bitstream_coefficient_kernel_at_alpha_rep() {}
|
Bitstream_coefficient_kernel_at_alpha_rep() : _m_kernel(nullptr) {}
|
||||||
|
|
||||||
Bitstream_coefficient_kernel_at_alpha_rep(Algebraic_kernel_d_1* kernel,
|
Bitstream_coefficient_kernel_at_alpha_rep(Algebraic_kernel_d_1* kernel,
|
||||||
Algebraic_real_1 alpha)
|
Algebraic_real_1 alpha)
|
||||||
|
|
|
||||||
|
|
@ -41,11 +41,11 @@ int main()
|
||||||
int n;
|
int n;
|
||||||
is >> n;
|
is >> n;
|
||||||
std::cout << "Reading " << n << " points " << std::endl;
|
std::cout << "Reading " << n << " points " << std::endl;
|
||||||
Bare_point bp;
|
for( ; n>0 ; n--)
|
||||||
for( ; n>0 ; n--) {
|
{
|
||||||
is >> bp;
|
Bare_point bp;
|
||||||
Weighted_point p(bp, 0.0001 * random.get_double(0., 0.015625)); // arbitrary weights
|
if(is >> bp)
|
||||||
pts.push_back(p);
|
pts.emplace_back(bp, 0.0001 * random.get_double(0., 0.015625)); // arbitrary weights
|
||||||
}
|
}
|
||||||
|
|
||||||
// Define the periodic cube
|
// Define the periodic cube
|
||||||
|
|
|
||||||
|
|
@ -60,7 +60,7 @@ private:
|
||||||
void Cone_spanners_ipelet::protected_run(int fn)
|
void Cone_spanners_ipelet::protected_run(int fn)
|
||||||
{
|
{
|
||||||
std::vector<Point_2> lst;
|
std::vector<Point_2> lst;
|
||||||
int number_of_cones;
|
int number_of_cones = 0;
|
||||||
switch (fn){
|
switch (fn){
|
||||||
case 0:
|
case 0:
|
||||||
case 1:
|
case 1:
|
||||||
|
|
|
||||||
|
|
@ -312,15 +312,12 @@ class ConicCPA2
|
||||||
PT center () const
|
PT center () const
|
||||||
{
|
{
|
||||||
CGAL_kernel_precondition (type != PARABOLA);
|
CGAL_kernel_precondition (type != PARABOLA);
|
||||||
// PT p;
|
|
||||||
// replaced previous line by following hack (no idea
|
const FT two = FT(2);
|
||||||
// why original version doesn't work)
|
const FT div = -det();
|
||||||
typename DA::Point p;
|
|
||||||
FT two = FT(2);
|
return PT((two*s()*u() - t()*v()) / div,
|
||||||
FT div = -det();
|
(two*r()*v() - t()*u()) / div);
|
||||||
dao.set( p, (two*s()*u() - t()*v()) / div,
|
|
||||||
(two*r()*v() - t()*u()) / div);
|
|
||||||
return p;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Conic_type conic_type () const
|
Conic_type conic_type () const
|
||||||
|
|
|
||||||
|
|
@ -268,6 +268,13 @@ line_y_at_xC2(const FT &a, const FT &b, const FT &c, const FT &x)
|
||||||
return (-a*x-c) / b;
|
return (-a*x-c) / b;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Silence a warning for MSVC 2017
|
||||||
|
// > include\cgal\constructions\kernel_ftc2.h(287) :
|
||||||
|
// > warning C4723: potential divide by 0
|
||||||
|
#if defined(BOOST_MSVC)
|
||||||
|
#pragma warning(push)
|
||||||
|
#pragma warning(disable:4723)
|
||||||
|
#endif
|
||||||
template < class FT >
|
template < class FT >
|
||||||
inline
|
inline
|
||||||
void
|
void
|
||||||
|
|
@ -276,14 +283,6 @@ line_get_pointC2(const FT &a, const FT &b, const FT &c, const FT &i,
|
||||||
{
|
{
|
||||||
if (CGAL_NTS is_zero(b))
|
if (CGAL_NTS is_zero(b))
|
||||||
{
|
{
|
||||||
// Laurent Rineau, 2018/12/07: I add this CGAL_assume to calm
|
|
||||||
// down a warning from MSVC 2017:
|
|
||||||
// > include\cgal\constructions\kernel_ftc2.h(287) :
|
|
||||||
// > warning C4723: potential divide by 0
|
|
||||||
// The test `!boost::is_integral<FT>::value` is there to avoid
|
|
||||||
// that `a != 0` is tested on anything but integral types, for
|
|
||||||
// performance reasons.
|
|
||||||
CGAL_assume(!boost::is_integral<FT>::value || a != FT(0));
|
|
||||||
|
|
||||||
x = -c/a;
|
x = -c/a;
|
||||||
y = 1 - i * a;
|
y = 1 - i * a;
|
||||||
|
|
@ -294,6 +293,9 @@ line_get_pointC2(const FT &a, const FT &b, const FT &c, const FT &i,
|
||||||
y = -(a+c)/b - i * a;
|
y = -(a+c)/b - i * a;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#if defined(BOOST_MSVC)
|
||||||
|
#pragma warning(pop)
|
||||||
|
#endif
|
||||||
|
|
||||||
template < class FT >
|
template < class FT >
|
||||||
inline
|
inline
|
||||||
|
|
|
||||||
|
|
@ -822,8 +822,7 @@ locate(const Point_d& x) const
|
||||||
lifted_kernel().lift_to_paraboloid_d_object();;
|
lifted_kernel().lift_to_paraboloid_d_object();;
|
||||||
Lifted_point_d lp = lift(x);
|
Lifted_point_d lp = lift(x);
|
||||||
if ( is_dimension_jump(lp) ) {
|
if ( is_dimension_jump(lp) ) {
|
||||||
Simplex_iterator s;
|
for (Simplex_iterator s = const_cast<Self*>(this)->simplices_begin(NEAREST);
|
||||||
for (s = const_cast<Self*>(this)->simplices_begin(NEAREST);
|
|
||||||
s != const_cast<Self*>(this)->simplices_end(); ++s)
|
s != const_cast<Self*>(this)->simplices_end(); ++s)
|
||||||
if ( contains(s,x) ) return s;
|
if ( contains(s,x) ) return s;
|
||||||
return Simplex_handle();
|
return Simplex_handle();
|
||||||
|
|
|
||||||
|
|
@ -79,9 +79,15 @@ int main()
|
||||||
Convex_hull_d::Point_const_iterator pit;
|
Convex_hull_d::Point_const_iterator pit;
|
||||||
Convex_hull_d::Vertex_iterator vit;
|
Convex_hull_d::Vertex_iterator vit;
|
||||||
Convex_hull_d::Simplex_iterator sit;
|
Convex_hull_d::Simplex_iterator sit;
|
||||||
for (pit = T1.points_begin(); pit != T1.points_end(); pit++) *pit;
|
for (pit = T1.points_begin(); pit != T1.points_end(); pit++) {
|
||||||
for (vit = T1.vertices_begin(); vit != T1.vertices_end(); vit++) *vit;
|
const Point& p = *pit;
|
||||||
for (sit = T1.simplices_begin(); sit != T1.simplices_end(); sit++) *sit;
|
CGAL_USE(p);
|
||||||
|
}
|
||||||
|
for (vit = T1.vertices_begin(); vit != T1.vertices_end(); vit++)
|
||||||
|
*vit;
|
||||||
|
for (sit = T1.simplices_begin(); sit != T1.simplices_end(); sit++)
|
||||||
|
*sit;
|
||||||
|
|
||||||
T1.is_valid();
|
T1.is_valid();
|
||||||
T1.clear(2);
|
T1.clear(2);
|
||||||
CGAL_TEST(T1.number_of_vertices()==0);
|
CGAL_TEST(T1.number_of_vertices()==0);
|
||||||
|
|
|
||||||
|
|
@ -41,7 +41,8 @@ fct(const P& )
|
||||||
{
|
{
|
||||||
std::map<Descriptor,int> M;
|
std::map<Descriptor,int> M;
|
||||||
Descriptor d;
|
Descriptor d;
|
||||||
M.find(d);
|
typename std::map<Descriptor,int>::const_iterator it = M.find(d);
|
||||||
|
CGAL_USE(it);
|
||||||
|
|
||||||
boost::unordered_map<Descriptor, int> U;
|
boost::unordered_map<Descriptor, int> U;
|
||||||
U[d] = 12;
|
U[d] = 12;
|
||||||
|
|
@ -56,7 +57,9 @@ void fct2()
|
||||||
{ // For dart handle
|
{ // For dart handle
|
||||||
std::map<dh, int> M;
|
std::map<dh, int> M;
|
||||||
dh e;
|
dh e;
|
||||||
M.find(e);
|
typename std::map<dh, int>::const_iterator it = M.find(e);
|
||||||
|
CGAL_USE(it);
|
||||||
|
|
||||||
boost::unordered_map<dh, int> U;
|
boost::unordered_map<dh, int> U;
|
||||||
U[e] = 12;
|
U[e] = 12;
|
||||||
}
|
}
|
||||||
|
|
@ -64,7 +67,9 @@ void fct2()
|
||||||
{ // For vertex attribute handle
|
{ // For vertex attribute handle
|
||||||
std::map<vh, int> M;
|
std::map<vh, int> M;
|
||||||
vh e;
|
vh e;
|
||||||
M.find(e);
|
typename std::map<vh, int>::const_iterator it = M.find(e);
|
||||||
|
CGAL_USE(it);
|
||||||
|
|
||||||
boost::unordered_map<vh, int> U;
|
boost::unordered_map<vh, int> U;
|
||||||
U[e] = 12;
|
U[e] = 12;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -310,13 +310,8 @@ class ConicHPA2
|
||||||
PT center () const
|
PT center () const
|
||||||
{
|
{
|
||||||
CGAL_kernel_precondition (type != PARABOLA);
|
CGAL_kernel_precondition (type != PARABOLA);
|
||||||
// PT p;
|
|
||||||
// replaced previous line by following hack (no idea
|
|
||||||
// why original version doesn't work)
|
|
||||||
typename DA::Point_2 p;
|
|
||||||
RT two = RT(2);
|
RT two = RT(2);
|
||||||
dao.set( p, two*s()*u() - t()*v(), two*r()*v() - t()*u(), -det());
|
return PT(two*s()*u() - t()*v(), two*r()*v() - t()*u(), -det());
|
||||||
return p;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Conic_type conic_type () const
|
Conic_type conic_type () const
|
||||||
|
|
|
||||||
|
|
@ -1373,7 +1373,6 @@ private:
|
||||||
|
|
||||||
std::size_t vertex_id(const std::size_t& i) const
|
std::size_t vertex_id(const std::size_t& i) const
|
||||||
{
|
{
|
||||||
CGAL_precondition(i >= 0);
|
|
||||||
CGAL_precondition((infinite_ && i < 3) || i < 4);
|
CGAL_precondition((infinite_ && i < 3) || i < 4);
|
||||||
return vertices_[i];
|
return vertices_[i];
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -540,8 +540,13 @@ public:
|
||||||
Mark m[2];
|
Mark m[2];
|
||||||
Object_handle o_supp[2];
|
Object_handle o_supp[2];
|
||||||
SHalfedge_handle e_below;
|
SHalfedge_handle e_below;
|
||||||
|
|
||||||
vertex_info()
|
vertex_info()
|
||||||
{ o_supp[0]=o_supp[1]=Object_handle(); }
|
{
|
||||||
|
m[0]=m[1]=Mark();
|
||||||
|
o_supp[0]=o_supp[1]=Object_handle();
|
||||||
|
}
|
||||||
|
|
||||||
LEDA_MEMORY(vertex_info)
|
LEDA_MEMORY(vertex_info)
|
||||||
}; // vertex_info
|
}; // vertex_info
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -91,12 +91,14 @@ void test_lazy_exact_nt() {
|
||||||
assert( cast ( (i*i+i) / i-i ) == LR(1));
|
assert( cast ( (i*i+i) / i-i ) == LR(1));
|
||||||
assert( cast ( (i*i+r) / i-i ) == LR(1));
|
assert( cast ( (i*i+r) / i-i ) == LR(1));
|
||||||
assert( cast ( (i*r+r) / i-i ) == LI(1));
|
assert( cast ( (i*r+r) / i-i ) == LI(1));
|
||||||
}{ // see also Coercion_traits_test.C
|
}
|
||||||
|
|
||||||
|
{ // see also Coercion_traits_test.C
|
||||||
#ifdef CGAL_USE_LEDA
|
#ifdef CGAL_USE_LEDA
|
||||||
#ifdef CGAL_USE_CORE
|
#ifdef CGAL_USE_CORE
|
||||||
typedef CGAL::Lazy_exact_nt<leda_integer > T1;
|
CGAL_assertion_code(typedef CGAL::Lazy_exact_nt<leda_integer> T1;)
|
||||||
typedef CGAL::Lazy_exact_nt<CORE::Expr > T2;
|
CGAL_assertion_code(typedef CGAL::Lazy_exact_nt<CORE::Expr> T2;)
|
||||||
typedef CGAL::Coercion_traits<T1,T2> CT;
|
CGAL_assertion_code(typedef CGAL::Coercion_traits<T1, T2> CT;)
|
||||||
CGAL_static_assertion((boost::is_same< typename CT::Are_implicit_interoperable,CGAL::Tag_false>::value));
|
CGAL_static_assertion((boost::is_same< typename CT::Are_implicit_interoperable,CGAL::Tag_false>::value));
|
||||||
CGAL_static_assertion((boost::is_same< typename CT::Are_explicit_interoperable,CGAL::Tag_false>::value));
|
CGAL_static_assertion((boost::is_same< typename CT::Are_explicit_interoperable,CGAL::Tag_false>::value));
|
||||||
#endif
|
#endif
|
||||||
|
|
|
||||||
|
|
@ -147,10 +147,8 @@ update_new_point(
|
||||||
typedef typename rich_grid_internal::Rich_point<Kernel> Rich_point;
|
typedef typename rich_grid_internal::Rich_point<Kernel> Rich_point;
|
||||||
|
|
||||||
CGAL_assertion_code( unsigned int size = static_cast<unsigned int>(rich_point_set.size()) );
|
CGAL_assertion_code( unsigned int size = static_cast<unsigned int>(rich_point_set.size()) );
|
||||||
CGAL_point_set_processing_precondition(father_index >= 0 &&
|
CGAL_point_set_processing_precondition(father_index < size);
|
||||||
father_index < size);
|
CGAL_point_set_processing_precondition(mother_index < size);
|
||||||
CGAL_point_set_processing_precondition(mother_index >= 0 &&
|
|
||||||
mother_index < size);
|
|
||||||
|
|
||||||
// 1, get neighbor information from the two "parent points"
|
// 1, get neighbor information from the two "parent points"
|
||||||
Rich_point& new_v = rich_point_set[new_point_index];
|
Rich_point& new_v = rich_point_set[new_point_index];
|
||||||
|
|
|
||||||
|
|
@ -50,7 +50,12 @@ class My_vertex : public CGAL::HalfedgeDS_vertex_base<Refs, T, P> {
|
||||||
Norm norm;
|
Norm norm;
|
||||||
public:
|
public:
|
||||||
My_vertex() {} // repeat mandatory constructors
|
My_vertex() {} // repeat mandatory constructors
|
||||||
My_vertex( const P& pt) : CGAL::HalfedgeDS_vertex_base<Refs, T, P>(pt) {}
|
My_vertex( const P& pt)
|
||||||
|
: CGAL::HalfedgeDS_vertex_base<Refs, T, P>(pt)
|
||||||
|
{
|
||||||
|
//initialization of the normal
|
||||||
|
norm= CGAL::NULL_VECTOR;
|
||||||
|
}
|
||||||
typedef Norm Normal_3;
|
typedef Norm Normal_3;
|
||||||
Normal_3& normal() { return norm; }
|
Normal_3& normal() { return norm; }
|
||||||
const Normal_3& normal() const { return norm; }
|
const Normal_3& normal() const { return norm; }
|
||||||
|
|
|
||||||
|
|
@ -207,9 +207,6 @@ MainWindow::MainWindow()
|
||||||
|
|
||||||
this->addRecentFiles(this->menuFile, this->actionQuit);
|
this->addRecentFiles(this->menuFile, this->actionQuit);
|
||||||
connect(this, SIGNAL(openRecentFile(QString)), this, SLOT(open(QString)));
|
connect(this, SIGNAL(openRecentFile(QString)), this, SLOT(open(QString)));
|
||||||
|
|
||||||
// QObject::connect(thresholdSlider, SIGNAL(valueChanged(int)), this, SLOT(set_Threshold(int)));
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -279,14 +279,6 @@
|
||||||
<include location="../icons/Triangulation_2.qrc" />
|
<include location="../icons/Triangulation_2.qrc" />
|
||||||
<include location="../icons/Input.qrc" />
|
<include location="../icons/Input.qrc" />
|
||||||
</resources>
|
</resources>
|
||||||
<connections>
|
|
||||||
<connection>
|
|
||||||
<sender>thresholdSlider</sender>
|
|
||||||
<signal>valueChanged(int)</signal>
|
|
||||||
<receiver>MainWindow</receiver>
|
|
||||||
<slot>setThreshold(int)</slot>
|
|
||||||
</connection>
|
|
||||||
</connections>
|
|
||||||
<slots>
|
<slots>
|
||||||
<slot>setThreshold(int)</slot>
|
<slot>setThreshold(int)</slot>
|
||||||
</slots>
|
</slots>
|
||||||
|
|
|
||||||
|
|
@ -109,7 +109,7 @@ Polynomial<NT> modular_gcd_utcf_algorithm_M(
|
||||||
MScalar mg_;
|
MScalar mg_;
|
||||||
MPoly mF1,mF2,mG_;
|
MPoly mF1,mF2,mG_;
|
||||||
|
|
||||||
typename CRT::Scalar_type p,q,pq,s,t;
|
typename CRT::Scalar_type p(0),q(0),pq,s,t;
|
||||||
Poly Gs,H1s,H2s, Gs_old; // s =^ star
|
Poly Gs,H1s,H2s, Gs_old; // s =^ star
|
||||||
#ifdef CGAL_MODULAR_GCD_TIMER
|
#ifdef CGAL_MODULAR_GCD_TIMER
|
||||||
timer_init.stop();
|
timer_init.stop();
|
||||||
|
|
|
||||||
|
|
@ -27,9 +27,11 @@ int main()
|
||||||
CGAL::cpp0x::copy_n(arr.begin(), 3, arr2.begin());
|
CGAL::cpp0x::copy_n(arr.begin(), 3, arr2.begin());
|
||||||
std::copy_n(arr.begin(), 3, arr2.begin());
|
std::copy_n(arr.begin(), 3, arr2.begin());
|
||||||
|
|
||||||
CGAL::cpp0x::prev(arr.end());
|
CGAL::cpp0x::array<int, 3>::iterator it = CGAL::cpp0x::prev(arr.end());
|
||||||
std::prev(arr.end());
|
it = std::prev(arr.end());
|
||||||
CGAL::cpp0x::next(arr.begin());
|
it = CGAL::cpp0x::next(arr.begin());
|
||||||
std::next(arr.begin());
|
it = std::next(arr.begin());
|
||||||
|
CGAL_USE(it);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -246,11 +246,11 @@ public:
|
||||||
|
|
||||||
if ( t.is_segment() ) {
|
if ( t.is_segment() ) {
|
||||||
Point_handle_pair php =
|
Point_handle_pair php =
|
||||||
this->register_input_site(t.source(), t.target());
|
this->register_input_site(t.source_of_supporting_site(), t.target_of_supporting_site());
|
||||||
Storage_site_2 ss =
|
Storage_site_2 ss =
|
||||||
this->st_.construct_storage_site_2_object()(php.first, php.second);
|
this->st_.construct_storage_site_2_object()(php.first, php.second);
|
||||||
Vertex_handle v =
|
Vertex_handle v =
|
||||||
insert_segment(t.source(), t.target(), ss, UNDEFINED_LEVEL);
|
insert_segment(t.source_of_supporting_site(), t.target_of_supporting_site(), ss, UNDEFINED_LEVEL);
|
||||||
if ( v == Vertex_handle() ) {
|
if ( v == Vertex_handle() ) {
|
||||||
this->unregister_input_site( php.first, php.second );
|
this->unregister_input_site( php.first, php.second );
|
||||||
}
|
}
|
||||||
|
|
@ -282,12 +282,12 @@ public:
|
||||||
|
|
||||||
if ( t.is_segment() ) {
|
if ( t.is_segment() ) {
|
||||||
Point_handle_pair php =
|
Point_handle_pair php =
|
||||||
this->register_input_site(t.source(), t.target());
|
this->register_input_site(t.source_of_supporting_site(), t.target_of_supporting_site());
|
||||||
Storage_site_2 ss =
|
Storage_site_2 ss =
|
||||||
this->st_.construct_storage_site_2_object()(php.first, php.second);
|
this->st_.construct_storage_site_2_object()(php.first, php.second);
|
||||||
ss.set_info(info);
|
ss.set_info(info);
|
||||||
Vertex_handle v =
|
Vertex_handle v =
|
||||||
insert_segment(t.source(), t.target(), ss, UNDEFINED_LEVEL);
|
insert_segment(t.source_of_supporting_site(), t.target_of_supporting_site(), ss, UNDEFINED_LEVEL);
|
||||||
if ( v == Vertex_handle() ) {
|
if ( v == Vertex_handle() ) {
|
||||||
this->unregister_input_site( php.first, php.second );
|
this->unregister_input_site( php.first, php.second );
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -119,7 +119,7 @@ public:
|
||||||
// ACCESS TO INFO
|
// ACCESS TO INFO
|
||||||
//---------------
|
//---------------
|
||||||
inline const Info& info() const {
|
inline const Info& info() const {
|
||||||
CGAL_precondition( info_has_been_set() );
|
CGAL_assume(info_has_been_set());
|
||||||
return info_;
|
return info_;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -204,7 +204,7 @@ namespace CGAL {
|
||||||
FT get_z(const Point_3& p){ return m_traits.compute_z_3_object()(p); }
|
FT get_z(const Point_3& p){ return m_traits.compute_z_3_object()(p); }
|
||||||
FT get_coord(const Point_3& p, unsigned int d)
|
FT get_coord(const Point_3& p, unsigned int d)
|
||||||
{
|
{
|
||||||
CGAL_assertion(d >= 0 && d < 3);
|
CGAL_assertion(d < 3);
|
||||||
switch (d)
|
switch (d)
|
||||||
{
|
{
|
||||||
case 0: return get_x(p);
|
case 0: return get_x(p);
|
||||||
|
|
|
||||||
|
|
@ -171,7 +171,6 @@ namespace Point_set {
|
||||||
const std::size_t query_index,
|
const std::size_t query_index,
|
||||||
std::vector<std::size_t>& neighbors) const {
|
std::vector<std::size_t>& neighbors) const {
|
||||||
|
|
||||||
CGAL_precondition(query_index >= 0);
|
|
||||||
CGAL_precondition(query_index < m_input_range.size());
|
CGAL_precondition(query_index < m_input_range.size());
|
||||||
|
|
||||||
Neighbor_search neighbor_search(
|
Neighbor_search neighbor_search(
|
||||||
|
|
|
||||||
|
|
@ -196,8 +196,6 @@ namespace Point_set {
|
||||||
const std::size_t,
|
const std::size_t,
|
||||||
const std::size_t query_index,
|
const std::size_t query_index,
|
||||||
const std::vector<std::size_t>&) const {
|
const std::vector<std::size_t>&) const {
|
||||||
|
|
||||||
CGAL_precondition(query_index >= 0);
|
|
||||||
CGAL_precondition(query_index < m_input_range.size());
|
CGAL_precondition(query_index < m_input_range.size());
|
||||||
|
|
||||||
const auto& key = *(m_input_range.begin() + query_index);
|
const auto& key = *(m_input_range.begin() + query_index);
|
||||||
|
|
@ -246,8 +244,6 @@ namespace Point_set {
|
||||||
|
|
||||||
CGAL_precondition(region.size() > 0);
|
CGAL_precondition(region.size() > 0);
|
||||||
if (region.size() == 1) { // create new reference line and normal
|
if (region.size() == 1) { // create new reference line and normal
|
||||||
|
|
||||||
CGAL_precondition(region[0] >= 0);
|
|
||||||
CGAL_precondition(region[0] < m_input_range.size());
|
CGAL_precondition(region[0] < m_input_range.size());
|
||||||
|
|
||||||
// The best fit line will be a line through this point with
|
// The best fit line will be a line through this point with
|
||||||
|
|
@ -272,8 +268,6 @@ namespace Point_set {
|
||||||
points.reserve(region.size());
|
points.reserve(region.size());
|
||||||
|
|
||||||
for (std::size_t i = 0; i < region.size(); ++i) {
|
for (std::size_t i = 0; i < region.size(); ++i) {
|
||||||
|
|
||||||
CGAL_precondition(region[i] >= 0);
|
|
||||||
CGAL_precondition(region[i] < m_input_range.size());
|
CGAL_precondition(region[i] < m_input_range.size());
|
||||||
|
|
||||||
const auto& key = *(m_input_range.begin() + region[i]);
|
const auto& key = *(m_input_range.begin() + region[i]);
|
||||||
|
|
|
||||||
|
|
@ -178,8 +178,6 @@ namespace Point_set {
|
||||||
|
|
||||||
points.clear();
|
points.clear();
|
||||||
for (std::size_t j = 0; j < neighbors.size(); ++j) {
|
for (std::size_t j = 0; j < neighbors.size(); ++j) {
|
||||||
|
|
||||||
CGAL_precondition(neighbors[j] >= 0);
|
|
||||||
CGAL_precondition(neighbors[j] < m_input_range.size());
|
CGAL_precondition(neighbors[j] < m_input_range.size());
|
||||||
|
|
||||||
const auto& key = *(m_input_range.begin() + neighbors[j]);
|
const auto& key = *(m_input_range.begin() + neighbors[j]);
|
||||||
|
|
|
||||||
|
|
@ -197,7 +197,6 @@ namespace Point_set {
|
||||||
const std::size_t query_index,
|
const std::size_t query_index,
|
||||||
const std::vector<std::size_t>&) const {
|
const std::vector<std::size_t>&) const {
|
||||||
|
|
||||||
CGAL_precondition(query_index >= 0);
|
|
||||||
CGAL_precondition(query_index < m_input_range.size());
|
CGAL_precondition(query_index < m_input_range.size());
|
||||||
|
|
||||||
const auto& key = *(m_input_range.begin() + query_index);
|
const auto& key = *(m_input_range.begin() + query_index);
|
||||||
|
|
@ -246,8 +245,6 @@ namespace Point_set {
|
||||||
|
|
||||||
CGAL_precondition(region.size() > 0);
|
CGAL_precondition(region.size() > 0);
|
||||||
if (region.size() == 1) { // create new reference plane and normal
|
if (region.size() == 1) { // create new reference plane and normal
|
||||||
|
|
||||||
CGAL_precondition(region[0] >= 0);
|
|
||||||
CGAL_precondition(region[0] < m_input_range.size());
|
CGAL_precondition(region[0] < m_input_range.size());
|
||||||
|
|
||||||
// The best fit plane will be a plane through this point with
|
// The best fit plane will be a plane through this point with
|
||||||
|
|
@ -272,8 +269,6 @@ namespace Point_set {
|
||||||
points.reserve(region.size());
|
points.reserve(region.size());
|
||||||
|
|
||||||
for (std::size_t i = 0; i < region.size(); ++i) {
|
for (std::size_t i = 0; i < region.size(); ++i) {
|
||||||
|
|
||||||
CGAL_precondition(region[i] >= 0);
|
|
||||||
CGAL_precondition(region[i] < m_input_range.size());
|
CGAL_precondition(region[i] < m_input_range.size());
|
||||||
|
|
||||||
const auto& key = *(m_input_range.begin() + region[i]);
|
const auto& key = *(m_input_range.begin() + region[i]);
|
||||||
|
|
|
||||||
|
|
@ -178,8 +178,6 @@ namespace Point_set {
|
||||||
|
|
||||||
points.clear();
|
points.clear();
|
||||||
for (std::size_t j = 0; j < neighbors.size(); ++j) {
|
for (std::size_t j = 0; j < neighbors.size(); ++j) {
|
||||||
|
|
||||||
CGAL_precondition(neighbors[j] >= 0);
|
|
||||||
CGAL_precondition(neighbors[j] < m_input_range.size());
|
CGAL_precondition(neighbors[j] < m_input_range.size());
|
||||||
|
|
||||||
const auto& key = *(m_input_range.begin() + neighbors[j]);
|
const auto& key = *(m_input_range.begin() + neighbors[j]);
|
||||||
|
|
|
||||||
|
|
@ -169,8 +169,6 @@ namespace Point_set {
|
||||||
void operator()(
|
void operator()(
|
||||||
const std::size_t query_index,
|
const std::size_t query_index,
|
||||||
std::vector<std::size_t>& neighbors) const {
|
std::vector<std::size_t>& neighbors) const {
|
||||||
|
|
||||||
CGAL_precondition(query_index >= 0);
|
|
||||||
CGAL_precondition(query_index < m_input_range.size());
|
CGAL_precondition(query_index < m_input_range.size());
|
||||||
|
|
||||||
const std::size_t sphere_center = query_index;
|
const std::size_t sphere_center = query_index;
|
||||||
|
|
|
||||||
|
|
@ -193,8 +193,6 @@ namespace Polygon_mesh {
|
||||||
|
|
||||||
points.clear();
|
points.clear();
|
||||||
for (std::size_t j = 0; j < neighbors.size(); ++j) {
|
for (std::size_t j = 0; j < neighbors.size(); ++j) {
|
||||||
|
|
||||||
CGAL_precondition(neighbors[j] >= 0);
|
|
||||||
CGAL_precondition(neighbors[j] < m_face_range.size());
|
CGAL_precondition(neighbors[j] < m_face_range.size());
|
||||||
|
|
||||||
const auto face = *(m_face_range.begin() + neighbors[j]);
|
const auto face = *(m_face_range.begin() + neighbors[j]);
|
||||||
|
|
|
||||||
|
|
@ -51,8 +51,6 @@ namespace internal {
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
reference operator[](const key_type item_index) const {
|
reference operator[](const key_type item_index) const {
|
||||||
|
|
||||||
CGAL_precondition(item_index >= 0);
|
|
||||||
CGAL_precondition(item_index < m_item_range.size());
|
CGAL_precondition(item_index < m_item_range.size());
|
||||||
|
|
||||||
const auto& key = *(m_item_range.begin() + item_index);
|
const auto& key = *(m_item_range.begin() + item_index);
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,20 @@
|
||||||
|
|
||||||
namespace CGAL {
|
namespace CGAL {
|
||||||
namespace Total {
|
namespace Total {
|
||||||
|
namespace internal {
|
||||||
|
|
||||||
|
//To avoid "fopen may be unsafe" on Visual.
|
||||||
|
bool open_file(FILE **fin, const char* filename)
|
||||||
|
{
|
||||||
|
#if defined(BOOST_MSVC)
|
||||||
|
return (fopen_s(fin, filename, "rw") == 0);
|
||||||
|
#else
|
||||||
|
*fin = fopen(filename, "rw");
|
||||||
|
return (fin != NULL);
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace internal
|
||||||
|
|
||||||
void permuteLong(char *a)
|
void permuteLong(char *a)
|
||||||
{
|
{
|
||||||
|
|
@ -99,7 +113,7 @@ int lire_longueur_trace(const char * nomfich, long * long_trace)
|
||||||
FILE *fin;
|
FILE *fin;
|
||||||
int flag=0;
|
int flag=0;
|
||||||
|
|
||||||
if ( (fin=fopen(nomfich,"rw"))!=NULL )
|
if ( internal::open_file(&fin, nomfich) )
|
||||||
{
|
{
|
||||||
fseek(fin,4,0);
|
fseek(fin,4,0);
|
||||||
if (fread(long_trace,4,1,fin) != 1) {
|
if (fread(long_trace,4,1,fin) != 1) {
|
||||||
|
|
@ -118,7 +132,7 @@ int lire_nb_trace(const char * nomfich, long * nb_trace)
|
||||||
FILE *fin;
|
FILE *fin;
|
||||||
int flag=0;
|
int flag=0;
|
||||||
|
|
||||||
if ( (fin=fopen(nomfich,"rw"))!=NULL )
|
if ( internal::open_file(&fin, nomfich) )
|
||||||
{
|
{
|
||||||
fseek(fin,8,0);
|
fseek(fin,8,0);
|
||||||
if (fread(nb_trace,4,1,fin) != 1) {
|
if (fread(nb_trace,4,1,fin) != 1) {
|
||||||
|
|
@ -137,7 +151,7 @@ int lire_nb_plan(const char * nomfich, long * nb_plan)
|
||||||
FILE *fin;
|
FILE *fin;
|
||||||
int flag=0;
|
int flag=0;
|
||||||
|
|
||||||
if ( (fin=fopen(nomfich,"rw"))!=NULL )
|
if ( internal::open_file(&fin, nomfich) )
|
||||||
{
|
{
|
||||||
fseek(fin,12,0);
|
fseek(fin,12,0);
|
||||||
if (fread(nb_plan,4,1,fin) != 1) {
|
if (fread(nb_plan,4,1,fin) != 1) {
|
||||||
|
|
@ -157,7 +171,7 @@ int lire_nb_octet(const char * nomfich, long * nb_octet)
|
||||||
FILE *fin;
|
FILE *fin;
|
||||||
int flag=0;
|
int flag=0;
|
||||||
|
|
||||||
if ( (fin=fopen(nomfich,"rw"))!=NULL )
|
if ( internal::open_file(&fin, nomfich) )
|
||||||
{
|
{
|
||||||
fseek(fin,36,0);
|
fseek(fin,36,0);
|
||||||
if (fread(nb_octet,4,1,fin) != 1) {
|
if (fread(nb_octet,4,1,fin) != 1) {
|
||||||
|
|
@ -177,7 +191,7 @@ int lire_longueur_entete(const char * nomfich, long * long_entete)
|
||||||
FILE *fin;
|
FILE *fin;
|
||||||
int flag=0;
|
int flag=0;
|
||||||
|
|
||||||
if ( (fin=fopen(nomfich,"rw"))!=NULL )
|
if ( internal::open_file(&fin, nomfich) )
|
||||||
{
|
{
|
||||||
fseek(fin,72,0);
|
fseek(fin,72,0);
|
||||||
if (fread(long_entete,4,1,fin) != 1) {
|
if (fread(long_entete,4,1,fin) != 1) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue