From a2792178dba99301e4524a30be4338673930d12c Mon Sep 17 00:00:00 2001 From: Recep Aslantas Date: Tue, 17 Apr 2018 11:07:57 +0300 Subject: [PATCH] add missing call funcs for affine transforms --- include/cglm/call/affine.h | 16 ++++++++++++++++ src/affine.c | 24 ++++++++++++++++++++++++ 2 files changed, 40 insertions(+) diff --git a/include/cglm/call/affine.h b/include/cglm/call/affine.h index 3d462ee..65dfae0 100644 --- a/include/cglm/call/affine.h +++ b/include/cglm/call/affine.h @@ -13,6 +13,10 @@ extern "C" { #include "../cglm.h" +CGLM_EXPORT +void +glmc_translate_make(mat4 m, vec3 v); + CGLM_EXPORT void glmc_translate_to(mat4 m, vec3 v, mat4 dest); @@ -33,6 +37,10 @@ CGLM_EXPORT void glmc_translate_z(mat4 m, float to); +CGLM_EXPORT +void +glmc_scale_make(mat4 m, vec3 v); + CGLM_EXPORT void glmc_scale_to(mat4 m, vec3 v, mat4 dest); @@ -45,6 +53,10 @@ CGLM_EXPORT void glmc_scale1(mat4 m, float s); +CGLM_EXPORT +void +glmc_scale_uni(mat4 m, float s); + CGLM_EXPORT void glmc_rotate_x(mat4 m, float rad, mat4 dest); @@ -77,6 +89,10 @@ CGLM_EXPORT void glmc_decompose_scalev(mat4 m, vec3 s); +CGLM_EXPORT +bool +glmc_uniscaled(mat4 m); + CGLM_EXPORT void glmc_decompose_rs(mat4 m, mat4 r, vec3 s); diff --git a/src/affine.c b/src/affine.c index df591df..056947f 100644 --- a/src/affine.c +++ b/src/affine.c @@ -8,6 +8,12 @@ #include "../include/cglm/cglm.h" #include "../include/cglm/call.h" +CGLM_EXPORT +void +glmc_translate_make(mat4 m, vec3 v) { + glm_translate_make(m, v); +} + CGLM_EXPORT void glmc_translate_to(mat4 m, vec3 v, mat4 dest) { @@ -38,6 +44,12 @@ glmc_translate_z(mat4 m, float to) { glm_translate_z(m, to); } +CGLM_EXPORT +void +glmc_scale_make(mat4 m, vec3 v) { + glm_scale_make(m, v); +} + CGLM_EXPORT void glmc_scale_to(mat4 m, vec3 v, mat4 dest) { @@ -56,6 +68,12 @@ glmc_scale1(mat4 m, float s) { glm_scale1(m, s); } +CGLM_EXPORT +void +glmc_scale_uni(mat4 m, float s) { + glm_scale_uni(m, s); +} + CGLM_EXPORT void glmc_rotate_x(mat4 m, float rad, mat4 dest) { @@ -104,6 +122,12 @@ glmc_decompose_scalev(mat4 m, vec3 s) { glm_decompose_scalev(m, s); } +CGLM_EXPORT +bool +glmc_uniscaled(mat4 m) { + return glm_uniscaled(m); +} + CGLM_EXPORT void glmc_decompose_rs(mat4 m, mat4 r, vec3 s) {