libs/math fixes in case scalar type isn't implicitly constructible from int

This commit is contained in:
Nikita Lisitsa 2025-09-14 00:02:19 +03:00
parent be372ee007
commit a42d025ffb
3 changed files with 4 additions and 4 deletions

View file

@ -98,7 +98,7 @@ namespace psemek::math
T center() const T center() const
{ {
return min + (max - min) / 2; return min + (max - min) / T(2);
} }
using iterator = interval_iterator<T>; using iterator = interval_iterator<T>;

View file

@ -57,14 +57,14 @@ namespace psemek::math
{ {
matrix<T, R, C> m; matrix<T, R, C> m;
for (std::size_t i = 0; i < R * C; ++i) for (std::size_t i = 0; i < R * C; ++i)
m.coords[i] = 0; m.coords[i] = T(0);
return m; return m;
} }
template <typename T, std::size_t R, std::size_t C> template <typename T, std::size_t R, std::size_t C>
matrix<T, R, C> matrix<T, R, C>::identity() matrix<T, R, C> matrix<T, R, C>::identity()
{ {
return scalar(T{1}); return scalar(T(1));
} }
template <typename T, std::size_t R, std::size_t C> template <typename T, std::size_t R, std::size_t C>

View file

@ -56,7 +56,7 @@ namespace psemek::math
{ {
point<T, N> p; point<T, N> p;
for (std::size_t i = 0; i < N; ++i) for (std::size_t i = 0; i < N; ++i)
p[i] = 0; p[i] = T(0);
return p; return p;
} }