MCPcopy Create free account
hub / github.com/defold/defold / LengthSqr

Function LengthSqr

engine/script/src/script_vmath.cpp:1863–1887  ·  view source on GitHub ↗

calculates the squared length of a vector or quaternion * * Returns the squared length of the supplied vector or quaternion. * * @name vmath.length_sqr * @param v [type:vector3|vector4|quaternion] value of which to calculate the squared length * @return n [type:number] squared length * @examples * * ```lua * if vmath.length_sqr(vector1) < vmath.len

Source from the content-addressed store, hash-verified

1861 * ```
1862 */
1863 static int LengthSqr(lua_State* L)
1864 {
1865 void* argument = 0;
1866 const ScriptUserType type = CheckUserData(L, 1, &argument);
1867 if (type == SCRIPT_TYPE_VECTOR3)
1868 {
1869 Vector3* v = (Vector3*)argument;
1870 lua_pushnumber(L, dmVMath::LengthSqr(*v));
1871 }
1872 else if (type == SCRIPT_TYPE_VECTOR4)
1873 {
1874 Vector4* v = (Vector4*)argument;
1875 lua_pushnumber(L, dmVMath::LengthSqr(*v));
1876 }
1877 else if (type == SCRIPT_TYPE_QUAT)
1878 {
1879 Quat* value = (Quat*)argument;
1880 lua_pushnumber(L, dmVMath::LengthSqr(*value));
1881 }
1882 else
1883 {
1884 return luaL_error(L, "%s.%s accepts (%s|%s|%s) as argument.", SCRIPT_LIB_NAME, "lengthSqr", SCRIPT_TYPE_NAME_VECTOR3, SCRIPT_TYPE_NAME_VECTOR4, SCRIPT_TYPE_NAME_QUAT);
1885 }
1886 return 1;
1887 }
1888
1889 /*# calculates the length of a vector or quaternion
1890 *

Callers 7

ProjectFunction · 0.70
MaxVertexDistanceSqFunction · 0.50
Vector3EqualsFunction · 0.50
DrawTextFunction · 0.50
TEST_FFunction · 0.50
CompSpriteLateUpdateFunction · 0.50
DispatchCallbackFunction · 0.50

Calls 3

CheckUserDataFunction · 0.85
lua_pushnumberFunction · 0.85
luaL_errorFunction · 0.85

Tested by 2

MaxVertexDistanceSqFunction · 0.40
TEST_FFunction · 0.40