r3prilay

r3prilay

Class

real/layer/r3prilay.h

Library

r3layer

Description:

Real 3D Prim Layer Class is a container for objects of type PRIMITIVE and supports operations on this type that the OBJECTLAYER class can not support.

See Also

real/layer/r3objlay.h

Super Class

r3Objectlayer

R3CLID_OBJECTLAYER

JavaScript

r3Primlayer

Class Identifier

R3CLID_PRIMLAYER - 73

Methods

OPENLEVEL, CUTPASTE, CUTPASTE2, DELETEROOT, PERFORMONROOT, EDITOBJECTS, EDITING, WIRELOCK, WIRERELEASE, EXECIDLES_moved_to_o, ADDIDLEMSG_moved_to_, DELETECONDITIONAL, EXPORT, MAKEINSTANCES, MAKEKEYFRAMES, RAWINSERT, CONCATENATE, MAKESELECTEDCURRENTL, COPYPASTE, TOGGLEEDITOBJECTS, MAKESELECTEDVIRTUALR, CALLSELECTEDINPAIRS, SNAPTONEARESTSELECTE, INSERTWITHFIXEDSPACE, REPLACE, INSERTTOSELECTED, DROPTOLEVEL, GETEDITSTRING, ANIMRECORD, GETSELECTEDNAMESTRIN, INSERTTO, RAWINSERTAFTER, COLLECTTOLEVEL, BEGININTERACTION, ENDINTERACTION, TRANSFORM, GETOBJECTNAMESTRING, SETONSELECTEDWIRES, SETRELATIVESUBFLOATO, SELECTCHILDREN, INVERTSELECTION, CHANGECHANNELBINDING, GETPARENTOFSELECTED, GETSELECTED, FREESELECTED, CONSIDERSELECT, SETCURRENTFROMSELECT, BEGINMATEVALEXT,

Attributes

Root, CurrentLevel, AnimRecord, CurrentRGB, Matrix, Volatile, SelectMethod, MaterialEvaluator, RootClid, VirtualRoot, Materials, UserChannels, World, CurrentTag, CurrentIndex,

Registration

int R3RegisterPrimLayerClass(R3APP *app);

R3PLAYM_OPENLEVEL

Method

OPENLEVEL

Identifier

R3PLAYM_OPENLEVEL

JavaScript

obj.OPENLEVEL();

Description

Toggle the OPEN flag of seleced objects

R3PLAYM_CUTPASTE

Method

CUTPASTE

Identifier

R3PLAYM_CUTPASTE

JavaScript

obj.CUTPASTE();

Description

Perform CUT and PASTE in one operation

R3PLAYM_CUTPASTE2

Method

CUTPASTE2

Identifier

R3PLAYM_CUTPASTE2

JavaScript

obj.CUTPASTE2();

Description

Perform CUT and PASTE2 in one operation

R3PLAYM_DELETEROOT

Method

DELETEROOT

Identifier

R3PLAYM_DELETEROOT

JavaScript

obj.DELETEROOT();

Description

Delete all objects

R3PLAYM_PERFORMONROOT

Method

PERFORMONROOT

Identifier

R3PLAYM_PERFORMONROOT

Param 1:

R3BOOL, if set, method doesn't generate MM_CHANGED.

JavaScript

obj.PERFORMONROOT(p1, 0);

Description

like doing R3OLAYM_PERFORMONSELECTED when root is selected.

R3PLAYM_EDITOBJECTS

Method

EDITOBJECTS

Identifier

R3PLAYM_EDITOBJECTS

JavaScript

obj.EDITOBJECTS();

Description

Set selected objects to edit state

R3PLAYM_EDITING

Method

EDITING

Identifier

R3PLAYM_EDITING

JavaScript

obj.EDITING();

Description

Return TRUE if layer is in edit state ie. any objects are beeing edited

R3PLAYM_WIRELOCK

Method

WIRELOCK

Identifier

R3PLAYM_WIRELOCK

JavaScript

obj.WIRELOCK();

Description

Lock layer for changing wire objects so they can be safely changed while drawing.

R3PLAYM_WIRERELEASE

Method

WIRERELEASE

Identifier

R3PLAYM_WIRERELEASE

JavaScript

obj.WIRERELEASE();

Description

Release layer for changing wire objects.

R3PLAYM_EXECIDLES_moved_to_o

Method

EXECIDLES_moved_to_o

Identifier

R3PLAYM_EXECIDLES_moved_to_o

JavaScript

obj.EXECIDLES_moved_to_o();

Description

Execute all idle messages

R3PLAYM_ADDIDLEMSG_moved_to_

Method

ADDIDLEMSG_moved_to_

Identifier

R3PLAYM_ADDIDLEMSG_moved_to_

Return

R3BOOL, true if succeeded

Param 1:

R3OBJ*, object to be called

Param 2:

R3INT, method

Param 3:

void*, p3 parameter for the object to be called.

JavaScript

rc = obj.ADDIDLEMSG_moved_to_(p1, p2, p3);

Description

Add idle message to the layers idle list

R3PLAYM_DELETECONDITIONAL

Method

DELETECONDITIONAL

Identifier

R3PLAYM_DELETECONDITIONAL

JavaScript

obj.DELETECONDITIONAL();

Description

If layer is in edit mode delete selected points in objects else behave like R3OLAYM_DELETESELECTION

R3PLAYM_EXPORT

Method

EXPORT

Identifier

R3PLAYM_EXPORT

JavaScript

obj.EXPORT();

Description

Send R3PRIMM_EXPORT to root object

R3PLAYM_MAKEINSTANCES

Method

MAKEINSTANCES

Identifier

R3PLAYM_MAKEINSTANCES

Param 1:

R3OBJ*, insert after this object, if NULL insert at the end, if same as the parent level, then insert as the first child.

Param 3:

R3TAG*, tag list containing R3PLAYA_AutoSelect, R3PLAYA_DuplicateInstances

JavaScript

obj.MAKEINSTANCES(p1, p3);

Description

Make INSTANCE objects of the selected objects

R3PLAYM_MAKEKEYFRAMES

Method

MAKEKEYFRAMES

Identifier

R3PLAYM_MAKEKEYFRAMES

JavaScript

obj.MAKEKEYFRAMES();

Description

Make KEYFRAME objects of the selected objects

R3PLAYM_RAWINSERT

Method

RAWINSERT

Identifier

R3PLAYM_RAWINSERT

Param 1:

R3BOOL, true to update select list

Param 2:

R3BOOL, if true, no space mapping is applied (object is inserted with given space)

Param 3:

R3OBJ*, object to be inserted

JavaScript

obj.RAWINSERT(p1, p2, p3);

Description

Insert new object to a layer. The contents of the selection list remains the same (R3PLAYA_SelectionMethod ignored)

R3PLAYM_CONCATENATE

Method

CONCATENATE

Identifier

R3PLAYM_CONCATENATE

Param 1:

R3INT, method to be sent to the first selected object

Param 2:

R3INT, if FALSE, selected objects are not deleted, otherwise only the first selected object is not deleted.

JavaScript

obj.CONCATENATE(p1, p2, 0);

Description

Pass list of the selected objects to the first selected object

R3PLAYM_MAKESELECTEDCURRENTL

Method

MAKESELECTEDCURRENTL

Identifier

R3PLAYM_MAKESELECTEDCURRENTL

JavaScript

obj.MAKESELECTEDCURRENTL();

Description

Make the first selected level the current level, if it is the current level move current level up to parent

R3PLAYM_COPYPASTE

Method

COPYPASTE

Identifier

R3PLAYM_COPYPASTE

JavaScript

obj.COPYPASTE();

Description

Do a copy and a paste so that the copys parent is the same as the origiinal

R3PLAYM_TOGGLEEDITOBJECTS

Method

TOGGLEEDITOBJECTS

Identifier

R3PLAYM_TOGGLEEDITOBJECTS

JavaScript

obj.TOGGLEEDITOBJECTS();

Description

Toggles selected objects edit state

R3PLAYM_MAKESELECTEDVIRTUALR

Method

MAKESELECTEDVIRTUALR

Identifier

R3PLAYM_MAKESELECTEDVIRTUALR

Return

R3BOOL, true if succeeded

JavaScript

rc = obj.MAKESELECTEDVIRTUALR();

Description

Make the first selected object the virtual root object.

R3PLAYM_CALLSELECTEDINPAIRS

Method

CALLSELECTEDINPAIRS

Identifier

R3PLAYM_CALLSELECTEDINPAIRS

Return

void*, return value from the calllback method. If null, select list enumeration is cancelled.

Param 1:

R3INT, method to be called

Param 3:

void*, p3 parameter for the method

JavaScript

rc = obj.CALLSELECTEDINPAIRS(p1, p3);

Description

Call each selected object for each other selected object. The selected object (o) is called as: R3SendMsgA2(o, p1, o[n], p3);

R3PLAYM_SNAPTONEARESTSELECTE

Method

SNAPTONEARESTSELECTE

Identifier

R3PLAYM_SNAPTONEARESTSELECTE

Return

R3OBJ*, address of the nearest object

Param 1:

R3VECTOR, position to be snapped (in abs space)

Param 2:

R3VECTOR, snapped position in abs space

Param 3:

R3VECTOR, parameter value corresponding the snapped position

JavaScript

rc = obj.SNAPTONEARESTSELECTE(p1, p2, p3);

Description

Snap the given 3D point to nearest object

R3PLAYM_INSERTWITHFIXEDSPACE

Method

INSERTWITHFIXEDSPACE

Identifier

R3PLAYM_INSERTWITHFIXEDSPACE

Return

R3OBJ*, address of the 'dummy parent' level.

Param 1:

R3OBJ*, original object

Param 3:

R3OBJ*, copy of the original object.

JavaScript

rc = obj.INSERTWITHFIXEDSPACE(p1, p3);

Description

Insert the given 'copy' object to layer without changing it object space. New 'dummy' parent level is added to accomplish this.

R3PLAYM_REPLACE

Method

REPLACE

Identifier

R3PLAYM_REPLACE

Param 1:

R3OBJ*, callback object

Param 2:

R3INT, callback method

Param 3:

void*, callback data

JavaScript

obj.REPLACE(p1, p2, p3);

Description

Replace the selected objects. The method scans through the selected objects. It first removes the selected object in question, calls the callback method which should return the new object. Finally the selected object in question is unreferenced. Note: the caller can ref the object to be replaced and this way keep it alive. The callback method is called as: R3SendMsgA(cbobj, cbmth, selectedobj, cbdata); Note2: the selected object in question is already removed from the layer when the callback method is called.

R3PLAYM_INSERTTOSELECTED

Method

INSERTTOSELECTED

Identifier

R3PLAYM_INSERTTOSELECTED

Return

R3BOOL, true if succeeded

Param 3:

R3OBJ*, object to be inserted.

JavaScript

rc = obj.INSERTTOSELECTED(p3);

Description

Insert the given object to the selected object. If the selected object is not true level object, one will be created so that insertion becomes possible. If there are more than one selected object, the object to be inserted will be duplicated and inserted for all of them.

R3PLAYM_DROPTOLEVEL

Method

DROPTOLEVEL

Identifier

R3PLAYM_DROPTOLEVEL

Return

R3OBJ*, address of the level in which the new object is inserted

Param 1:

R3OBJ*, target level

JavaScript

rc = obj.DROPTOLEVEL(p1, 0);

Description

Inserts the given object to the given level object. If the 'level' is not true level, one will be created and the original level is inserted with the new object into the newly created level.

R3PLAYM_GETEDITSTRING

Method

GETEDITSTRING

Identifier

R3PLAYM_GETEDITSTRING

Param 3:

char*, buffer for holding the result (min length 256)

JavaScript

obj.GETEDITSTRING(p3);

Description

Fetch symbolic string describing the status of the selected objects.

R3PLAYM_ANIMRECORD

Method

ANIMRECORD

Identifier

R3PLAYM_ANIMRECORD

Return

R3BOOL, previous status

Param 3:

R3BOOL, true to set recording, FALSE to clear.

JavaScript

rc = obj.ANIMRECORD(p3);

Description

Activate animation recording: all attributes modified when layer is in recording mode are automatically keyframed.

R3PLAYM_GETSELECTEDNAMESTRIN

Method

GETSELECTEDNAMESTRIN

Identifier

R3PLAYM_GETSELECTEDNAMESTRIN

Return

R3INT, number of selected objects.

Param 1:

R3INT, max size of the supplied buffer

Param 3:

char*, buffer

JavaScript

rc = obj.GETSELECTEDNAMESTRIN(p1, p3);

Description

Get hierarchical name of the selected object. If more than one object selected, common part of the name path is returned.

R3PLAYM_INSERTTO

Method

INSERTTO

Identifier

R3PLAYM_INSERTTO

Param 2:

R3BOOL, apply space mapping

Param 3:

R3OBJ*, object to be inserted

JavaScript

obj.INSERTTO(0, p2, p3);

Description

Insert object to given level

R3PLAYM_RAWINSERTAFTER

Method

RAWINSERTAFTER

Identifier

R3PLAYM_RAWINSERTAFTER

Param 1:

R3BOOL, true to update select list

Param 2:

R3BOOL, if true, no space mapping is applied (object is inserted with given space)

Param 3:

R3TAG*, tag list containing R3PLAYA_InsertThis and R3PLAYA_AfterThis.

JavaScript

obj.RAWINSERTAFTER(p1, p2, p3);

Description

Insert new object to a layer. Inserts after the given object. The contents of the selection list remains the same (R3PLAYA_SelectionMethod ignored)

R3PLAYM_COLLECTTOLEVEL

Method

COLLECTTOLEVEL

Identifier

R3PLAYM_COLLECTTOLEVEL

Return

R3OBJ*, newly created level

JavaScript

rc = obj.COLLECTTOLEVEL();

Description

Remove selected objects and insert them inside a new level. The parent for the newly created level is determined by the first selected object.

R3PLAYM_BEGININTERACTION

Method

BEGININTERACTION

Identifier

R3PLAYM_BEGININTERACTION

JavaScript

obj.BEGININTERACTION();

Description

Enter interactive section.

R3PLAYM_ENDINTERACTION

Method

ENDINTERACTION

Identifier

R3PLAYM_ENDINTERACTION

JavaScript

obj.ENDINTERACTION();

Description

Leave interaction mode

R3PLAYM_TRANSFORM

Method

TRANSFORM

Identifier

R3PLAYM_TRANSFORM

Param 3:

R3MATRIX, transformation matrix

JavaScript

obj.TRANSFORM(p3);

Description

Translate selected objects by given transformation matrix

R3PLAYM_GETOBJECTNAMESTRING

Method

GETOBJECTNAMESTRING

Identifier

R3PLAYM_GETOBJECTNAMESTRING

Param 1:

R3OBJ*, name of this object will be created

Param 2:

R3INT, max size of the supplied buffer

Param 3:

char*, buffer

JavaScript

obj.GETOBJECTNAMESTRING(p1, p2, p3);

Description

Get hierarchical name of an object.

R3PLAYM_SETONSELECTEDWIRES

Method

SETONSELECTEDWIRES

Identifier

R3PLAYM_SETONSELECTEDWIRES

Param 3:

R3TAG*, tags to pass to R3SetAttrsA().

JavaScript

obj.SETONSELECTEDWIRES(p3);

Description

Perform R3SetAttrsA(wire, tags) on the wire frame objects of the selected objects

R3PLAYM_SETRELATIVESUBFLOATO

Method

SETRELATIVESUBFLOATO

Identifier

R3PLAYM_SETRELATIVESUBFLOATO

Param 1:

R3INT, attribute to be set

Param 2:

R3INT, ordnum of the sub field (0 = x, 1 = y etc.)

Param 3:

R3FLOAT, new value

JavaScript

obj.SETRELATIVESUBFLOATO(p1, p2, p3);

Description

Set given sub component of a vector attribute in 'relative' way (the value is added to the current value, not assigned) to the wire frame objects of the selected objects.

R3PLAYM_SELECTCHILDREN

Method

SELECTCHILDREN

Identifier

R3PLAYM_SELECTCHILDREN

Param 1:

R3BOOL, if TRUE all sub objects are known to be unselected (gives quicker selection)

Param 3:

R3OBJ*, object whose sub object should be added to selection

JavaScript

obj.SELECTCHILDREN(p1, p3);

Description

Select all sub objects of an object

R3PLAYM_INVERTSELECTION

Method

INVERTSELECTION

Identifier

R3PLAYM_INVERTSELECTION

JavaScript

obj.INVERTSELECTION();

Description

Invert selection states

R3PLAYM_CHANGECHANNELBINDING

Method

CHANGECHANNELBINDING

Identifier

R3PLAYM_CHANGECHANNELBINDING

Param 1:

int, new attribute identifier

Param 3:

char*, name of the channel

JavaScript

obj.CHANGECHANNELBINDING(p1, p3);

Description

map dynamig channel binding to a new value

R3PLAYM_GETPARENTOFSELECTED

Method

GETPARENTOFSELECTED

Identifier

R3PLAYM_GETPARENTOFSELECTED

Param 3:

R3BOOL, if TRUE returns current level if there are no selected objects.

JavaScript

obj.GETPARENTOFSELECTED(p3);

Description

fetch the parent level of first selected object.

R3PLAYM_GETSELECTED

Method

GETSELECTED

Identifier

R3PLAYM_GETSELECTED

Return

R3OBJ*, null terminated array of target objects

Param 1:

R3INT*, number of target objects

Param 3:

R3OBJ**, memory for the tool object

JavaScript

rc = obj.GETSELECTED(p1, p3);

Description

An easy way to fetch selected objects. Supports the 'target / tool' object * philosophy: the first n-1 selected objects are returned as targets and * the last selected object is returned as the tool. Call R3PLAYM_FREESELECTED * to release the memory allocated by this method. This method locks * the select list in shared lock.

R3PLAYM_FREESELECTED

Method

FREESELECTED

Identifier

R3PLAYM_FREESELECTED

Param 1:

R3INT, number of target objects

Param 3:

R3OBJ**, target objects as returned by GETSELECTED method

JavaScript

obj.FREESELECTED(p1, p3);

Description

Free memory allocated by the GETSELECTED method.

R3PLAYM_CONSIDERSELECT

Method

CONSIDERSELECT

Identifier

R3PLAYM_CONSIDERSELECT

Param 1:

R3INT, number of target objects

Param 3:

R3OBJ**, target objects as returned by GETSELECTED method

JavaScript

obj.CONSIDERSELECT(p1, p3);

Description

Consider selecting the given object, depending * on the value of the R3PLAYA_SelectMethod attribute.

R3PLAYM_SETCURRENTFROMSELECT

Method

SETCURRENTFROMSELECT

Identifier

R3PLAYM_SETCURRENTFROMSELECT

JavaScript

obj.SETCURRENTFROMSELECT();

Description

Changes current level by object selection * Current level will be the selected object if it is a single opened level, * otherwise the parent of the first selected object

R3PLAYM_BEGINMATEVALEXT

Method

BEGINMATEVALEXT

Identifier

R3PLAYM_BEGINMATEVALEXT

JavaScript

obj.BEGINMATEVALEXT();

Description

Root

Attribute

Root

Identifier

R3PLAYA_Root

JavaScript type

Object

C type

R3OBJ*

Description

R3RM_GET, Root object

Syntax


value = jsobj.GetRoot();


R3OBJ* value;
R3GetAttrs(r3obj, R3PLAYA_Root, &value, R3TAG_END);

CurrentLevel

Attribute

CurrentLevel

Identifier

R3PLAYA_CurrentLevel

JavaScript type

Object

C type

R3OBJ*

Description

R3RM_GET/SET, Current level

Syntax


jsobj.SetCurrentLevel(value);
value = jsobj.GetCurrentLevel();


R3OBJ* value = ...;
R3SetAttrs(r3obj, R3PLAYA_CurrentLevel, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3PLAYA_CurrentLevel, &value, R3TAG_END);

AnimRecord

Attribute

AnimRecord

Identifier

R3PLAYA_AnimRecord

JavaScript type

Boolean

C type

R3BOOL

Description

true if recording active

Syntax


jsobj.SetAnimRecord(value);
value = jsobj.GetAnimRecord();


R3BOOL value = ...;
R3SetAttrs(r3obj, R3PLAYA_AnimRecord, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3PLAYA_AnimRecord, &value, R3TAG_END);

CurrentRGB

Attribute

CurrentRGB

Identifier

R3PLAYA_CurrentRGB

Type

r3Vect

Description

useful for some tools

Syntax


jsobj.SetCurrentRGB(value);
value = jsobj.GetCurrentRGB();


R3FLOATCOLOR3 value = ...;
R3SetAttrs(r3obj, R3PLAYA_CurrentRGB, value, R3TAG_END);
R3FLOATCOLOR3 value;
R3GetAttrs(r3obj, R3PLAYA_CurrentRGB, &value, R3TAG_END);

Matrix

Attribute

Matrix

Identifier

R3PLAYA_Matrix

Type

r3Matrix

Description

R3RM_SET/GET, the world matrix

Syntax


jsobj.SetMatrix(value);
value = jsobj.GetMatrix();


R3MATRIX* value = ...;
R3SetAttrs(r3obj, R3PLAYA_Matrix, value, R3TAG_END);
R3MATRIX* value;
R3GetAttrs(r3obj, R3PLAYA_Matrix, &value, R3TAG_END);

Volatile

Attribute

Volatile

Identifier

R3PLAYA_Volatile

JavaScript type

Integer

C type

R3INT

Description

, R3RM_SET/GET, set by interactive transformation so drawing can forget optimaizations like display lists

Syntax


jsobj.SetVolatile(value);
value = jsobj.GetVolatile();


R3INT value = ...;
R3SetAttrs(r3obj, R3PLAYA_Volatile, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3PLAYA_Volatile, &value, R3TAG_END);

SelectMethod

Attribute

SelectMethod

Identifier

R3PLAYA_SelectMethod

JavaScript type

Integer

C type

R3INT

Description

R3RM_SET/GET see select methods below

Syntax


jsobj.SetSelectMethod(value);
value = jsobj.GetSelectMethod();


R3INT value = ...;
R3SetAttrs(r3obj, R3PLAYA_SelectMethod, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3PLAYA_SelectMethod, &value, R3TAG_END);

MaterialEvaluator

Attribute

MaterialEvaluator

Identifier

R3PLAYA_MaterialEvaluator

JavaScript type

Object

C type

R3OBJ*

Description

R3RM_SET/GET material evaluator object

Syntax


jsobj.SetMaterialEvaluator(value);
value = jsobj.GetMaterialEvaluator();


R3OBJ* value = ...;
R3SetAttrs(r3obj, R3PLAYA_MaterialEvaluator, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3PLAYA_MaterialEvaluator, &value, R3TAG_END);

RootClid

Attribute

RootClid

Identifier

R3PLAYA_RootClid

JavaScript type

Integer

C type

R3CLID

Description

R3RM_CREATE, class id for the root object

Syntax


jsobj.SetRootClid(value);
value = jsobj.GetRootClid();


R3CLID value = ...;
R3SetAttrs(r3obj, R3PLAYA_RootClid, value, R3TAG_END);
R3CLID value;
R3GetAttrs(r3obj, R3PLAYA_RootClid, &value, R3TAG_END);

VirtualRoot

Attribute

VirtualRoot

Identifier

R3PLAYA_VirtualRoot

JavaScript type

Object

C type

R3OBJ*

Description

R3RM_GET/SET, Current 'virtual' root. Objects above this level are not shown

Syntax


jsobj.SetVirtualRoot(value);
value = jsobj.GetVirtualRoot();


R3OBJ* value = ...;
R3SetAttrs(r3obj, R3PLAYA_VirtualRoot, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3PLAYA_VirtualRoot, &value, R3TAG_END);

Materials

Attribute

Materials

Identifier

R3PLAYA_Materials

JavaScript type

Object

C type

R3OBJ*

Description

address of the material layer

Syntax


jsobj.SetMaterials(value);
value = jsobj.GetMaterials();


R3OBJ* value = ...;
R3SetAttrs(r3obj, R3PLAYA_Materials, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3PLAYA_Materials, &value, R3TAG_END);

UserChannels

Attribute

UserChannels

Identifier

R3PLAYA_UserChannels

JavaScript type

Object

C type

R3OBJ*

Description

address of the user channel layer

Syntax


jsobj.SetUserChannels(value);
value = jsobj.GetUserChannels();


R3OBJ* value = ...;
R3SetAttrs(r3obj, R3PLAYA_UserChannels, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3PLAYA_UserChannels, &value, R3TAG_END);

World

Attribute

World

Identifier

R3PLAYA_World

JavaScript type

Object

C type

R3OBJ*

Description

level object that defines 'world space', root of of all other geometric objects in RS

Syntax


value = jsobj.GetWorld();


R3OBJ* value;
R3GetAttrs(r3obj, R3PLAYA_World, &value, R3TAG_END);

CurrentTag

Attribute

CurrentTag

Identifier

R3PLAYA_CurrentTag

JavaScript type

Integer

C type

R3INT

Description

current selected attribute

Syntax


jsobj.SetCurrentTag(value);
value = jsobj.GetCurrentTag();


R3INT value = ...;
R3SetAttrs(r3obj, R3PLAYA_CurrentTag, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3PLAYA_CurrentTag, &value, R3TAG_END);

CurrentIndex

Attribute

CurrentIndex

Identifier

R3PLAYA_CurrentIndex

JavaScript type

Integer

C type

R3INT

Description

current selected attribute index

Syntax


jsobj.SetCurrentIndex(value);
value = jsobj.GetCurrentIndex();


R3INT value = ...;
R3SetAttrs(r3obj, R3PLAYA_CurrentIndex, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3PLAYA_CurrentIndex, &value, R3TAG_END);

R3SELMODE_NOSELECT
R3SELMODE_SELECTMUTEX
R3SELMODE_SELECTCUMULATIVE


r3appobj *

Tags

Tags

R3PLAYA_AutoSelect
R3PLAYA_Recursive
R3PLAYA_AfterThis
R3PLAYA_InsertThis
R3PLAYA_DuplicateInstances