Difference between revisions of "LlGetAlpha"

From Second Life Wiki
Jump to navigation Jump to search
m
m
Line 1: Line 1:
{{LSL_Function
{{LSL_Function
|inject-2={{LSL_Function/face|face|return=0.0|get=returns the sum of alpha of all the faces on the prim, range {{Interval|gte=0|lte=[[llGetNumberOfSides|sides]]|lteh=sides|center=return}}{{Interval/Footnote}}.}}
|inject-2={{LSL_Function/face|face|return=1.0|get=returns the sum of alpha of all the faces on the prim, range {{Interval|gte=0|lte=[[llGetNumberOfSides|sides]]|lteh=sides|center=return}}{{Interval/Footnote}}.}}
{{LSL_Function/alpha|alpha}}
{{LSL_Function/alpha|alpha}}
|func_id=50|func_sleep=0.0|func_energy=10.0
|func_id=50|func_sleep=0.0|func_energy=10.0

Revision as of 22:32, 5 January 2013

Summary

Function: float llGetAlpha( integer face );
0.0 Forced Delay
10.0 Energy

Returns a float that is the alpha of face.

• integer face face number or ALL_SIDES

If face is ALL_SIDES then the function returns the sum of alpha of all the faces on the prim, range [0, sides][1]. Otherwise the return is in the range [0, 1].

Caveats

  • If face indicates a face that does not exist the return is 1.0

Examples

<lsl>//Tells the owner the alpha on all sides default {

   state_entry()
   {
       integer i = 0;
       integer max = llGetNumberOfSides();
       while(i < max)
       {
           llSay(0,"Face "+(string)i+" alpha is " + (string)llGetAlpha(i));
           ++i;
       }
   }
}</lsl>

Useful Snippets

<lsl>float AveragePrimAlpha() {//Since this is so simple you may just want to inline it instead of including the function.

   return (llGetAlpha(ALL_SIDES) / llGetNumberOfSides());

}</lsl>

See Also

Functions

•  llSetAlpha Sets the prim's alpha
•  llGetColor Gets the prim's color
•  llSetColor Sets the prim's color
•  llSetLinkColor Sets link's color
•  llSetLinkAlpha Sets link's alpha
•  llGetNumberOfSides Gets the number of faces on the prim

Articles

•  Translucent Color

Deep Notes

Rounding

Alpha is stored in a single 8-bit byte, meaning there are 256 values that are possible. Consequently the values returned by this function are all multiples of 1/255. When the alpha value is initially stored the float value is rounded to the nearest multiple, turning 0.5 into 128/255 for example.

Footnotes

  1. ^ The ranges in this article are written in Interval Notation.

Signature

function float llGetAlpha( integer face );