OSDN Git Service
(root)
/
meshio
/
meshio.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
separate vertex with uv or normal.
[meshio/meshio.git]
/
include
/
la.h
diff --git
a/include/la.h
b/include/la.h
index
e0fe84d
..
0ef6ee8
100644
(file)
--- a/
include/la.h
+++ b/
include/la.h
@@
-21,11
+21,13
@@
struct Vector2
: x(_x), y(_y)
{}
};
: x(_x), y(_y)
{}
};
+#ifndef SWIG
inline std::ostream &operator<<(std::ostream &os, const Vector2 &rhs)
{
return os
<< '[' << rhs.x << ',' << rhs.y << ']';
}
inline std::ostream &operator<<(std::ostream &os, const Vector2 &rhs)
{
return os
<< '[' << rhs.x << ',' << rhs.y << ']';
}
+#endif
struct Vector3
struct Vector3
@@
-45,12
+47,24
@@
struct Vector3
{
return x==rhs.x && y==rhs.y && z==rhs.z;
}
{
return x==rhs.x && y==rhs.y && z==rhs.z;
}
+
+ Vector3 operator+(const Vector3 &rhs)
+ {
+ return Vector3(x+rhs.x, y+rhs.y, z+rhs.z);
+ }
+
+ Vector3 operator-(const Vector3 &rhs)
+ {
+ return Vector3(x-rhs.x, y-rhs.y, z-rhs.z);
+ }
};
};
+#ifndef SWIG
inline std::ostream &operator<<(std::ostream &os, const Vector3 &rhs)
{
return os
<< '[' << rhs.x << ',' << rhs.y << ',' << rhs.z << ']';
}
inline std::ostream &operator<<(std::ostream &os, const Vector3 &rhs)
{
return os
<< '[' << rhs.x << ',' << rhs.y << ',' << rhs.z << ']';
}
+#endif
struct Vector4
struct Vector4
@@
-67,11
+81,13
@@
struct Vector4
: x(_x), y(_y), z(_z), w(_w)
{}
};
: x(_x), y(_y), z(_z), w(_w)
{}
};
+#ifndef SWIG
inline std::ostream &operator<<(std::ostream &os, const Vector4 &rhs)
{
return os
<< '[' << rhs.x << ',' << rhs.y << ',' << rhs.z << ',' << rhs.w << ']';
}
inline std::ostream &operator<<(std::ostream &os, const Vector4 &rhs)
{
return os
<< '[' << rhs.x << ',' << rhs.y << ',' << rhs.z << ',' << rhs.w << ']';
}
+#endif
struct Quaternion
struct Quaternion
@@
-87,12
+103,19
@@
struct Quaternion
Quaternion(float _x, float _y, float _z, float _w)
: x(_x), y(_y), z(_z), w(_w)
{}
Quaternion(float _x, float _y, float _z, float _w)
: x(_x), y(_y), z(_z), w(_w)
{}
+
+ float dot(const Quaternion &rhs)
+ {
+ return x*rhs.x + y*rhs.y + z*rhs.z + w*rhs.w;
+ }
};
};
+#ifndef SWIG
inline std::ostream &operator<<(std::ostream &os, const Quaternion &rhs)
{
return os
<< '[' << rhs.x << ',' << rhs.y << ',' << rhs.z << ',' << rhs.w << ']';
}
inline std::ostream &operator<<(std::ostream &os, const Quaternion &rhs)
{
return os
<< '[' << rhs.x << ',' << rhs.y << ',' << rhs.z << ',' << rhs.w << ']';
}
+#endif
}
}