From 10d0d84309702e8d2f826b8c58569be5d710ebf2 Mon Sep 17 00:00:00 2001 From: Andrew Guschin Date: Sat, 28 Nov 2020 20:03:11 +0400 Subject: =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8=D0=BB=20Matrix.h?= =?UTF-8?q?=20=D0=B8=20Transform.h=20=D0=B2=206=20=D0=B7=D0=B0=D0=B4=D0=B0?= =?UTF-8?q?=D1=87=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- task06/Guschin/Transform.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'task06/Guschin/Transform.h') diff --git a/task06/Guschin/Transform.h b/task06/Guschin/Transform.h index d606647..d1b0af5 100644 --- a/task06/Guschin/Transform.h +++ b/task06/Guschin/Transform.h @@ -8,6 +8,15 @@ mat3 translate(float Tx, float Ty) return *res; } +mat4 translate(float Tx, float Ty, float Tz) +{ + mat4* res = new mat4(1.f); + (*res)[0][3] = Tx; + (*res)[1][3] = Ty; + (*res)[2][3] = Tz; + return *res; +} + mat3 scale(float Sx, float Sy) { mat3* res = new mat3(1.f); @@ -16,6 +25,15 @@ mat3 scale(float Sx, float Sy) return *res; } +mat4 scale(float Sx, float Sy, float Sz) +{ + mat4* res = new mat4(1.f); + (*res)[0][0] = Sx; + (*res)[1][1] = Sy; + (*res)[2][2] = Sz; + return *res; +} + mat3 scale(float S) { return scale(S, S); -- cgit v1.2.3