Difference between revisions of "LlSin"
Jump to navigation
Jump to search
All Issues ~ Search JIRA for related Bugs
(16 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
{{ | {{LSL_Function | ||
|func=llSin | |inject-2={{LSL_Function/angle|theta}} | ||
|func_id=0 | |func=llSin|sort=Sin | ||
|func_sleep=0.0 | |func_id=0|func_sleep=0.0|func_energy=10.0 | ||
|func_energy=10.0 | |func_footnote | ||
|p1_type=float | |p1_type=float|p1_name=theta | ||
|p1_name=theta | |||
|return_type=float | |return_type=float | ||
|return_text=that is the sine of theta. | |return_text=that is the sine of {{LSLP|theta}}. | ||
|spec | |spec | ||
|caveats | |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 | |constants | ||
| | |examples=<source lang="lsl2">// 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)); | |||
} | |||
}</source> | |||
|helpers | |||
|also_functions= | |||
{{LSL DefineRow||[[llAsin]]|inverse Sine}} | |||
{{LSL DefineRow|[[llCos]]|[[llAcos]]|cosine & inverse cosine}} | |||
{{LSL DefineRow|[[llTan]]|[[llAtan2]]|tangent & inverse tangent}} | |||
|also_events | |||
|also_tests | |||
|also_articles | |||
|notes | |notes | ||
|permission | |||
|negative_index | |||
|cat1 | |||
|cat2 | |||
|cat3 | |||
|cat4 | |||
|cat5=Math/Trigonometry | |||
}} | }} | ||
Latest revision as of 15:11, 14 September 2015
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Summary
Function: float llSin( float theta );0 | Function ID |
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));
}
}