Add vector.offset (#10321)

This commit is contained in:
Desour 2020-08-29 17:41:29 +02:00 committed by Nils Dagsson Moskopp
parent 5d84294168
commit 3ec4ffeb05
Signed by: erle
GPG Key ID: A3BC671C35191080
2 changed files with 10 additions and 0 deletions

View File

@ -44,6 +44,10 @@ describe("vector", function()
assert.same({ x = 2, y = 4, z = 6 }, vector.add(vector.new(1, 2, 3), { x = 1, y = 2, z = 3 }))
end)
it("offset()", function()
assert.same({ x = 41, y = 52, z = 63 }, vector.offset(vector.new(1, 2, 3), 40, 50, 60))
end)
-- This function is needed because of floating point imprecision.
local function almost_equal(a, b)
if type(a) == "number" then

View File

@ -137,6 +137,12 @@ function vector.divide(a, b)
end
end
function vector.offset(v, x, y, z)
return {x = v.x + x,
y = v.y + y,
z = v.z + z}
end
function vector.sort(a, b)
return {x = math.min(a.x, b.x), y = math.min(a.y, b.y), z = math.min(a.z, b.z)},
{x = math.max(a.x, b.x), y = math.max(a.y, b.y), z = math.max(a.z, b.z)}