Mass Lab
Jump to navigation
Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
<lsl>// A simple study of how mass is effected by prim shape/types. The X,Y,Z size is not changed but the mass does.
// Material type and/or physics seem to not effect mass.
default {
state_entry() { llSetScale(<1.0, 1.0, 1.0>); // 1 meter cubed llSetPrimitiveParams([PRIM_TYPE, PRIM_TYPE_BOX, PRIM_HOLE_DEFAULT, <0.0, 1.0, 0.0>, 0.0, <0.0, 0.0, 0.0>, <1.0, 1.0, 0.0>, <0.0, 0.0, 0.0>]); llOwnerSay("BOX: " + (string)llGetMass()); // Output: Object: 10.000000 llSetPrimitiveParams([PRIM_TYPE, PRIM_TYPE_CYLINDER, PRIM_HOLE_DEFAULT, <0.0, 1.0, 0.0>, 0.0, <0.0, 0.0, 0.0>, <1.0, 1.0, 0.0>, <0.0, 0.0, 0.0>]); llOwnerSay("CYLINDER: " + (string)llGetMass()); // Output: Object: 10.000000 llSetPrimitiveParams([PRIM_TYPE, PRIM_TYPE_PRISM, PRIM_HOLE_DEFAULT, <0.0, 1.0, 0.0>, 0.0, <0.0, 0.0, 0.0>, <1.0, 1.0, 0.0>, <0.0, 0.0, 0.0>]); llOwnerSay("PRISM: " + (string)llGetMass()); // Output: Object: 10.000000 llSetPrimitiveParams([PRIM_TYPE, PRIM_TYPE_SPHERE, PRIM_HOLE_DEFAULT, <0.0, 1.0, 0.0>, 0.0, <0.0, 0.0, 0.0>, <0.0, 1.0, 0.0>]); llOwnerSay("SPHERE: " + (string)llGetMass()); // Output: Object: 5.235988 llSetPrimitiveParams([PRIM_TYPE, PRIM_TYPE_TORUS, PRIM_HOLE_DEFAULT, <0.0, 1.0, 0.0>, 0.0, <0.0, 0.0, 0.0>, <1.0, 0.5, 0.0>, <0.0, 0.0, 0.0>, <0.0, 1.0, 0.0>, <0.0, 0.0, 0.0>, 1.0, 0.0, 0.0]); llOwnerSay("TORUS: " + (string)llGetMass()); // Output: Object: 5.235988 llSetPrimitiveParams([PRIM_TYPE, PRIM_TYPE_TUBE, PRIM_HOLE_DEFAULT, <0.0, 1.0, 0.0>, 0.0, <0.0, 0.0, 0.0>, <1.0, 0.5, 0.0>, <0.0, 0.0, 0.0>, <0.0, 1.0, 0.0>, <0.0, 0.0, 0.0>, 1.0, 0.0, 0.0]); llOwnerSay("TUBE: " + (string)llGetMass()); // Output: Object: 5.235988 llSetPrimitiveParams([PRIM_TYPE, PRIM_TYPE_RING, PRIM_HOLE_DEFAULT, <0.0, 1.0, 0.0>, 0.0, <0.0, 0.0, 0.0>, <1.0, 0.5, 0.0>, <0.0, 0.0, 0.0>, <0.0, 1.0, 0.0>, <0.0, 0.0, 0.0>, 1.0, 0.0, 0.0]); llOwnerSay("RING: " + (string)llGetMass()); // Output: Object: 5.235988 llSetPrimitiveParams([PRIM_TYPE, PRIM_TYPE_SCULPT, "bea82b0f-27c6-730b-fd7f-733f2340b449", PRIM_SCULPT_TYPE_SPHERE] ); llOwnerSay("SCULPTED APPLE: " + (string)llGetMass()); // Output: Object: 5.229262 llSetPrimitiveParams([PRIM_TYPE, PRIM_TYPE_SCULPT, "d1b6cc53-ac61-291f-9ce1-dc18170aa6a6", PRIM_SCULPT_TYPE_SPHERE] ); llOwnerSay("SCULPTED APPLE STEM: " + (string)llGetMass()); // Output: Object: 5.229262 llSetPrimitiveParams([PRIM_TYPE, PRIM_TYPE_SCULPT, "d962089b-2197-993c-9ec9-4993eb0a95f2", PRIM_SCULPT_TYPE_SPHERE] ); llOwnerSay("SCULPTED BANANA: " + (string)llGetMass()); // Output: Object: 5.229262 llSetPrimitiveParams([PRIM_TYPE, PRIM_TYPE_SCULPT, "fb39e9be-0609-2d1e-0988-803d1c04411e", PRIM_SCULPT_TYPE_SPHERE] ); llOwnerSay("SCULPTED PLATE: " + (string)llGetMass()); // Output: Object: 5.229262 llSetPrimitiveParams([PRIM_TYPE, PRIM_TYPE_SCULPT, "", PRIM_SCULPT_TYPE_PLANE] ); llOwnerSay("SCULPT (no map): " + (string)llGetMass()); // Output: Object: 5.229262 llSetPrimitiveParams([PRIM_TYPE, PRIM_TYPE_SCULPT, "", PRIM_SCULPT_TYPE_CYLINDER] ); llOwnerSay("SCULPT (no map): " + (string)llGetMass()); // Output: Object: 5.229262 llSetPrimitiveParams([PRIM_TYPE, PRIM_TYPE_SCULPT, "", PRIM_SCULPT_TYPE_TORUS] ); llOwnerSay("SCULPT (no map): " + (string)llGetMass()); // Output: Object: 5.229262 llSetPrimitiveParams([PRIM_TYPE, PRIM_TYPE_SCULPT, "", PRIM_SCULPT_TYPE_MASK] ); llOwnerSay("SCULPT (no map): " + (string)llGetMass()); // Output: Object: 5.229262 }
}</lsl>