From 6548dfd5fee019fb4ab128db0cc982f4baf5537b Mon Sep 17 00:00:00 2001 From: Egor Yusov Date: Fri, 31 May 2019 20:55:28 -0700 Subject: Math lib: added vector type recast methods --- Common/interface/BasicMath.h | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'Common/interface') diff --git a/Common/interface/BasicMath.h b/Common/interface/BasicMath.h index f9af0d56..33922e9e 100644 --- a/Common/interface/BasicMath.h +++ b/Common/interface/BasicMath.h @@ -221,6 +221,16 @@ template struct Vector2 static_cast(*it++) }; } + + template + Vector2 Recast()const + { + return Vector2 + { + static_cast(x), + static_cast(y) + }; + } }; template @@ -406,6 +416,17 @@ template struct Vector3 }; } + template + Vector3 Recast()const + { + return Vector3 + { + static_cast(x), + static_cast(y), + static_cast(z) + }; + } + operator Vector2()const{return Vector2(x,y);} }; @@ -613,6 +634,18 @@ template struct Vector4 }; } + template + Vector4 Recast()const + { + return Vector4 + { + static_cast(x), + static_cast(y), + static_cast(z), + static_cast(w) + }; + } + operator Vector3() const { return Vector3(x, y, z); -- cgit v1.2.3