r3intact
real/intact/r3intact.h
r3ia
Interactor Class
r3Model
R3CLID_MODEL
r3Intact
R3CLID_INTACT - 126
MOVE, DOWN, UP, ENTER, SNAPENTER, ACCEPT, CANCEL, REFRESH, UNDO, REGISTERVIEW, UNREGISTERVIEW, REDRAW, CANCELMODIFY, REPLACESELF, TIMER, ROTATEVIEW, STATUSMSG, PROGRESSLEVEL, ACCEPTUSERINPUT, SUSPEND, RESUME, HITOBJECT, REINIT, ISINSIDE, UPDATESTATUS, RECORDMOVEEVENTS, TARGETTOILAYER, HITNUMESH, NEW, MAP2DTO3D, SNAPTONEARESTPOINT, SNAPTONEARESTCURVE, SNAPTONEARESTSELECTEDC, GETACTIONENABLEFLAGS, ALLOCORIGVALS, FREEORIGVALS, RESTOREORIGVALS, DOASYNC, DOASYNCNOREFCOUNT, UPDATE3DPAINTCAMERA, UPDATE3DPAINTFROMVCAM, WHEEL, CLEAR, ROTATE, SCALE, GETGRIDSPACING, MOVEUVW, KEYDOWN, KEYUP, GETDEFAULTDEPTH, CHAR,
StayAlive, Layer, InteractiveLayer, GridLayer, CurrentPosition, CoordSys, RefreshList, SelectCount, EditState, ProgressIndicator, VCam, MultiFlag, AltFlag, ShiftFlag, DoubleClickFlag, ReportWhenDone, ReportWhenDoneMth, NumViews, BasePoint, DoSnapDirection, DoSnapGrid, CtrlFlag, AutoSelected, UserInput, ViewModel, UserInputHandled, UseParamSpace, HitObject, LassoCount, DragBehaviour, MaterialLayer, Painter3D, CurrentDrawContext, CursorCode, RefreshEnabled, Grid, HandleDescription, DoLockDir, ViewModelProjection, DepthFlag, UniformFlag, CopyFlag, InstanceFlag, Identifier, 2DPainterLineWidth, 2DPainterFilled, 2DPainterColor, ReportWhenNewMth, UserChannelLayer, SubstractFlag, AndFlag, ViewModelConstraint, Space, MaterialOptimizeMethod, MaterialOptimizeObject, DontDragSelected, AsyncExecutor, RenderSettingLayer, ViewModelLayer, DragSelectedOnly, DontDragPivot, Active, WFEngine, Thumbnail, Filer, TextOnView, DefaultCoordSys,
int R3RegisterInteractorClass(R3APP *app);
R3IAM_MOVE
MOVE
R3IAM_MOVE
R3BOOL, TRUE
R3INT, pen id
R3VECTOR, new position
rc = obj.MOVE(p1, p3);
Current point moved.
R3IAM_DOWN
DOWN
R3IAM_DOWN
R3INT, defines definition method. See drag behaviour codes below
R3INT, pen id
R3VECTOR, position of the current point.
rc = obj.DOWN(p1, p3);
Start definition of a new point. This usually corresponds to input devices 'lef mouse button down' etc. event
R3IAM_UP
UP
R3IAM_UP
R3INT, pen id
obj.UP(p1, 0);
End definition of a new point.
R3IAM_ENTER
ENTER
R3IAM_ENTER
R3INT, pen id
R3VECTOR, new point
obj.ENTER(p1, p3);
Enter new point. This is typically sent by the 'IAM_UP' method.
R3IAM_SNAPENTER
SNAPENTER
R3IAM_SNAPENTER
R3INT, pen id
R3VECTOR, new point
obj.SNAPENTER(p1, p3);
Enter new point with 'snap'.
R3IAM_ACCEPT
ACCEPT
R3IAM_ACCEPT
R3INT, pen id
R3VECTOR, pos
obj.ACCEPT(p1, p3);
Accept the interactor.
R3IAM_CANCEL
CANCEL
R3IAM_CANCEL
obj.CANCEL();
Cancel the interactor
R3IAM_REFRESH
REFRESH
R3IAM_REFRESH
obj.REFRESH();
View context changed, do all view orientation specific operations.
R3IAM_UNDO
UNDO
R3IAM_UNDO
obj.UNDO();
Cancel the last defined input step.
R3IAM_REGISTERVIEW
REGISTERVIEW
R3IAM_REGISTERVIEW
R3OBJ*, view
obj.REGISTERVIEW(p3);
Register view.
R3IAM_UNREGISTERVIEW
UNREGISTERVIEW
R3IAM_UNREGISTERVIEW
R3OBJ*, view
obj.UNREGISTERVIEW(p3);
Unregister view.
R3IAM_REDRAW
REDRAW
R3IAM_REDRAW
R3TAG*, See R3IAA_Redraw.. tags
obj.REDRAW(p3);
Do not use in new code.
R3IAM_CANCELMODIFY
CANCELMODIFY
R3IAM_CANCELMODIFY
obj.CANCELMODIFY();
Only for subclasses
R3IAM_REPLACESELF
REPLACESELF
R3IAM_REPLACESELF
R3CLID, class id of the new interactor.
obj.REPLACESELF(p3);
Replace the interactor with a new interactor.
R3IAM_TIMER
TIMER
R3IAM_TIMER
obj.TIMER();
Timer event. Sent 10 times a second.
R3IAM_ROTATEVIEW
ROTATEVIEW
R3IAM_ROTATEVIEW
obj.ROTATEVIEW();
View rotated, interactor's should update all orientation specific operations.
R3IAM_STATUSMSG
STATUSMSG
R3IAM_STATUSMSG
char*, status message
obj.STATUSMSG(p3);
Show status message.
R3IAM_PROGRESSLEVEL
PROGRESSLEVEL
R3IAM_PROGRESSLEVEL
R3INT, progress level 0 ... 100.
obj.PROGRESSLEVEL(p3);
Show status message.
R3IAM_ACCEPTUSERINPUT
ACCEPTUSERINPUT
R3IAM_ACCEPTUSERINPUT
obj.ACCEPTUSERINPUT();
Exit the numeric input section.
R3IAM_SUSPEND
SUSPEND
R3IAM_SUSPEND
obj.SUSPEND();
Suspend the current interaction.
R3IAM_RESUME
RESUME
R3IAM_RESUME
obj.RESUME();
Resume the current interaction.
R3IAM_HITOBJECT
HITOBJECT
R3IAM_HITOBJECT
R3BOOL, true if hit was found
R3OBJ*, object to be hit, or NULL for the root object
R3VECTOR, point specifying the hit direction.
R3VECTOR, 3d point on the surface
rc = obj.HITOBJECT(p1, p2, p3);
See if the mouse hits any surface.
R3IAM_REINIT
REINIT
R3IAM_REINIT
obj.REINIT();
The interactor has been unused for a while. reinitialize anything depending on the object tree
R3IAM_ISINSIDE
ISINSIDE
R3IAM_ISINSIDE
R3BOOL, true if inside
rc = obj.ISINSIDE();
check if 2d point is inside dragbox/lasso.
R3IAM_UPDATESTATUS
UPDATESTATUS
R3IAM_UPDATESTATUS
obj.UPDATESTATUS();
Update status message. The base class maintains 'timer' and calls this method once in a while.
R3IAM_RECORDMOVEEVENTS
RECORDMOVEEVENTS
R3IAM_RECORDMOVEEVENTS
R3BOOL, return TRUE if the mouse movement events are important, false if not.
rc = obj.RECORDMOVEEVENTS();
Return TRUE if move events are critical to recreating the interactors result when recording macros.
R3IAM_TARGETTOILAYER
TARGETTOILAYER
R3IAM_TARGETTOILAYER
R3BOOL, false if no objects with given class id was found.
R3CLID, class id of the target object.
rc = obj.TARGETTOILAYER(p3);
Check if the class id of the current level corresponds to the given class id. If so, copy current working level from the actual layer into the interaction layer. If not, copy the first selected object with the specified class id. The 'total matrix' of the inserted level remains equal to the original object.
R3IAM_HITNUMESH
HITNUMESH
R3IAM_HITNUMESH
obj.HITNUMESH();
Hit nurbs mesh
R3IAM_NEW
NEW
R3IAM_NEW
R3OBJ*, new interactor
R3CLID, class id of the interactor to start
rc = obj.NEW(p3);
starts a new interactor without canceling the current one.
R3IAM_MAP2DTO3D
MAP2DTO3D
R3IAM_MAP2DTO3D
R3OBJ*, new interactor
rc = obj.MAP2DTO3D();
view sends this message to project mouse coordinates to input plane. * Interactors may apply a projection tath suits their needs.
R3IAM_SNAPTONEARESTPOINT
SNAPTONEARESTPOINT
R3IAM_SNAPTONEARESTPOINT
R3VECTOR, position
obj.SNAPTONEARESTPOINT(p3);
snap to nearest point.
R3IAM_SNAPTONEARESTCURVE
SNAPTONEARESTCURVE
R3IAM_SNAPTONEARESTCURVE
R3BOOL, true if snapped
R3VECTOR, uv coordinates corresponding the curve's snap point
R3VECTOR, position
rc = obj.SNAPTONEARESTCURVE(p1, p3);
snap to nearest curve
R3IAM_SNAPTONEARESTSELECTEDC
SNAPTONEARESTSELECTEDC
R3IAM_SNAPTONEARESTSELECTEDC
R3BOOL, true if snap was found.
R3VECTOR, returns uv coordinates of the snap position
R3VECTOR, point to be snapped.
rc = obj.SNAPTONEARESTSELECTEDC(p1, p3);
Snap given 3D point to nearest geometry point or the selected curves
R3IAM_GETACTIONENABLEFLAGS
GETACTIONENABLEFLAGS
R3IAM_GETACTIONENABLEFLAGS
R3INT
rc = obj.GETACTIONENABLEFLAGS();
Returns flags describing which action are allowed. See action enable flags below.
R3IAM_ALLOCORIGVALS
ALLOCORIGVALS
R3IAM_ALLOCORIGVALS
R3BOOL, true if succeeded.
R3INT, code specifying which attribute(s) are saved. See save codes below
R3INT, if pointwise attr, size of var attr to be saved.
R3INT, if pointwise attr, attribute id for set/get
rc = obj.ALLOCORIGVALS(p1, p2, p3);
Save the current state of the object.
R3IAM_FREEORIGVALS
FREEORIGVALS
R3IAM_FREEORIGVALS
obj.FREEORIGVALS();
Free buffers allocated by r3iatranm_allocorigvals.
R3IAM_RESTOREORIGVALS
RESTOREORIGVALS
R3IAM_RESTOREORIGVALS
R3BOOL, true if succeeded
R3BOOL, send R3MM_CHANGED to layer if true.
rc = obj.RESTOREORIGVALS(p3);
Restore the state of the selected objects.
R3IAM_DOASYNC
DOASYNC
R3IAM_DOASYNC
R3BOOL, true if method was succesfully inserted to the job list.
R3OBJ*, callback object
R3INT, callback method
R3TAG*, R3RA_P1, R3RA_P2, R3RA_P3 - callback parameters
rc = obj.DOASYNC(p1, p2, p3);
Use async. thread to call the given method.
R3IAM_DOASYNCNOREFCOUNT
DOASYNCNOREFCOUNT
R3IAM_DOASYNCNOREFCOUNT
R3BOOL, true if method was succesfully inserted to the job list.
R3OBJ*, callback object
R3INT, callback method
R3TAG*, R3RA_P1, R3RA_P2, R3RA_P3 - callback parameters
rc = obj.DOASYNCNOREFCOUNT(p1, p2, p3);
Use async. thread to call the given method. Callback * object is not managed using reference counting.
R3IAM_UPDATE3DPAINTCAMERA
UPDATE3DPAINTCAMERA
R3IAM_UPDATE3DPAINTCAMERA
obj.UPDATE3DPAINTCAMERA();
Updates the current view projection to the 3d paint system. * Call this for example at IAM_DOWN event if you use the 3d painter.
R3IACM_UPDATE3DPAINTFROMVCAM
UPDATE3DPAINTFROMVCAM
R3IACM_UPDATE3DPAINTFROMVCAM
R3OBJ*, 3d painter object (R3CLID_3DPAINTING)
R3OBJ*, vcam object (R3CLID_VCAM)
obj.UPDATE3DPAINTFROMVCAM(p1, p3);
The same as above but now the update happens directly using 3d painter and vcam objects. * No interactor object is needed.
R3IAM_WHEEL
WHEEL
R3IAM_WHEEL
R3INT, pen id
R3INT, amount of change (positive or negative)
obj.WHEEL(p1, p3);
Event corresponding to various scroll wheel input devices, such as * the mouse wheel.
R3IAM_CLEAR
CLEAR
R3IAM_CLEAR
obj.CLEAR();
Clears given objects from the view window
R3IAM_ROTATE
ROTATE
R3IAM_ROTATE
R3INT, pen id
R3VECTOR, orientation
obj.ROTATE(p1, p3);
Current pen orientation (from a 6dof device for example)
R3IAM_SCALE
SCALE
R3IAM_SCALE
R3INT, pen id
R3VECTOR, size
obj.SCALE(p1, p3);
Current pen size (from a 6dof device for example)
R3IAM_GETGRIDSPACING
GETGRIDSPACING
R3IAM_GETGRIDSPACING
R3BOOL, false if no grid object was found
R3VECTOR, grid spacing
rc = obj.GETGRIDSPACING(p3);
Fetch the current grid spacing.
R3IAM_MOVEUVW
MOVEUVW
R3IAM_MOVEUVW
R3VECTOR, normalized input device coordinates 0.0 ... 1.0
obj.MOVEUVW(p3);
Same as R3IAM_MOVE, but the coordinates are given * in the input devices param space. For example, 0,0 corresponds * to tables origin and 1,1 corresponds to the opposite corner.
R3IAM_KEYDOWN
KEYDOWN
R3IAM_KEYDOWN
R3BOOL, true if interactor handled the key.
R3INT, key code
rc = obj.KEYDOWN(p3);
Key pressed.
R3IAM_KEYUP
KEYUP
R3IAM_KEYUP
R3BOOL, true if interactor handled the key.
R3INT, key code
rc = obj.KEYUP(p3);
Key released
R3IAM_GETDEFAULTDEPTH
GETDEFAULTDEPTH
R3IAM_GETDEFAULTDEPTH
R3BOOL, false if no grid object was found (result value will not be set)
R3FLOAT, address of depth variable
rc = obj.GETDEFAULTDEPTH(p3);
compute default depth from current grid spacing.
R3IAM_CHAR
CHAR
R3IAM_CHAR
R3BOOL, true if interactor handled the key.
char*, key string
rc = obj.CHAR(p3);
Key pressed
StayAlive
StayAlive
R3IAA_StayAlive
Boolean
R3BOOL
stay alive
jsobj.SetStayAlive(value);
value = jsobj.GetStayAlive();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3IAA_StayAlive, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3IAA_StayAlive, &value, R3TAG_END);
Layer
Layer
R3IAA_Layer
Object
R3OBJ*
layer object
jsobj.SetLayer(value);
value = jsobj.GetLayer();
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3IAA_Layer, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3IAA_Layer, &value, R3TAG_END);
InteractiveLayer
InteractiveLayer
R3IAA_InteractiveLayer
Object
R3OBJ*
inteaction layer, copy objects here for editing purposes
jsobj.SetInteractiveLayer(value);
value = jsobj.GetInteractiveLayer();
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3IAA_InteractiveLayer, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3IAA_InteractiveLayer, &value, R3TAG_END);
GridLayer
GridLayer
R3IAA_GridLayer
Object
R3OBJ*
grids
jsobj.SetGridLayer(value);
value = jsobj.GetGridLayer();
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3IAA_GridLayer, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3IAA_GridLayer, &value, R3TAG_END);
CurrentPosition
CurrentPosition
R3IAA_CurrentPosition
current position
value = jsobj.GetCurrentPosition();
R3VECTOR value;
R3GetAttrs(r3obj, R3IAA_CurrentPosition, &value, R3TAG_END);
CoordSys
CoordSys
R3IAA_CoordSys
current input plane
jsobj.SetCoordSys(value);
value = jsobj.GetCoordSys();
R3COORDSYS value = ...;
R3SetAttrs(r3obj, R3IAA_CoordSys, &value, R3TAG_END);
R3COORDSYS value;
R3GetAttrs(r3obj, R3IAA_CoordSys, &value, R3TAG_END);
RefreshList
RefreshList
R3IAA_RefreshList
r3List
R3LIST*
'R3IAA_RefreshList' not documented
value = jsobj.GetRefreshList();
R3LIST* value;
R3GetAttrs(r3obj, R3IAA_RefreshList, &value, R3TAG_END);
SelectCount
SelectCount
R3IAA_SelectCount
Integer
R3INT
number of selected objects
value = jsobj.GetSelectCount();
R3INT value;
R3GetAttrs(r3obj, R3IAA_SelectCount, &value, R3TAG_END);
EditState
EditState
R3IAA_EditState
Boolean
R3BOOL
true if selected objects are all in 'edit' state
value = jsobj.GetEditState();
R3BOOL value;
R3GetAttrs(r3obj, R3IAA_EditState, &value, R3TAG_END);
ProgressIndicator
ProgressIndicator
R3IAA_ProgressIndicator
Object
R3OBJ*
progress indicator
jsobj.SetProgressIndicator(value);
value = jsobj.GetProgressIndicator();
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3IAA_ProgressIndicator, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3IAA_ProgressIndicator, &value, R3TAG_END);
VCam
VCam
R3IAA_VCam
Object
R3OBJ*
vcam object
jsobj.SetVCam(value);
value = jsobj.GetVCam();
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3IAA_VCam, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3IAA_VCam, &value, R3TAG_END);
MultiFlag
MultiFlag
R3IAA_MultiFlag
Boolean
R3BOOL
multi selection modifier pressed
jsobj.SetMultiFlag(value);
value = jsobj.GetMultiFlag();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3IAA_MultiFlag, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3IAA_MultiFlag, &value, R3TAG_END);
AltFlag
AltFlag
R3IAA_AltFlag
Boolean
R3BOOL
alt modifier down
jsobj.SetAltFlag(value);
value = jsobj.GetAltFlag();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3IAA_AltFlag, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3IAA_AltFlag, &value, R3TAG_END);
ShiftFlag
ShiftFlag
R3IAA_ShiftFlag
Boolean
R3BOOL
shift modifier down
jsobj.SetShiftFlag(value);
value = jsobj.GetShiftFlag();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3IAA_ShiftFlag, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3IAA_ShiftFlag, &value, R3TAG_END);
DoubleClickFlag
DoubleClickFlag
R3IAA_DoubleClickFlag
Boolean
R3BOOL
double click in effect
jsobj.SetDoubleClickFlag(value);
value = jsobj.GetDoubleClickFlag();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3IAA_DoubleClickFlag, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3IAA_DoubleClickFlag, &value, R3TAG_END);
ReportWhenDone
ReportWhenDone
R3IAA_ReportWhenDone
Object
R3OBJ*
R3OBJ, report to this object when the interactor is terminating
jsobj.SetReportWhenDone(value);
value = jsobj.GetReportWhenDone();
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3IAA_ReportWhenDone, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3IAA_ReportWhenDone, &value, R3TAG_END);
ReportWhenDoneMth
ReportWhenDoneMth
R3IAA_ReportWhenDoneMth
Integer
R3INT
callback method for the report when done object
jsobj.SetReportWhenDoneMth(value);
value = jsobj.GetReportWhenDoneMth();
R3INT value = ...;
R3SetAttrs(r3obj, R3IAA_ReportWhenDoneMth, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3IAA_ReportWhenDoneMth, &value, R3TAG_END);
NumViews
NumViews
R3IAA_NumViews
Integer
R3INT
read only, number of view windows
value = jsobj.GetNumViews();
R3INT value;
R3GetAttrs(r3obj, R3IAA_NumViews, &value, R3TAG_END);
BasePoint
BasePoint
R3IAA_BasePoint
base point
value = jsobj.GetBasePoint();
R3VECTOR value;
R3GetAttrs(r3obj, R3IAA_BasePoint, &value, R3TAG_END);
DoSnapDirection
DoSnapDirection
R3IAA_DoSnapDirection
Boolean
R3BOOL
true/false
jsobj.SetDoSnapDirection(value);
value = jsobj.GetDoSnapDirection();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3IAA_DoSnapDirection, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3IAA_DoSnapDirection, &value, R3TAG_END);
DoSnapGrid
DoSnapGrid
R3IAA_DoSnapGrid
Boolean
R3BOOL
snap to grid
jsobj.SetDoSnapGrid(value);
value = jsobj.GetDoSnapGrid();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3IAA_DoSnapGrid, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3IAA_DoSnapGrid, &value, R3TAG_END);
CtrlFlag
CtrlFlag
R3IAA_CtrlFlag
Boolean
R3BOOL
control modifier down
jsobj.SetCtrlFlag(value);
value = jsobj.GetCtrlFlag();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3IAA_CtrlFlag, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3IAA_CtrlFlag, &value, R3TAG_END);
AutoSelected
AutoSelected
R3IAA_AutoSelected
Boolean
R3BOOL
Interactor was selected automatically (by clicking handle). Don't need to change GUI
jsobj.SetAutoSelected(value);
value = jsobj.GetAutoSelected();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3IAA_AutoSelected, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3IAA_AutoSelected, &value, R3TAG_END);
UserInput
UserInput
R3IAA_UserInput
Boolean
R3BOOL
in numeric input mode
jsobj.SetUserInput(value);
value = jsobj.GetUserInput();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3IAA_UserInput, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3IAA_UserInput, &value, R3TAG_END);
ViewModel
ViewModel
R3IAA_ViewModel
Object
R3OBJ*
view model
jsobj.SetViewModel(value);
value = jsobj.GetViewModel();
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3IAA_ViewModel, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3IAA_ViewModel, &value, R3TAG_END);
UserInputHandled
UserInputHandled
R3IAA_UserInputHandled
Boolean
R3BOOL
Both status gadget and tool can handle user input, tool sets this to reserve input handling
jsobj.SetUserInputHandled(value);
value = jsobj.GetUserInputHandled();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3IAA_UserInputHandled, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3IAA_UserInputHandled, &value, R3TAG_END);
UseParamSpace
UseParamSpace
R3IAA_UseParamSpace
Boolean
R3BOOL
set TRUE for param space (such as trim view), FALSE for 3d abs space
jsobj.SetUseParamSpace(value);
value = jsobj.GetUseParamSpace();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3IAA_UseParamSpace, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3IAA_UseParamSpace, &value, R3TAG_END);
HitObject
HitObject
R3IAA_HitObject
Integer
int
if TRUE every point is mapped to an objects surface
jsobj.SetHitObject(value);
value = jsobj.GetHitObject();
int value = ...;
R3SetAttrs(r3obj, R3IAA_HitObject, value, R3TAG_END);
int value;
R3GetAttrs(r3obj, R3IAA_HitObject, &value, R3TAG_END);
LassoCount
LassoCount
R3IAA_LassoCount
Integer
R3INT
num lass points
jsobj.SetLassoCount(value);
value = jsobj.GetLassoCount();
R3INT value = ...;
R3SetAttrs(r3obj, R3IAA_LassoCount, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3IAA_LassoCount, &value, R3TAG_END);
DragBehaviour
DragBehaviour
R3IAA_DragBehaviour
Integer
R3INT
see drag behavior codes below
jsobj.SetDragBehaviour(value);
value = jsobj.GetDragBehaviour();
R3INT value = ...;
R3SetAttrs(r3obj, R3IAA_DragBehaviour, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3IAA_DragBehaviour, &value, R3TAG_END);
MaterialLayer
MaterialLayer
R3IAA_MaterialLayer
Object
R3OBJ*
materials
jsobj.SetMaterialLayer(value);
value = jsobj.GetMaterialLayer();
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3IAA_MaterialLayer, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3IAA_MaterialLayer, &value, R3TAG_END);
Painter3D
Painter3D
R3IAA_Painter3D
Object
R3OBJ*
3d painter
jsobj.SetPainter3D(value);
value = jsobj.GetPainter3D();
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3IAA_Painter3D, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3IAA_Painter3D, &value, R3TAG_END);
CurrentDrawContext
CurrentDrawContext
R3IAA_CurrentDrawContext
Object
R3OBJ*
draw context of the current view
jsobj.SetCurrentDrawContext(value);
value = jsobj.GetCurrentDrawContext();
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3IAA_CurrentDrawContext, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3IAA_CurrentDrawContext, &value, R3TAG_END);
CursorCode
CursorCode
R3IAA_CursorCode
Integer
R3INT
see cursor codes below
jsobj.SetCursorCode(value);
value = jsobj.GetCursorCode();
R3INT value = ...;
R3SetAttrs(r3obj, R3IAA_CursorCode, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3IAA_CursorCode, &value, R3TAG_END);
RefreshEnabled
RefreshEnabled
R3IAA_RefreshEnabled
Integer
int
'R3IAA_RefreshEnabled' not documented
jsobj.SetRefreshEnabled(value);
value = jsobj.GetRefreshEnabled();
int value = ...;
R3SetAttrs(r3obj, R3IAA_RefreshEnabled, value, R3TAG_END);
int value;
R3GetAttrs(r3obj, R3IAA_RefreshEnabled, &value, R3TAG_END);
Grid
Grid
R3IAA_Grid
Object
R3OBJ*
current grid object
jsobj.SetGrid(value);
value = jsobj.GetGrid();
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3IAA_Grid, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3IAA_Grid, &value, R3TAG_END);
HandleDescription
HandleDescription
R3IAA_HandleDescription
String
char*
handle description
value = jsobj.GetHandleDescription();
char* value;
R3GetAttrs(r3obj, R3IAA_HandleDescription, &value, R3TAG_END);
DoLockDir
DoLockDir
R3IAA_DoLockDir
Boolean
R3BOOL
Accept iplane direction locks
jsobj.SetDoLockDir(value);
value = jsobj.GetDoLockDir();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3IAA_DoLockDir, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3IAA_DoLockDir, &value, R3TAG_END);
ViewModelProjection
ViewModelProjection
R3IAA_ViewModelProjection
Integer
R3INT
current viewmodel projection type, see code/r3vcam.h
jsobj.SetViewModelProjection(value);
value = jsobj.GetViewModelProjection();
R3INT value = ...;
R3SetAttrs(r3obj, R3IAA_ViewModelProjection, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3IAA_ViewModelProjection, &value, R3TAG_END);
DepthFlag
DepthFlag
R3IAA_DepthFlag
Boolean
R3BOOL
input depth modifier
jsobj.SetDepthFlag(value);
value = jsobj.GetDepthFlag();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3IAA_DepthFlag, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3IAA_DepthFlag, &value, R3TAG_END);
UniformFlag
UniformFlag
R3IAA_UniformFlag
Boolean
R3BOOL
uniform modifier for symmetric input, creation etc.
jsobj.SetUniformFlag(value);
value = jsobj.GetUniformFlag();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3IAA_UniformFlag, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3IAA_UniformFlag, &value, R3TAG_END);
CopyFlag
CopyFlag
R3IAA_CopyFlag
Boolean
R3BOOL
modifier for copy at modify
jsobj.SetCopyFlag(value);
value = jsobj.GetCopyFlag();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3IAA_CopyFlag, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3IAA_CopyFlag, &value, R3TAG_END);
InstanceFlag
InstanceFlag
R3IAA_InstanceFlag
Boolean
R3BOOL
modifier for instancing at modify
jsobj.SetInstanceFlag(value);
value = jsobj.GetInstanceFlag();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3IAA_InstanceFlag, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3IAA_InstanceFlag, &value, R3TAG_END);
Identifier
Identifier
R3IAA_Identifier
Integer
R3INT
for interactor - tool binding
jsobj.SetIdentifier(value);
value = jsobj.GetIdentifier();
R3INT value = ...;
R3SetAttrs(r3obj, R3IAA_Identifier, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3IAA_Identifier, &value, R3TAG_END);
2DPainterLineWidth
2DPainterLineWidth
R3IAA_2DPainterLineWidth
Integer
R3INT
jsobj.Set2DPainterLineWidth(value);
value = jsobj.Get2DPainterLineWidth();
R3INT value = ...;
R3SetAttrs(r3obj, R3IAA_2DPainterLineWidth, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3IAA_2DPainterLineWidth, &value, R3TAG_END);
2DPainterFilled
2DPainterFilled
R3IAA_2DPainterFilled
Boolean
R3BOOL
jsobj.Set2DPainterFilled(value);
value = jsobj.Get2DPainterFilled();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3IAA_2DPainterFilled, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3IAA_2DPainterFilled, &value, R3TAG_END);
2DPainterColor
2DPainterColor
R3IAA_2DPainterColor
jsobj.Set2DPainterColor(value);
value = jsobj.Get2DPainterColor();
R3FLOATCOLOR value = ...;
R3SetAttrs(r3obj, R3IAA_2DPainterColor, value, R3TAG_END);
R3FLOATCOLOR value;
R3GetAttrs(r3obj, R3IAA_2DPainterColor, &value, R3TAG_END);
ReportWhenNewMth
ReportWhenNewMth
R3IAA_ReportWhenNewMth
Integer
int
'R3IAA_ReportWhenNewMth' not documented
jsobj.SetReportWhenNewMth(value);
value = jsobj.GetReportWhenNewMth();
int value = ...;
R3SetAttrs(r3obj, R3IAA_ReportWhenNewMth, value, R3TAG_END);
int value;
R3GetAttrs(r3obj, R3IAA_ReportWhenNewMth, &value, R3TAG_END);
UserChannelLayer
UserChannelLayer
R3IAA_UserChannelLayer
Object
R3OBJ*
'R3IAA_UserChannelLayer' not documented
jsobj.SetUserChannelLayer(value);
value = jsobj.GetUserChannelLayer();
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3IAA_UserChannelLayer, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3IAA_UserChannelLayer, &value, R3TAG_END);
SubstractFlag
SubstractFlag
R3IAA_SubstractFlag
Boolean
R3BOOL
subtract modifier
jsobj.SetSubstractFlag(value);
value = jsobj.GetSubstractFlag();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3IAA_SubstractFlag, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3IAA_SubstractFlag, &value, R3TAG_END);
AndFlag
AndFlag
R3IAA_AndFlag
Boolean
R3BOOL
and modifier
jsobj.SetAndFlag(value);
value = jsobj.GetAndFlag();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3IAA_AndFlag, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3IAA_AndFlag, &value, R3TAG_END);
ViewModelConstraint
ViewModelConstraint
R3IAA_ViewModelConstraint
current viewmodel projection axis
jsobj.SetViewModelConstraint(value);
value = jsobj.GetViewModelConstraint();
R3VECTOR value = ...;
R3SetAttrs(r3obj, R3IAA_ViewModelConstraint, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3IAA_ViewModelConstraint, &value, R3TAG_END);
Space
Space
R3IAA_Space
Integer
R3INT
space for the inteactor
jsobj.SetSpace(value);
value = jsobj.GetSpace();
R3INT value = ...;
R3SetAttrs(r3obj, R3IAA_Space, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3IAA_Space, &value, R3TAG_END);
MaterialOptimizeMethod
MaterialOptimizeMethod
R3IAA_MaterialOptimizeMethod
Integer
int
Callback for preparing material library for rendering.
jsobj.SetMaterialOptimizeMethod(value);
value = jsobj.GetMaterialOptimizeMethod();
int value = ...;
R3SetAttrs(r3obj, R3IAA_MaterialOptimizeMethod, value, R3TAG_END);
int value;
R3GetAttrs(r3obj, R3IAA_MaterialOptimizeMethod, &value, R3TAG_END);
MaterialOptimizeObject
MaterialOptimizeObject
R3IAA_MaterialOptimizeObject
Object
R3OBJ*
R3DoA(MaterialOptimizeObject, MaterialOptimizeMethod, NULL) before rendering
jsobj.SetMaterialOptimizeObject(value);
value = jsobj.GetMaterialOptimizeObject();
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3IAA_MaterialOptimizeObject, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3IAA_MaterialOptimizeObject, &value, R3TAG_END);
DontDragSelected
DontDragSelected
R3IAA_DontDragSelected
Boolean
R3BOOL
disable dragging/snapping for selected objects
jsobj.SetDontDragSelected(value);
value = jsobj.GetDontDragSelected();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3IAA_DontDragSelected, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3IAA_DontDragSelected, &value, R3TAG_END);
AsyncExecutor
AsyncExecutor
R3IAA_AsyncExecutor
Object
R3OBJ*
async. executor object (oops/r3async.h)
jsobj.SetAsyncExecutor(value);
value = jsobj.GetAsyncExecutor();
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3IAA_AsyncExecutor, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3IAA_AsyncExecutor, &value, R3TAG_END);
RenderSettingLayer
RenderSettingLayer
R3IAA_RenderSettingLayer
Object
R3OBJ*
rendering settings
jsobj.SetRenderSettingLayer(value);
value = jsobj.GetRenderSettingLayer();
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3IAA_RenderSettingLayer, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3IAA_RenderSettingLayer, &value, R3TAG_END);
ViewModelLayer
ViewModelLayer
R3IAA_ViewModelLayer
Object
R3OBJ*
view models
jsobj.SetViewModelLayer(value);
value = jsobj.GetViewModelLayer();
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3IAA_ViewModelLayer, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3IAA_ViewModelLayer, &value, R3TAG_END);
DragSelectedOnly
DragSelectedOnly
R3IAA_DragSelectedOnly
Boolean
R3BOOL
snap only to selected objects
jsobj.SetDragSelectedOnly(value);
value = jsobj.GetDragSelectedOnly();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3IAA_DragSelectedOnly, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3IAA_DragSelectedOnly, &value, R3TAG_END);
DontDragPivot
DontDragPivot
R3IAA_DontDragPivot
Boolean
R3BOOL
ignore pivot handle in snap
jsobj.SetDontDragPivot(value);
R3BOOL value = ...;
R3SetAttrs(r3obj, R3IAA_DontDragPivot, value, R3TAG_END);
Active
Active
R3IAA_Active
Boolean
R3BOOL
active / inactive
value = jsobj.GetActive();
R3BOOL value;
R3GetAttrs(r3obj, R3IAA_Active, &value, R3TAG_END);
WFEngine
WFEngine
R3IAA_WFEngine
Object
R3OBJ*
R3OBJ, wireframe engine
jsobj.SetWFEngine(value);
value = jsobj.GetWFEngine();
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3IAA_WFEngine, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3IAA_WFEngine, &value, R3TAG_END);
Thumbnail
Thumbnail
R3IAA_Thumbnail
Object
R3OBJ*
real/code/r3thumbn.h
jsobj.SetThumbnail(value);
value = jsobj.GetThumbnail();
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3IAA_Thumbnail, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3IAA_Thumbnail, &value, R3TAG_END);
Filer
Filer
R3IAA_Filer
Object
R3OBJ*
real/code/r3filer.h
jsobj.SetFiler(value);
value = jsobj.GetFiler();
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3IAA_Filer, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3IAA_Filer, &value, R3TAG_END);
TextOnView
TextOnView
R3IAA_TextOnView
Boolean
R3BOOL
show interaction info on view windows
jsobj.SetTextOnView(value);
value = jsobj.GetTextOnView();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3IAA_TextOnView, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3IAA_TextOnView, &value, R3TAG_END);
DefaultCoordSys
DefaultCoordSys
R3IAA_DefaultCoordSys
read only. Default pos & axis system for instant object creation
value = jsobj.GetDefaultCoordSys();
R3COORDSYS* value;
R3GetAttrs(r3obj, R3IAA_DefaultCoordSys, &value, R3TAG_END);
action enable flags returned by the R3IAM_GETACTIONENABLEFLAGS method
R3IAA_CursorCode values
Return codes for R3IAM_DOWN/R3IAA_DragBehavior
codes for R3IAM_ALLOCORIGVALS method
for backward compatib.