OsSetPenColour
From OpenSimulator
Line 1: | Line 1: | ||
{{Template:Quicklinks}} [[Technical Reference|Technical Reference]] -> [[Technical Reference/terms|Terms]] -> [[Status|Status Page]] -> [[OSSL Implemented|OSSL Implemented Functions]] -> [[Dynamic textures]] -> [[OsSetPenColour|osSetPenColour]] | {{Template:Quicklinks}} [[Technical Reference|Technical Reference]] -> [[Technical Reference/terms|Terms]] -> [[Status|Status Page]] -> [[OSSL Implemented|OSSL Implemented Functions]] -> [[Dynamic textures]] -> [[OsSetPenColour|osSetPenColour]] | ||
− | + | ---- | |
+ | '''***NOTE:***''' As of Dec.10 2010, this function has been renamed to [[osSetPenColor]]. | ||
+ | Versions of OpenSimulator released after this date will give the user a deprecation warning, but for the time being will function as before. | ||
+ | However, the deprecated function may eventually be removed entirely, and should therefore be avoided, and the new version be used instead. | ||
+ | ---- | ||
− | LSL: '''[[String]] | + | |
+ | LSL: '''[[String]] osSetPenColour( [[String]] drawList, string color )''' <br>C#: '''[[String]] osSetPenColour( [[String]] drawList, string color )''' | ||
<br>Appends a [[Drawing commands#PenColour|PenColor]] drawing command to the string provided in '''drawList''' and returns the result. | <br>Appends a [[Drawing commands#PenColour|PenColor]] drawing command to the string provided in '''drawList''' and returns the result. | ||
Line 14: | Line 19: | ||
Example: <source lang="lsl"> | Example: <source lang="lsl"> | ||
− | // Example of | + | // Example of osSetPenColour |
string hexDigits = "0123456789abcdef"; | string hexDigits = "0123456789abcdef"; | ||
Line 54: | Line 59: | ||
{ | { | ||
// Set the pen to the next color name in our list | // Set the pen to the next color name in our list | ||
− | CommandList = | + | CommandList = osSetPenColour( CommandList, llList2String( colorNames, i )); |
// Now draw a line in that color | // Now draw a line in that color | ||
CommandList = osDrawLine( CommandList, 0, i, 255, i ); | CommandList = osDrawLine( CommandList, 0, i, 255, i ); | ||
Line 69: | Line 74: | ||
thisColor += llGetSubString( hexDigits, k, k ); | thisColor += llGetSubString( hexDigits, k, k ); | ||
} | } | ||
− | CommandList = | + | CommandList = osSetPenColour( CommandList, thisColor ); |
CommandList = osDrawLine( CommandList, 0, i, 255, i ); | CommandList = osDrawLine( CommandList, 0, i, 255, i ); | ||
} | } |
Revision as of 17:18, 10 December 2010
Technical Reference -> Terms -> Status Page -> OSSL Implemented Functions -> Dynamic textures -> osSetPenColour***NOTE:*** As of Dec.10 2010, this function has been renamed to osSetPenColor. Versions of OpenSimulator released after this date will give the user a deprecation warning, but for the time being will function as before. However, the deprecated function may eventually be removed entirely, and should therefore be avoided, and the new version be used instead.
LSL: String osSetPenColour( String drawList, string color )
C#: String osSetPenColour( String drawList, string color )
Appends a PenColor 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 osSetPenColour 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 = osSetPenColour( 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 = osSetPenColour( 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 ); } }