Difference between revisions of "PRIM TYPE TUBE"

From Second Life Wiki
Jump to: navigation, search
m
m
Line 21: Line 21:
 
|toc=PRIM_TYPE
 
|toc=PRIM_TYPE
 
}}
 
}}
|pb={{LSL Constant/List|i_front=[ 1, [[PRIM_TYPE_TUBE]], |i_end= ]
+
|pb={{LSL Constant/List|i_front=[ {{HoverText|1|PRIM_TYPE_LEGACY}}, [[PRIM_TYPE_TUBE]], |i_end= ]
 
|text=This is the old PRIM_TYPE format for the tube (PRIM_TYPE used to be 1 instead of 9). Use the new format unless you are maintaining old code.
 
|text=This is the old PRIM_TYPE format for the tube (PRIM_TYPE used to be 1 instead of 9). Use the new format unless you are maintaining old code.
  
It should be noted that '''topshear_x''' was intended to be '''hole_size_y''' and wasn't caught by QA; in the documentation it was listed by an equivalent term to '''hole_size_y'''. The bug became [http://en.wikipedia.org/wiki/Lava_flow_(programming) lava-flowed] and was never fixed in old incarnation of PRIM_TYPE.
+
It should be noted that '''topshear_x''' was intended to be '''hole_size_y''' and wasn't caught by QA; in the documentation it was listed by an equivalent term to '''hole_size_y'''. The bug became [http://en.wikipedia.org/wiki/Lava_flow_(programming) lava-flowed] and was never fixed in the old incarnation of PRIM_TYPE.
 
|i1_type=vector|i1_name=cut
 
|i1_type=vector|i1_name=cut
 
|i2_type=float|i2_name=hollow
 
|i2_type=float|i2_name=hollow

Revision as of 01:52, 17 June 2009

Description

Constant: integer PRIM_TYPE_TUBE = 5;

The integer constant PRIM_TYPE_TUBE has the value 5

PRIM_TYPE_TUBE is a parameter of PRIM_TYPE used to make prim into a tube and to change specific properties that define the shape of that tube.

PRIM_TYPE

[ PRIM_TYPE, PRIM_TYPE_TUBE, integer hole_shape, vector cut, float hollow, vector twist, vector hole_size, vector top_shear, vector advanced_cut, vector taper, float revolutions, float radius_offset, float skew ]
• integer hole_shape PRIM_HOLE_* flag
• vector cut x and y range from 0.0 to 1.0, x must be at least 0.05 smaller than y (z is ignored)
• float hollow ranges from 0.0 (solid) to 0.95 (maximum hollowed)
• vector twist ranges from -1.0 (-360 degree in the edit window) to 1.0 (+360 degree in the edit window) for both x and y (z is ignored)
• vector hole_size x ranges from 0.05 to 1.0; y ranges from 0.05 (large hole) to 0.50 (no hole)
• vector top_shear ranges from -0.5 to 0.5 for both x and y (z is ignored)
• vector advanced_cut x and y range from 0.0 to 1.0, x must be at least 0.05 smaller than y (z is ignored)
• vector taper ranges from -1.0 to 1.0 for both x and y (z is ignored)
• float revolutions ranges from 1.0 to 4.00
• float radius_offset depends on holesize.y and revolutions
• float skew ranges from -1.0 to 1.0
hole_shape Flags Shape hole_shape Flags Shape
PRIM_HOLE_DEFAULT 0x00 Default PRIM_HOLE_SQUARE 0x20 Square
PRIM_HOLE_CIRCLE 0x10 Circle PRIM_HOLE_TRIANGLE 0x30 Triangle

PRIM_TYPE_LEGACY

[ 1, PRIM_TYPE_TUBE, vector cut, float hollow, float twist_end, float topshear_x ]
• vector cut x and y range from 0.0 to 1.0, x must be at least 0.05 smaller than y (z is ignored)
• float hollow ranges from 0.0 (solid) to 0.95 (maximum hollowed)
• float twist_end ranges from -0.5 (-180 degree in the edit window) to 0.5 (+180 degree in the edit window)
• float topshear_x ranges from 0.05 to 0.50

This is the old PRIM_TYPE format for the tube (PRIM_TYPE used to be 1 instead of 9). Use the new format unless you are maintaining old code.

It should be noted that topshear_x was intended to be hole_size_y and wasn't caught by QA; in the documentation it was listed by an equivalent term to hole_size_y. The bug became lava-flowed and was never fixed in the old incarnation of PRIM_TYPE.

Related Articles

Constants

•  PRIM_TYPE
•  CHANGED_SHAPE

Functions

•  llSetPrimitiveParams
•  llSetLinkPrimitiveParams
•  llGetPrimitiveParams

Events

•  changed

Examples

<lsl>// makes a spiral float hollow = 0.0; // 0.0 to 0.95 vector twist = <0, 0.0, 0.0>; // -1.0 to 1.0 vector holesize = <1.0, 0.05, 0.0>; // max X:1.0 Y:0.5 vector topshear = <0.0, 0.0, 0.0>; // -0.5 to 0.5 vector profilecut = <0.0, 0.0, 0.0>; // 0.0 to 1.0 vector taper_a = <0.0, 0.0, 0.0>; // 0.0 to 1.0 float revolutions = 3.0; // 1.0 to 4.0 float radiusoffset = 1.0; // -1.0 to 1.0 float skew = 0.0; // llSetPrimitiveParams( [PRIM_TYPE, PRIM_TYPE_TUBE, PRIM_HOLE_DEFAULT,

                       cut, hollow, twist, holesize, topshear,
                       profilecut, taper_a, revolutions, 
                       radiusoffset, skew] );</lsl>

Deep Notes

Search JIRA for related Issues

Signature

integer PRIM_TYPE_TUBE = 5;