Difference between revisions of "LlSin"

From Second Life Wiki
Jump to navigation Jump to search
 
(24 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{lowercase|llSin}}
{{LSL_Function
__NOTOC__
|inject-2={{LSL_Function/angle|theta}}
 
|func=llSin|sort=Sin
{| width="100%"
|func_id=0|func_sleep=0.0|func_energy=10.0
|-
|func_footnote
|<div id="box">
|p1_type=float|p1_name=theta
== [[LSL_Type_float|float]] llSin( [[LSL_Type_float|float]] theta); ==
|return_type=float
<div style="padding: 0.5em">
|return_text=that is the sine of {{LSLP|theta}}.
* theta - theta in radians.
|spec
</div>
|caveats=Because of IEE754 on floats , llSin(PI) returns -8.742278E-8 ( hex : 0xB3BBBD2E ) and not 0.0 . The error is cumulative with multiples of PI : For instance  llSin(100000.0*PI) = 0.015890 when the result should be 0.0
</div>
|constants
|-
|examples=<source lang="lsl2">// Touch the object with this script in it to see the sine of random numbers!
|
default
<div id="box">
{
 
    touch_start(integer num)
== Specification ==
    {
<div style="padding: 0.5em">
        float r = llFrand(TWO_PI);
Returns the sin of theta.
        llOwnerSay("The sine of " + (string)r + " in radians or " + (string)(r * RAD_TO_DEG) + " in degrees is " + (string)llSin(r));
</div>
    }
</div>
}</source>
|-
|helpers
|
|also_functions=
<div id="box">
{{LSL DefineRow||[[llAsin]]|inverse Sine}}
 
{{LSL DefineRow|[[llCos]]|[[llAcos]]|cosine & inverse cosine}}
== Caveats ==
{{LSL DefineRow|[[llTan]]|[[llAtan2]]|tangent & inverse tangent}}
<div style="padding: 0.5em">
|also_events
</div>
|also_tests
</div>
|also_articles
 
|notes
|-
|permission
|
|negative_index
<div id="box">
|cat1
== Examples ==
|cat2
<div style="padding: 0.5em">
|cat3
<lsl>
|cat4
</lsl>
|cat5=Math/Trigonometry
</div>
}}
</div>
|-
|
<div id="box">
== Helper Functions ==
<div style="padding: 0.5em">
<lsl>
</lsl>
</div>
</div>
|-
|
<div id="box">
== See Also ==
<div style="padding: 0.5em">
</div>
</div>
|-
|
<div id="box">
== Notes ==
<div style="padding: 0.5em">
Function ID: 0
</div>
</div>
|}
 
[[Category:LSL_Functions]]
[[Category:LSL_Math]]

Latest revision as of 14:11, 14 September 2015

Summary

Function: float llSin( float theta );
0.0 Forced Delay
10.0 Energy

Returns a float that is the sine of theta.

• float theta angle expressed in radians

Caveats

Because of IEE754 on floats , llSin(PI) returns -8.742278E-8 ( hex : 0xB3BBBD2E ) and not 0.0 . The error is cumulative with multiples of PI : For instance llSin(100000.0*PI) = 0.015890 when the result should be 0.0

Examples

// Touch the object with this script in it to see the sine of random numbers!
default
{
    touch_start(integer num)
    {
        float r = llFrand(TWO_PI);
        llOwnerSay("The sine of " + (string)r + " in radians or " + (string)(r * RAD_TO_DEG) + " in degrees is " + (string)llSin(r));
    }
}

See Also

Functions

•  llAsin inverse Sine
• llCos llAcos cosine & inverse cosine
• llTan llAtan2 tangent & inverse tangent

Deep Notes

Signature

function float llSin( float theta );