Difference between revisions of "LlVecMag"

Jump to: navigation, search

 LSL Portal

Contents

Function: float llVecMag( vector vec );
 12 Function ID 0 Forced Delay 10 Energy

Returns a float that is the magnitude of the vector (the undirected non-negative distance from vec to <0.0, 0.0, 0.0>).

 • vector vec

Examples

```default {
state_entry()
{
vector input = <1.0,2.0,3.0>;
llSay(0,"The magnitude of "+(string)input+" is "+(string)llVecMag(input) + ".");
}
}```

Notes

• Mathematically the formula for vector magnitude is
• `llSqrt(vec.x * vec.x + vec.y * vec.y + vec.z * vec.z)`
• Knowing this, there are ways to circumvent llVecMag for more efficient code.
• vec*vec < 16.0 is over twice as fast as llVecMag(vec) < 4.0.
• vec*vec < (dist*dist) is about twice as fast as llVecMag(vec) < dist.
• This can work in many other ways, too, with other comparisons.

See Also

Functions

 • llVecNorm – The vector normal • llVecDist – The distance between two vectors

Deep Notes

Signature

```function float llVecMag( vector vec );
```