mirror of
https://github.com/enduro2d/enduro2d.git
synced 2025-12-14 16:09:06 +07:00
87 lines
1.4 KiB
Lua
87 lines
1.4 KiB
Lua
---@class q4f
|
|
local q4f = {
|
|
---@type number
|
|
x = 0,
|
|
|
|
---@type number
|
|
y = 0,
|
|
|
|
---@type number
|
|
z = 0,
|
|
|
|
---@type number
|
|
w = 0
|
|
}
|
|
|
|
---@overload fun(): q4f
|
|
---@overload fun(q: q4f): q4f
|
|
---@overload fun(x: number, y: number, z: number, w: number): q4f
|
|
---@overload fun(v: v4f): q4f
|
|
---@return q4f
|
|
function q4f.new() end
|
|
|
|
---@return q4f
|
|
function q4f.zero() end
|
|
|
|
---@return q4f
|
|
function q4f.identity() end
|
|
|
|
---@param angle degf | radf
|
|
---@param axis v3f
|
|
---@return q4f
|
|
function q4f.make_from_axis_angle(angle, axis) end
|
|
|
|
---@param roll degf | radf
|
|
---@param pitch degf | radf
|
|
---@param yaw degf | radf
|
|
---@return q4f
|
|
function q4f.make_from_euler_angles(roll, pitch, yaw) end
|
|
|
|
---@param l q4f
|
|
---@param r q4f
|
|
---@return boolean
|
|
function q4f.approximately(l, r) end
|
|
|
|
---@param l q4f
|
|
---@param r q4f
|
|
---@return number
|
|
function q4f.dot(l, r) end
|
|
|
|
---@param l q4f
|
|
---@param r q4f
|
|
---@return number
|
|
function q4f.abs_dot(l, r) end
|
|
|
|
---@param q q4f
|
|
---@return number
|
|
function q4f.length_squared(q) end
|
|
|
|
---@param q q4f
|
|
---@return number
|
|
function q4f.length(q) end
|
|
|
|
---@param q q4f
|
|
---@return q4f
|
|
function q4f.normalized(q) end
|
|
|
|
---@param l q4f
|
|
---@param r q4f
|
|
---@param v number
|
|
---@return q4f
|
|
function q4f.lerp(l, r, v) end
|
|
|
|
---@param q q4f
|
|
---@return q4f
|
|
function q4f.inversed(q) end
|
|
|
|
---@param q q4f
|
|
---@return q4f
|
|
function q4f.conjugated(q) end
|
|
|
|
---@param q q4f
|
|
---@return q4f
|
|
function q4f.contains_nan(q) end
|
|
|
|
---@type q4f
|
|
_G.q4f = _G.q4f or q4f
|