Add Vector3 constructor for IntX.
This commit is contained in:
@@ -6,7 +6,9 @@
|
|||||||
#include "Color.h"
|
#include "Color.h"
|
||||||
#include "Quaternion.h"
|
#include "Quaternion.h"
|
||||||
#include "Matrix.h"
|
#include "Matrix.h"
|
||||||
|
#include "Int2.h"
|
||||||
#include "Int3.h"
|
#include "Int3.h"
|
||||||
|
#include "Int4.h"
|
||||||
#include "../Types/String.h"
|
#include "../Types/String.h"
|
||||||
|
|
||||||
static_assert(sizeof(Vector3) == 12, "Invalid Vector3 type size.");
|
static_assert(sizeof(Vector3) == 12, "Invalid Vector3 type size.");
|
||||||
@@ -40,10 +42,24 @@ Vector3::Vector3(const Vector2& xy)
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Vector3::Vector3(const Int2& xy, float z)
|
||||||
|
: X(static_cast<float>(xy.X))
|
||||||
|
, Y(static_cast<float>(xy.Y))
|
||||||
|
, Z(static_cast<float>(z))
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
Vector3::Vector3(const Int3& xyz)
|
Vector3::Vector3(const Int3& xyz)
|
||||||
: X((float)xyz.X)
|
: X(static_cast<float>(xyz.X))
|
||||||
, Y((float)xyz.Y)
|
, Y(static_cast<float>(xyz.Y))
|
||||||
, Z((float)xyz.Z)
|
, Z(static_cast<float>(xyz.Z))
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
Vector3::Vector3(const Int4& xyzw)
|
||||||
|
: X(static_cast<float>(xyzw.X))
|
||||||
|
, Y(static_cast<float>(xyzw.Y))
|
||||||
|
, Z(static_cast<float>(xyzw.Z))
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -12,6 +12,8 @@ struct Vector2;
|
|||||||
struct Vector4;
|
struct Vector4;
|
||||||
struct Color;
|
struct Color;
|
||||||
class String;
|
class String;
|
||||||
|
struct Int3;
|
||||||
|
struct Int4;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a three dimensional mathematical vector.
|
/// Represents a three dimensional mathematical vector.
|
||||||
@@ -138,10 +140,19 @@ public:
|
|||||||
// @param xy Vector3 value
|
// @param xy Vector3 value
|
||||||
explicit Vector3(const Vector2& xy);
|
explicit Vector3(const Vector2& xy);
|
||||||
|
|
||||||
|
// Init
|
||||||
|
// @param xy Int22 with X and Y components values
|
||||||
|
// @param z Z component value
|
||||||
|
explicit Vector3(const Int2& xy, float z);
|
||||||
|
|
||||||
// Init
|
// Init
|
||||||
// @param xyz Int3 value
|
// @param xyz Int3 value
|
||||||
explicit Vector3(const Int3& xyz);
|
explicit Vector3(const Int3& xyz);
|
||||||
|
|
||||||
|
// Init
|
||||||
|
// @param xyzw Int4 value
|
||||||
|
explicit Vector3(const Int4& xyzw);
|
||||||
|
|
||||||
// Init
|
// Init
|
||||||
// @param xyz Vector4 value
|
// @param xyz Vector4 value
|
||||||
explicit Vector3(const Vector4& xyz);
|
explicit Vector3(const Vector4& xyz);
|
||||||
|
|||||||
Reference in New Issue
Block a user