summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/math/math_2d.cpp2
-rw-r--r--core/math/math_2d.h8
-rw-r--r--core/math/matrix3.cpp13
-rw-r--r--core/math/quat.cpp2
-rw-r--r--core/math/vector3.cpp2
-rw-r--r--core/variant.cpp40
6 files changed, 44 insertions, 23 deletions
diff --git a/core/math/math_2d.cpp b/core/math/math_2d.cpp
index cf01e972a4..0e2060008c 100644
--- a/core/math/math_2d.cpp
+++ b/core/math/math_2d.cpp
@@ -658,5 +658,5 @@ Matrix32 Matrix32::interpolate_with(const Matrix32& p_transform, float p_c) cons
Matrix32::operator String() const {
- return "("+String(String()+elements[0]+", "+elements[1]+", "+elements[2])+")";
+ return String(String()+elements[0]+", "+elements[1]+", "+elements[2]);
}
diff --git a/core/math/math_2d.h b/core/math/math_2d.h
index 5f511c933e..fbf700fb9c 100644
--- a/core/math/math_2d.h
+++ b/core/math/math_2d.h
@@ -157,7 +157,7 @@ struct Vector2 {
float get_aspect() const { return width/height; }
- operator String() const { return "("+String::num(x)+", "+String::num(y)+")"; }
+ operator String() const { return String::num(x)+", "+String::num(y); }
_FORCE_INLINE_ Vector2(float p_x,float p_y) { x=p_x; y=p_y; }
_FORCE_INLINE_ Vector2() { x=0; y=0; }
@@ -356,7 +356,7 @@ struct Rect2 {
}
- operator String() const { return "("+String(pos)+", "+String(size)+")"; }
+ operator String() const { return String(pos)+", "+String(size); }
Rect2() {}
Rect2( float p_x, float p_y, float p_width, float p_height) { pos=Point2(p_x,p_y); size=Size2( p_width, p_height ); }
@@ -409,7 +409,7 @@ struct Point2i {
float get_aspect() const { return width/(float)height; }
- operator String() const { return "("+String::num(x)+", "+String::num(y)+")"; }
+ operator String() const { return String::num(x)+", "+String::num(y); }
operator Vector2() const { return Vector2(x,y); }
inline Point2i(const Vector2& p_vec2) { x=(int)p_vec2.x; y=(int)p_vec2.y; }
@@ -540,7 +540,7 @@ struct Rect2i {
}
- operator String() const { return "("+String(pos)+", "+String(size)+")"; }
+ operator String() const { return String(pos)+", "+String(size); }
operator Rect2() const { return Rect2(pos,size); }
Rect2i(const Rect2& p_r2) { pos=p_r2.pos; size=p_r2.size; }
diff --git a/core/math/matrix3.cpp b/core/math/matrix3.cpp
index 7b811c245c..71e6b62212 100644
--- a/core/math/matrix3.cpp
+++ b/core/math/matrix3.cpp
@@ -233,26 +233,19 @@ bool Matrix3::operator!=(const Matrix3& p_matrix) const {
Matrix3::operator String() const {
- String mtx("(");
+ String mtx;
for (int i=0;i<3;i++) {
- if (i!=0)
- mtx+=", ";
-
- mtx+="(";
-
for (int j=0;j<3;j++) {
- if (j!=0)
+ if (i!=0 || j!=0)
mtx+=", ";
mtx+=rtos( elements[i][j] );
}
-
- mtx+=")";
}
- return mtx+")";
+ return mtx;
}
Matrix3::operator Quat() const {
diff --git a/core/math/quat.cpp b/core/math/quat.cpp
index 5457638ada..73124e5e8e 100644
--- a/core/math/quat.cpp
+++ b/core/math/quat.cpp
@@ -252,7 +252,7 @@ Quat Quat::cubic_slerp(const Quat& q, const Quat& prep, const Quat& postq,const
Quat::operator String() const {
- return "("+String::num(x)+", "+String::num(y)+", "+ String::num(z)+", "+ String::num(w)+")";
+ return String::num(x)+", "+String::num(y)+", "+ String::num(z)+", "+ String::num(w);
}
Quat::Quat(const Vector3& axis, const real_t& angle) {
diff --git a/core/math/vector3.cpp b/core/math/vector3.cpp
index 8a0a6e963d..8afd73f482 100644
--- a/core/math/vector3.cpp
+++ b/core/math/vector3.cpp
@@ -182,5 +182,5 @@ Vector3 Vector3::cubic_interpolate(const Vector3& p_b,const Vector3& p_pre_a, co
# endif
Vector3::operator String() const {
- return "("+(rtos(x)+", "+rtos(y)+", "+rtos(z))+")";
+ return (rtos(x)+", "+rtos(y)+", "+rtos(z));
}
diff --git a/core/variant.cpp b/core/variant.cpp
index 31321dc0f3..a78c07d819 100644
--- a/core/variant.cpp
+++ b/core/variant.cpp
@@ -1515,15 +1515,43 @@ Variant::operator String() const {
case INT: return String::num(_data._int);
case REAL: return String::num(_data._real);
case STRING: return *reinterpret_cast<const String*>(_data._mem);
- case VECTOR2: return operator Vector2();
- case RECT2: return operator Rect2();
- case MATRIX32: return operator Matrix32();
- case VECTOR3: return operator Vector3();
+ case VECTOR2: return "("+operator Vector2()+")";
+ case RECT2: return "("+operator Rect2()+")";
+ case MATRIX32: {
+
+ Matrix32 mat32 = operator Matrix32();
+ return "("+Variant(mat32.elements[0]).operator String()+", "+Variant(mat32.elements[1]).operator String()+", "+Variant(mat32.elements[2]).operator String()+")";
+ } break;
+ case VECTOR3: return "("+operator Vector3()+")";
case PLANE: return operator Plane();
//case QUAT:
case _AABB: return operator AABB();
- case QUAT: return operator Quat();
- case MATRIX3: return operator Matrix3();
+ case QUAT: return "("+operator Quat()+")";
+ case MATRIX3: {
+
+ Matrix3 mat3 = operator Matrix3();
+
+ String mtx("(");
+ for (int i=0;i<3;i++) {
+
+ if (i!=0)
+ mtx+=", ";
+
+ mtx+="(";
+
+ for (int j=0;j<3;j++) {
+
+ if (j!=0)
+ mtx+=", ";
+
+ mtx+=Variant( mat3.elements[i][j] ).operator String();
+ }
+
+ mtx+=")";
+ }
+
+ return mtx+")";
+ } break;
case TRANSFORM: return operator Transform();
case NODE_PATH: return operator NodePath();
case INPUT_EVENT: return operator InputEvent();