diff --git a/GeoLib/AnalyticalGeometry.cpp b/GeoLib/AnalyticalGeometry.cpp index aa862d189c92babd24b88ba65de6fb60de5704eb..713b9c14ac8150847bea7ed6fbe7cd4ad56420a5 100644 --- a/GeoLib/AnalyticalGeometry.cpp +++ b/GeoLib/AnalyticalGeometry.cpp @@ -442,28 +442,28 @@ void computeAndInsertAllIntersectionPoints(GeoLib::PointVec& pnt_vec, } } -std::tuple<std::unique_ptr<std::vector<GeoLib::Point*>>, Eigen::Vector3d> +std::tuple<std::vector<GeoLib::Point*>, Eigen::Vector3d> rotatePolygonPointsToXY(GeoLib::Polygon const& polygon_in) { // 1 copy all points - auto polygon_points = std::make_unique<std::vector<GeoLib::Point*>>(); - polygon_points->reserve(polygon_in.getNumberOfPoints()); + std::vector<GeoLib::Point*> polygon_points; + polygon_points.reserve(polygon_in.getNumberOfPoints()); for (std::size_t k(0); k < polygon_in.getNumberOfPoints(); k++) { - polygon_points->push_back(new GeoLib::Point(*(polygon_in.getPoint(k)))); + polygon_points.push_back(new GeoLib::Point(*(polygon_in.getPoint(k)))); } // 2 rotate points - auto [plane_normal, d_polygon] = GeoLib::getNewellPlane(*polygon_points); + auto [plane_normal, d_polygon] = GeoLib::getNewellPlane(polygon_points); Eigen::Matrix3d const rot_mat = GeoLib::computeRotationMatrixToXY(plane_normal); - GeoLib::rotatePoints(rot_mat, *polygon_points); + GeoLib::rotatePoints(rot_mat, polygon_points); // 3 set z coord to zero - std::for_each(polygon_points->begin(), polygon_points->end(), + std::for_each(polygon_points.begin(), polygon_points.end(), [](GeoLib::Point* p) { (*p)[2] = 0.0; }); - return {std::move(polygon_points), plane_normal}; + return {polygon_points, plane_normal}; } std::vector<MathLib::Point3d> lineSegmentIntersect2d( diff --git a/GeoLib/AnalyticalGeometry.h b/GeoLib/AnalyticalGeometry.h index 998d277af8d13a3beb6afae6becd4a2cfbec0061..7820093df65de329caced26451dbacc87d5db058 100644 --- a/GeoLib/AnalyticalGeometry.h +++ b/GeoLib/AnalyticalGeometry.h @@ -215,7 +215,7 @@ void computeAndInsertAllIntersectionPoints(PointVec& pnt_vec, * @return vector of rotated points and normal based on the original Newell * plane */ -std::tuple<std::unique_ptr<std::vector<GeoLib::Point*>>, Eigen::Vector3d> +std::tuple<std::vector<GeoLib::Point*>, Eigen::Vector3d> rotatePolygonPointsToXY(GeoLib::Polygon const& polygon_in); /// Sorts the vector of segments such that the \f$i\f$-th segment is connected diff --git a/MeshGeoToolsLib/MeshEditing/MarkNodesOutsideOfPolygon.h b/MeshGeoToolsLib/MeshEditing/MarkNodesOutsideOfPolygon.h index 24d00b01b7cec7fb0ccea6ad40a4dbbc9a7bcf6b..462f2403202282178ba7666094eb7ef6accb6ccc 100644 --- a/MeshGeoToolsLib/MeshEditing/MarkNodesOutsideOfPolygon.h +++ b/MeshGeoToolsLib/MeshEditing/MarkNodesOutsideOfPolygon.h @@ -45,7 +45,7 @@ std::vector<bool> markNodesOutSideOfPolygon( // *** mark rotated nodes inside rotated polygon { // create new polygon using the rotated points - GeoLib::Polyline rotated_polyline(*rotated_polygon_points); + GeoLib::Polyline rotated_polyline(rotated_polygon_points); for (std::size_t k(0); k < polygon.getNumberOfPoints(); k++) { rotated_polyline.addPoint(k); @@ -67,7 +67,7 @@ std::vector<bool> markNodesOutSideOfPolygon( delete rotated_node; } - for (auto& rot_polygon_pnt : *rotated_polygon_points) + for (auto& rot_polygon_pnt : rotated_polygon_points) { delete rot_polygon_pnt; }