Loading 3d-viewer/3d_mesh_model.cpp +27 −20 Original line number Diff line number Diff line Loading @@ -31,6 +31,10 @@ #include <3d_mesh_model.h> #include <boost/geometry/algorithms/area.hpp> #ifdef USE_OPENMP #include <omp.h> #endif /* USE_OPENMP */ S3D_MESH::S3D_MESH() { isPerFaceNormalsComputed = false; Loading Loading @@ -355,12 +359,17 @@ void S3D_MESH::calcPerPointNormals () m_PerFaceVertexNormals.clear(); // Pre-allocate space for the entire vector of vertex normals so we can do parallel writes m_PerFaceVertexNormals.resize( m_CoordIndex.size() ); // for each face A in mesh #ifdef USE_OPENMP #pragma omp parallel for #endif /* USE_OPENMP */ for( unsigned int each_face_A_idx = 0; each_face_A_idx < m_CoordIndex.size(); each_face_A_idx++ ) { // n = face A facet normal std::vector< glm::vec3 > face_A_normals; face_A_normals.clear(); std::vector< glm::vec3 >& face_A_normals = m_PerFaceVertexNormals[each_face_A_idx]; face_A_normals.resize( m_CoordIndex[each_face_A_idx].size() ); // loop through all 3 vertices Loading Loading @@ -402,7 +411,5 @@ void S3D_MESH::calcPerPointNormals () } } m_PerFaceVertexNormals.push_back( face_A_normals ); } } Loading
3d-viewer/3d_mesh_model.cpp +27 −20 Original line number Diff line number Diff line Loading @@ -31,6 +31,10 @@ #include <3d_mesh_model.h> #include <boost/geometry/algorithms/area.hpp> #ifdef USE_OPENMP #include <omp.h> #endif /* USE_OPENMP */ S3D_MESH::S3D_MESH() { isPerFaceNormalsComputed = false; Loading Loading @@ -355,12 +359,17 @@ void S3D_MESH::calcPerPointNormals () m_PerFaceVertexNormals.clear(); // Pre-allocate space for the entire vector of vertex normals so we can do parallel writes m_PerFaceVertexNormals.resize( m_CoordIndex.size() ); // for each face A in mesh #ifdef USE_OPENMP #pragma omp parallel for #endif /* USE_OPENMP */ for( unsigned int each_face_A_idx = 0; each_face_A_idx < m_CoordIndex.size(); each_face_A_idx++ ) { // n = face A facet normal std::vector< glm::vec3 > face_A_normals; face_A_normals.clear(); std::vector< glm::vec3 >& face_A_normals = m_PerFaceVertexNormals[each_face_A_idx]; face_A_normals.resize( m_CoordIndex[each_face_A_idx].size() ); // loop through all 3 vertices Loading Loading @@ -402,7 +411,5 @@ void S3D_MESH::calcPerPointNormals () } } m_PerFaceVertexNormals.push_back( face_A_normals ); } }