Elaztek Developer Hub
Blamite Game Engine - Strings  00366.10.17.22.0321.blamite
A library containing general purpose utilities and classes for use in multiple projects.
vector.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <string>
4 
5 #ifdef STRINGS_EXPORTS
6 #define STRINGS_API __declspec(dllexport)
7 #else
8 #define STRINGS_API __declspec(dllimport)
9 #endif
10 
11 enum class BlamDirection
12 {
13  Forward,
14  Backward,
15  Left,
16  Right,
17  Up,
18  Down
19 };
20 
25 {
26  float x = 0.0f;
27  float y = 0.0f;
28 
30 
31  BlamVector2(float _x, float _y);
32 
38  std::string ToString();
39 
47  BlamVector2 operator+(const BlamVector2& vector);
48 
56  BlamVector2 operator+(const float& _float);
57 
65  BlamVector2 operator*(const BlamVector2& vector);
66 
74  BlamVector2 operator*(const float& _float);
75 };
76 
81 {
82  float x = 0.0f;
83  float y = 0.0f;
84  float z = 0.0f;
85 
87 
88  BlamVector3(float _x, float _y, float _z);
89 
96  BlamVector3 ConvertForBGFX();
97 
103  BlamVector3 ConvertDegreesToRadians();
104 
112  bool Equals(BlamVector3 vector);
113 
119  std::string ToString();
120 
128  BlamVector3 operator+(const BlamVector3& vector);
129 
137  BlamVector3 operator+(const float& _float);
138 
146  BlamVector3 operator*(const BlamVector3& vector);
147 
155  BlamVector3 operator*(const float& _float);
156 };
157 
163 {
164  float x = 0.0f;
165  float y = 0.0f;
166  float z = 0.0f;
167  float w = 0.0f;
168 
170 
171  BlamVector4(float _x, float _y, float _z, float _w);
172 
178  std::string ToString();
179 
187  BlamVector4 operator+(const BlamVector4& vector);
188 
196  BlamVector4 operator+(const float& _float);
197 
205  BlamVector4 operator*(const BlamVector4& vector);
206 
214  BlamVector4 operator*(const float& _float);
215 };
BlamVector4::BlamVector4
BlamVector4()
Definition: vector.h:169
BlamVector3::BlamVector3
BlamVector3()
Definition: vector.h:86
BlamDirection::Backward
@ Backward
STRINGS_API
#define STRINGS_API
Definition: vector.h:8
BlamDirection::Down
@ Down
BlamVector3
Structure representing a 3D vector.
Definition: vector.h:80
BlamDirection::Up
@ Up
BlamDirection::Forward
@ Forward
BlamDirection::Left
@ Left
BlamVector2::BlamVector2
BlamVector2()
Definition: vector.h:29
BlamVector4
Structure representing a 4D vector.
Definition: vector.h:162
BlamDirection::Right
@ Right
BlamDirection
BlamDirection
Definition: vector.h:11
BlamVector2
Structure representing a 2D vector.
Definition: vector.h:24