diff --git a/libs/geom/include/psemek/geom/vector.hpp b/libs/geom/include/psemek/geom/vector.hpp index 08e58e66..b7ed4d1a 100644 --- a/libs/geom/include/psemek/geom/vector.hpp +++ b/libs/geom/include/psemek/geom/vector.hpp @@ -390,6 +390,13 @@ namespace psemek::geom } } + // Return vector orthogonal to n + template + vector project_from(vector const & v, vector const & n) + { + return v - n * (dot(v, n) / dot(n, n)); + } + template std::ostream & operator << (std::ostream & os, vector const & v) {