aboutsummaryrefslogtreecommitdiff
path: root/src/crepe/util/AbsolutePosition.h
diff options
context:
space:
mode:
authorLoek Le Blansch <loek@pipeframe.xyz>2025-01-11 21:32:30 +0100
committerLoek Le Blansch <loek@pipeframe.xyz>2025-01-11 21:32:30 +0100
commita6803980f1e74ecf1abb007b7c77f00d2cd92c43 (patch)
tree425ca961b27117d6e5d5fa0ae5cfca93351e0b33 /src/crepe/util/AbsolutePosition.h
parent6bc0025e4c24ed6659d993f3469c10615fb0e273 (diff)
parent525636bb2158ecea68ebb9d6b8d2dc722524c5e5 (diff)
merge master into loek/doxygen
Diffstat (limited to 'src/crepe/util/AbsolutePosition.h')
-rw-r--r--src/crepe/util/AbsolutePosition.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/crepe/util/AbsolutePosition.h b/src/crepe/util/AbsolutePosition.h
new file mode 100644
index 0000000..857c1ac
--- /dev/null
+++ b/src/crepe/util/AbsolutePosition.h
@@ -0,0 +1,29 @@
+#pragma once
+
+#include "api/Transform.h"
+
+#include "types.h"
+
+namespace crepe {
+
+/**
+ * \brief A class for calculating the absolute position of an object.
+ *
+ * This class provides a utility function to get the position of an object in the world space,
+ * taking into account the transform and any additional offset.
+ */
+class AbsolutePosition {
+public:
+ /**
+ * \brief Get the absolute position of an object.
+ *
+ * This function calculates the absolute position by combining the transform position with an optional offset.
+ *
+ * \param transform The transform of the object, which contains its position, rotation, and scale.
+ * \param offset The offset to apply to the object's position (in local space).
+ * \return The absolute position of the object as a 2D vector.
+ */
+ static vec2 get_position(const Transform & transform, const vec2 & offset);
+};
+
+} // namespace crepe