Explorar el Código

Add tostring metamethod;

bjorn hace 6 años
padre
commit
78d6cc4ea5
Se han modificado 1 ficheros con 8 adiciones y 0 borrados
  1. 8 0
      maf.lua

+ 8 - 0
maf.lua

@@ -15,6 +15,10 @@ vec3 = {
     return setmetatable({ x = x or 0, y = y or 0, z = z or 0 }, vec3)
   end,
 
+  __tostring = function(v)
+    return string.format('(%f, %f, %f)', v.x, v.y, v.z)
+  end,
+
   __add = function(v, u) return v:add(u, vec3()) end,
   __sub = function(v, u) return v:sub(u, vec3()) end,
   __mul = function(v, u)
@@ -162,6 +166,10 @@ quat = {
     return setmetatable({ x = x, y = y, z = z, w = w }, quat)
   end,
 
+  __tostring = function(q)
+    return string.format('(%f, %f, %f, %f)', q.x, q.y, q.z, q.w)
+  end,
+
   __add = function(q, r) return q:add(r, quat()) end,
   __sub = function(q, r) return q:sub(r, quat()) end,
   __mul = function(q, r)