Siv3D / OpenSiv3D

C++20 framework for creative coding 🎮🎨🎹 / Cross-platform support (Windows, macOS, Linux, and the Web)
https://siv3d.github.io/
MIT License
994 stars 136 forks source link

Math::Clamp(Vec2 v,Vec2 min,Vec2 max) #1228

Open comefrombottom opened 3 months ago

comefrombottom commented 3 months ago

追加する機能の内容 | Describe the solution you'd like Vec2 Math::Clamp(const Vec2& v, const Vec2& min, const Vec2& max) { return { Clamp(v.x, min.x, max.x), Clamp(v.y, min.y, max.y) }; } 的なことが出来る関数オーバーロードを追加 Vec3,Point,Float2…などにも その機能の追加によって解決する問題 | Is your feature request related to a problem? Please describe. Math::Min(Vec2,Vec2)などがすでにある為、一貫性を持たせる。 備考 | Additional context Vec2::clamp(RectF)がすでにあり、合わせてMath::Clamp(Vec2,RectF)があってもいいかも?(とりあえず今回は無視)

Reputeless commented 3 months ago

ご提案ありがとうございます。現在開発中の v0.8 にて実装済みです。 https://github.com/Siv3D/siv8/blob/main/Siv3D/include/Siv3D/detail/Math_impl.ipp#L1678-L1787 v0.6.1x へのバックポートも検討します。