Meter2Feet
From Second Life Wiki
| LSL Portal | | | Functions | | | Events | | | Types | | | Operators | | | Constants | | | Flow Control | | | Script Library | | | Tutorials |
Specification
string Meter2Feet( float meter ) { string sign = ""; if (meter < 0) { // Use only positive value to simplify the maths sign = "-"; meter = -meter; } // Compute feet multiplying by reciprocal value of // conversion constant 0.3048 for performance reasons float fraction = meter * 3.2808398950131233595800524934383; integer feet = (integer)fraction; fraction = (fraction - feet) * 12; // Compute inches integer inches = (integer)fraction; fraction = llRound((fraction - inches) * 16); // Compute 1/16 inches string strFraction = "\""; if (fraction != 0) // show fraction value only if not zero strFraction = " " + (string)((integer)fraction) + "/16" + strFraction; return (sign + (string)feet + "' " + (string)inches + strFraction); }
Example
Trivial example to listen to any chat from the object owner for meter values and respond feet/inch value.
// Insert code of Meter2Feet user function here default { state_entry() { llOwnerSay("Enter: [m]"); llListen(0, "", llGetOwner(), ""); } listen(integer _chan, string _str, key _id, string _msg) { float meter = (float)_msg; llOwnerSay(Meter2Feet(meter)); } }

