Unofficial LSL Reference

[[functions:llsin]]


Unofficial LSL reference

User Tools

Login

You are currently not logged in! Enter your authentication credentials below to log in. You need to have cookies enabled to log in.

Login

Forgotten your password? Get a new one: Set new password

Function: llSin

float llSin(float arg)

Return the sine of the argument. The argument should be an angle in radians.

Parameters

arg

Angle whose sine is to be found, in radians.

Return value

A float with the sine of the argument.

Notes

  • Inputs of -Infinity, Infinity and NaN result in NaN.
  • If the angle is otherwise not between approx. -9.22337e18 and 9.22337e18, the argument is returned unchanged.
  • Otherwise, the return value is always between -1 and 1.

Short examples

float F;
F = llSin(1); // Sets F to approx. 0.841471, which is the sine of 1 radian.
F = llSin(-1); // Sets F to approx. -0.841471, which is the sine of -1 radian.
F = llSin(0); // Sets F to 0, which is the sine of 0.
F = llSin(PI); // Sets F to approximately 0, which is the sine of PI.
               // It isn't exactly 0 because of rounding/calculation errors.
F = llSin(1e20);  // Sets F to 1e20 because 1e20 is returned unchanged.

Complete examples

llSin is very frequently used together with llCos, as llCos gives the X component and llSin the Y component of a unit 2D vector at the given angle.

llSin-llCos-example.lsl
default
{
    state_entry()
    {
        llOwnerSay("Calculate a vector at an angle. Please say the angle in chat.");
        llListen(0, "", llGetOwner(), "");
    }

    listen(integer chan, string name, key id, string msg)
    {
        float angle = (float)msg * DEG_TO_RAD;
        llOwnerSay("Input angle: " + msg + "; resulting vector: ("
                   + (string)llCos(angle) + ", " + (string)llSin(angle) + ")");
    }
}

The opposite calculation, i.e. finding the angle of a 2D vector, can be performed with llAtan2.

See also

  • llCos calculates the cosine of the argument.
  • llAsin calculates the inverse sine of the argument.
  • llAtan2 calculates the angle of a 2D vector.

Other trigonometric functions

  • llAcos calculates the inverse cosine of the argument.
  • llTan calculates the tangent of the argument.
  • float type and associated caveats and limitations.