summaryrefslogtreecommitdiffstats
path: root/modules/dlscript/godot/godot_transform2d.cpp
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2017-04-04 00:25:03 +0200
committerGitHub <noreply@github.com>2017-04-04 00:25:03 +0200
commit46bc14e66fe90430f1d74cdab6cca6acb5b2a3f6 (patch)
tree6d761531804ce9bb8e78b297598e06bea57dbe7b /modules/dlscript/godot/godot_transform2d.cpp
parent57badfd1df3a554b7f47793e73a887874e5ca2b1 (diff)
parentfd553087867187220d4f6b8217854dd8e9be2667 (diff)
downloadredot-engine-46bc14e66fe90430f1d74cdab6cca6acb5b2a3f6.tar.gz
Merge pull request #8246 from GodotNativeTools/dlscript-module
DLScript module
Diffstat (limited to 'modules/dlscript/godot/godot_transform2d.cpp')
-rw-r--r--modules/dlscript/godot/godot_transform2d.cpp59
1 files changed, 59 insertions, 0 deletions
diff --git a/modules/dlscript/godot/godot_transform2d.cpp b/modules/dlscript/godot/godot_transform2d.cpp
new file mode 100644
index 0000000000..39fa0e7363
--- /dev/null
+++ b/modules/dlscript/godot/godot_transform2d.cpp
@@ -0,0 +1,59 @@
+#include "godot_transform2d.h"
+
+#include "../godot.h"
+
+#include "math/math_2d.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void _transform2d_api_anchor() {
+}
+
+void GDAPI godot_transform2d_new_identity(godot_transform2d *p_t) {
+ Transform2D *t = (Transform2D *)p_t;
+ *t = Transform2D();
+}
+
+void GDAPI godot_transform2d_new_elements(godot_transform2d *p_t, const godot_vector2 *p_a, const godot_vector2 *p_b, const godot_vector2 *p_c) {
+ Transform2D *t = (Transform2D *)p_t;
+ Vector2 *a = (Vector2 *)p_a;
+ Vector2 *b = (Vector2 *)p_b;
+ Vector2 *c = (Vector2 *)p_c;
+ *t = Transform2D(a->x, a->y, b->x, b->y, c->x, c->y);
+}
+
+void GDAPI godot_transform2d_new(godot_transform2d *p_t, const godot_real p_rot, const godot_vector2 *p_pos) {
+ Transform2D *t = (Transform2D *)p_t;
+ Vector2 *pos = (Vector2 *)p_pos;
+ *t = Transform2D(p_rot, *pos);
+}
+
+godot_vector2 const GDAPI *godot_transform2d_const_index(const godot_transform2d *p_t, const godot_int p_idx) {
+ const Transform2D *t = (const Transform2D *)p_t;
+ const Vector2 *e = &t->operator[](p_idx);
+ return (godot_vector2 const *)e;
+}
+
+godot_vector2 GDAPI *godot_transform2d_index(godot_transform2d *p_t, const godot_int p_idx) {
+ Transform2D *t = (Transform2D *)p_t;
+ Vector2 *e = &t->operator[](p_idx);
+ return (godot_vector2 *)e;
+}
+
+godot_vector2 GDAPI godot_transform2d_get_axis(const godot_transform2d *p_t, const godot_int p_axis) {
+ return *godot_transform2d_const_index(p_t, p_axis);
+}
+
+void GDAPI godot_transform2d_set_axis(godot_transform2d *p_t, const godot_int p_axis, const godot_vector2 *p_vec) {
+ godot_vector2 *origin_v = godot_transform2d_index(p_t, p_axis);
+ *origin_v = *p_vec;
+}
+
+// @Incomplete
+// See header file
+
+#ifdef __cplusplus
+}
+#endif