From 2ce1ebb226769ff4ec9e28efbacb12ea81035d62 Mon Sep 17 00:00:00 2001 From: Egor Yusov Date: Fri, 14 Jun 2019 20:04:44 -0700 Subject: Mat lib: added floor & ceil vector operations --- Common/interface/BasicMath.h | 62 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) (limited to 'Common/interface') diff --git a/Common/interface/BasicMath.h b/Common/interface/BasicMath.h index 29f67d7f..e41e6f9f 100644 --- a/Common/interface/BasicMath.h +++ b/Common/interface/BasicMath.h @@ -1801,6 +1801,68 @@ namespace std } + template + Diligent::Vector2 floor( const Diligent::Vector2& vec ) + { + return Diligent::Vector2( + std::floor( vec.x ), + std::floor( vec.y ) + ); + } + + template + Diligent::Vector3 floor( const Diligent::Vector3& vec ) + { + return Diligent::Vector3( + std::floor( vec.x ), + std::floor( vec.y ), + std::floor( vec.z ) + ); + } + + template + Diligent::Vector4 floor( const Diligent::Vector4& vec ) + { + return Diligent::Vector4( + std::floor( vec.x ), + std::floor( vec.y ), + std::floor( vec.z ), + std::floor( vec.w ) + ); + } + + + template + Diligent::Vector2 ceil( const Diligent::Vector2& vec ) + { + return Diligent::Vector2( + std::ceil( vec.x ), + std::ceil( vec.y ) + ); + } + + template + Diligent::Vector3 ceil( const Diligent::Vector3& vec ) + { + return Diligent::Vector3( + std::ceil( vec.x ), + std::ceil( vec.y ), + std::ceil( vec.z ) + ); + } + + template + Diligent::Vector4 ceil( const Diligent::Vector4& vec ) + { + return Diligent::Vector4( + std::ceil( vec.x ), + std::ceil( vec.y ), + std::ceil( vec.z ), + std::ceil( vec.w ) + ); + } + + template struct hash> { -- cgit v1.2.3