aboutsummaryrefslogtreecommitdiff
path: root/src/crepe/util/AbsolutePosition.h
diff options
context:
space:
mode:
authorLoek Le Blansch <loek@pipeframe.xyz>2024-12-20 11:10:06 +0100
committerLoek Le Blansch <loek@pipeframe.xyz>2024-12-20 11:10:06 +0100
commit5b1a26a13d8a2f44a7ef1fa8c0fc609c37adc28b (patch)
tree801ff9f3bbd82efacb5d4fdb1cbe4c09cfedf7c5 /src/crepe/util/AbsolutePosition.h
parent88d84763147fbd6bcc087f15a7460566a009cdb2 (diff)
parent69ca2bafcd617ac8af1b8f715f0c802205a60ab1 (diff)
merge master
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