summaryrefslogtreecommitdiff
path: root/core/variant.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'core/variant.cpp')
-rw-r--r--core/variant.cpp60
1 files changed, 30 insertions, 30 deletions
diff --git a/core/variant.cpp b/core/variant.cpp
index f70e4a5218..7f0cabbce4 100644
--- a/core/variant.cpp
+++ b/core/variant.cpp
@@ -67,7 +67,6 @@ String Variant::get_type_name(Variant::Type p_type) {
} break;
// math types
-
case VECTOR2: {
return "Vector2";
@@ -94,9 +93,9 @@ String Variant::get_type_name(Variant::Type p_type) {
} break;*/
- case RECT3: {
+ case AABB: {
- return "Rect3";
+ return "AABB";
} break;
case QUAT: {
@@ -267,6 +266,7 @@ bool Variant::can_convert(Variant::Type p_type_from, Variant::Type p_type_to) {
static const Type valid[] = {
QUAT,
+ VECTOR3,
NIL
};
@@ -512,6 +512,7 @@ bool Variant::can_convert_strict(Variant::Type p_type_from, Variant::Type p_type
static const Type valid[] = {
QUAT,
+ VECTOR3,
NIL
};
@@ -723,7 +724,6 @@ bool Variant::is_zero() const {
} break;
// math types
-
case VECTOR2: {
return *reinterpret_cast<const Vector2 *>(_data._mem) == Vector2();
@@ -754,9 +754,9 @@ bool Variant::is_zero() const {
} break;*/
- case RECT3: {
+ case AABB: {
- return *_data._rect3 == Rect3();
+ return *_data._aabb == ::AABB();
} break;
case QUAT: {
@@ -932,7 +932,6 @@ void Variant::reference(const Variant &p_variant) {
} break;
// math types
-
case VECTOR2: {
memnew_placement(_data._mem, Vector2(*reinterpret_cast<const Vector2 *>(p_variant._data._mem)));
@@ -954,9 +953,9 @@ void Variant::reference(const Variant &p_variant) {
memnew_placement(_data._mem, Plane(*reinterpret_cast<const Plane *>(p_variant._data._mem)));
} break;
- case RECT3: {
+ case AABB: {
- _data._rect3 = memnew(Rect3(*p_variant._data._rect3));
+ _data._aabb = memnew(::AABB(*p_variant._data._aabb));
} break;
case QUAT: {
@@ -1079,9 +1078,9 @@ void Variant::clear() {
memdelete(_data._transform2d);
} break;
- case RECT3: {
+ case AABB: {
- memdelete(_data._rect3);
+ memdelete(_data._aabb);
} break;
case BASIS: {
@@ -1426,7 +1425,7 @@ Variant::operator String() const {
case PLANE:
return operator Plane();
//case QUAT:
- case RECT3: return operator Rect3();
+ case AABB: return operator ::AABB();
case QUAT: return "(" + operator Quat() + ")";
case BASIS: {
@@ -1617,12 +1616,12 @@ Variant::operator Plane() const {
else
return Plane();
}
-Variant::operator Rect3() const {
+Variant::operator ::AABB() const {
- if (type == RECT3)
- return *_data._rect3;
+ if (type == AABB)
+ return *_data._aabb;
else
- return Rect3();
+ return ::AABB();
}
Variant::operator Basis() const {
@@ -1631,7 +1630,9 @@ Variant::operator Basis() const {
return *_data._basis;
else if (type == QUAT)
return *reinterpret_cast<const Quat *>(_data._mem);
- else if (type == TRANSFORM)
+ else if (type == VECTOR3) {
+ return Basis(*reinterpret_cast<const Vector3 *>(_data._mem));
+ } else if (type == TRANSFORM) // unexposed in Variant::can_convert?
return _data._transform->basis;
else
return Basis();
@@ -2188,10 +2189,10 @@ Variant::Variant(const Plane &p_plane) {
type = PLANE;
memnew_placement(_data._mem, Plane(p_plane));
}
-Variant::Variant(const Rect3 &p_aabb) {
+Variant::Variant(const ::AABB &p_aabb) {
- type = RECT3;
- _data._rect3 = memnew(Rect3(p_aabb));
+ type = AABB;
+ _data._aabb = memnew(::AABB(p_aabb));
}
Variant::Variant(const Basis &p_matrix) {
@@ -2502,7 +2503,6 @@ void Variant::operator=(const Variant &p_variant) {
} break;
// math types
-
case VECTOR2: {
*reinterpret_cast<Vector2 *>(_data._mem) = *reinterpret_cast<const Vector2 *>(p_variant._data._mem);
@@ -2524,9 +2524,9 @@ void Variant::operator=(const Variant &p_variant) {
*reinterpret_cast<Plane *>(_data._mem) = *reinterpret_cast<const Plane *>(p_variant._data._mem);
} break;
- case RECT3: {
+ case AABB: {
- *_data._rect3 = *(p_variant._data._rect3);
+ *_data._aabb = *(p_variant._data._aabb);
} break;
case QUAT: {
@@ -2641,8 +2641,8 @@ uint32_t Variant::hash() const {
return reinterpret_cast<const String *>(_data._mem)->hash();
} break;
- // math types
+ // math types
case VECTOR2: {
uint32_t hash = hash_djb2_one_float(reinterpret_cast<const Vector2 *>(_data._mem)->x);
@@ -2686,13 +2686,13 @@ uint32_t Variant::hash() const {
} break;*/
- case RECT3: {
+ case AABB: {
uint32_t hash = 5831;
for (int i = 0; i < 3; i++) {
- hash = hash_djb2_one_float(_data._rect3->position[i], hash);
- hash = hash_djb2_one_float(_data._rect3->size[i], hash);
+ hash = hash_djb2_one_float(_data._aabb->position[i], hash);
+ hash = hash_djb2_one_float(_data._aabb->size[i], hash);
}
return hash;
@@ -2952,9 +2952,9 @@ bool Variant::hash_compare(const Variant &p_variant) const {
(hash_compare_scalar(l->d, r->d));
} break;
- case RECT3: {
- const Rect3 *l = _data._rect3;
- const Rect3 *r = p_variant._data._rect3;
+ case AABB: {
+ const ::AABB *l = _data._aabb;
+ const ::AABB *r = p_variant._data._aabb;
return (hash_compare_vector3(l->position, r->position) &&
(hash_compare_vector3(l->size, r->size)));