OsSetPenColour
From OpenSimulator
m  | 
			 (syntax correction,  Need to get this moved to osPenColor)  | 
			||
| Line 1: | Line 1: | ||
| − | {{Template:Quicklinks}}  | + | {{Template:Quicklinks}} [[Technical Reference|Technical Reference]] -> [[Technical Reference/terms|Terms]] -> [[Status|Status Page]] -> [[OSSL Implemented|OSSL Implemented Functions]] -> [[Dynamic textures]] -> [[OsSetPenColour|osSetPenColour]]    | 
| − | [[Technical Reference | Technical Reference]] -  | + | |
| + | <br><strike>LSL: </strike>'''[[String|<strike>String</strike>]]<strike>osSetPenColour( </strike>[[String|<strike>String</strike>]]'''<strike>'''drawList, string colour )'''</strike>  deprecated as of Dec.10.2010<br><strike>C#: </strike>'''[[String|<strike>String</strike>]]<strike>osSetPenColour( </strike>[[String|<strike>String</strike>]]'''<strike>'''drawList, string colour )''' </strike>deprecated as of Dec.10.2010   | ||
| − | LSL: '''[[  | + | LSL: '''[[String]] osSetPenColor( [[String]] drawList, string color )''' <br>C#: '''[[String]] osSetPenColor( [[String]] drawList, string color )'''    | 
| − | C#: '''[[  | + | |
| + | <br>Appends a [[Drawing commands#PenColour|PenColour]] drawing command to the string provided in '''drawList''' and returns the result.   | ||
| − | + | This sets the pen's drawing color to either the specified [http://msdn.microsoft.com/en-us/library/aa358802.aspx named .NET color] or to a 32-bit color value (formatted as eight hexadecimal digits in the format aarrggbb, representing the eight-bit alpha, red, green and blue channels).    | |
| − | + | For full opacity, use an alpha value of ff (e.g. <tt>ffff0000</tt> for red); for varying degrees of transparency, reduce the alpha value (e.g. <tt>800000ff</tt> for half-transparent blue).    | |
| − | + | The color names and hexadecimal color representations are not case-sensitive.    | |
| − | + | Example: <source lang="lsl">  | |
| − | + | // Example of osSetPenColor  | |
| − | Example:  | + | |
| − | <source lang="lsl">  | + | |
| − | // Example of   | + | |
string hexDigits = "0123456789abcdef";  | string hexDigits = "0123456789abcdef";  | ||
| − | list colorNames   | + | list colorNames = [ "AliceBlue", "AntiqueWhite", "Aqua", "Aquamarine", "Azure", "Beige", "Bisque",  | 
| − | + |  "Black", "BlanchedAlmond", "Blue", "BlueViolet", "Brown", "BurlyWood",  | |
| − | + |  "CadetBlue", "Chartreuse", "Chocolate", "Coral", "CornflowerBlue", "Cornsilk",  | |
| − | + |  "Crimson", "Cyan", "DarkBlue", "DarkCyan", "DarkGoldenrod", "DarkGrey",  | |
| − | + |  "DarkGreen", "DarkKhaki", "DarkMagenta", "DarkOliveGreen", "DarkOrange",  | |
| − | + |  "DarkOrchid", "DarkRed", "DarkSalmon", "DarkSeaGreen", "DarkSlateBlue",  | |
| − | + |  "DarkSlateGrey", "DarkTurquoise", "DarkViolet", "DeepPink", "DeepSkyBlue",  | |
| − | + |  "DimGrey", "DodgerBlue", "FireBrick", "FloralWhite", "ForestGreen", "Fuchsia",  | |
| − | + |  "Gainsboro", "GhostWhite", "Gold", "Goldenrod", "Grey", "Green", "GreenYellow",  | |
| − | + |  "Honeydew", "HotPink", "IndianRed", "Indigo", "Ivory", "Khaki", "Lavender",  | |
| − | + |  "LavenderBlush", "LawnGreen", "LemonChiffon", "LightBlue", "LightCoral",  | |
| − | + |  "LightCyan", "LightGoldenrodYellow", "LightGreen", "LightGrey", "LightPink",  | |
| − | + |  "LightSalmon", "LightSeaGreen", "LightSkyBlue", "LightSlateGrey",  | |
| − | + |  "LightSteelBlue", "LightYellow", "Lime", "LimeGreen", "Linen", "Magenta",  | |
| − | + |  "Maroon", "MediumAquamarine", "MediumBlue", "MediumOrchid", "MediumPurple",  | |
| − | + |  "MediumSeaGreen", "MediumSlateBlue", "MediumSpringGreen", "MediumTurquoise",  | |
| − | + |  "MediumVioletRed", "MidnightBlue", "MintCream", "MistyRose", "Moccasin",  | |
| − | + |  "NavajoWhite", "Navy", "OldLace", "Olive", "OliveDrab", "Orange", "OrangeRed",  | |
| − | + |  "Orchid", "PaleGoldenrod", "PaleGreen", "PaleTurquoise", "PaleVioletRed",  | |
| − | + |  "PapayaWhip", "PeachPuff", "Peru", "Pink", "Plum", "PowderBlue", "Purple",  | |
| − | + |  "Red", "RosyBrown", "RoyalBlue", "SaddleBrown", "Salmon", "SandyBrown",  | |
| − | + |  "SeaGreen", "Seashell", "Sienna", "Silver", "SkyBlue", "SlateBlue", "SlateGrey",  | |
| − | + |  "Snow", "SpringGreen", "SteelBlue", "Tan", "Teal", "Thistle", "Tomato",  | |
| − | + |  "Turquoise", "Violet", "Wheat", "White", "WhiteSmoke", "Yellow", "YellowGreen" ];  | |
default  | default  | ||
{  | {  | ||
| − | + |  state_entry()  | |
| − | + |  {  | |
| − | + |  string CommandList = ""; // Storage for our drawing commands  | |
| − | + |  integer i;  | |
| − | + |  CommandList = osSetPenSize( CommandList, 1 ); // Set the pen width to 1 pixel  | |
| − | + |  for (i = 0; i < 140; ++i) // draw each named color as a single horizontal line  | |
| − | + |  {  | |
| − | + |  // Set the pen to the next color name in our list  | |
| − | + |  CommandList = osSetPenColor( CommandList, llList2String( colorNames, i ));  | |
| − | + |  // Now draw a line in that color  | |
| − | + |  CommandList = osDrawLine( CommandList, 0, i, 255, i );  | |
| − | + |  }  | |
| − | + |  // Now let's fill up the remainder with lines of random colors, leaving a gap of 20 lines.  | |
| − | + |  for (i = 161; i < 256; ++i)  | |
| − | + |  {  | |
| − | + |  string thisColor = "ff"; // give it an opaque alpha  | |
| − | + |  integer j;  | |
| − | + |  for (j = 0; j < 6; ++j) // then choose six random hex digits for the color  | |
| − | + |  {  | |
| − | + |  integer k = (integer) llFrand( 16.0 );  | |
| − | + |  thisColor += llGetSubString( hexDigits, k, k );  | |
| − | + |  }  | |
| − | + |  CommandList = osSetPenColor( CommandList, thisColor );  | |
| − | + |  CommandList = osDrawLine( CommandList, 0, i, 255, i );  | |
| − | + |  }  | |
| − | + |  // Now generate the texture and apply it to the prim  | |
| − | + |  osSetDynamicTextureData( "", "vector", CommandList, "width:256,height:256", 0 );  | |
| − | + |  }  | |
}  | }  | ||
| − | </source>  | + | </source>    | 
| − | + | ||
| − | + | ||
[[Category:OSSL]]  | [[Category:OSSL]]  | ||
Revision as of 15:48, 10 December 2010
Technical Reference -> Terms -> Status Page -> OSSL Implemented Functions -> Dynamic textures -> osSetPenColourLSL: StringosSetPenColour( StringdrawList, string colour )  deprecated as of Dec.10.2010C#: StringosSetPenColour( StringdrawList, string colour ) deprecated as of Dec.10.2010 
LSL: String osSetPenColor( String drawList, string color ) 
C#: String osSetPenColor( String drawList, string color )  
Appends a PenColour drawing command to the string provided in drawList and returns the result. 
This sets the pen's drawing color to either the specified named .NET color or to a 32-bit color value (formatted as eight hexadecimal digits in the format aarrggbb, representing the eight-bit alpha, red, green and blue channels).
For full opacity, use an alpha value of ff (e.g. ffff0000 for red); for varying degrees of transparency, reduce the alpha value (e.g. 800000ff for half-transparent blue).
The color names and hexadecimal color representations are not case-sensitive.
Example:// Example of osSetPenColor string hexDigits = "0123456789abcdef"; list colorNames = [ "AliceBlue", "AntiqueWhite", "Aqua", "Aquamarine", "Azure", "Beige", "Bisque", "Black", "BlanchedAlmond", "Blue", "BlueViolet", "Brown", "BurlyWood", "CadetBlue", "Chartreuse", "Chocolate", "Coral", "CornflowerBlue", "Cornsilk", "Crimson", "Cyan", "DarkBlue", "DarkCyan", "DarkGoldenrod", "DarkGrey", "DarkGreen", "DarkKhaki", "DarkMagenta", "DarkOliveGreen", "DarkOrange", "DarkOrchid", "DarkRed", "DarkSalmon", "DarkSeaGreen", "DarkSlateBlue", "DarkSlateGrey", "DarkTurquoise", "DarkViolet", "DeepPink", "DeepSkyBlue", "DimGrey", "DodgerBlue", "FireBrick", "FloralWhite", "ForestGreen", "Fuchsia", "Gainsboro", "GhostWhite", "Gold", "Goldenrod", "Grey", "Green", "GreenYellow", "Honeydew", "HotPink", "IndianRed", "Indigo", "Ivory", "Khaki", "Lavender", "LavenderBlush", "LawnGreen", "LemonChiffon", "LightBlue", "LightCoral", "LightCyan", "LightGoldenrodYellow", "LightGreen", "LightGrey", "LightPink", "LightSalmon", "LightSeaGreen", "LightSkyBlue", "LightSlateGrey", "LightSteelBlue", "LightYellow", "Lime", "LimeGreen", "Linen", "Magenta", "Maroon", "MediumAquamarine", "MediumBlue", "MediumOrchid", "MediumPurple", "MediumSeaGreen", "MediumSlateBlue", "MediumSpringGreen", "MediumTurquoise", "MediumVioletRed", "MidnightBlue", "MintCream", "MistyRose", "Moccasin", "NavajoWhite", "Navy", "OldLace", "Olive", "OliveDrab", "Orange", "OrangeRed", "Orchid", "PaleGoldenrod", "PaleGreen", "PaleTurquoise", "PaleVioletRed", "PapayaWhip", "PeachPuff", "Peru", "Pink", "Plum", "PowderBlue", "Purple", "Red", "RosyBrown", "RoyalBlue", "SaddleBrown", "Salmon", "SandyBrown", "SeaGreen", "Seashell", "Sienna", "Silver", "SkyBlue", "SlateBlue", "SlateGrey", "Snow", "SpringGreen", "SteelBlue", "Tan", "Teal", "Thistle", "Tomato", "Turquoise", "Violet", "Wheat", "White", "WhiteSmoke", "Yellow", "YellowGreen" ]; default { state_entry() { string CommandList = ""; // Storage for our drawing commands integer i; CommandList = osSetPenSize( CommandList, 1 ); // Set the pen width to 1 pixel for (i = 0; i < 140; ++i) // draw each named color as a single horizontal line { // Set the pen to the next color name in our list CommandList = osSetPenColor( CommandList, llList2String( colorNames, i )); // Now draw a line in that color CommandList = osDrawLine( CommandList, 0, i, 255, i ); } // Now let's fill up the remainder with lines of random colors, leaving a gap of 20 lines. for (i = 161; i < 256; ++i) { string thisColor = "ff"; // give it an opaque alpha integer j; for (j = 0; j < 6; ++j) // then choose six random hex digits for the color { integer k = (integer) llFrand( 16.0 ); thisColor += llGetSubString( hexDigits, k, k ); } CommandList = osSetPenColor( CommandList, thisColor ); CommandList = osDrawLine( CommandList, 0, i, 255, i ); } // Now generate the texture and apply it to the prim osSetDynamicTextureData( "", "vector", CommandList, "width:256,height:256", 0 ); } }