diff --git a/src/OpenMesh/Apps/QtViewer/MeshViewerWidgetT.cc b/src/OpenMesh/Apps/QtViewer/MeshViewerWidgetT.cc index 144c54bf..ce63bff3 100644 --- a/src/OpenMesh/Apps/QtViewer/MeshViewerWidgetT.cc +++ b/src/OpenMesh/Apps/QtViewer/MeshViewerWidgetT.cc @@ -500,7 +500,7 @@ MeshViewerWidgetT::draw_openmesh(const std::string& _draw_mode) for (; strip_it!=strip_last; ++strip_it) { glDrawElements(GL_TRIANGLE_STRIP, - strip_it->size(), GL_UNSIGNED_INT, &(*strip_it)[0] ); + static_cast(strip_it->size()), GL_UNSIGNED_INT, &(*strip_it)[0] ); } glDisableClientState(GL_VERTEX_ARRAY); @@ -554,7 +554,7 @@ MeshViewerWidgetT::draw_openmesh(const std::string& _draw_mode) glColorPointer(3, GL_UNSIGNED_BYTE, 0, mesh_.vertex_colors()); } - glDrawArrays( GL_POINTS, 0, mesh_.n_vertices() ); + glDrawArrays( GL_POINTS, 0, static_cast(mesh_.n_vertices()) ); glDisableClientState(GL_VERTEX_ARRAY); glDisableClientState(GL_COLOR_ARRAY); } diff --git a/src/OpenMesh/Core/Geometry/NormalConeT.cc b/src/OpenMesh/Core/Geometry/NormalConeT.cc index 6e3ed3a8..40f7a821 100644 --- a/src/OpenMesh/Core/Geometry/NormalConeT.cc +++ b/src/OpenMesh/Core/Geometry/NormalConeT.cc @@ -121,16 +121,16 @@ merge(const NormalConeT& _cone) { Scalar dotp = (center_normal_ | _cone.center_normal_); - if (fabs(dotp) < 0.99999) + if (fabs(dotp) < 0.99999f) { // new angle Scalar centerAngle = acos(dotp); Scalar minAngle = std::min(-angle(), centerAngle - _cone.angle()); Scalar maxAngle = std::max( angle(), centerAngle + _cone.angle()); - angle_ = (maxAngle - minAngle) * 0.5; + angle_ = (maxAngle - minAngle) * Scalar(0.5f); // axis by SLERP - Scalar axisAngle = 0.5*(minAngle + maxAngle); + Scalar axisAngle = Scalar(0.5f) * (minAngle + maxAngle); center_normal_ = ((center_normal_ * sin(centerAngle-axisAngle) + _cone.center_normal_ * sin(axisAngle)) / sin(centerAngle)); @@ -138,12 +138,12 @@ merge(const NormalConeT& _cone) else { // axes point in same direction - if (dotp > 0.0) + if (dotp > 0.0f) angle_ = std::max(angle_, _cone.angle_); // axes point in opposite directions else - angle_ = 2.0 * M_PI; + angle_ = Scalar(2.0f * M_PI); } } diff --git a/src/OpenMesh/Tools/Decimater/ModHausdorffT.cc b/src/OpenMesh/Tools/Decimater/ModHausdorffT.cc index d3daccc8..26fc6e93 100644 --- a/src/OpenMesh/Tools/Decimater/ModHausdorffT.cc +++ b/src/OpenMesh/Tools/Decimater/ModHausdorffT.cc @@ -94,7 +94,7 @@ distPointTriangleSquared( const Point& _p, Point v0p = _p - _v0; Point t = v0p % n; - double s01, s02, s12; + typename Point::value_type s01, s02, s12; const double a = (t | v0v2) * -invD; const double b = (t | v0v1) * invD; diff --git a/src/OpenMesh/Tools/Decimater/ModRoundnessT.hh b/src/OpenMesh/Tools/Decimater/ModRoundnessT.hh index 05784839..73fb35dc 100644 --- a/src/OpenMesh/Tools/Decimater/ModRoundnessT.hh +++ b/src/OpenMesh/Tools/Decimater/ModRoundnessT.hh @@ -125,7 +125,7 @@ class ModRoundnessT : public ModBaseT typename Mesh::FaceHandle fhC, fhB; Vec3f B,C; - if ( min_r_ < 0.0 ) // continues mode + if ( min_r_ < 0.0f ) // continues mode { C = vector_cast(Base::mesh().point( Base::mesh().to_vertex_handle(*voh_it))); fhC = Base::mesh().face_handle( *voh_it ); @@ -196,17 +196,17 @@ public: // specific methods Vec3f A,B,C; - A = Vec3f( 0, 0, 0); - B = Vec3f( 2*cos(_angle), 0, 0); - C = Vec3f( cos(_angle), sin(_angle), 0); + A = Vec3f( 0.0f, 0.0f, 0.0f); + B = Vec3f( 2.0f * cos(_angle), 0.0f, 0.0f); + C = Vec3f( cos(_angle), sin(_angle), 0.0f); double r1 = roundness(A,B,C); _angle = float(0.5 * ( M_PI - _angle )); - A = Vec3f( 0, 0, 0); - B = Vec3f( 2*cos(_angle), 0, 0); - C = Vec3f( cos(_angle), sin(_angle), 0); + A = Vec3f( 0.0f, 0.0f, 0.0f); + B = Vec3f( 2.0f*cos(_angle), 0.0f, 0.0f); + C = Vec3f( cos(_angle), sin(_angle), 0.0f); double r2 = roundness(A,B,C); diff --git a/src/OpenMesh/Tools/Utils/StripifierT.cc b/src/OpenMesh/Tools/Utils/StripifierT.cc index a83d136d..44162a86 100644 --- a/src/OpenMesh/Tools/Utils/StripifierT.cc +++ b/src/OpenMesh/Tools/Utils/StripifierT.cc @@ -75,7 +75,7 @@ StripifierT:: } template -unsigned int +size_t StripifierT:: stripify() { @@ -107,7 +107,7 @@ build_strips() { Strip experiments[3]; typename Mesh::HalfedgeHandle h[3]; - unsigned int best_idx, best_length, length; + size_t best_length,length , best_idx; FaceHandles faces[3]; typename FaceHandles::iterator fh_it, fh_end; typename Mesh::FaceIter f_it, f_end=mesh_.faces_end(); @@ -148,8 +148,9 @@ build_strips() // build 3 strips, take best one - best_length = best_idx = 0; - for (unsigned int i=0; i<3; ++i) + best_length = 0; + best_idx = 0; + for (size_t i=0; i<3; ++i) { build_strip(h[i], experiments[i], faces[i]); if ((length = experiments[i].size()) > best_length) diff --git a/src/OpenMesh/Tools/Utils/StripifierT.hh b/src/OpenMesh/Tools/Utils/StripifierT.hh index 579eb9cb..fc009a9b 100644 --- a/src/OpenMesh/Tools/Utils/StripifierT.hh +++ b/src/OpenMesh/Tools/Utils/StripifierT.hh @@ -92,7 +92,7 @@ public: ~StripifierT(); /// Compute triangle strips, returns number of strips - unsigned int stripify(); + size_t stripify(); /// delete all strips void clear() { Strips().swap(strips_); }