r3prim

r3anglemeasure
r3cbckdr
r3cone
r3cube
r3cutcon
r3cutpyr
r3cylind
r3dragp
r3ellips
r3ellseg
r3fieldev
r3foot
r3group
r3hyperb
r3level
r3aik
r3aniobj
r3camera
r3constructor
r3creator
r3deform
r3extrud
r3fileinst
r3force
r3fratre
r3instnc
r3interpolator
r3lights
r3numesh
r3partic
r3plant
r3posimp
r3roof
r3subdiv
r3treele
r3triset
r3tube
r3wall
r3link
r3map
r3atmosph
r3cubmap
r3cylmap
r3defmap
r3dskmap
r3mesmap
r3parmap
r3sphmap
r3measure
r3nurbs
r3trmnrb
r3nurbs2
r3outlin
r3polygon
r3polyhedron
r3polymid
r3posmark
r3pyrami
r3rect
r3iplane
r3sphere

r3prim

Class

real/objects/r3prim.h

Library

r3obj

Description:

Geometric primitive base class. Geometric primitives, such as spheres, cones, nurbs surfaces etc. are derived from this class.

See Also

real/code/r3ttag.h

See Also

oops/r3coords.h oops/r3matrix.h

Super Class

r3Ttag

R3CLID_TTAG

JavaScript

r3Primitive

Class Identifier

R3CLID_PRIMITIVE - 140

Methods

SETFLAG, CLEARFLAG, FLAGISSET, SETEDIT, EDITING, GETTOABSSPACEMATRIX, PRECONCATMATRIX, POSTCONCATMATRIX, MATRIXCHANGED, AUTOCHILDEDITING, VELOCITYHANDLED, UPDATEWIRE, EVALUATE, DERIVE, NORMAL, MAPFROMPARAMSPACE, MAPTOPARAMSPACE, MAPPOINTSFROMMULTILA, MAPOBJFROMMULTILATTI, SETPARENT, GETFACESPACE, ADDPOINT, DEPPOINTINSERTEDBYIN, INVKINEM, HANDLEVELOCITYSPIN, CHILDCHANGED, SIBLINGCHANGED, INSERTPOINT, REPARAM, ENUMHANDLES, ENUMHANDLESRECURSIVE, SELECTHANDLE, UNSELECTHANDLE, UNSELECTALLHANDLES, TOGGLEHANDLE, HANDLESELECTED, GETFREENETFRAME, NEWVARATTR, DELVARATTR, FINDVARATTR, COPYVARATTR, POINTTOABSSPACE, POINTTOOBJSPACE, POINTTOABSSPACEL, POINTTOOBJSPACEL, POINTFROMOBJTOPARENT, NORMALIZESPACE, AREAINDIRECTION, WIDTHINDIRECTION, BOUNDINGBOX, EVALUATEEXT, DEPSELECTEDPOINTSDEL, DELSELECTEDPOINTS, RENDER, RENDERSURFACES, BEGINRENDER, ENDRENDER, BEGINRENDERGEOMETRY, ENDRENDERGEOMETRY, COPYONLYREFTOWIRE, COPYWITHOUTCHILDREN, TRANSFORM, TRANSFORMLATTICE, ENUM, ENUMCURVES, SETPOINT, GETPOINT, POINTFROMOBJTOPARENT, SELECTCOUNT, MAPLOOKATPOINTFROMMU, SETMAPWEIGHTONSELECT, MAPTOOBJECTSPACEEX, EUCLIDEAN, POINTSCHANGED, PROGRESSBEGIN, PROGRESSTO, PROGRESSEND, ISMAPPED, MAPTOOBJECTSPACE, UPDATEMAP, ENUMPOINTWISEPROPERT, ENUMLATTICEOBJS, MATEVALBEGIN, MATEVAL, MATEVALEND, NORMALS, CONSTRAINTS, TRANSFORMTEXTURE, MAKENAME, SETTAGBINDING, CLEARTAGBINDING, ENUMTAGBINDINGS, MAPSELECTEDPOINTSFRO, ISMATERIALMAP, COMMITMULTIMAPTOABSS, INVERTHANDLES, ISPARENTDEPENDENT, ENUMFACES, ENUMFACESRECURSIVE, ENUMEDGES, ENUMEDGESRECURSIVE, RENDERUVMAP, DESELECTHANDLES, GETTOOBJSPACEMATRIX, POINTCOUNTCHANGED, REMAPUV, BEGINMULTIMAPTOABSSP, COMPUTEBOUNDINGBOX, ISCHILDDEPENDENT, ISSIBLINGDEPENDENT, DEPPOINTDELETEDBYIND, LOCK, GETLOCK, GETEDITSTRING, SETSELECTEDPOINTS, ENUMDRAGHANDLES, INSERT, REMOVE, GETFREENETFRAMEEX, FINDCOMMONPARENT, SCANLOOPS, ENUMSELECTHANDLES, ENUMSELECTHANDLESREC, INVALIDATEMATRIXCACH, ENUMCONTROLLEDOBJECT, HASPOINTWISERENDERPR, ISINLATTICESPACE, BACKUPPOINTS, RESTOREBACKUPPOINTS, ENUMVARATTRS, DETERMINISTIC, POINTAREAINDIRECTION, POINTWIDTHINDIRECTIO, SELECTNEXT, SELECTPREV, SELECTUP, SELECTDOWN, SELECTPRIMHANDLE, GETSELECTEDPRIMHANDL, DOUPDATEMAP, ENUMDRAGHANDLESRECUR, MATEVALSETOBJECT, TRANSFORMABOUTCOG, ATTACHTOLATTICE, GETSELECTIONSPACE, SETNATIVESPACE, RESTORENATIVESPACE, DELPOINTBYINDEX, INSERTPOINTBYINDEX, ASSIGNPOINT, DEPPOINTASSIGNED, UPDATELATTICECOORDSB, UPDATESELECTEDLATTIC, PREPLATTICECOORDSFOR, DELETABLESELECTCOUNT, POINTISDELETABLE, ENUMLATTICEREFERENCE, TR, PREPAREEVALUATEOPT, UPDATEWIRERECURSIVE, HASPRIVATEGEOMDATA, FREEMULTIMAP, TRANSLATE, ROTATE, SCALE, SKEW, ENUMPOINTSNORMALSUVW, ADDSIMULCHOR, BEGINMORPHING, GETMORPHINGKEY, SETMORPHINGKEY, ENDMORPHING, SETSELECTEDPOINTSBYA, SETMATRIX, ENUMPOINTSNORMALSDEN, REGISTERUVMAPPER, CREATEUVMAPPER, RENDERCAUSTICSMAP, COPYLATTICETAGGED, ISSELECTED, SETSPACE, FREEVARATTRS, HANDLESELECTIONINFO, CHANGEVARATTRID, ENUMPOINTWISETAGBIN, MAPBINDINGTOCLID, TOPOINTWISE, FROMPOINTWISE, ENUMCHANNELS, ISPARENT, GETINTERVAL, COMPUTESIZE, COMPUTECOG, FINDBYNAME, TRANSLATEIMAGE, DROPACTIONS, ISRENDERVISIBLE, GETORIENTEDBB, BEGINFINDCONNECTED, ENDFINDCONNECTED, COMPUTEVOLUME, COMPUTEAREA, INVERTHANDLESRECURSI, GETFACEPOINTLOOP, HANDLESCONNECTED, RENAMECHANNELREF, ADDTAGFINDER, REMTAGFINDER, ADDIMAGETRANSLATOR, REMIMAGETRANSLATOR, BEGINMATEVALEXT, ENDMATEVALEXT, MATEVALEXT, MATEVALEXTOBJECT, MATERIALMAPCHANGED, SETPOINTWISEFLOAT, SETPOINTWISEVECTOR, GETPOINTWISEFLOAT, GETPOINTWISEVECTOR,

Attributes

Parent, Matrix, MatrixTranslate, MatrixScale, MatrixRotate, MatrixSkew, WireObject, WireObject2, Flags, ClosedU, ClosedV, ClosedW, Position, PointsSelection, Dimensions, CountU, CountV, CountW, DegreeU, DegreeV, DegreeW, Points, PointCount, PointSize, PointType, ComplexityU, ComplexityV, ComplexityW, Size, WireCurveSelection, WireCurveEvaluation, SelectedU, SelectedV, DefaultObjectSpace, ObjectSpace, Uncovered1, Uncovered2, Sector, PointwiseVelocity, Quaternion, WfInvisible, RtInvisible, LatticeMatrixTransla, LatticeMatrixRotate, LatticeMatrixScale, LatticeMatrixSkew, ShadowInvisible, ReflectionInvisible, CameraInvisible, TextureMatrixTransla, TextureMatrixRotate, TextureMatrixScale, TextureMatrixSkew, LatticeSelectedArray, LatticeSelectedItemS, MapWeight, MatrixRotateHPB, TotalTranslate, TotalScale, TotalRotate, MatrixTranslateX, MatrixTranslateY, MatrixTranslateZ, LatticePoints, FaceSelection, EdgeSelection, HasGeometry, PhysicalSize, LatticeSelectedPoint, PointSelection, LatticePointSize, TotalSkew, RotateInHPB, LatticeSelectedWeigh, LatticePointWeights, NativeSpace, NoShadows, EvaluatesContinuousl, HasRenderGeometry, InvertTextureV, Hollow, SelectedPoints, Space, HitInvisible, WireQuality, WireQuality2, ShadedQuality, TextureQuality, SelectiveVisibility, RenderControlPoly, HideBoundingBox, HideRotateHandle, HideCoordSys, HideGeometry, NoShading, RenderCovers, HideEditModeRotateHa, HideEditModeCoordSys, UseVertexColors, RenderAsBoundingBox, DrawOnlySelected, EvalMaterialWithNorm, ShowName, Color, Mass, Density, Charge, SurfaceFriction, ReboundEnergy, Velocity, Spin, Inertia, FluidVelocity, FluidPressure, FluidFrictionCoeffic, FluidVelocityCoeffic, CenterOfGravity, LayerVersion, Transparency, Reflection, Alpha, Fade, TextureMapMethod, Gravity, Magnetism, LifeTime, FluidDynamics, ExplodeTime, ExplodeAtImpact, Collision, UVTextureMap, Elasticity, Rigidity, Illumination, MatSpaceCoords, OpticalThickness, Scope, SpecularColor, UVCoords, VolumeSampling, CollisionAccuracy, Impact, ImpactTime, ImpactAmplitude, ImpactDuration, ImpactLevel, ImpactWaveType, VolumeDefined, ExplodeParticleCount, ExplodeParticleVeloc, Explode, NotSaved, TextureIsImage, HiddenVisibility, ExtraFlags, ByteOptions1, ByteOptions2, DrawQualities, CausticsRes, SimulOptions,

R3PRIMM_SETFLAG

Method

SETFLAG

Identifier

R3PRIMM_SETFLAG

Return

R3OBJ*, obj

Param 3:

R3INT, the flag to be set

JavaScript

rc = obj.SETFLAG(p3);

Description

Set one of the R3PRIMF_* flags

R3PRIMM_CLEARFLAG

Method

CLEARFLAG

Identifier

R3PRIMM_CLEARFLAG

Return

R3OBJ*, obj

Param 3:

R3INT, the flag to be cleared

JavaScript

rc = obj.CLEARFLAG(p3);

Description

Clear one of the R3PRIMF_* flags

R3PRIMM_FLAGISSET

Method

FLAGISSET

Identifier

R3PRIMM_FLAGISSET

Return

R3BOOL, TRUE/FALSE

Param 3:

R3INT, the flag

JavaScript

rc = obj.FLAGISSET(p3);

Description

Return TRUE if the flag is set

R3PRIMM_SETEDIT

Method

SETEDIT

Identifier

R3PRIMM_SETEDIT

Param 3:

R3BOOL, if TRUE object is set to editing state, if FALSE object is set to 'selected' state.

JavaScript

obj.SETEDIT(p3);

Description

Set/reset editing state of object

R3PRIMM_EDITING

Method

EDITING

Identifier

R3PRIMM_EDITING

Return

R3BOOL, TRUE if in editing state, FALSE if not.

JavaScript

rc = obj.EDITING();

Description

Checks whether or not the object is in editing state

R3PRIMM_GETTOABSSPACEMATRIX

Method

GETTOABSSPACEMATRIX

Identifier

R3PRIMM_GETTOABSSPACEMATRIX

Return

R3MATRIX, Address of the matrix or NULL if object space was identity

Param 3:

R3MATRIX, address of 4x4 matrix.

JavaScript

rc = obj.GETTOABSSPACEMATRIX(p3);

Description

Fetch transformation matrix which can be used for transforming points from the object space to absolute space.

R3PRIMM_PRECONCATMATRIX

Method

PRECONCATMATRIX

Identifier

R3PRIMM_PRECONCATMATRIX

Return

R3MATRIX, Address of the matrix

Param 3:

R3MATRIX, address of 4x4 matrix.

JavaScript

rc = obj.PRECONCATMATRIX(p3);

Description

Multiply parameter matrix to objects matrix. 'newmatrix = param * oldmarix'

R3PRIMM_POSTCONCATMATRIX

Method

POSTCONCATMATRIX

Identifier

R3PRIMM_POSTCONCATMATRIX

Return

R3MATRIX, Address of the matrix

Param 3:

R3MATRIX, address of 4x4 matrix.

JavaScript

rc = obj.POSTCONCATMATRIX(p3);

Description

Multiply parameter matrix to objects matrix. 'newmatrix = oldmarix * param'

R3PRIMM_MATRIXCHANGED

Method

MATRIXCHANGED

Identifier

R3PRIMM_MATRIXCHANGED

JavaScript

obj.MATRIXCHANGED();

Description

Invalidate 'to abs space' and 'to local space' matrix caches. * Called internally.

R3PRIMM_AUTOCHILDEDITING

Method

AUTOCHILDEDITING

Identifier

R3PRIMM_AUTOCHILDEDITING

Return

R3BOOL, true if autochildediting is desired.

JavaScript

rc = obj.AUTOCHILDEDITING();

Description

Some objects may want their children be in edit mode if their parent is. Return true if this is desired. It is up to the sub classes to implement this method. This method is only needed by class implementors.

R3PRIMM_VELOCITYHANDLED

Method

VELOCITYHANDLED

Identifier

R3PRIMM_VELOCITYHANDLED

Return

R3BOOL, true if the sub class handled velocity.

JavaScript

rc = obj.VELOCITYHANDLED();

Description

Ask whether the object can handle velocity transformations. This method is needed only by class implementors.

R3PRIMM_UPDATEWIRE

Method

UPDATEWIRE

Identifier

R3PRIMM_UPDATEWIRE

Param 1:

R3INT, target selector. See enum below.

Param 3:

R3INT, the attribute/method which causes the update

JavaScript

obj.UPDATEWIRE(p1, p3);

Description

Updates the wire frame representation associated with the object.

R3PRIMM_EVALUATE

Method

EVALUATE

Identifier

R3PRIMM_EVALUATE

Param 1:

R3INT, space in which the evaluated point is returned. See space codes below.

Param 2:

R3VECTOR, 3D parameter value. Must be within 0-1 range.

Param 3:

R3VECTOR, result

JavaScript

obj.EVALUATE(p1, p2, p3);

Description

Evaluates a point corresponding to the given parameter value. Each geometric primitive may define 1d, 2d or 3D parametrized curve, surface or volume which can be evaluated using this method. For example, a surface may use the first two parameter values for evaluating the point from its surface. The third parameter value defines how much the point is displaced along the surface normal.

R3PRIMM_DERIVE

Method

DERIVE

Identifier

R3PRIMM_DERIVE

Param 1:

R3INT, the space in which the result is returned, see space codes below

Param 2:

R3VECTOR, parameter value

Param 3:

R3VECTOR, result

JavaScript

obj.DERIVE(p1, p2, p3);

Description

Derives an object.

R3PRIMM_NORMAL

Method

NORMAL

Identifier

R3PRIMM_NORMAL

Param 1:

R3INT, space, see space codes below (R3SPACE_ABSOLUTE, etc.)

Param 2:

R3VECTOR, parameter

Param 3:

R3VECTOR, evaluated surface normal

JavaScript

obj.NORMAL(p1, p2, p3);

Description

Evaluate surface normal

R3PRIMM_MAPFROMPARAMSPACE

Method

MAPFROMPARAMSPACE

Identifier

R3PRIMM_MAPFROMPARAMSPACE

Param 1:

R3VECTOR, point in object's parameter space (uvw)

Param 3:

R3VECTOR, result is point in abs. space.

JavaScript

obj.MAPFROMPARAMSPACE(p1, p3);

Description

Map 'uvw' point to abs space.

R3PRIMM_MAPTOPARAMSPACE

Method

MAPTOPARAMSPACE

Identifier

R3PRIMM_MAPTOPARAMSPACE

Param 1:

R3VECTOR, point in abs space.

Param 3:

R3VECTOR, uvw

JavaScript

obj.MAPTOPARAMSPACE(p1, p3);

Description

Map given abs point to parameter space of the object.

R3PRIMM_MAPPOINTSFROMMULTILA

Method

MAPPOINTSFROMMULTILA

Identifier

R3PRIMM_MAPPOINTSFROMMULTILA

Param 1:

R3INT, number of lattices

Param 2:

R3INT*, lattice indexes

Param 3:

R3OBJ*, lattice objects

JavaScript

obj.MAPPOINTSFROMMULTILA(p1, p2, p3);

Description

Map object from lattices to abs space.

R3PRIMM_MAPOBJFROMMULTILATTI

Method

MAPOBJFROMMULTILATTI

Identifier

R3PRIMM_MAPOBJFROMMULTILATTI

Param 1:

R3INT, number of lattices

Param 2:

R3INT*, lattice indexes

Param 3:

R3OBJ*, lattice objects

JavaScript

obj.MAPOBJFROMMULTILATTI(p1, p2, p3);

Description

Map points from lattices to abs space.

R3PRIMM_SETPARENT

Method

SETPARENT

Identifier

R3PRIMM_SETPARENT

Return

R3OBJ*, previous parent object

Param 3:

R3OBJ*, new parent object

JavaScript

rc = obj.SETPARENT(p3);

Description

Set parent reference to NULL. Note: this doesn't call r3rm_unref nor remove the object from its parent list.

R3PRIMM_GETFACESPACE

Method

GETFACESPACE

Identifier

R3PRIMM_GETFACESPACE

Return

R3BOOL, true if face index is valid

Param 1:

R3INT, face index

Param 2:

R3INT, space (R3SPACE_ABSOLUTE, R3SPACE_LOCAL, R3SPACE_PARENT)

Param 3:

R3COORDSYS, coordinate system

JavaScript

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

Description

Get face handle space. Can be used for move on normal etc. operations.

R3PRIMM_ADDPOINT

Method

ADDPOINT

Identifier

R3PRIMM_ADDPOINT

Return

R3BOOL, true if succeeded.

Param 3:

R3VECTOR, point to be added.

JavaScript

rc = obj.ADDPOINT(p3);

Description

Add new point (by position). This method is is implemented by sub classes. Not all geom. objects (such as quadrics) support this method. Other point specific properties are set to defaults.

R3PRIMM_DEPPOINTINSERTEDBYIN

Method

DEPPOINTINSERTEDBYIN

Identifier

R3PRIMM_DEPPOINTINSERTEDBYIN

Param 1:

R3OBJ*, dependent whose point count has changed

Param 3:

R3INT, index of the newly inserted point.

JavaScript

obj.DEPPOINTINSERTEDBYIN(p1, p3);

Description

Called when new point is inserted to the dependent object.

R3PRIMM_INVKINEM

Method

INVKINEM

Identifier

R3PRIMM_INVKINEM

Param 3:

R3TAG*, R3PRIMA_Force - R3VECTOR, specifying the end point

JavaScript

obj.INVKINEM(p3);

Description

Apply inv. kinematics to the selected point

R3PRIMM_HANDLEVELOCITYSPIN

Method

HANDLEVELOCITYSPIN

Identifier

R3PRIMM_HANDLEVELOCITYSPIN

JavaScript

obj.HANDLEVELOCITYSPIN();

Description

Transform the object based on the time interval and * the velocity and spin attributes.

R3PRIMM_CHILDCHANGED

Method

CHILDCHANGED

Identifier

R3PRIMM_CHILDCHANGED

Param 1:

R3OBJ*, actual child

Param 2:

R3TAG*, list of tags specifying changed attributes

Param 3:

R3OBJ*, child through which the method reached the object

JavaScript

obj.CHILDCHANGED(p1, p2, p3);

Description

Sent to an object when one of the sub objects has changed.

R3PRIMM_SIBLINGCHANGED

Method

SIBLINGCHANGED

Identifier

R3PRIMM_SIBLINGCHANGED

Param 1:

R3OBJ*, the sibling object that actually changed.

Param 2:

R3TAG*, list of tags specifying changed attributes

Param 3:

R3OBJ*, sibling through which the method got delivered

JavaScript

obj.SIBLINGCHANGED(p1, p2, p3);

Description

Sent to an object when one of the siblings has changed.

R3PRIMM_INSERTPOINT

Method

INSERTPOINT

Identifier

R3PRIMM_INSERTPOINT

Return

R3BOOL, TRUE if succeeded.

Param 3:

R3VECTOR, 3D abs point to be inserted.

JavaScript

rc = obj.INSERTPOINT(p3);

Description

Insert a new point to an object.

R3PRIMM_REPARAM

Method

REPARAM

Identifier

R3PRIMM_REPARAM

Return

R3BOOL, true if succeeded.

Param 1:

R3BOOL, if true, don't update.

Param 3:

R3INT, new point count

JavaScript

rc = obj.REPARAM(p1, p3);

Description

Reparametrize the surface. Not all sub classes implement this.

R3PRIMM_ENUMHANDLES

Method

ENUMHANDLES

Identifier

R3PRIMM_ENUMHANDLES

Return

int, return value from the users callback function.

Param 3:

R3TAG*, R3RA_Hook, R3RA_HookData, R3PRIMA_PointSpace, R3PRIMA_FaceIndex, R3PRIMA_EdgeIndex, R3PRIMA_Connected, R3PRIMA_ConnectData

JavaScript

rc = obj.ENUMHANDLES(p3);

Description

Enumerate all (visible and invisible) point handles to the given function * in the given space. * The return value 1 continues enumeration. Other values * cancel it.

R3PRIMM_ENUMHANDLESRECURSIVE

Method

ENUMHANDLESRECURSIVE

Identifier

R3PRIMM_ENUMHANDLESRECURSIVE

Return

int, return value from the users callback function.

Param 3:

R3TAG*, R3RA_Hook, R3RA_HookData, R3PRIMA_PointSpace

JavaScript

rc = obj.ENUMHANDLESRECURSIVE(p3);

Description

Recursively enumerate object handles to the given function * in the given space. See R3SPACE_ codes. * The function is of form int (*)(R3OBJ *, void *data); * The return value 1 continues enumeration. Other values * cancel it.

R3PRIMM_SELECTHANDLE

Method

SELECTHANDLE

Identifier

R3PRIMM_SELECTHANDLE

Return

R3BOOL, true if succeeded

Param 1:

R3INT, index of the handle

Param 2:

R3UBYTE, weight of selection, 1 .. R3FULLSELECTION. If zero full selection is applied.

Param 3:

R3INT, see R3PRIMHANDLE types

JavaScript

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

Description

Select handle specified by 'index' and 'type'. Different classes may define different type of handles. Use R3H_SELECTHANDLE to select geometric points.

R3PRIMM_UNSELECTHANDLE

Method

UNSELECTHANDLE

Identifier

R3PRIMM_UNSELECTHANDLE

Return

R3BOOL, true if handle was found.

Param 1:

R3INT, index

Param 3:

R3INT, see R3PRIMHANDLE types

JavaScript

rc = obj.UNSELECTHANDLE(p1, p3);

Description

Unselect handle

R3PRIMM_UNSELECTALLHANDLES

Method

UNSELECTALLHANDLES

Identifier

R3PRIMM_UNSELECTALLHANDLES

JavaScript

obj.UNSELECTALLHANDLES();

Description

Unselect all handles

R3PRIMM_TOGGLEHANDLE

Method

TOGGLEHANDLE

Identifier

R3PRIMM_TOGGLEHANDLE

Return

R3BOOL, true if succeeded

Param 1:

R3INT, handle index

Param 3:

R3INT, see R3HANDLETYPE

JavaScript

rc = obj.TOGGLEHANDLE(p1, p3);

Description

Toggle handle selection (make selected handle unselected and vise versa)

R3PRIMM_HANDLESELECTED

Method

HANDLESELECTED

Identifier

R3PRIMM_HANDLESELECTED

Return

R3UBYTE, amount of selection 0=not selected .. R3FULLSECTION=fully selected

Param 1:

R3INT, index of the handle

Param 3:

R3INT, see R3HANDLETYPE

JavaScript

rc = obj.HANDLESELECTED(p1, p3);

Description

Return handle status.

R3PRIMM_GETFREENETFRAME

Method

GETFREENETFRAME

Identifier

R3PRIMM_GETFREENETFRAME

Param 1:

R3INT, space

Param 2:

R3VECTOR, parameter. Note: param values may exceed 0-1 range.

Param 3:

R3COORDSYS, result. Origin position may be extrapolated or truncated to 0-1, depending on the obj. class.

JavaScript

obj.GETFREENETFRAME(p1, p2, p3);

Description

Evaluates coord sys specifying so called freenet frame with the given parameter value.

R3PRIMM_NEWVARATTR

Method

NEWVARATTR

Identifier

R3PRIMM_NEWVARATTR

Return

R3FLOAT, pointer to allocated 'per-vertex' data.

Param 1:

R3INT, identifier for data

Param 2:

R3INT, sub identifier

Param 3:

R3INT, number of R3FLOAT's to be allocated per vertex.

JavaScript

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

Description

Allocate given number of R3FLOAT data per vertex. The allocated data is identified with given ID and subid, and can be fetched later via these two identifier.

R3PRIMM_DELVARATTR

Method

DELVARATTR

Identifier

R3PRIMM_DELVARATTR

Return

R3BOOL, TRUE if found

Param 1:

R3INT, sub indentifier

Param 3:

R3INT, identifier

JavaScript

rc = obj.DELVARATTR(p1, p3);

Description

Free given varattr

R3PRIMM_FINDVARATTR

Method

FINDVARATTR

Identifier

R3PRIMM_FINDVARATTR

Return

R3FLOAT, address of the data or NULL if data was not found

Param 1:

R3INT, sub indentifier

Param 3:

R3INT, data identifier

JavaScript

rc = obj.FINDVARATTR(p1, p3);

Description

Find varattr data corresponding the given identifier.

R3PRIMM_COPYVARATTR

Method

COPYVARATTR

Identifier

R3PRIMM_COPYVARATTR

Return

void*, data

Param 1:

R3INT, identifier

Param 2:

R3INT, sub identifier

Param 3:

R3INT, identifier for the duplicated data

JavaScript

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

Description

Duplicate the varattr.

R3PRIMM_POINTTOABSSPACE

Method

POINTTOABSSPACE

Identifier

R3PRIMM_POINTTOABSSPACE

Param 3:

R3VECTOR, point to be mapped to abs space

JavaScript

obj.POINTTOABSSPACE(p3);

Description

Map a point represented in object's local space to abs space (world space).

R3PRIMM_POINTTOOBJSPACE

Method

POINTTOOBJSPACE

Identifier

R3PRIMM_POINTTOOBJSPACE

Param 3:

R3VECTOR, point to be mapped to local space.

JavaScript

obj.POINTTOOBJSPACE(p3);

Description

Map a point represented in abs space into object's local space.

R3PRIMM_POINTTOABSSPACEL

Method

POINTTOABSSPACEL

Identifier

R3PRIMM_POINTTOABSSPACEL

Param 3:

R3VECTOR, point to be mapped

JavaScript

obj.POINTTOABSSPACEL(p3);

Description

Map a point to to abs space using 3x3 left top sub matrix. * Can be used for mapping 'direction vectors' rather than 'position vectors'.

R3PRIMM_POINTTOOBJSPACEL

Method

POINTTOOBJSPACEL

Identifier

R3PRIMM_POINTTOOBJSPACEL

Param 3:

R3VECTOR, point to be mapped

JavaScript

obj.POINTTOOBJSPACEL(p3);

Description

Use 3x3 sub matrix to map a point to object's local space. * Can be used for mapping 'direction vectors'.

R3PRIMM_POINTFROMOBJTOPARENT

Method

POINTFROMOBJTOPARENT

Identifier

R3PRIMM_POINTFROMOBJTOPARENT

Param 3:

R3VECTOR, point to be mapped

JavaScript

obj.POINTFROMOBJTOPARENT(p3);

Description

Map a point represented in object's local space to parent space.

R3PRIMM_NORMALIZESPACE

Method

NORMALIZESPACE

Identifier

R3PRIMM_NORMALIZESPACE

JavaScript

obj.NORMALIZESPACE();

Description

Make the object's space the 'identity space'. The geometric points are transformed with inverted transformation so that the geometry remains the same in world space.

R3PRIMM_AREAINDIRECTION

Method

AREAINDIRECTION

Identifier

R3PRIMM_AREAINDIRECTION

Param 1:

R3VECTOR, direction

Param 3:

R3FLOAT, computed area in square meters.

JavaScript

obj.AREAINDIRECTION(p1, p3);

Description

Objects area in the direction of the parameter vector

R3PRIMM_WIDTHINDIRECTION

Method

WIDTHINDIRECTION

Identifier

R3PRIMM_WIDTHINDIRECTION

Param 1:

R3VECTOR, direction

Param 3:

R3FLOAT, width in meters.

JavaScript

obj.WIDTHINDIRECTION(p1, p3);

Description

Objects width in the direction of the parameter vector.

R3PRIMM_BOUNDINGBOX

Method

BOUNDINGBOX

Identifier

R3PRIMM_BOUNDINGBOX

JavaScript

obj.BOUNDINGBOX();

Description

Return the bounding box for the object.

R3PRIMM_EVALUATEEXT

Method

EVALUATEEXT

Identifier

R3PRIMM_EVALUATEEXT

Param 1:

R3INT, see R3SPACE_ codes

Param 2:

R3VECTOR, uvw coordinates

Param 3:

R3VECTOR, evaluated point.

JavaScript

obj.EVALUATEEXT(p1, p2, p3);

Description

Like PRIMM_EVALUATE, but parameter can exceed 0-1 range for extrapolation attribute defines how extrapolation is carried out, See extrapolation codes below.

R3PRIMM_DEPSELECTEDPOINTSDEL

Method

DEPSELECTEDPOINTSDEL

Identifier

R3PRIMM_DEPSELECTEDPOINTSDEL

Param 1:

R3OBJ*, dependent

JavaScript

obj.DEPSELECTEDPOINTSDEL(p1, 0);

Description

Called when selected points are deleted from the dependent object. The object should remove all references to the deleted points.

R3PRIMM_DELSELECTEDPOINTS

Method

DELSELECTEDPOINTS

Identifier

R3PRIMM_DELSELECTEDPOINTS

JavaScript

obj.DELSELECTEDPOINTS();

Description

Delete selected geometric points.

R3PRIMM_RENDER

Method

RENDER

Identifier

R3PRIMM_RENDER

Param 3:

R3TAG*, tag list: R3PRIMA_RenderEngine, R3PRIMA_RenderAlways, * R3PRIMA_RenderFilter, R3PRIMA_RenderFilterMth, R3PRIMA_GlobalRenderQuality

JavaScript

obj.RENDER(p3);

Description

describes the object geometry to the rendering engine by * sending messages which create shading specialized objects to the render engine. * Primitive class does this by sending R3PRIMM_BEGINRENDERGEOMETRY-ENDRENDERGEOMETRY * calls to itself after checking shading visibility conditions.

R3PRIMM_RENDERSURFACES

Method

RENDERSURFACES

Identifier

R3PRIMM_RENDERSURFACES

Param 1:

R3INT, evaluation space (ABSOLUTE/PARENT/OBJECT). Describe geometry in the defined space.

Param 3:

R3TAG*, tag list: R3PRIMA_RenderEngine, R3PRIMA_RenderAlways etc.

JavaScript

obj.RENDERSURFACES(p1, p3);

Description

Similar to RENDER msg, but only surfaces should be rendered.

R3PRIMM_BEGINRENDER

Method

BEGINRENDER

Identifier

R3PRIMM_BEGINRENDER

Param 1:

R3TAG*, render tag list including R3PRIMA_RenderEngine

Param 3:

R3TAG*, tag list for the creation of the render object. Each class adds render attrs * it defines to this tag list.

JavaScript

obj.BEGINRENDER(p1, p3);

Description

Begins creation of shading specialised objects. Primitive class sends this to itself * when it receives PRIMM_RENDER message. When prim class gets the message, it sends * R3DoA2(rengine, R3FRM_BEGINLEVEL, p2, tags).

R3PRIMM_ENDRENDER

Method

ENDRENDER

Identifier

R3PRIMM_ENDRENDER

Param 3:

R3TAG*, class private tag list

JavaScript

obj.ENDRENDER(p3);

Description

Finishes render object description, see BEGINRENDER above. Primitive class * sends R3DoA(rengine, R3FRM_ENDLEVEL, tags) when it receives this message.

R3PRIMM_BEGINRENDERGEOMETRY

Method

BEGINRENDERGEOMETRY

Identifier

R3PRIMM_BEGINRENDERGEOMETRY

Param 1:

R3TAG*, tag list from R3PRIMM_RENDER

Param 3:

R3TAG*, tag list for the creation of the render object. Each class adds render attrs it defines to this tag list.

JavaScript

obj.BEGINRENDERGEOMETRY(p1, p3);

Description

Begins creation of shading geometry objects. Default actions of the base class * is sending BEGINRENDERSURFACES-ENDRENDERSURFACES and BEGINRENDERVOLUME-ENDRENDERVOLUME * methods to the object.

R3PRIMM_ENDRENDERGEOMETRY

Method

ENDRENDERGEOMETRY

Identifier

R3PRIMM_ENDRENDERGEOMETRY

Param 1:

R3TAG*, tag list from R3PRIMM_RENDER

Param 3:

R3TAG*, tag list

JavaScript

obj.ENDRENDERGEOMETRY(p1, p3);

Description

Finishes render object description, see BEGINRENDER above. Primitive class * sends R3DoA(rengine, R3END_ENDATOM, tags) when it receives this message.

R3PRIMM_COPYONLYREFTOWIRE

Method

COPYONLYREFTOWIRE

Identifier

R3PRIMM_COPYONLYREFTOWIRE

Return

R3OBJ*, duplicated object

JavaScript

rc = obj.COPYONLYREFTOWIRE();

Description

For optimized interaction. An object with no geometry but with the original wire object is returned

R3PRIMM_COPYWITHOUTCHILDREN

Method

COPYWITHOUTCHILDREN

Identifier

R3PRIMM_COPYWITHOUTCHILDREN

Return

R3OBJ*, duplicated object

JavaScript

rc = obj.COPYWITHOUTCHILDREN();

Description

Non recursive copy

R3PRIMM_TRANSFORM

Method

TRANSFORM

Identifier

R3PRIMM_TRANSFORM

Return

R3BOOL, if true, object was transformed

Param 3:

R3PRIMTRANSFORM*

JavaScript

rc = obj.TRANSFORM(p3);

Description

Transform

R3PRIMM_TRANSFORMLATTICE

Method

TRANSFORMLATTICE

Identifier

R3PRIMM_TRANSFORMLATTICE

Param 3:

R3PRIMTRANSFORM*, transformation already in lattice space

JavaScript

obj.TRANSFORMLATTICE(p3);

Description

Transform lattice space. The matrix is given in lattice space.

R3PRIMM_ENUM

Method

ENUM

Identifier

R3PRIMM_ENUM

Return

R3INT, return value from the hook.

Param 3:

R3TAG*, R3RA_Hook, R3RA_HookData

JavaScript

rc = obj.ENUM(p3);

Description

Enumerate geometric primitive and the sub objects * into the given hook function. * The hook is of form int (*)(R3OBJ *, void *data); * If the hook returns 1, enumeration continues. Return values 0 and -1 * cancel the enumeration.

R3PRIMM_ENUMCURVES

Method

ENUMCURVES

Identifier

R3PRIMM_ENUMCURVES

JavaScript

obj.ENUMCURVES();

Description

Enumerate U and V curve handles.

R3PRIMM_SETPOINT

Method

SETPOINT

Identifier

R3PRIMM_SETPOINT

Return

R3BOOL, true if index was valid

Param 1:

R3INT, index of the point to be set

Param 3:

R3VECTOR, new value.

JavaScript

rc = obj.SETPOINT(p1, p3);

Description

Set point by index. The point (p3) is given in absolute space.

R3PRIMM_GETPOINT

Method

GETPOINT

Identifier

R3PRIMM_GETPOINT

Return

R3BOOL, true if succeeded.

Param 1:

R3VECTOR, buffer for the fetched point

Param 3:

R3INT, index of the point to be fetched

JavaScript

rc = obj.GETPOINT(p1, p3);

Description

Fetch point by index.

R3PRIMM_POINTFROMOBJTOPARENT

Method

POINTFROMOBJTOPARENT

Identifier

R3PRIMM_POINTFROMOBJTOPARENT

Param 3:

R3VECTOR, point to be mapped.

JavaScript

obj.POINTFROMOBJTOPARENT(p3);

Description

Map point to parent space using 3x3 sub matrix. Can be used * for mapping direction vectors to parent space.

R3PRIMM_SELECTCOUNT

Method

SELECTCOUNT

Identifier

R3PRIMM_SELECTCOUNT

Return

R3INT, number of selected points

JavaScript

rc = obj.SELECTCOUNT();

Description

Returns the number of selected points. The primitive base class implements this method by using ENUMHANDLES method.

R3PRIMM_MAPLOOKATPOINTFROMMU

Method

MAPLOOKATPOINTFROMMU

Identifier

R3PRIMM_MAPLOOKATPOINTFROMMU

JavaScript

obj.MAPLOOKATPOINTFROMMU();

Description

for mapping objects from skeletons space to abs space using

R3PRIMM_SETMAPWEIGHTONSELECT

Method

SETMAPWEIGHTONSELECT

Identifier

R3PRIMM_SETMAPWEIGHTONSELECT

Param 1:

R3FLOAT, weight

Param 3:

R3OBJ*, skeleton object.

JavaScript

obj.SETMAPWEIGHTONSELECT(p1, p3);

Description

if object is in'edit' state, set mapping weight for the selected points. Otherwise set weight for the object.

R3PRIMM_MAPTOOBJECTSPACEEX

Method

MAPTOOBJECTSPACEEX

Identifier

R3PRIMM_MAPTOOBJECTSPACEEX

Return

R3BOOL, true if succeeded

JavaScript

rc = obj.MAPTOOBJECTSPACEEX();

Description

R3PRIMM_EUCLIDEAN

Method

EUCLIDEAN

Identifier

R3PRIMM_EUCLIDEAN

Return

R3BOOL, true for objects defined in standard 3d space, false for non-euclidean space.

JavaScript

rc = obj.EUCLIDEAN();

Description

Checks whether the object is defined in standard euclidean space (i.e. matrix concatenation works).

R3PRIMM_POINTSCHANGED

Method

POINTSCHANGED

Identifier

R3PRIMM_POINTSCHANGED

JavaScript

obj.POINTSCHANGED();

Description

Called when geometric points are changed.

R3PRIMM_PROGRESSBEGIN

Method

PROGRESSBEGIN

Identifier

R3PRIMM_PROGRESSBEGIN

Param 1:

char*, info string to be shown

Param 3:

R3INT, total value

JavaScript

obj.PROGRESSBEGIN(p1, p3);

Description

Initialize progress indicator

R3PRIMM_PROGRESSTO

Method

PROGRESSTO

Identifier

R3PRIMM_PROGRESSTO

Param 3:

R3INT, 0 ... total

JavaScript

obj.PROGRESSTO(p3);

Description

Updates progress indicator bar to given level

R3PRIMM_PROGRESSEND

Method

PROGRESSEND

Identifier

R3PRIMM_PROGRESSEND

JavaScript

obj.PROGRESSEND();

Description

Terminates progress indicator session. The progress bar is reset to null level.

R3PRIMM_ISMAPPED

Method

ISMAPPED

Identifier

R3PRIMM_ISMAPPED

Return

R3INT, see R3MAPF_ flags below

Param 3:

R3INT, Transformation component to be checked in case the object is mapped in 'object' mode. Set R3PRTRF_USEOPTIMIZATIONFLAGS | R3PRTRF_TRANSLATE/SCALE/ROTEATE/SKEW to check whether or not certain component is controlled by the lattice.

JavaScript

rc = obj.ISMAPPED(p3);

Description

Check if the give object is lattice mapped.

R3PRIMM_MAPTOOBJECTSPACE

Method

MAPTOOBJECTSPACE

Identifier

R3PRIMM_MAPTOOBJECTSPACE

Param 1:

int, map types below

Param 2:

R3FLOAT, weight of mappin

JavaScript

obj.MAPTOOBJECTSPACE(p1, p2, 0);

Description

Map the object to the objects space given as parameter.

R3PRIMM_UPDATEMAP

Method

UPDATEMAP

Identifier

R3PRIMM_UPDATEMAP

JavaScript

obj.UPDATEMAP();

Description

Called when lattice or map object changes to remap the object to new position in abs space

R3PRIMM_ENUMPOINTWISEPROPERT

Method

ENUMPOINTWISEPROPERT

Identifier

R3PRIMM_ENUMPOINTWISEPROPERT

Param 1:

R3OBJ*, callback object

Param 2:

R3INT, callback method

JavaScript

obj.ENUMPOINTWISEPROPERT(p1, p2, 0);

Description

Enumerate pointwise properties. Caller will be called with given method. Tag id of the pointwise property is passed in p1. Type of the property is passed in p2.

R3PRIMM_ENUMLATTICEOBJS

Method

ENUMLATTICEOBJS

Identifier

R3PRIMM_ENUMLATTICEOBJS

JavaScript

obj.ENUMLATTICEOBJS();

Description

Enumerate any objects that acts as skeletons for this object

R3PRIMM_MATEVALBEGIN

Method

MATEVALBEGIN

Identifier

R3PRIMM_MATEVALBEGIN

Return

R3BOOL, TRUE if succeeded

JavaScript

rc = obj.MATEVALBEGIN();

Description

Begin material evaluation.

R3PRIMM_MATEVAL

Method

MATEVAL

Identifier

R3PRIMM_MATEVAL

Return

R3BOOL, true if succeeded

JavaScript

rc = obj.MATEVAL();

Description

Evaluate materials in given point

R3PRIMM_MATEVALEND

Method

MATEVALEND

Identifier

R3PRIMM_MATEVALEND

JavaScript

obj.MATEVALEND();

Description

End material evaluation.

R3PRIMM_NORMALS

Method

NORMALS

Identifier

R3PRIMM_NORMALS

Param 1:

R3INT, space, see space codes below (R3SPACE_ABSOLUTE, etc.)

Param 2:

R3VECTOR, parameter

JavaScript

obj.NORMALS(p1, p2, 0);

Description

Evaluate surface normals

R3PRIMM_CONSTRAINTS

Method

CONSTRAINTS

Identifier

R3PRIMM_CONSTRAINTS

Param 3:

R3FLOAT, current time

JavaScript

obj.CONSTRAINTS(p3);

Description

Animation system sends this message after R3PRIMM_TIME message.

R3PRIMM_TRANSFORMTEXTURE

Method

TRANSFORMTEXTURE

Identifier

R3PRIMM_TRANSFORMTEXTURE

Param 3:

R3PRIMTRANSFORM*, texture transformation

JavaScript

obj.TRANSFORMTEXTURE(p3);

Description

transform texture matrix

R3PRIMM_MAKENAME

Method

MAKENAME

Identifier

R3PRIMM_MAKENAME

Param 1:

R3INT, max size of the buffer

Param 2:

R3OBJ*, root

Param 3:

char*, buffer for the name

JavaScript

obj.MAKENAME(p1, p2, p3);

Description

Make full object name for given object. The name is * of form: 'root/../..

R3PRIMCM_SETTAGBINDING

Method

SETTAGBINDING

Identifier

R3PRIMCM_SETTAGBINDING

Return

R3BOOL, true if ok

Param 1:

R3INT, tag identifier

Param 2:

R3INT, tag identifier for pointwise property

Param 3:

R3CLID, channel clid

JavaScript

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

Description

Bind a dynamic tag to a channel. When an object is rendered and the tag is defined, corresponding material property (channel) is passed to the renderer. Note: this method can be called more than once for certain tag in which case the attribute in question is bound to multiple channels.

R3PRIMCM_CLEARTAGBINDING

Method

CLEARTAGBINDING

Identifier

R3PRIMCM_CLEARTAGBINDING

Return

R3BOOL, false if binding was not found

Param 3:

R3INT, tag or pointwise tag id

JavaScript

rc = obj.CLEARTAGBINDING(p3);

Description

Delete binding between tag and channel

R3PRIMCM_ENUMTAGBINDINGS

Method

ENUMTAGBINDINGS

Identifier

R3PRIMCM_ENUMTAGBINDINGS

Return

void*, return value from the caller. TRUE continues enumeration, any other return value cancels. The caller object is called as : R3DoA3(cb_obj, cb_mth, (R3INT)tag, (R3CLID)channel, cb_data);

Param 1:

R3OBJ*, object to be called

Param 2:

R3INT, method to be called

Param 3:

void*, data to be passed to the caller

JavaScript

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

Description

Enumerates tag-channel bindings. See also R3PRIMCM_ENUMPOINTWISETAGBINDINGS.

R3PRIMM_MAPSELECTEDPOINTSFRO

Method

MAPSELECTEDPOINTSFRO

Identifier

R3PRIMM_MAPSELECTEDPOINTSFRO

JavaScript

obj.MAPSELECTEDPOINTSFRO();

Description

Map selected points from lattice to abs space.

R3PRIMM_ISMATERIALMAP

Method

ISMATERIALMAP

Identifier

R3PRIMM_ISMATERIALMAP

Return

R3BOOL, FALSE by default.

JavaScript

rc = obj.ISMATERIALMAP();

Description

Return true if this object defines material properties. It is up to the sub classes to implement this method.

R3PRIMM_COMMITMULTIMAPTOABSS

Method

COMMITMULTIMAPTOABSS

Identifier

R3PRIMM_COMMITMULTIMAPTOABSS

Param 3:

R3VECTOR, multi mapping buffer containing the new geometry

JavaScript

obj.COMMITMULTIMAPTOABSS(p3);

Description

Assign the result of multi mapping to the object's geometry and release the multi mapping buffer.

R3PRIMM_INVERTHANDLES

Method

INVERTHANDLES

Identifier

R3PRIMM_INVERTHANDLES

JavaScript

obj.INVERTHANDLES();

Description

Invert handle selection : selected handle becomes unselected and unselected becomes selected.

R3PRIMM_ISPARENTDEPENDENT

Method

ISPARENTDEPENDENT

Identifier

R3PRIMM_ISPARENTDEPENDENT

Return

R3BOOL, true if depends, false if not

Param 3:

R3OBJ*, parent object

JavaScript

rc = obj.ISPARENTDEPENDENT(p3);

Description

Check if object depends on its parent object.

R3PRIMM_ENUMFACES

Method

ENUMFACES

Identifier

R3PRIMM_ENUMFACES

Return

int, return value from the hook.

Param 3:

R3TAG*, R3RA_Hook, R3RA_HookData, R3PRIMA_PointSpace

JavaScript

rc = obj.ENUMFACES(p3);

Description

Enumerate polygon faces to given hook function. * If the hook returns 0 or -1, the enumeration is canceled. * Return value 1 continues enumeration. * The hook function is of form: * callback(void *data, R3OBJ *obj, R3PRIMFACE *face, R3INT faceindex, R3INT handletype);

R3PRIMM_ENUMFACESRECURSIVE

Method

ENUMFACESRECURSIVE

Identifier

R3PRIMM_ENUMFACESRECURSIVE

Return

int, return value from the hook.

Param 3:

R3TAG*, R3RA_Hook, R3RA_HookData, R3PRIMA_PointSpace

JavaScript

rc = obj.ENUMFACESRECURSIVE(p3);

Description

Enumerate polygon faces of the object and its * sub objects to given hook function. Note that not all geometric * object define faces. * If the hook returns 0 or -1, the enumeration is canceled. * Return value 1 continues enumeration. * The hook function is of form: * callback(void *data, R3OBJ *obj, R3PRIMFACE *face, R3INT faceindex, R3INT handletype);

R3PRIMM_ENUMEDGES

Method

ENUMEDGES

Identifier

R3PRIMM_ENUMEDGES

Return

int, return value from the hook.

Param 3:

R3TAG*, R3RA_Hook, R3RA_HookData, R3PRIMA_PointSpace

JavaScript

rc = obj.ENUMEDGES(p3);

Description

Enumerate polygon edges * to the given hook function. Note that not all geometric * object define edges. * If the hook returns 0 or -1, the enumeration is canceled. * Return value 1 continues enumeration. * The hook function is of form: * callback(void *data, R3OBJ *obj, R3PRIMEDGE *edge, R3INT edgeindex, R3INT handletype);

R3PRIMM_ENUMEDGESRECURSIVE

Method

ENUMEDGESRECURSIVE

Identifier

R3PRIMM_ENUMEDGESRECURSIVE

Return

int, return value from the hook.

Param 3:

R3TAG*, R3RA_Hook, R3RA_HookData, R3PRIMA_PointSpace

JavaScript

rc = obj.ENUMEDGESRECURSIVE(p3);

Description

Enumerate polygon edges * to the given hook function. Note that not all geometric * object define edges. * If the hook returns 0 or -1, the enumeration is canceled. * Return value 1 continues enumeration. * The hook function is of form: * callback(void *data, R3OBJ *obj, R3PRIMEDGE *edge, R3INT edgeindex, R3INT handletype);

R3PRIMM_RENDERUVMAP

Method

RENDERUVMAP

Identifier

R3PRIMM_RENDERUVMAP

Param 2:

R3INT, clid for mapping object. Can be defined if it is NULL (otherwise already defined by a sub class).

Param 3:

R3TAG*, tag list including attributes for the mapping object.

JavaScript

obj.RENDERUVMAP(0, p2, p3);

Description

describes the suitable mapping object for rendering the UV coords of the geometry. * If the object has a 'favorite' mapping type, it should handle this message by defining a suitable * mapping clid (unless already defined by sub class) and attrs before inheriting to super class.

R3PRIMM_DESELECTHANDLES

Method

DESELECTHANDLES

Identifier

R3PRIMM_DESELECTHANDLES

JavaScript

obj.DESELECTHANDLES();

Description

Deselect all points.

R3PRIMM_GETTOOBJSPACEMATRIX

Method

GETTOOBJSPACEMATRIX

Identifier

R3PRIMM_GETTOOBJSPACEMATRIX

Return

R3MATRIX, Address of the matrix or NULL if object space was identity

Param 3:

R3MATRIX, address of 4x4 matrix.

JavaScript

rc = obj.GETTOOBJSPACEMATRIX(p3);

Description

Fetch transformation matrix which can be used for transforming points from absolute space to objects space.

R3PRIMM_POINTCOUNTCHANGED

Method

POINTCOUNTCHANGED

Identifier

R3PRIMM_POINTCOUNTCHANGED

JavaScript

obj.POINTCOUNTCHANGED();

Description

Number of geometry points (R3PRIMA_PointCount) changed. All pointwise data, such as should be reallocated. The primitive base class reallocates VARATTR arrays in this method.

R3PRIMM_REMAPUV

Method

REMAPUV

Identifier

R3PRIMM_REMAPUV

JavaScript

obj.REMAPUV();

Description

Remap defulat UV point to new remapped one if object has changed its UV parameter space

R3PRIMM_BEGINMULTIMAPTOABSSP

Method

BEGINMULTIMAPTOABSSP

Identifier

R3PRIMM_BEGINMULTIMAPTOABSSP

Param 1:

R3INT, attribute (R3PRIMA_Points, R3PRIMA_SelectedPoints, R3PRIMA_LatticeSelectedPoints)

Param 2:

R3INT, attr index, if p1 is SelectedPoints or LatticeSelectedPoints

Param 3:

int*, size of the allocated buffer. The caller must pass this to R3PRIMM_FREEMULTIMAP

JavaScript

obj.BEGINMULTIMAPTOABSSP(p1, p2, p3);

Description

Allocate buffer for lattice mapping.

R3PRIMM_COMPUTEBOUNDINGBOX

Method

COMPUTEBOUNDINGBOX

Identifier

R3PRIMM_COMPUTEBOUNDINGBOX

Return

R3BOOL, true if succeeded

JavaScript

rc = obj.COMPUTEBOUNDINGBOX();

Description

Compute a bounding box for an object. It is up to the sub classes to implement this method. If the class doesn't handle this method, the r3prim base class uses R3PRIMM_EVALUATE to determine bounding box for an object.

R3PRIMM_ISCHILDDEPENDENT

Method

ISCHILDDEPENDENT

Identifier

R3PRIMM_ISCHILDDEPENDENT

Return

R3BOOL, true if object depends on the given sub object.

JavaScript

rc = obj.ISCHILDDEPENDENT();

Description

Find out whether the object depends on the given child object. For class implementors

R3PRIMM_ISSIBLINGDEPENDENT

Method

ISSIBLINGDEPENDENT

Identifier

R3PRIMM_ISSIBLINGDEPENDENT

Return

R3INT, TRUE

JavaScript

rc = obj.ISSIBLINGDEPENDENT();

Description

Find out whether the object depends on the siblings. For class implementors

R3PRIMM_DEPPOINTDELETEDBYIND

Method

DEPPOINTDELETEDBYIND

Identifier

R3PRIMM_DEPPOINTDELETEDBYIND

JavaScript

obj.DEPPOINTDELETEDBYIND();

Description

Point is deleted from our dependent object. If we refer to the deleted point, we must remove the reference.

R3PRIMM_LOCK

Method

LOCK

Identifier

R3PRIMM_LOCK

JavaScript

obj.LOCK();

Description

R3PRIMM_GETLOCK

Method

GETLOCK

Identifier

R3PRIMM_GETLOCK

JavaScript

obj.GETLOCK();

Description

R3PRIMM_GETEDITSTRING

Method

GETEDITSTRING

Identifier

R3PRIMM_GETEDITSTRING

Return

char*, symbolic name

JavaScript

rc = obj.GETEDITSTRING();

Description

Fetch symbolic name which describes the edit state of the object.

R3PRIMM_SETSELECTEDPOINTS

Method

SETSELECTEDPOINTS

Identifier

R3PRIMM_SETSELECTEDPOINTS

Param 3:

R3VECTOR, position in absolute space

JavaScript

obj.SETSELECTEDPOINTS(p3);

Description

sets the position of the selected points

R3PRIMM_ENUMDRAGHANDLES

Method

ENUMDRAGHANDLES

Identifier

R3PRIMM_ENUMDRAGHANDLES

JavaScript

obj.ENUMDRAGHANDLES();

Description

Like ENUMHANDLES, but enumerates only 'snap to' handles useful in modeling.

R3PRIMM_INSERT

Method

INSERT

Identifier

R3PRIMM_INSERT

Param 1:

R3OBJ*, parent level

Param 3:

R3OBJ*, object to be inserted

JavaScript

obj.INSERT(p1, p3);

Description

This method allow geometric objects itself to insert new objects into to the object hierarchy. The method gets mapped to R3DoA(R3PRIMA_InsertRemoveObj, R3PRIMA_InsertMth, obj_to_be_inserted);

R3PRIMM_REMOVE

Method

REMOVE

Identifier

R3PRIMM_REMOVE

Param 3:

R3OBJ*, object to be removed

JavaScript

obj.REMOVE(p3);

Description

Allows geometric objects itself remove geometric objects from the object tree. This method gets mapped to: R3DoA(R3PRIMA_InsertRemoveObj, R3PRIMA_RemoveMth, obj_to_be_removed);

R3PRIMM_GETFREENETFRAMEEX

Method

GETFREENETFRAMEEX

Identifier

R3PRIMM_GETFREENETFRAMEEX

JavaScript

obj.GETFREENETFRAMEEX();

Description

R3PRIMM_FINDCOMMONPARENT

Method

FINDCOMMONPARENT

Identifier

R3PRIMM_FINDCOMMONPARENT

Param 3:

R3OBJ*, other object

JavaScript

obj.FINDCOMMONPARENT(p3);

Description

Finds first common parent level of two objects

R3PRIMM_SCANLOOPS

Method

SCANLOOPS

Identifier

R3PRIMM_SCANLOOPS

Param 3:

R3OBJ*, object that initiated the call.

JavaScript

obj.SCANLOOPS(p3);

Description

this method can be used to detect loops created by objects that refer to objects other than their * own subobjects. Objects that contain such links should check if message sender (p3) is object itself * and return TRUE if this is the case.

R3PRIMM_ENUMSELECTHANDLES

Method

ENUMSELECTHANDLES

Identifier

R3PRIMM_ENUMSELECTHANDLES

Param 3:

R3TAG*, R3RA_Hook, R3RA_HookData, R3PRIMA_PointSpace

JavaScript

obj.ENUMSELECTHANDLES(p3);

Description

Enumerate selectable handles. See ENUMHANDLES.

R3PRIMM_ENUMSELECTHANDLESREC

Method

ENUMSELECTHANDLESREC

Identifier

R3PRIMM_ENUMSELECTHANDLESREC

Param 3:

R3TAG*, R3RA_Hook, R3RA_HookData, R3PRIMA_PointSpace

JavaScript

obj.ENUMSELECTHANDLESREC(p3);

Description

Recursively enumerate selectable handles. See ENUMHANDLES.

R3PRIMM_INVALIDATEMATRIXCACH

Method

INVALIDATEMATRIXCACH

Identifier

R3PRIMM_INVALIDATEMATRIXCACH

JavaScript

obj.INVALIDATEMATRIXCACH();

Description

Invalidate matrix cache. Call this only if * you manage to fetch reference to R3PRIMA_Matrix and you * modify the matrix directly.

R3PRIMM_ENUMCONTROLLEDOBJECT

Method

ENUMCONTROLLEDOBJECT

Identifier

R3PRIMM_ENUMCONTROLLEDOBJECT

Param 3:

R3TAG*, see example below

JavaScript

obj.ENUMCONTROLLEDOBJECT(p3);

Description

Enumerate any objects that this object modifies by object specific means * (other than normal child relationship, skeletal control or R3TTM_ENUMDEPENDENTS, see code/r3ttag.h) * Enumeration is done by (*callback)(controlledobj, hookdata)

R3PRIMM_HASPOINTWISERENDERPR

Method

HASPOINTWISERENDERPR

Identifier

R3PRIMM_HASPOINTWISERENDERPR

Param 3:

char*, name of property channel

JavaScript

obj.HASPOINTWISERENDERPR(p3);

Description

Ask object if it has a pointwise rendering attribute defined. * returns TURE if defined. *

R3PRIMM_ISINLATTICESPACE

Method

ISINLATTICESPACE

Identifier

R3PRIMM_ISINLATTICESPACE

Return

R3BOOL, true if can be mapped, false if not.

Param 1:

R3VECTOR, lattice coordinates of the point to be checked

Param 3:

R3VECTOR, point to be tested in abs space.

JavaScript

rc = obj.ISINLATTICESPACE(p1, p3);

Description

Check if given point can be mapped to the lattice space.

R3PRIMM_BACKUPPOINTS

Method

BACKUPPOINTS

Identifier

R3PRIMM_BACKUPPOINTS

Return

R3VECTOR, address of the varattr

JavaScript

rc = obj.BACKUPPOINTS();

Description

Backup geometry to R3PRIMA_OrigPoints varattr.

R3PRIMM_RESTOREBACKUPPOINTS

Method

RESTOREBACKUPPOINTS

Identifier

R3PRIMM_RESTOREBACKUPPOINTS

Return

R3BOOL, true if succesfully restored, FALSE if backu point array doesn't exist.

JavaScript

rc = obj.RESTOREBACKUPPOINTS();

Description

Restore backup points.

R3PRIMM_ENUMVARATTRS

Method

ENUMVARATTRS

Identifier

R3PRIMM_ENUMVARATTRS

Param 1:

R3OBJ*, callback object to be called

Param 2:

R3INT, callback method

Param 3:

void*, user data passed to callback object in p3.

JavaScript

obj.ENUMVARATTRS(p1, p2, p3);

Description

Enumerate varattrs. Callback object is called as: R3DoA3(cbobj, cbmth, varattrdata, varattrdim, userdata);

R3PRIMM_DETERMINISTIC

Method

DETERMINISTIC

Identifier

R3PRIMM_DETERMINISTIC

Return

R3INT, deterministic

JavaScript

rc = obj.DETERMINISTIC();

Description

If the object cannot handle R3PRIMM_TIME message in deterministic way (i.e. freely jump on any point in time), it must catch this message and return FALSE.

R3PRIMM_POINTAREAINDIRECTION

Method

POINTAREAINDIRECTION

Identifier

R3PRIMM_POINTAREAINDIRECTION

Param 1:

R3VECTOR, direction

Param 3:

R3FLOAT, area in square meters

JavaScript

obj.POINTAREAINDIRECTION(p1, p3);

Description

Area of point p2 in direction of the parameter vector p1.

R3PRIMM_POINTWIDTHINDIRECTIO

Method

POINTWIDTHINDIRECTIO

Identifier

R3PRIMM_POINTWIDTHINDIRECTIO

Param 1:

R3VECTOR, direction

Param 2:

R3VECTOR, point

Param 3:

R3FLOAT, width in meters

JavaScript

obj.POINTWIDTHINDIRECTIO(p1, p2, p3);

Description

Width of point p2 in direction of the parameter vector p1

R3PRIMM_SELECTNEXT

Method

SELECTNEXT

Identifier

R3PRIMM_SELECTNEXT

Param 3:

R3INT, R3SELECTMODE - see selection modes below

JavaScript

obj.SELECTNEXT(p3);

Description

Select next handle in the 'u' parameter direction.

R3PRIMM_SELECTPREV

Method

SELECTPREV

Identifier

R3PRIMM_SELECTPREV

Param 3:

R3INT, R3SELECTMODE - see selection modes below

JavaScript

obj.SELECTPREV(p3);

Description

Select previous handle in the 'u' parameter direction.

R3PRIMM_SELECTUP

Method

SELECTUP

Identifier

R3PRIMM_SELECTUP

Param 3:

R3INT, R3SELECTMODE - see selection modes below

JavaScript

obj.SELECTUP(p3);

Description

Select previous handle in the 'v' direction.

R3PRIMM_SELECTDOWN

Method

SELECTDOWN

Identifier

R3PRIMM_SELECTDOWN

Param 3:

R3INT, R3SELECTMODE - see selection modes below

JavaScript

obj.SELECTDOWN(p3);

Description

Selects next handle in the 'v' direction.

R3PRIMM_SELECTPRIMHANDLE

Method

SELECTPRIMHANDLE

Identifier

R3PRIMM_SELECTPRIMHANDLE

Param 3:

R3INT, R3PRIMHANDLES - handle to be selected

JavaScript

obj.SELECTPRIMHANDLE(p3);

Description

For r3prim defined object space handles only

R3PRIMM_GETSELECTEDPRIMHANDL

Method

GETSELECTEDPRIMHANDL

Identifier

R3PRIMM_GETSELECTEDPRIMHANDL

JavaScript

obj.GETSELECTEDPRIMHANDL();

Description

For r3prim defined object space handles only.

R3PRIMM_DOUPDATEMAP

Method

DOUPDATEMAP

Identifier

R3PRIMM_DOUPDATEMAP

JavaScript

obj.DOUPDATEMAP();

Description

Private, don't call this.

R3PRIMM_ENUMDRAGHANDLESRECUR

Method

ENUMDRAGHANDLESRECUR

Identifier

R3PRIMM_ENUMDRAGHANDLESRECUR

Param 3:

R3TAG*, R3RA_Hook, R3RA_HookData, R3PRIMA_PointSpace. See R3PRIMM_ENUM.

JavaScript

obj.ENUMDRAGHANDLESRECUR(p3);

Description

Enumerate drag point handles. These are not necessarily the same as 'selection handles'. For example, analytic rectangle has four drag handles (the four corners) but only three selection handles (specifying the geometry of the rectangle).

R3PRIMM_MATEVALSETOBJECT

Method

MATEVALSETOBJECT

Identifier

R3PRIMM_MATEVALSETOBJECT

Param 3:

R3OBJ*, object to be evaluated

JavaScript

obj.MATEVALSETOBJECT(p3);

Description

Set object to be evaluated. See MATEVALBEGIN and MATEVALEND methods

R3PRIMM_TRANSFORMABOUTCOG

Method

TRANSFORMABOUTCOG

Identifier

R3PRIMM_TRANSFORMABOUTCOG

JavaScript

obj.TRANSFORMABOUTCOG();

Description

Same as R3PRIMM_TRANSFORM except that the transformation origin (translation) is set to object's origin.

R3PRIMM_ATTACHTOLATTICE

Method

ATTACHTOLATTICE

Identifier

R3PRIMM_ATTACHTOLATTICE

Return

R3BOOL, true if succeeded.

Param 1:

R3OBJ*, lattice object

Param 2:

R3COORDSYS, lattice space

Param 3:

R3TAG*, R3PRIMA_MapFlags, R3PRIMA_MapTarget, R3PRIMA_MapWeight

JavaScript

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

Description

Attach the object to given lattice object with given lattice space, no internal 'abs to lattice' mapping is applied.

R3PRIMM_GETSELECTIONSPACE

Method

GETSELECTIONSPACE

Identifier

R3PRIMM_GETSELECTIONSPACE

Param 3:

R3COORDSYS, space

JavaScript

obj.GETSELECTIONSPACE(p3);

Description

return modeling space corresponding the current selection. If the object is not in edit mode, object space is returned.

R3PRIMM_SETNATIVESPACE

Method

SETNATIVESPACE

Identifier

R3PRIMM_SETNATIVESPACE

JavaScript

obj.SETNATIVESPACE();

Description

Set the current object space the native space

R3PRIMM_RESTORENATIVESPACE

Method

RESTORENATIVESPACE

Identifier

R3PRIMM_RESTORENATIVESPACE

JavaScript

obj.RESTORENATIVESPACE();

Description

Set the native space the current object space

R3PRIMM_DELPOINTBYINDEX

Method

DELPOINTBYINDEX

Identifier

R3PRIMM_DELPOINTBYINDEX

JavaScript

obj.DELPOINTBYINDEX();

Description

Delete point by given index.

R3PRIMM_INSERTPOINTBYINDEX

Method

INSERTPOINTBYINDEX

Identifier

R3PRIMM_INSERTPOINTBYINDEX

Return

R3BOOL, true if succeeded.

JavaScript

rc = obj.INSERTPOINTBYINDEX();

Description

Insert point to array.

R3PRIMM_ASSIGNPOINT

Method

ASSIGNPOINT

Identifier

R3PRIMM_ASSIGNPOINT

Return

R3BOOL, true if succeeded.

Param 1:

R3INT, index of the source point

Param 3:

R3INT, index of the target point.

JavaScript

rc = obj.ASSIGNPOINT(p1, p3);

Description

Assign 'p1' to 'p3'.

R3PRIMM_DEPPOINTASSIGNED

Method

DEPPOINTASSIGNED

Identifier

R3PRIMM_DEPPOINTASSIGNED

Param 2:

R3INT, from index

Param 3:

R3INT, to index

JavaScript

obj.DEPPOINTASSIGNED(0, p2, p3);

Description

Called when a R3PRIMM_ASSIGNPOINT, method is called for the target

R3PRIMM_UPDATELATTICECOORDSB

Method

UPDATELATTICECOORDSB

Identifier

R3PRIMM_UPDATELATTICECOORDSB

Param 3:

R3INT, index of the point to be updated

JavaScript

obj.UPDATELATTICECOORDSB(p3);

Description

Update the lattice coordinates of the given point 'index'.

R3PRIMM_UPDATESELECTEDLATTIC

Method

UPDATESELECTEDLATTIC

Identifier

R3PRIMM_UPDATESELECTEDLATTIC

JavaScript

obj.UPDATESELECTEDLATTIC();

Description

Update lattice coordinates of the selected points.

R3PRIMM_PREPLATTICECOORDSFOR

Method

PREPLATTICECOORDSFOR

Identifier

R3PRIMM_PREPLATTICECOORDSFOR

JavaScript

obj.PREPLATTICECOORDSFOR();

Description

Set lattice coords to 'animated' state.

R3PRIMM_DELETABLESELECTCOUNT

Method

DELETABLESELECTCOUNT

Identifier

R3PRIMM_DELETABLESELECTCOUNT

Return

R3INT, number of selected deletable points

JavaScript

rc = obj.DELETABLESELECTCOUNT();

Description

Returns the number of selected deletable points.

R3PRIMM_POINTISDELETABLE

Method

POINTISDELETABLE

Identifier

R3PRIMM_POINTISDELETABLE

Return

R3INT, TRUE if the point is deletable, FALSE otherwise

Param 3:

R3INT, index of the point

JavaScript

rc = obj.POINTISDELETABLE(p3);

Description

Returns whether a point whose index is given is deletable.

R3PRIMM_ENUMLATTICEREFERENCE

Method

ENUMLATTICEREFERENCE

Identifier

R3PRIMM_ENUMLATTICEREFERENCE

Param 3:

R3TAG*, R3RA_Hook, R3RA_HookData,

JavaScript

obj.ENUMLATTICEREFERENCE(p3);

Description

Enumerate lattice references. The given callback function will be called as 'callback(R3OBJ *obj, R3INT latticetag, int latticeid, void *hookdata);'

R3PRIMM_TR

Method

TR

Identifier

R3PRIMM_TR

Param 3:

R3MATRIX, transformation matrix defined in world space

JavaScript

obj.TR(p3);

Description

Transform the object by given 4x4 matrix

R3PRIMM_PREPAREEVALUATEOPT

Method

PREPAREEVALUATEOPT

Identifier

R3PRIMM_PREPAREEVALUATEOPT

JavaScript

obj.PREPAREEVALUATEOPT();

Description

R3PRIMM_UPDATEWIRERECURSIVE

Method

UPDATEWIRERECURSIVE

Identifier

R3PRIMM_UPDATEWIRERECURSIVE

JavaScript

obj.UPDATEWIRERECURSIVE();

Description

Updates the wire frame representation associated with the object. Also updates all the objects's childred.

R3PRIMM_HASPRIVATEGEOMDATA

Method

HASPRIVATEGEOMDATA

Identifier

R3PRIMM_HASPRIVATEGEOMDATA

JavaScript

obj.HASPRIVATEGEOMDATA();

Description

For class implementors: must return TRUE if the object has private geom. attributes which cannot be accessed via R3PRIMA_Points.

R3PRIMM_FREEMULTIMAP

Method

FREEMULTIMAP

Identifier

R3PRIMM_FREEMULTIMAP

Param 1:

R3INT, buffer size as returned by R3PRIMM_BEGINMULTIMAP

JavaScript

obj.FREEMULTIMAP(p1, 0);

Description

Free lattice mapping buffer

R3PRIMM_TRANSLATE

Method

TRANSLATE

Identifier

R3PRIMM_TRANSLATE

Param 3:

R3VECTOR, translation vector in world space

JavaScript

obj.TRANSLATE(p3);

Description

Translate the object space.

R3PRIMM_ROTATE

Method

ROTATE

Identifier

R3PRIMM_ROTATE

Param 1:

R3VECTOR, rotation center

Param 2:

R3VECTOR, rotation axis

Param 3:

R3FLOAT, angle in radians

JavaScript

obj.ROTATE(p1, p2, p3);

Description

Rotate the object in world space

R3PRIMM_SCALE

Method

SCALE

Identifier

R3PRIMM_SCALE

Param 1:

R3VECTOR, scale origin

Param 3:

R3VECTOR, scale factors on world x, y and z axes

JavaScript

obj.SCALE(p1, p3);

Description

Scale the object in world space

R3PRIMM_SKEW

Method

SKEW

Identifier

R3PRIMM_SKEW

Param 1:

R3VECTOR, scale origin

Param 2:

R3VECTOR, skew from point

Param 3:

R3VECTOR, skew to point

JavaScript

obj.SKEW(p1, p2, p3);

Description

Skew the object by given three points. The first * point is the skewing origin. The other two points, with the * origin point defines vectors that determine the skewing angle. * For example: p1=[0,0,0], p2=[0,1,0], p3=[1,1,0] will skew the * object 45 degrees on the 'x' axis ( |/ ) *

R3PRIMM_ENUMPOINTSNORMALSUVW

Method

ENUMPOINTSNORMALSUVW

Identifier

R3PRIMM_ENUMPOINTSNORMALSUVW

Return

R3BOOL, true if object handled.

Param 1:

R3OBJ*, callback object

Param 2:

R3INT*, callback method

JavaScript

rc = obj.ENUMPOINTSNORMALSUVW(p1, p2, 0);

Description

Enumerate geometric points, associated surface normals and uvw coordinates. It is up to sub classes to implement this method. Some geometric classes may not support uvw coordinates or surface normals, in which case NULL should be passed in corresponding parameter. Callback is called as: R3DoA3(callbackobj, callbackmth, obj, index, p_n_uvw); where R3VECTOR *p_n_uvw[3]; p_n_uvw[0] = &vertex; p_n_uvw[1] = &normal; p_n_uvw[2] = &uvw;

R3PRIMM_ADDSIMULCHOR

Method

ADDSIMULCHOR

Identifier

R3PRIMM_ADDSIMULCHOR

JavaScript

obj.ADDSIMULCHOR();

Description

Add simulation choreography for the object. * This method is for backward compability only.

R3PRIMM_BEGINMORPHING

Method

BEGINMORPHING

Identifier

R3PRIMM_BEGINMORPHING

Return

void*, context

Param 3:

R3INT*, number of morphing keys. By default this is fetched by calling. R3PRIMA_PointCount.

JavaScript

rc = obj.BEGINMORPHING(p3);

Description

The following four methods are used for implementing metamorphosis. For class implementors only.

R3PRIMM_GETMORPHINGKEY

Method

GETMORPHINGKEY

Identifier

R3PRIMM_GETMORPHINGKEY

Return

R3INT, 0 if key was not found, 1 if regular point, 2 if polar angle.

Param 1:

R3INT, index identifying the key.

Param 2:

void*, context from BEGINMORPHING method

Param 3:

R3VECTOR, morphing key

JavaScript

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

Description

This method is used for implementing metamorphosis. By default this maps to R3PRIMM_GETPOINT. However, sub classes may override this method to get interpolation work over angles or any other type of vector attributes. For class implementors only.

R3PRIMM_SETMORPHINGKEY

Method

SETMORPHINGKEY

Identifier

R3PRIMM_SETMORPHINGKEY

Param 1:

R3INT, index identifying the morphing key to be set

Param 2:

void*, context from BEGINMORPHING

Param 3:

R3VECTOR, morphing key.

JavaScript

obj.SETMORPHINGKEY(p1, p2, p3);

Description

Set given morphing key. The base class handles this method by calling R3PRIMM_SETPOINT. For class implementors only

R3PRIMM_ENDMORPHING

Method

ENDMORPHING

Identifier

R3PRIMM_ENDMORPHING

Param 3:

void*, context from BEGINMORPHING

JavaScript

obj.ENDMORPHING(p3);

Description

Called when all attributes have been processed. Geometric objects should update their wire frames in this method. For class implementors only

R3PRIMM_SETSELECTEDPOINTSBYA

Method

SETSELECTEDPOINTSBYA

Identifier

R3PRIMM_SETSELECTEDPOINTSBYA

Param 1:

R3INT, space

Param 3:

R3VECTOR, array of positions, one for each selected point

JavaScript

obj.SETSELECTEDPOINTSBYA(p1, p3);

Description

sets the position of the selected points

R3PRIMM_SETMATRIX

Method

SETMATRIX

Identifier

R3PRIMM_SETMATRIX

Param 1:

R3MATRIX, lattice matrix

Param 3:

R3MATRIX, new object space matrix.

JavaScript

obj.SETMATRIX(p1, p3);

Description

Private: Set given matrix to an object. No R3MM_CHANGED is called. Matrix caches are not invalidated. If you need to set object space, call R3SetAttrs(obj, R3PRIMA_Matrix, matrix, R3TAG_END).

R3PRIMM_ENUMPOINTSNORMALSDEN

Method

ENUMPOINTSNORMALSDEN

Identifier

R3PRIMM_ENUMPOINTSNORMALSDEN

Return

R3BOOL, true if all points enumerated.

Param 1:

R3OBJ*, callback object

Param 2:

R3INT, callback method

Param 3:

R3TAG*, a tag list, see attributes below

JavaScript

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

Description

Enumerate geometric points and associated surface normals at a given density. Evaluated points * cover geometry everywhere. It is up to sub classes to implement this method. * Some geometric classes may not support surface normals, * in which case NULL should be passed in corresponding parameter. * Callback is called as: R3DoA3(callbackobj, callbackmth, R3VECTOR *point, R3VECTOR *normal, void *contextdata); * If callback returns NULL, enumeration is cancelled.

R3PRIMCM_REGISTERUVMAPPER

Method

REGISTERUVMAPPER

Identifier

R3PRIMCM_REGISTERUVMAPPER

Return

R3BOOL, true if successfully registered

Param 1:

R3CLID, class id of the geometric object to be handled

JavaScript

rc = obj.REGISTERUVMAPPER(p1, 0);

Description

Register new 'uv mapper handler function. The handler is responsible for returning a map object that defines suitable uv coodinates for the geometric object in question. The handler function is of form: R3OBJ * (*)(R3OBJ *target); The handler creates the actual mapping primitive based on the geometry of the 'target' object.

R3PRIMM_CREATEUVMAPPER

Method

CREATEUVMAPPER

Identifier

R3PRIMM_CREATEUVMAPPER

Param 1:

R3CLID, default mapping class id in case no handler for this object type is given

Param 2:

R3CS*, optional orientation for the default type map

JavaScript

obj.CREATEUVMAPPER(p1, p2, 0);

Description

Creates a suitable uv mapper object for the geometric object in question. If no handler (see method above) is found, a given default map is created

R3PRIMM_RENDERCAUSTICSMAP

Method

RENDERCAUSTICSMAP

Identifier

R3PRIMM_RENDERCAUSTICSMAP

Param 2:

R3INT, clid for mapping object. Can be defined if it is NULL (otherwise already defined by a sub class).

Param 3:

R3TAG*, tag list including attributes for the mapping object.

JavaScript

obj.RENDERCAUSTICSMAP(0, p2, p3);

Description

same as RENDERUVMAP above but for caustics map rendering

R3PRIMM_COPYLATTICETAGGED

Method

COPYLATTICETAGGED

Identifier

R3PRIMM_COPYLATTICETAGGED

Return

R3BOOL, true if succeeded

Param 1:

R3INT, tag identifier

Param 2:

R3INT, old unique id

Param 3:

R3INT, new unique id

JavaScript

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

Description

Copy references to lattice objects and use a new unique Id for the copies.

R3PRIMM_ISSELECTED

Method

ISSELECTED

Identifier

R3PRIMM_ISSELECTED

Return

R3BOOL, true if selected

JavaScript

rc = obj.ISSELECTED();

Description

Test hierarchically if object or its parents are selected

R3PRIMM_SETSPACE

Method

SETSPACE

Identifier

R3PRIMM_SETSPACE

Param 3:

R3COORDSYS, a new handle space. Note: non-unit vectors will set scaling etc.

JavaScript

obj.SETSPACE(p3);

Description

Sets new orientation for objects space handles. Actual geometry does not transform.

R3PRIMM_FREEVARATTRS

Method

FREEVARATTRS

Identifier

R3PRIMM_FREEVARATTRS

Return

R3BOOL, TRUE

JavaScript

rc = obj.FREEVARATTRS();

Description

Delete all varattrs

R3PRIMM_HANDLESELECTIONINFO

Method

HANDLESELECTIONINFO

Identifier

R3PRIMM_HANDLESELECTIONINFO

Param 3:

char*, target buffer (max 79 chars+ null terminator)

JavaScript

obj.HANDLESELECTIONINFO(p3);

Description

Build a short handle selection status message (e.g. '50 points selected').

R3PRIMM_CHANGEVARATTRID

Method

CHANGEVARATTRID

Identifier

R3PRIMM_CHANGEVARATTRID

Return

R3BOOL, TRUE if varattr found & changed

Param 1:

R3INT, old identifier

Param 3:

R3INT, new identifier

JavaScript

rc = obj.CHANGEVARATTRID(p1, p3);

Description

Change var attr identifier

R3PRIMCM_ENUMPOINTWISETAGBIN

Method

ENUMPOINTWISETAGBIN

Identifier

R3PRIMCM_ENUMPOINTWISETAGBIN

Return

void*, return value from the caller. TRUE continues enumeration, any other return value cancels. The caller object is called as : R3DoA3(cb_obj, cb_mth, (R3INT)tag, (R3CLID)channel, cb_data);

Param 1:

R3OBJ*, object to be called

Param 2:

R3INT, method to be called

Param 3:

void*, data to be passed to the caller

JavaScript

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

Description

Enumerates pointwise tag-channel bindings. See also R3PRIMCM_ENUMTAGBINDINGS.

R3PRIMCM_MAPBINDINGTOCLID

Method

MAPBINDINGTOCLID

Identifier

R3PRIMCM_MAPBINDINGTOCLID

Return

int, class id

Param 3:

R3INT, attribute to which the channel class is bound

JavaScript

rc = obj.MAPBINDINGTOCLID(p3);

Description

returns the channel class identifier of a binding tag

R3PRIMCM_TOPOINTWISE

Method

TOPOINTWISE

Identifier

R3PRIMCM_TOPOINTWISE

Return

int, pointwise attribute id

Param 3:

R3INT, channel attribute

JavaScript

rc = obj.TOPOINTWISE(p3);

Description

maps constant channel attribute to pointwise attribute e.g. R3PRIMA_Color -> R3PRIMA_PointwiseColor

R3PRIMCM_FROMPOINTWISE

Method

FROMPOINTWISE

Identifier

R3PRIMCM_FROMPOINTWISE

Return

int, channel attribute id

Param 3:

R3INT, pointwise attribute

JavaScript

rc = obj.FROMPOINTWISE(p3);

Description

inverse of above

R3PRIMM_ENUMCHANNELS

Method

ENUMCHANNELS

Identifier

R3PRIMM_ENUMCHANNELS

Param 1:

R3OBJ*, callback object

Param 2:

R3INT, callback method

Param 3:

void*, callback context

JavaScript

obj.ENUMCHANNELS(p1, p2, p3);

Description

enumerate all (static and dynamic) channel references as R3DoA3(cbobj, cbmth, channelname, typeid (0 if unknown), context);

R3PRIMM_ISPARENT

Method

ISPARENT

Identifier

R3PRIMM_ISPARENT

Return

R3BOOL, true if parent

Param 3:

R3OBJ*, parent

JavaScript

rc = obj.ISPARENT(p3);

Description

Check if the given object is our parent.

R3PRIMM_GETINTERVAL

Method

GETINTERVAL

Identifier

R3PRIMM_GETINTERVAL

Param 3:

R3FLOAT, interval

JavaScript

obj.GETINTERVAL(p3);

Description

Get current time interval for effects based on real time.

R3PRIMM_COMPUTESIZE

Method

COMPUTESIZE

Identifier

R3PRIMM_COMPUTESIZE

Param 3:

R3FLOAT, store the result here

JavaScript

obj.COMPUTESIZE(p3);

Description

Compute object's radius

R3PRIMM_COMPUTECOG

Method

COMPUTECOG

Identifier

R3PRIMM_COMPUTECOG

Param 3:

R3VECTOR, store the result here

JavaScript

obj.COMPUTECOG(p3);

Description

Compute object's center of gravity (in obj space coords)

R3PRIMM_FINDBYNAME

Method

FINDBYNAME

Identifier

R3PRIMM_FINDBYNAME

Return

R3OBJ*, object or null if no object matching the given wild card was not found

Param 3:

char*, wildchard (sphere*, for example)

JavaScript

rc = obj.FINDBYNAME(p3);

Description

Find another geometric object, by name

R3PRIMCM_TRANSLATEIMAGE

Method

TRANSLATEIMAGE

Identifier

R3PRIMCM_TRANSLATEIMAGE

Return

R3BOOL, 0 if failed (img not found)

Param 1:

char*, image obj name

Param 3:

R3TAG*, tags for R3PRIMCA_ImageTranslator callback

JavaScript

rc = obj.TRANSLATEIMAGE(p1, p3);

Description

Calls Image Translator Objects

R3PRIMM_DROPACTIONS

Method

DROPACTIONS

Identifier

R3PRIMM_DROPACTIONS

Param 1:

R3VECTOR, mouse pointer (=drop) position

Param 3:

R3TAG*, tag list

JavaScript

obj.DROPACTIONS(p1, p3);

Description

This method is called after an object has been drag&dropped to a scene and inserted * into the scene.

R3PRIMM_ISRENDERVISIBLE

Method

ISRENDERVISIBLE

Identifier

R3PRIMM_ISRENDERVISIBLE

Param 3:

R3TAG*, render tag list. R3PRIMA_RenderAlways tag is searched and compared with primitives visibility flags.

JavaScript

obj.ISRENDERVISIBLE(p3);

Description

examines thr render tags defined in p3 to find out if the object is visible for * rendering actions. Geometry classes can use this method to handle the visibility details when processing PRIMM_RENDER and PRIMM_RENDERSURFACES methods.

R3PRIMM_GETORIENTEDBB

Method

GETORIENTEDBB

Identifier

R3PRIMM_GETORIENTEDBB

Param 3:

R3COORDSYS, coordinate system representing object's bounding box.

JavaScript

obj.GETORIENTEDBB(p3);

Description

Fetch oriented bounding box.

R3PRIMM_BEGINFINDCONNECTED

Method

BEGINFINDCONNECTED

Identifier

R3PRIMM_BEGINFINDCONNECTED

Return

void*, handle to optimization data (may be NULL if not needed)

JavaScript

rc = obj.BEGINFINDCONNECTED();

Description

Begin search of connected handles

R3PRIMM_ENDFINDCONNECTED

Method

ENDFINDCONNECTED

Identifier

R3PRIMM_ENDFINDCONNECTED

Param 3:

void*, optimization handle allocated in R3PRIMM_BEGINFINDCONNECTED (may be NULL)

JavaScript

obj.ENDFINDCONNECTED(p3);

Description

End search of connected handles

R3PRIMM_COMPUTEVOLUME

Method

COMPUTEVOLUME

Identifier

R3PRIMM_COMPUTEVOLUME

Param 1:

R3INT, accuracy of computation. Zero computes volume of bounding box.

Param 3:

R3FLOAT, result is stored here

JavaScript

obj.COMPUTEVOLUME(p1, p3);

Description

Computes approximated volume of object. * note: overlapping sub volumes are counted only once.

R3PRIMM_COMPUTEAREA

Method

COMPUTEAREA

Identifier

R3PRIMM_COMPUTEAREA

Param 1:

R3INT, accuracy of computation. Zero computes area of bounding box.

Param 2:

R3BOOL, if TRUE computes fused area (surfaces inside solid volumes are ignored)

Param 3:

R3FLOAT, result is stored here

JavaScript

obj.COMPUTEAREA(p1, p2, p3);

Description

Computes approximated surface area of object

R3PRIMM_INVERTHANDLESRECURSI

Method

INVERTHANDLESRECURSI

Identifier

R3PRIMM_INVERTHANDLESRECURSI

JavaScript

obj.INVERTHANDLESRECURSI();

Description

Like R3PRIMM_INVERTHANDLES, but recursive

R3PRIMM_GETFACEPOINTLOOP

Method

GETFACEPOINTLOOP

Identifier

R3PRIMM_GETFACEPOINTLOOP

Return

R3VECTOR, an array of vertices

Param 1:

R3INT, faceindex

Param 2:

R3INT, R3SPACE_LOCAL or R3SPACE_ABSOLUTE

Param 3:

R3INT*, number of points

JavaScript

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

Description

Return the vertices for the given face. Points must be deallocated via call * to R3Free(rc, sizeof(R3VECTOR) * pcount) Note: 1st and last point shoudl overlap to close the loop

R3PRIMM_HANDLESCONNECTED

Method

HANDLESCONNECTED

Identifier

R3PRIMM_HANDLESCONNECTED

Return

R3BOOL, true if connected (default)

Param 1:

R3INT, index 1

Param 2:

R3INT, index 2

Param 3:

void*, optimization handle allocated in R3PRIMM_BEGINFINDCONNECTED (if any)

JavaScript

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

Description

Check handle connectivity

R3PRIMM_RENAMECHANNELREF

Method

RENAMECHANNELREF

Identifier

R3PRIMM_RENAMECHANNELREF

Param 1:

char*, old name

Param 3:

char*, new name

JavaScript

obj.RENAMECHANNELREF(p1, p3);

Description

rename possible references to a given channel

R3PRIMCM_ADDTAGFINDER

Method

ADDTAGFINDER

Identifier

R3PRIMCM_ADDTAGFINDER

Param 1:

R3OBJ*, callback object

Param 3:

int, callback method

JavaScript

obj.ADDTAGFINDER(p1, p3);

Description

add tag finder hook for findtagclose acceleration

R3PRIMCM_REMTAGFINDER

Method

REMTAGFINDER

Identifier

R3PRIMCM_REMTAGFINDER

Param 1:

R3OBJ*, callback object

Param 3:

int, callback method

JavaScript

obj.REMTAGFINDER(p1, p3);

Description

remove tag finder hook for findtagclose acceleration

R3PRIMCM_ADDIMAGETRANSLATOR

Method

ADDIMAGETRANSLATOR

Identifier

R3PRIMCM_ADDIMAGETRANSLATOR

Param 1:

R3OBJ*, callback object

Param 3:

int, callback method

JavaScript

obj.ADDIMAGETRANSLATOR(p1, p3);

Description

add image translator callback for translating image object name references to respective * file data. The method applies a shared lock to the image library. Called as: * * R3SendMsg2(imgtranslatorobj, imgtranslatormth, imagename, * R3UIMGA_FileName, filename, R3UIMGA_Type, &type, * R3UIMGA_TextureAnimation, &txranim, R3UIMGA_Frame, &frame, R3TAG_END); * * filename is a string buffer of LEN_DOSNAME chars. * The type, frame etc define the current state of the image object.

R3PRIMCM_REMIMAGETRANSLATOR

Method

REMIMAGETRANSLATOR

Identifier

R3PRIMCM_REMIMAGETRANSLATOR

Param 1:

R3OBJ*, callback object

Param 3:

int, callback method

JavaScript

obj.REMIMAGETRANSLATOR(p1, p3);

Description

remove image translator hook

R3PRIMM_BEGINMATEVALEXT

Method

BEGINMATEVALEXT

Identifier

R3PRIMM_BEGINMATEVALEXT

Return

void*, context handle (see mat evaluator struct below)

Param 1:

R3OBJ*, obj to be evaluated (root is used if NULL)

Param 2:

R3CLID, clid of evaluated shader (surface properties is the default)

Param 3:

R3TAG*, tag list including R3PRIMA_MatEvalInChannels and R3PRIMA_MatEvalOutChannels string arrays

JavaScript

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

Description

Begin material evaluation.

R3PRIMM_ENDMATEVALEXT

Method

ENDMATEVALEXT

Identifier

R3PRIMM_ENDMATEVALEXT

Param 3:

void*, context handle

JavaScript

obj.ENDMATEVALEXT(p3);

Description

End material evaluation.

R3PRIMM_MATEVALEXT

Method

MATEVALEXT

Identifier

R3PRIMM_MATEVALEXT

Return

R3BOOL, true if succeeded

Param 3:

void*, context

JavaScript

rc = obj.MATEVALEXT(p3);

Description

evaluates prepared context

R3PRIMM_MATEVALEXTOBJECT

Method

MATEVALEXTOBJECT

Identifier

R3PRIMM_MATEVALEXTOBJECT

Return

R3BOOL, true if succeeded (NULL if obj not found)

Param 3:

void*, context handle returned by R3PRIMM_BEGINMATEVALEXT

JavaScript

rc = obj.MATEVALEXTOBJECT(p3);

Description

Set sub target object of evaluation. Sub objecs of hierarchy defined by R3PRIMM_BEGINMATEVALEXT often have different material applied to them.

R3PRIMM_MATERIALMAPCHANGED

Method

MATERIALMAPCHANGED

Identifier

R3PRIMM_MATERIALMAPCHANGED

JavaScript

obj.MATERIALMAPCHANGED();

Description

tells an object that a material or mat map affecting the object has changed

R3PRIMM_SETPOINTWISEFLOAT

Method

SETPOINTWISEFLOAT

Identifier

R3PRIMM_SETPOINTWISEFLOAT

Return

R3BOOL, true if index was valid and property was found.

Param 1:

R3INT, pointwise attribute to be set

Param 2:

R3INT, index of the point to be set

Param 3:

R3FLOAT, value

JavaScript

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

Description

Set pointwise float attribute.

R3PRIMM_SETPOINTWISEVECTOR

Method

SETPOINTWISEVECTOR

Identifier

R3PRIMM_SETPOINTWISEVECTOR

Return

R3BOOL, true if index was valid and property was found.

Param 1:

R3INT, pointwise attribute to be set

Param 2:

R3INT, index of the point to be set

Param 3:

R3VECTOR, value

JavaScript

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

Description

Set pointwise vector attribute.

R3PRIMM_GETPOINTWISEFLOAT

Method

GETPOINTWISEFLOAT

Identifier

R3PRIMM_GETPOINTWISEFLOAT

Return

R3BOOL, true if index was valid and property was found.

Param 1:

R3INT, pointwise attribute to be fetched

Param 2:

R3INT, index of the point to be set

Param 3:

R3FLOAT, value

JavaScript

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

Description

Set pointwise float attribute.

R3PRIMM_GETPOINTWISEVECTOR

Method

GETPOINTWISEVECTOR

Identifier

R3PRIMM_GETPOINTWISEVECTOR

Return

R3BOOL, true if index was valid and property was found.

Param 1:

R3INT, pointwise attribute to be fetched

Param 2:

R3INT, index of the point to be set

Param 3:

R3VECTOR, value

JavaScript

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

Description

Set pointwise vector attribute.

R3PRIMM_BEGINMULTIMAP returns array of r3mapbuffer items. The size of the array is R3PRIMA_PointCount.

/

R3SELMOD_NEW
R3SELMOD_UNION
R3SELMOD_SUBTRACT
R3SELMOD_INTERSECT
R3SELMOD_DIFFERENCE

map targets for R3PRIMM_MAPTOOBJECTSPACE and R3PRIMMA_MapTarget

R3PRIMMAP_OBJECT
R3PRIMMAP_POINT
R3PRIMMAP_SELECTEDPOINT
R3PRIMMAP_LOOKATPOINT

return flag bits for ISMAPPED method

R3MAPF_POINTS
R3MAPF_OBJECT
R3MAPF_ABS
R3PRIMC_MAXPRIMLATTICES

Parent

Attribute

Parent

Identifier

R3PRIMA_Parent

JavaScript type

Object

C type

R3OBJ*

Description

parent object

Syntax


jsobj.SetParent(value);
value = jsobj.GetParent();


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

Matrix

Attribute

Matrix

Identifier

R3PRIMA_Matrix

Type

r3Matrix

Description

object local space matrix

Syntax


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


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

MatrixTranslate

Attribute

MatrixTranslate

Identifier

R3PRIMA_MatrixTranslate

Type

r3Vect

Description

intuitive transl. component of _Matrix

Syntax


jsobj.SetMatrixTranslate(value);
value = jsobj.GetMatrixTranslate();


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_MatrixTranslate, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_MatrixTranslate, &value, R3TAG_END);

MatrixScale

Attribute

MatrixScale

Identifier

R3PRIMA_MatrixScale

Type

r3Vect

Description

scale component

Syntax


jsobj.SetMatrixScale(value);
value = jsobj.GetMatrixScale();


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_MatrixScale, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_MatrixScale, &value, R3TAG_END);

MatrixRotate

Attribute

MatrixRotate

Identifier

R3PRIMA_MatrixRotate

Type

r3Vect

Description

rotation

Syntax


jsobj.SetMatrixRotate(value);
value = jsobj.GetMatrixRotate();


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_MatrixRotate, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_MatrixRotate, &value, R3TAG_END);

MatrixSkew

Attribute

MatrixSkew

Identifier

R3PRIMA_MatrixSkew

Type

r3Vect

Description

skew

Syntax


jsobj.SetMatrixSkew(value);
value = jsobj.GetMatrixSkew();


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_MatrixSkew, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_MatrixSkew, &value, R3TAG_END);

WireObject

Attribute

WireObject

Identifier

R3PRIMA_WireObject

JavaScript type

Object

C type

R3OBJ*

Description

wire frame object

Syntax


jsobj.SetWireObject(value);
value = jsobj.GetWireObject();


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

WireObject2

Attribute

WireObject2

Identifier

R3PRIMA_WireObject2

JavaScript type

Object

C type

R3OBJ*

Description

shading object

Syntax


jsobj.SetWireObject2(value);
value = jsobj.GetWireObject2();


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

Flags

Attribute

Flags

Identifier

R3PRIMA_Flags

JavaScript type

Integer

C type

R3INT

Description

see R3PRIMF_ flags

Syntax


jsobj.SetFlags(value);
value = jsobj.GetFlags();


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

ClosedU

Attribute

ClosedU

Identifier

R3PRIMA_ClosedU

JavaScript type

Boolean

C type

R3BOOL

Description

closed in 1st dimension

Syntax


value = jsobj.GetClosedU();


R3BOOL value;
R3GetAttrs(r3obj, R3PRIMA_ClosedU, &value, R3TAG_END);

ClosedV

Attribute

ClosedV

Identifier

R3PRIMA_ClosedV

JavaScript type

Boolean

C type

R3BOOL

Description

closed in 2nd dimension

Syntax


value = jsobj.GetClosedV();


R3BOOL value;
R3GetAttrs(r3obj, R3PRIMA_ClosedV, &value, R3TAG_END);

ClosedW

Attribute

ClosedW

Identifier

R3PRIMA_ClosedW

JavaScript type

Boolean

C type

R3BOOL

Description

closed in 3rd dimension

Syntax


value = jsobj.GetClosedW();


R3BOOL value;
R3GetAttrs(r3obj, R3PRIMA_ClosedW, &value, R3TAG_END);

Position

Attribute

Position

Identifier

R3PRIMA_Position

Type

r3Vect

Description

position of the object

Syntax


jsobj.SetPosition(value);
value = jsobj.GetPosition();


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_Position, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_Position, &value, R3TAG_END);

PointsSelection

Attribute

PointsSelection

Identifier

R3PRIMA_PointsSelection

JavaScript type

String

C type

char*[]

Description

array of bytes describing select state for geom. points

Syntax


value = jsobj.GetPointsSelection();


char*[] value;
R3GetAttrs(r3obj, R3PRIMA_PointsSelection, &value, R3TAG_END);

Dimensions

Attribute

Dimensions

Identifier

R3PRIMA_Dimensions

JavaScript type

Integer

C type

R3INT

Description

read only, dim. of parameter space, 1 for curves, 2 for surfaces

Syntax


value = jsobj.GetDimensions();


R3INT value;
R3GetAttrs(r3obj, R3PRIMA_Dimensions, &value, R3TAG_END);

CountU

Attribute

CountU

Identifier

R3PRIMA_CountU

JavaScript type

Integer

C type

R3INT

Description

number of geom points in 1st dimension

Syntax


value = jsobj.GetCountU();


R3INT value;
R3GetAttrs(r3obj, R3PRIMA_CountU, &value, R3TAG_END);

CountV

Attribute

CountV

Identifier

R3PRIMA_CountV

JavaScript type

Integer

C type

R3INT

Description

number of geom points in 2nd dimension

Syntax


value = jsobj.GetCountV();


R3INT value;
R3GetAttrs(r3obj, R3PRIMA_CountV, &value, R3TAG_END);

CountW

Attribute

CountW

Identifier

R3PRIMA_CountW

JavaScript type

Integer

C type

R3INT

Description

number of geom points in r3d dimension

Syntax


value = jsobj.GetCountW();


R3INT value;
R3GetAttrs(r3obj, R3PRIMA_CountW, &value, R3TAG_END);

DegreeU

Attribute

DegreeU

Identifier

R3PRIMA_DegreeU

JavaScript type

Integer

C type

R3INT

Description

read only, degree of the surface, polygonal == 1, quadric == 2, cubic == 3 etc

Syntax


value = jsobj.GetDegreeU();


R3INT value;
R3GetAttrs(r3obj, R3PRIMA_DegreeU, &value, R3TAG_END);

DegreeV

Attribute

DegreeV

Identifier

R3PRIMA_DegreeV

JavaScript type

Integer

C type

R3INT

Description

read only, degree in 2nd dimension

Syntax


value = jsobj.GetDegreeV();


R3INT value;
R3GetAttrs(r3obj, R3PRIMA_DegreeV, &value, R3TAG_END);

DegreeW

Attribute

DegreeW

Identifier

R3PRIMA_DegreeW

JavaScript type

Integer

C type

R3INT

Description

read only, degree in 3rd dimension

Syntax


value = jsobj.GetDegreeW();


R3INT value;
R3GetAttrs(r3obj, R3PRIMA_DegreeW, &value, R3TAG_END);

Points

Attribute

Points

Identifier

R3PRIMA_Points

Type

r3Vect

Description

address of geometry point array

Syntax


jsobj.SetPoints(value);
value = jsobj.GetPoints();


R3VECTOR* value = ...;
R3SetAttrs(r3obj, R3PRIMA_Points, value, R3TAG_END);
R3VECTOR* value;
R3GetAttrs(r3obj, R3PRIMA_Points, &value, R3TAG_END);

PointCount

Attribute

PointCount

Identifier

R3PRIMA_PointCount

JavaScript type

Integer

C type

R3INT

Description

number of geometry points

Syntax


jsobj.SetPointCount(value);
value = jsobj.GetPointCount();


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

PointSize

Attribute

PointSize

Identifier

R3PRIMA_PointSize

JavaScript type

Integer

C type

R3INT

Description

number of bytes to next point

Syntax


value = jsobj.GetPointSize();


R3INT value;
R3GetAttrs(r3obj, R3PRIMA_PointSize, &value, R3TAG_END);

PointType

Attribute

PointType

Identifier

R3PRIMA_PointType

JavaScript type

Integer

C type

int

Description

R3TYPEID, type of point

Syntax


value = jsobj.GetPointType();


int value;
R3GetAttrs(r3obj, R3PRIMA_PointType, &value, R3TAG_END);

ComplexityU

Attribute

ComplexityU

Identifier

R3PRIMA_ComplexityU

JavaScript type

Integer

C type

R3INT

Description

minimal amount of isop. curves needed to visualize the shape. Use multiplies of these values to fit evaluated curves to 'critical' parameter values like sharp edges.

Syntax


value = jsobj.GetComplexityU();


R3INT value;
R3GetAttrs(r3obj, R3PRIMA_ComplexityU, &value, R3TAG_END);

ComplexityV

Attribute

ComplexityV

Identifier

R3PRIMA_ComplexityV

JavaScript type

Integer

C type

R3INT

Description

See ComplexityU

Syntax


value = jsobj.GetComplexityV();


R3INT value;
R3GetAttrs(r3obj, R3PRIMA_ComplexityV, &value, R3TAG_END);

ComplexityW

Attribute

ComplexityW

Identifier

R3PRIMA_ComplexityW

JavaScript type

Integer

C type

R3INT

Description

See ComplexityU

Syntax


value = jsobj.GetComplexityW();


R3INT value;
R3GetAttrs(r3obj, R3PRIMA_ComplexityW, &value, R3TAG_END);

Size

Attribute

Size

Identifier

R3PRIMA_Size

JavaScript type

Number

C type

R3FLOAT

Description

size of the bounding sphere

Syntax


value = jsobj.GetSize();


R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_Size, &value, R3TAG_END);

WireCurveSelection

Attribute

WireCurveSelection

Identifier

R3PRIMA_WireCurveSelection

JavaScript type

Integer

C type

R3INT

Description

TRUE if wireframe curves can be selected

Syntax


value = jsobj.GetWireCurveSelection();


R3INT value;
R3GetAttrs(r3obj, R3PRIMA_WireCurveSelection, &value, R3TAG_END);

WireCurveEvaluation

Attribute

WireCurveEvaluation

Identifier

R3PRIMA_WireCurveEvaluation

JavaScript type

Integer

C type

R3INT

Description

TRUE if wireframe curves can be evaluated

Syntax


value = jsobj.GetWireCurveEvaluation();


R3INT value;
R3GetAttrs(r3obj, R3PRIMA_WireCurveEvaluation, &value, R3TAG_END);

SelectedU

Attribute

SelectedU

Identifier

R3PRIMA_SelectedU

JavaScript type

String

C type

R3UBYTE*

Description

selection flags for u curves

Syntax


value = jsobj.GetSelectedU();


R3UBYTE* value;
R3GetAttrs(r3obj, R3PRIMA_SelectedU, &value, R3TAG_END);

SelectedV

Attribute

SelectedV

Identifier

R3PRIMA_SelectedV

JavaScript type

String

C type

R3UBYTE*

Description

selection flags for v curves

Syntax


value = jsobj.GetSelectedV();


R3UBYTE* value;
R3GetAttrs(r3obj, R3PRIMA_SelectedV, &value, R3TAG_END);

DefaultObjectSpace

Attribute

DefaultObjectSpace

Identifier

R3PRIMA_DefaultObjectSpace

Type

r3Coordsys

Description

untransformed object space

Syntax


jsobj.SetDefaultObjectSpace(value);
value = jsobj.GetDefaultObjectSpace();


R3COORDSYS value = ...;
R3SetAttrs(r3obj, R3PRIMA_DefaultObjectSpace, &value, R3TAG_END);
R3COORDSYS value;
R3GetAttrs(r3obj, R3PRIMA_DefaultObjectSpace, &value, R3TAG_END);

ObjectSpace

Attribute

ObjectSpace

Identifier

R3PRIMA_ObjectSpace

Type

r3Coordsys

Description

transformed object space in abs space

Syntax


jsobj.SetObjectSpace(value);
value = jsobj.GetObjectSpace();


R3COORDSYS value = ...;
R3SetAttrs(r3obj, R3PRIMA_ObjectSpace, &value, R3TAG_END);
R3COORDSYS value;
R3GetAttrs(r3obj, R3PRIMA_ObjectSpace, &value, R3TAG_END);

Uncovered1

Attribute

Uncovered1

Identifier

R3PRIMA_Uncovered1

JavaScript type

Boolean

C type

R3BOOL

Description

up to sub classes define this

Syntax


jsobj.SetUncovered1(value);
value = jsobj.GetUncovered1();


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

Uncovered2

Attribute

Uncovered2

Identifier

R3PRIMA_Uncovered2

JavaScript type

Boolean

C type

R3BOOL

Description

up to sub classes define this

Syntax


jsobj.SetUncovered2(value);
value = jsobj.GetUncovered2();


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

Sector

Attribute

Sector

Identifier

R3PRIMA_Sector

JavaScript type

Boolean

C type

R3BOOL

Description

up to sub classes define this

Syntax


jsobj.SetSector(value);
value = jsobj.GetSector();


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

PointwiseVelocity

Attribute

PointwiseVelocity

Identifier

R3PRIMA_PointwiseVelocity

Type

r3Vect

Description

array of pointwise velocities

Syntax


jsobj.SetPointwiseVelocity(value);
value = jsobj.GetPointwiseVelocity();


R3VECTOR* value = ...;
R3SetAttrs(r3obj, R3PRIMA_PointwiseVelocity, value, R3TAG_END);
R3VECTOR* value;
R3GetAttrs(r3obj, R3PRIMA_PointwiseVelocity, &value, R3TAG_END);

Quaternion

Attribute

Quaternion

Identifier

R3PRIMA_Quaternion

Type

r3Vect4

Description

orientation in quaternion form

Syntax


jsobj.SetQuaternion(value);
value = jsobj.GetQuaternion();


R3VECTOR4 value = ...;
R3SetAttrs(r3obj, R3PRIMA_Quaternion, value, R3TAG_END);
R3VECTOR4 value;
R3GetAttrs(r3obj, R3PRIMA_Quaternion, &value, R3TAG_END);

WfInvisible

Attribute

WfInvisible

Identifier

R3PRIMA_WfInvisible

JavaScript type

Integer

C type

R3INT

Description

set/get wf invisible flag

Syntax


jsobj.SetWfInvisible(value);
value = jsobj.GetWfInvisible();


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

RtInvisible

Attribute

RtInvisible

Identifier

R3PRIMA_RtInvisible

JavaScript type

Integer

C type

R3INT

Description

set/get rt invisible flag

Syntax


jsobj.SetRtInvisible(value);
value = jsobj.GetRtInvisible();


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

LatticeMatrixTransla

Attribute

LatticeMatrixTransla

Identifier

R3PRIMA_LatticeMatrixTransla

Type

r3Vect

Description

translation in lattice space

Syntax


jsobj.SetLatticeMatrixTransla(value);
value = jsobj.GetLatticeMatrixTransla();


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_LatticeMatrixTranslate, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_LatticeMatrixTranslate, &value, R3TAG_END);

LatticeMatrixRotate

Attribute

LatticeMatrixRotate

Identifier

R3PRIMA_LatticeMatrixRotate

Type

r3Vect

Description

scale in lattice space

Syntax


jsobj.SetLatticeMatrixRotate(value);
value = jsobj.GetLatticeMatrixRotate();


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_LatticeMatrixRotate, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_LatticeMatrixRotate, &value, R3TAG_END);

LatticeMatrixScale

Attribute

LatticeMatrixScale

Identifier

R3PRIMA_LatticeMatrixScale

Type

r3Vect

Description

rotation in lattice space

Syntax


jsobj.SetLatticeMatrixScale(value);
value = jsobj.GetLatticeMatrixScale();


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_LatticeMatrixScale, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_LatticeMatrixScale, &value, R3TAG_END);

LatticeMatrixSkew

Attribute

LatticeMatrixSkew

Identifier

R3PRIMA_LatticeMatrixSkew

Type

r3Vect

Description

skew in lattice space

Syntax


jsobj.SetLatticeMatrixSkew(value);
value = jsobj.GetLatticeMatrixSkew();


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_LatticeMatrixSkew, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_LatticeMatrixSkew, &value, R3TAG_END);

ShadowInvisible

Attribute

ShadowInvisible

Identifier

R3PRIMA_ShadowInvisible

JavaScript type

Boolean

C type

R3BOOL

Description

object doesn't cast shadows if true

Syntax


jsobj.SetShadowInvisible(value);
value = jsobj.GetShadowInvisible();


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

ReflectionInvisible

Attribute

ReflectionInvisible

Identifier

R3PRIMA_ReflectionInvisible

JavaScript type

Boolean

C type

R3BOOL

Description

if true cannot be seen in reflections

Syntax


jsobj.SetReflectionInvisible(value);
value = jsobj.GetReflectionInvisible();


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

CameraInvisible

Attribute

CameraInvisible

Identifier

R3PRIMA_CameraInvisible

JavaScript type

Boolean

C type

R3BOOL

Description

can be seen only through reflections

Syntax


jsobj.SetCameraInvisible(value);
value = jsobj.GetCameraInvisible();


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

TextureMatrixTransla

Attribute

TextureMatrixTransla

Identifier

R3PRIMA_TextureMatrixTransla

Type

r3Vect

Description

translation for texture matrix

Syntax


jsobj.SetTextureMatrixTransla(value);
value = jsobj.GetTextureMatrixTransla();


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_TextureMatrixTranslate, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_TextureMatrixTranslate, &value, R3TAG_END);

TextureMatrixRotate

Attribute

TextureMatrixRotate

Identifier

R3PRIMA_TextureMatrixRotate

Type

r3Vect

Description

Syntax


jsobj.SetTextureMatrixRotate(value);
value = jsobj.GetTextureMatrixRotate();


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_TextureMatrixRotate, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_TextureMatrixRotate, &value, R3TAG_END);

TextureMatrixScale

Attribute

TextureMatrixScale

Identifier

R3PRIMA_TextureMatrixScale

Type

r3Vect

Description

Syntax


jsobj.SetTextureMatrixScale(value);
value = jsobj.GetTextureMatrixScale();


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_TextureMatrixScale, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_TextureMatrixScale, &value, R3TAG_END);

TextureMatrixSkew

Attribute

TextureMatrixSkew

Identifier

R3PRIMA_TextureMatrixSkew

Type

r3Vect

Description

Syntax


jsobj.SetTextureMatrixSkew(value);
value = jsobj.GetTextureMatrixSkew();


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_TextureMatrixSkew, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_TextureMatrixSkew, &value, R3TAG_END);

LatticeSelectedArray

Attribute

LatticeSelectedArray

Identifier

R3PRIMA_LatticeSelectedArray

JavaScript type

Integer

C type

R3INT

Description

indexed attr

Syntax


value = jsobj.GetLatticeSelectedArray(index);


R3INT value;
R3GetAttrs(r3obj, R3PRIMA_LatticeSelectedArraySize, &value, R3TAG_END);

LatticeSelectedItemS

Attribute

LatticeSelectedItemS

Identifier

R3PRIMA_LatticeSelectedItemS

JavaScript type

Integer

C type

R3INT

Description

indexed attr

Syntax


value = jsobj.GetLatticeSelectedItemS(index);


R3INT value;
R3GetAttrs(r3obj, R3PRIMA_LatticeSelectedItemSize, &value, R3TAG_END);

MapWeight

Attribute

MapWeight

Identifier

R3PRIMA_MapWeight

JavaScript type

Number

C type

R3FLOAT*

Description

weight for multi mapping

Syntax


jsobj.SetMapWeight(index, value);
value = jsobj.GetMapWeight(index);


R3FLOAT* value = ...;
R3SetAttrs(r3obj, R3PRIMA_MapWeight, value, R3TAG_END);
R3FLOAT* value;
R3GetAttrs(r3obj, R3PRIMA_MapWeight, &value, R3TAG_END);

MatrixRotateHPB

Attribute

MatrixRotateHPB

Identifier

R3PRIMA_MatrixRotateHPB

Type

r3Vect

Description

total rotation HPB

Syntax


jsobj.SetMatrixRotateHPB(value);
value = jsobj.GetMatrixRotateHPB();


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_MatrixRotateHPB, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_MatrixRotateHPB, &value, R3TAG_END);

TotalTranslate

Attribute

TotalTranslate

Identifier

R3PRIMA_TotalTranslate

Type

r3Vect

Description

total position in abs space

Syntax


jsobj.SetTotalTranslate(value);
value = jsobj.GetTotalTranslate();


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_TotalTranslate, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_TotalTranslate, &value, R3TAG_END);

TotalScale

Attribute

TotalScale

Identifier

R3PRIMA_TotalScale

Type

r3Vect

Description

total scale in abs space

Syntax


jsobj.SetTotalScale(value);
value = jsobj.GetTotalScale();


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_TotalScale, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_TotalScale, &value, R3TAG_END);

TotalRotate

Attribute

TotalRotate

Identifier

R3PRIMA_TotalRotate

Type

r3Vect

Description

total rotation (Quaternion) in abs space

Syntax


jsobj.SetTotalRotate(value);
value = jsobj.GetTotalRotate();


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_TotalRotate, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_TotalRotate, &value, R3TAG_END);

MatrixTranslateX

Attribute

MatrixTranslateX

Identifier

R3PRIMA_MatrixTranslateX

JavaScript type

Number

C type

R3FLOAT

Description

x translation

Syntax


jsobj.SetMatrixTranslateX(value);
value = jsobj.GetMatrixTranslateX();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_MatrixTranslateX, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_MatrixTranslateX, &value, R3TAG_END);

MatrixTranslateY

Attribute

MatrixTranslateY

Identifier

R3PRIMA_MatrixTranslateY

JavaScript type

Number

C type

R3FLOAT

Description

y translation

Syntax


jsobj.SetMatrixTranslateY(value);
value = jsobj.GetMatrixTranslateY();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_MatrixTranslateY, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_MatrixTranslateY, &value, R3TAG_END);

MatrixTranslateZ

Attribute

MatrixTranslateZ

Identifier

R3PRIMA_MatrixTranslateZ

JavaScript type

Number

C type

R3FLOAT

Description

z translation

Syntax


jsobj.SetMatrixTranslateZ(value);
value = jsobj.GetMatrixTranslateZ();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_MatrixTranslateZ, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_MatrixTranslateZ, &value, R3TAG_END);

LatticePoints

Attribute

LatticePoints

Identifier

R3PRIMA_LatticePoints

Type

r3Vect

Description

'R3PRIMA_LatticePoints' not documented

Syntax


jsobj.SetLatticePoints(value);
value = jsobj.GetLatticePoints();


R3VECTOR* value = ...;
R3SetAttrs(r3obj, R3PRIMA_LatticePoints, value, R3TAG_END);
R3VECTOR* value;
R3GetAttrs(r3obj, R3PRIMA_LatticePoints, &value, R3TAG_END);

FaceSelection

Attribute

FaceSelection

Identifier

R3PRIMA_FaceSelection

JavaScript type

Integer

C type

R3INT

Description

TRUE if polygon faces can be selected

Syntax


jsobj.SetFaceSelection(value);
value = jsobj.GetFaceSelection();


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

EdgeSelection

Attribute

EdgeSelection

Identifier

R3PRIMA_EdgeSelection

JavaScript type

Integer

C type

R3INT

Description

TRUE if polygon edges can be selected

Syntax


jsobj.SetEdgeSelection(value);
value = jsobj.GetEdgeSelection();


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

HasGeometry

Attribute

HasGeometry

Identifier

R3PRIMA_HasGeometry

JavaScript type

Boolean

C type

R3BOOL

Description

define 3d geometry which can be evaluated

Syntax


value = jsobj.GetHasGeometry();


R3BOOL value;
R3GetAttrs(r3obj, R3PRIMA_HasGeometry, &value, R3TAG_END);

PhysicalSize

Attribute

PhysicalSize

Identifier

R3PRIMA_PhysicalSize

JavaScript type

Number

C type

R3FLOAT

Description

size of the bounding sphere of object's mass. 0 for massless object

Syntax


value = jsobj.GetPhysicalSize();


R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_PhysicalSize, &value, R3TAG_END);

LatticeSelectedPoint

Attribute

LatticeSelectedPoint

Identifier

R3PRIMA_LatticeSelectedPoint

Type

r3Vect

Description

indexed attr,

Syntax


jsobj.SetLatticeSelectedPoint(index, value);
value = jsobj.GetLatticeSelectedPoint(index);


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_LatticeSelectedPoints, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_LatticeSelectedPoints, &value, R3TAG_END);

PointSelection

Attribute

PointSelection

Identifier

R3PRIMA_PointSelection

JavaScript type

Integer

C type

R3INT

Description

TRUE if points be selected (default TRUE)

Syntax


jsobj.SetPointSelection(value);
value = jsobj.GetPointSelection();


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

LatticePointSize

Attribute

LatticePointSize

Identifier

R3PRIMA_LatticePointSize

JavaScript type

Integer

C type

R3INT

Description

read only

Syntax


value = jsobj.GetLatticePointSize();


R3INT value;
R3GetAttrs(r3obj, R3PRIMA_LatticePointSize, &value, R3TAG_END);

TotalSkew

Attribute

TotalSkew

Identifier

R3PRIMA_TotalSkew

Type

r3Vect

Description

total skew in abs space

Syntax


jsobj.SetTotalSkew(value);
value = jsobj.GetTotalSkew();


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_TotalSkew, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_TotalSkew, &value, R3TAG_END);

RotateInHPB

Attribute

RotateInHPB

Identifier

R3PRIMA_RotateInHPB

JavaScript type

Boolean

C type

R3BOOL

Description

interpolate in HPB/Quaternion space

Syntax


jsobj.SetRotateInHPB(value);
value = jsobj.GetRotateInHPB();


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

LatticeSelectedWeigh

Attribute

LatticeSelectedWeigh

Identifier

R3PRIMA_LatticeSelectedWeigh

JavaScript type

Number

C type

R3FLOAT

Description

indexed attr,

Syntax


jsobj.SetLatticeSelectedWeigh(index, value);
value = jsobj.GetLatticeSelectedWeigh(index);


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_LatticeSelectedWeights, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_LatticeSelectedWeights, &value, R3TAG_END);

LatticePointWeights

Attribute

LatticePointWeights

Identifier

R3PRIMA_LatticePointWeights

JavaScript type

Number

C type

R3FLOAT

Description

indexed attr,

Syntax


jsobj.SetLatticePointWeights(index, value);


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_LatticePointWeights, value, R3TAG_END);

NativeSpace

Attribute

NativeSpace

Identifier

R3PRIMA_NativeSpace

Type

r3Coordsys

Description

native space

Syntax


value = jsobj.GetNativeSpace();


R3COORDSYS value;
R3GetAttrs(r3obj, R3PRIMA_NativeSpace, &value, R3TAG_END);

NoShadows

Attribute

NoShadows

Identifier

R3PRIMA_NoShadows

JavaScript type

Boolean

C type

R3BOOL

Description

object doesn't 'receive' shadows if true

Syntax


jsobj.SetNoShadows(value);
value = jsobj.GetNoShadows();


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

EvaluatesContinuousl

Attribute

EvaluatesContinuousl

Identifier

R3PRIMA_EvaluatesContinuousl

JavaScript type

Boolean

C type

R3BOOL

Description

read only. TRUE if PRIMM_EVALUATE is continuous wrt. its 3d parameter

Syntax


value = jsobj.GetEvaluatesContinuousl();


R3BOOL value;
R3GetAttrs(r3obj, R3PRIMA_EvaluatesContinuously, &value, R3TAG_END);

HasRenderGeometry

Attribute

HasRenderGeometry

Identifier

R3PRIMA_HasRenderGeometry

JavaScript type

Boolean

C type

R3BOOL

Description

read only - TRUE if object renders a geometry

Syntax


value = jsobj.GetHasRenderGeometry();


R3BOOL value;
R3GetAttrs(r3obj, R3PRIMA_HasRenderGeometry, &value, R3TAG_END);

InvertTextureV

Attribute

InvertTextureV

Identifier

R3PRIMA_InvertTextureV

JavaScript type

Boolean

C type

R3BOOL

Description

Syntax


value = jsobj.GetInvertTextureV();


R3BOOL value;
R3GetAttrs(r3obj, R3PRIMA_InvertTextureV, &value, R3TAG_END);

Hollow

Attribute

Hollow

Identifier

R3PRIMA_Hollow

JavaScript type

Boolean

C type

R3BOOL

Description

Syntax


jsobj.SetHollow(value);
value = jsobj.GetHollow();


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

SelectedPoints

Attribute

SelectedPoints

Identifier

R3PRIMA_SelectedPoints

Type

r3Vect

Description

indexed attr, see R3PRIMA_LatticeSelectedPoints

Syntax


jsobj.SetSelectedPoints(index, value);
value = jsobj.GetSelectedPoints(index);


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_SelectedPoints, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_SelectedPoints, &value, R3TAG_END);

Space

Attribute

Space

Identifier

R3PRIMA_Space

Type

r3Matrix

Description

object's local matrix, same as R3PRIMA_Matrix, but supports keyframing

Syntax


jsobj.SetSpace(value);


R3MATRIX value = ...;
R3SetAttrs(r3obj, R3PRIMA_Space, &value, R3TAG_END);

HitInvisible

Attribute

HitInvisible

Identifier

R3PRIMA_HitInvisible

JavaScript type

Integer

C type

R3INT

Description

set/get hit invisible flag

Syntax


jsobj.SetHitInvisible(value);
value = jsobj.GetHitInvisible();


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

WireQuality

Attribute

WireQuality

Identifier

R3PRIMA_WireQuality

JavaScript type

Integer

C type

R3INT

Description

curve quality

Syntax


jsobj.SetWireQuality(value);
value = jsobj.GetWireQuality();


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

WireQuality2

Attribute

WireQuality2

Identifier

R3PRIMA_WireQuality2

JavaScript type

Integer

C type

R3INT

Description

mesh drawing density

Syntax


jsobj.SetWireQuality2(value);
value = jsobj.GetWireQuality2();


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

ShadedQuality

Attribute

ShadedQuality

Identifier

R3PRIMA_ShadedQuality

JavaScript type

Integer

C type

R3INT

Description

shaded quality

Syntax


jsobj.SetShadedQuality(value);
value = jsobj.GetShadedQuality();


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

TextureQuality

Attribute

TextureQuality

Identifier

R3PRIMA_TextureQuality

JavaScript type

Integer

C type

R3INT

Description

texture quality

Syntax


jsobj.SetTextureQuality(value);
value = jsobj.GetTextureQuality();


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

SelectiveVisibility

Attribute

SelectiveVisibility

Identifier

R3PRIMA_SelectiveVisibility

JavaScript type

Integer

C type

R3INT

Description

see visibity defs below

Syntax


jsobj.SetSelectiveVisibility(value);
value = jsobj.GetSelectiveVisibility();


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

RenderControlPoly

Attribute

RenderControlPoly

Identifier

R3PRIMA_RenderControlPoly

JavaScript type

Integer

C type

R3INT

Description

see control polygon defs below

Syntax


jsobj.SetRenderControlPoly(value);
value = jsobj.GetRenderControlPoly();


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

HideBoundingBox

Attribute

HideBoundingBox

Identifier

R3PRIMA_HideBoundingBox

JavaScript type

Boolean

C type

R3BOOL

Description

hide bounding box

Syntax


jsobj.SetHideBoundingBox(value);
value = jsobj.GetHideBoundingBox();


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

HideRotateHandle

Attribute

HideRotateHandle

Identifier

R3PRIMA_HideRotateHandle

JavaScript type

Boolean

C type

R3BOOL

Description

hide rotate handles

Syntax


jsobj.SetHideRotateHandle(value);
value = jsobj.GetHideRotateHandle();


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

HideCoordSys

Attribute

HideCoordSys

Identifier

R3PRIMA_HideCoordSys

JavaScript type

Boolean

C type

R3BOOL

Description

hide coordsys handles

Syntax


jsobj.SetHideCoordSys(value);
value = jsobj.GetHideCoordSys();


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

HideGeometry

Attribute

HideGeometry

Identifier

R3PRIMA_HideGeometry

JavaScript type

Boolean

C type

R3BOOL

Description

hide geometry

Syntax


jsobj.SetHideGeometry(value);
value = jsobj.GetHideGeometry();


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

NoShading

Attribute

NoShading

Identifier

R3PRIMA_NoShading

JavaScript type

Boolean

C type

R3BOOL

Description

draw always as wireframe

Syntax


jsobj.SetNoShading(value);
value = jsobj.GetNoShading();


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

RenderCovers

Attribute

RenderCovers

Identifier

R3PRIMA_RenderCovers

JavaScript type

Boolean

C type

R3BOOL

Description

draw end planes

Syntax


jsobj.SetRenderCovers(value);
value = jsobj.GetRenderCovers();


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

HideEditModeRotateHa

Attribute

HideEditModeRotateHa

Identifier

R3PRIMA_HideEditModeRotateHa

JavaScript type

Boolean

C type

R3BOOL

Description

hide pointwise rotation handle

Syntax


jsobj.SetHideEditModeRotateHa(value);
value = jsobj.GetHideEditModeRotateHa();


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

HideEditModeCoordSys

Attribute

HideEditModeCoordSys

Identifier

R3PRIMA_HideEditModeCoordSys

JavaScript type

Boolean

C type

R3BOOL

Description

hide pointwise coordsys handle

Syntax


jsobj.SetHideEditModeCoordSys(value);
value = jsobj.GetHideEditModeCoordSys();


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

UseVertexColors

Attribute

UseVertexColors

Identifier

R3PRIMA_UseVertexColors

JavaScript type

Boolean

C type

R3BOOL

Description

use vertex colors

Syntax


jsobj.SetUseVertexColors(value);
value = jsobj.GetUseVertexColors();


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

RenderAsBoundingBox

Attribute

RenderAsBoundingBox

Identifier

R3PRIMA_RenderAsBoundingBox

JavaScript type

Boolean

C type

R3BOOL

Description

render as bounding box

Syntax


jsobj.SetRenderAsBoundingBox(value);
value = jsobj.GetRenderAsBoundingBox();


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

DrawOnlySelected

Attribute

DrawOnlySelected

Identifier

R3PRIMA_DrawOnlySelected

JavaScript type

Boolean

C type

R3BOOL

Description

draw only if selected

Syntax


jsobj.SetDrawOnlySelected(value);
value = jsobj.GetDrawOnlySelected();


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

EvalMaterialWithNorm

Attribute

EvalMaterialWithNorm

Identifier

R3PRIMA_EvalMaterialWithNorm

JavaScript type

Boolean

C type

R3BOOL

Description

draw only if selected

Syntax


jsobj.SetEvalMaterialWithNorm(value);
value = jsobj.GetEvalMaterialWithNorm();


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

ShowName

Attribute

ShowName

Identifier

R3PRIMA_ShowName

JavaScript type

Boolean

C type

R3BOOL

Description

Syntax


jsobj.SetShowName(value);
value = jsobj.GetShowName();


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

Color

Attribute

Color

Identifier

R3PRIMA_Color

Type

r3Vect

Description

object's color

Syntax


jsobj.SetColor(value);
value = jsobj.GetColor();


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

Mass

Attribute

Mass

Identifier

R3PRIMA_Mass

JavaScript type

Number

C type

R3FLOAT

Description

mass in kg

Syntax


jsobj.SetMass(value);
value = jsobj.GetMass();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_Mass, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_Mass, &value, R3TAG_END);

Density

Attribute

Density

Identifier

R3PRIMA_Density

JavaScript type

Number

C type

R3FLOAT

Description

density of the material

Syntax


jsobj.SetDensity(value);
value = jsobj.GetDensity();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_Density, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_Density, &value, R3TAG_END);

Charge

Attribute

Charge

Identifier

R3PRIMA_Charge

JavaScript type

Number

C type

R3FLOAT

Description

electric charge

Syntax


jsobj.SetCharge(value);
value = jsobj.GetCharge();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_Charge, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_Charge, &value, R3TAG_END);

SurfaceFriction

Attribute

SurfaceFriction

Identifier

R3PRIMA_SurfaceFriction

JavaScript type

Number

C type

R3FLOAT

Description

surface friction

Syntax


jsobj.SetSurfaceFriction(value);
value = jsobj.GetSurfaceFriction();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_SurfaceFriction, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_SurfaceFriction, &value, R3TAG_END);

ReboundEnergy

Attribute

ReboundEnergy

Identifier

R3PRIMA_ReboundEnergy

JavaScript type

Number

C type

R3FLOAT

Description

rebound energy

Syntax


jsobj.SetReboundEnergy(value);
value = jsobj.GetReboundEnergy();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_ReboundEnergy, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_ReboundEnergy, &value, R3TAG_END);

Velocity

Attribute

Velocity

Identifier

R3PRIMA_Velocity

Type

r3Vect

Description

velocity

Syntax


jsobj.SetVelocity(value);
value = jsobj.GetVelocity();


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_Velocity, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_Velocity, &value, R3TAG_END);

Spin

Attribute

Spin

Identifier

R3PRIMA_Spin

Type

r3Vect

Description

spin defined in objects local space

Syntax


jsobj.SetSpin(value);
value = jsobj.GetSpin();


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_Spin, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_Spin, &value, R3TAG_END);

Inertia

Attribute

Inertia

Identifier

R3PRIMA_Inertia

Type

r3Vect

Description

inertia about x, y and z axes

Syntax


jsobj.SetInertia(value);
value = jsobj.GetInertia();


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_Inertia, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_Inertia, &value, R3TAG_END);

FluidVelocity

Attribute

FluidVelocity

Identifier

R3PRIMA_FluidVelocity

JavaScript type

Number

C type

R3FLOAT

Description

velocity of the medium in param. space

Syntax


jsobj.SetFluidVelocity(value);
value = jsobj.GetFluidVelocity();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_FluidVelocity, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_FluidVelocity, &value, R3TAG_END);

FluidPressure

Attribute

FluidPressure

Identifier

R3PRIMA_FluidPressure

JavaScript type

Number

C type

R3FLOAT

Description

pressure

Syntax


jsobj.SetFluidPressure(value);
value = jsobj.GetFluidPressure();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_FluidPressure, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_FluidPressure, &value, R3TAG_END);

FluidFrictionCoeffic

Attribute

FluidFrictionCoeffic

Identifier

R3PRIMA_FluidFrictionCoeffic

JavaScript type

Number

C type

R3FLOAT

Description

drag force generated by medium

Syntax


jsobj.SetFluidFrictionCoeffic(value);
value = jsobj.GetFluidFrictionCoeffic();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_FluidFrictionCoefficients, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_FluidFrictionCoefficients, &value, R3TAG_END);

FluidVelocityCoeffic

Attribute

FluidVelocityCoeffic

Identifier

R3PRIMA_FluidVelocityCoeffic

JavaScript type

Number

C type

R3FLOAT

Description

fluid velocity in object space

Syntax


jsobj.SetFluidVelocityCoeffic(value);
value = jsobj.GetFluidVelocityCoeffic();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_FluidVelocityCoefficients, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_FluidVelocityCoefficients, &value, R3TAG_END);

CenterOfGravity

Attribute

CenterOfGravity

Identifier

R3PRIMA_CenterOfGravity

Type

r3Vect

Description

center of gravity point

Syntax


jsobj.SetCenterOfGravity(value);
value = jsobj.GetCenterOfGravity();


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_CenterOfGravity, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_CenterOfGravity, &value, R3TAG_END);

LayerVersion

Attribute

LayerVersion

Identifier

R3PRIMA_LayerVersion

JavaScript type

Integer

C type

R3INT

Description

read only

Syntax


jsobj.SetLayerVersion(value);
value = jsobj.GetLayerVersion();


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

Transparency

Attribute

Transparency

Identifier

R3PRIMA_Transparency

Type

r3Vect

Description

surface transparency

Syntax


jsobj.SetTransparency(value);
value = jsobj.GetTransparency();


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

Reflection

Attribute

Reflection

Identifier

R3PRIMA_Reflection

Type

r3Vect

Description

surface reflectivity

Syntax


jsobj.SetReflection(value);
value = jsobj.GetReflection();


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

Alpha

Attribute

Alpha

Identifier

R3PRIMA_Alpha

JavaScript type

Number

C type

R3FLOAT

Description

alpha

Syntax


jsobj.SetAlpha(value);
value = jsobj.GetAlpha();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_Alpha, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_Alpha, &value, R3TAG_END);

Fade

Attribute

Fade

Identifier

R3PRIMA_Fade

JavaScript type

Number

C type

R3FLOAT

Description

level of fading

Syntax


jsobj.SetFade(value);
value = jsobj.GetFade();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_Fade, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_Fade, &value, R3TAG_END);

TextureMapMethod

Attribute

TextureMapMethod

Identifier

R3PRIMA_TextureMapMethod

JavaScript type

Integer

C type

R3INT

Description

color map, reflection map

Syntax


jsobj.SetTextureMapMethod(value);
value = jsobj.GetTextureMapMethod();


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

Gravity

Attribute

Gravity

Identifier

R3PRIMA_Gravity

JavaScript type

Integer

C type

R3INT

Description

activate gravity

Syntax


jsobj.SetGravity(value);
value = jsobj.GetGravity();


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

Magnetism

Attribute

Magnetism

Identifier

R3PRIMA_Magnetism

JavaScript type

Integer

C type

R3INT

Description

activate electromagnetism

Syntax


jsobj.SetMagnetism(value);
value = jsobj.GetMagnetism();


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

LifeTime

Attribute

LifeTime

Identifier

R3PRIMA_LifeTime

JavaScript type

Number

C type

R3FLOAT

Description

object's life time in seconds

Syntax


jsobj.SetLifeTime(value);
value = jsobj.GetLifeTime();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_LifeTime, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_LifeTime, &value, R3TAG_END);

FluidDynamics

Attribute

FluidDynamics

Identifier

R3PRIMA_FluidDynamics

JavaScript type

Integer

C type

R3INT

Description

activate fluid dynamics

Syntax


jsobj.SetFluidDynamics(value);
value = jsobj.GetFluidDynamics();


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

ExplodeTime

Attribute

ExplodeTime

Identifier

R3PRIMA_ExplodeTime

JavaScript type

Number

C type

R3FLOAT

Description

explode object as soon as it gets this old

Syntax


jsobj.SetExplodeTime(value);
value = jsobj.GetExplodeTime();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_ExplodeTime, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_ExplodeTime, &value, R3TAG_END);

ExplodeAtImpact

Attribute

ExplodeAtImpact

Identifier

R3PRIMA_ExplodeAtImpact

JavaScript type

Boolean

C type

R3BOOL

Description

explode as soon as collision is detected

Syntax


jsobj.SetExplodeAtImpact(value);
value = jsobj.GetExplodeAtImpact();


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

Collision

Attribute

Collision

Identifier

R3PRIMA_Collision

JavaScript type

Integer

C type

R3INT

Description

collision detection activated

Syntax


jsobj.SetCollision(value);
value = jsobj.GetCollision();


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

UVTextureMap

Attribute

UVTextureMap

Identifier

R3PRIMA_UVTextureMap

JavaScript type

String

C type

char*

Description

name of the texture map image

Syntax


jsobj.SetUVTextureMap(value);
value = jsobj.GetUVTextureMap();


char* value = ...;
R3SetAttrs(r3obj, R3PRIMA_UVTextureMap, value, R3TAG_END);
char* value;
R3GetAttrs(r3obj, R3PRIMA_UVTextureMap, &value, R3TAG_END);

Elasticity

Attribute

Elasticity

Identifier

R3PRIMA_Elasticity

JavaScript type

Number

C type

R3FLOAT

Description

string force, 0 is totally elastic

Syntax


jsobj.SetElasticity(value);
value = jsobj.GetElasticity();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_Elasticity, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_Elasticity, &value, R3TAG_END);

Rigidity

Attribute

Rigidity

Identifier

R3PRIMA_Rigidity

JavaScript type

Number

C type

R3FLOAT

Description

levl of internal friction forces, zero means deformable, 1 means totally rigid

Syntax


jsobj.SetRigidity(value);
value = jsobj.GetRigidity();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_Rigidity, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_Rigidity, &value, R3TAG_END);

Illumination

Attribute

Illumination

Identifier

R3PRIMA_Illumination

Type

r3Vect

Description

surface illumination color

Syntax


jsobj.SetIllumination(value);
value = jsobj.GetIllumination();


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

MatSpaceCoords

Attribute

MatSpaceCoords

Identifier

R3PRIMA_MatSpaceCoords

Type

r3Vect

Description

mat. space coords

Syntax


jsobj.SetMatSpaceCoords(value);
value = jsobj.GetMatSpaceCoords();


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_MatSpaceCoords, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_MatSpaceCoords, &value, R3TAG_END);

OpticalThickness

Attribute

OpticalThickness

Identifier

R3PRIMA_OpticalThickness

JavaScript type

Number

C type

R3FLOAT

Description

optical thickness (controlling refraction factor)

Syntax


jsobj.SetOpticalThickness(value);
value = jsobj.GetOpticalThickness();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_OpticalThickness, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_OpticalThickness, &value, R3TAG_END);

Scope

Attribute

Scope

Identifier

R3PRIMA_Scope

JavaScript type

Number

C type

R3FLOAT

Description

scope

Syntax


jsobj.SetScope(value);
value = jsobj.GetScope();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_Scope, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_Scope, &value, R3TAG_END);

SpecularColor

Attribute

SpecularColor

Identifier

R3PRIMA_SpecularColor

Type

r3Vect

Description

specular surface color

Syntax


jsobj.SetSpecularColor(value);
value = jsobj.GetSpecularColor();


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

UVCoords

Attribute

UVCoords

Identifier

R3PRIMA_UVCoords

Type

r3Vect

Description

uv coordinates

Syntax


jsobj.SetUVCoords(value);
value = jsobj.GetUVCoords();


R3VECTOR value = ...;
R3SetAttrs(r3obj, R3PRIMA_UVCoords, value, R3TAG_END);
R3VECTOR value;
R3GetAttrs(r3obj, R3PRIMA_UVCoords, &value, R3TAG_END);

VolumeSampling

Attribute

VolumeSampling

Identifier

R3PRIMA_VolumeSampling

JavaScript type

Number

C type

R3FLOAT

Description

level of volumetric sampling

Syntax


jsobj.SetVolumeSampling(value);
value = jsobj.GetVolumeSampling();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_VolumeSampling, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_VolumeSampling, &value, R3TAG_END);

CollisionAccuracy

Attribute

CollisionAccuracy

Identifier

R3PRIMA_CollisionAccuracy

JavaScript type

Integer

C type

R3INT

Description

controls collision accuracy

Syntax


jsobj.SetCollisionAccuracy(value);
value = jsobj.GetCollisionAccuracy();


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

Impact

Attribute

Impact

Identifier

R3PRIMA_Impact

JavaScript type

Boolean

C type

R3BOOL

Description

impact wave active

Syntax


jsobj.SetImpact(value);
value = jsobj.GetImpact();


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

ImpactTime

Attribute

ImpactTime

Identifier

R3PRIMA_ImpactTime

JavaScript type

Number

C type

R3FLOAT

Description

last impact time

Syntax


jsobj.SetImpactTime(value);
value = jsobj.GetImpactTime();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_ImpactTime, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_ImpactTime, &value, R3TAG_END);

ImpactAmplitude

Attribute

ImpactAmplitude

Identifier

R3PRIMA_ImpactAmplitude

JavaScript type

Number

C type

R3FLOAT

Description

strength of impact wave generated by last collision

Syntax


jsobj.SetImpactAmplitude(value);
value = jsobj.GetImpactAmplitude();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_ImpactAmplitude, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_ImpactAmplitude, &value, R3TAG_END);

ImpactDuration

Attribute

ImpactDuration

Identifier

R3PRIMA_ImpactDuration

JavaScript type

Number

C type

R3FLOAT

Description

total duration of impact wave

Syntax


jsobj.SetImpactDuration(value);
value = jsobj.GetImpactDuration();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_ImpactDuration, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_ImpactDuration, &value, R3TAG_END);

ImpactLevel

Attribute

ImpactLevel

Identifier

R3PRIMA_ImpactLevel

JavaScript type

Number

C type

R3FLOAT

Description

current level of impact wave

Syntax


jsobj.SetImpactLevel(value);
value = jsobj.GetImpactLevel();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_ImpactLevel, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_ImpactLevel, &value, R3TAG_END);

ImpactWaveType

Attribute

ImpactWaveType

Identifier

R3PRIMA_ImpactWaveType

JavaScript type

Integer

C type

R3INT

Description

type of the impact wave

Syntax


jsobj.SetImpactWaveType(value);
value = jsobj.GetImpactWaveType();


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

VolumeDefined

Attribute

VolumeDefined

Identifier

R3PRIMA_VolumeDefined

JavaScript type

Boolean

C type

R3BOOL

Description

true if defines analytic volume

Syntax


jsobj.SetVolumeDefined(value);
value = jsobj.GetVolumeDefined();


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

ExplodeParticleCount

Attribute

ExplodeParticleCount

Identifier

R3PRIMA_ExplodeParticleCount

JavaScript type

Integer

C type

R3INT

Description

number of fractions generated by explosion

Syntax


jsobj.SetExplodeParticleCount(value);
value = jsobj.GetExplodeParticleCount();


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

ExplodeParticleVeloc

Attribute

ExplodeParticleVeloc

Identifier

R3PRIMA_ExplodeParticleVeloc

JavaScript type

Number

C type

R3FLOAT

Description

initial velocity of generated particles

Syntax


jsobj.SetExplodeParticleVeloc(value);
value = jsobj.GetExplodeParticleVeloc();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_ExplodeParticleVelocity, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_ExplodeParticleVelocity, &value, R3TAG_END);

Explode

Attribute

Explode

Identifier

R3PRIMA_Explode

JavaScript type

Boolean

C type

R3BOOL

Description

if true, object gets exploded

Syntax


jsobj.SetExplode(value);
value = jsobj.GetExplode();


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

NotSaved

Attribute

NotSaved

Identifier

R3PRIMA_NotSaved

JavaScript type

Boolean

C type

R3BOOL

Description

if true object is not saved

Syntax


jsobj.SetNotSaved(value);
value = jsobj.GetNotSaved();


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

TextureIsImage

Attribute

TextureIsImage

Identifier

R3PRIMA_TextureIsImage

JavaScript type

Boolean

C type

R3BOOL

Description

if true PRIMA_UVtextureMap refers to image object

Syntax


jsobj.SetTextureIsImage(value);
value = jsobj.GetTextureIsImage();


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

HiddenVisibility

Attribute

HiddenVisibility

Identifier

R3PRIMA_HiddenVisibility

JavaScript type

Number

C type

R3FLOAT

Description

alpha visibility

Syntax


jsobj.SetHiddenVisibility(value);
value = jsobj.GetHiddenVisibility();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3PRIMA_HiddenVisibility, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3PRIMA_HiddenVisibility, &value, R3TAG_END);

ExtraFlags

Attribute

ExtraFlags

Identifier

R3PRIMA_ExtraFlags

JavaScript type

Integer

C type

R3INT

Description

for internal use

Syntax


jsobj.SetExtraFlags(value);
value = jsobj.GetExtraFlags();


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

ByteOptions1

Attribute

ByteOptions1

Identifier

R3PRIMA_ByteOptions1

JavaScript type

Integer

C type

R3INT

Description

for internal use

Syntax


jsobj.SetByteOptions1(value);
value = jsobj.GetByteOptions1();


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

ByteOptions2

Attribute

ByteOptions2

Identifier

R3PRIMA_ByteOptions2

JavaScript type

Integer

C type

R3INT

Description

for internal use

Syntax


jsobj.SetByteOptions2(value);
value = jsobj.GetByteOptions2();


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

DrawQualities

Attribute

DrawQualities

Identifier

R3PRIMA_DrawQualities

JavaScript type

Integer

C type

R3INT

Description

for internal use

Syntax


jsobj.SetDrawQualities(value);
value = jsobj.GetDrawQualities();


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

CausticsRes

Attribute

CausticsRes

Identifier

R3PRIMA_CausticsRes

JavaScript type

Integer

C type

R3INT

Description

for internal use

Syntax


jsobj.SetCausticsRes(value);
value = jsobj.GetCausticsRes();


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

SimulOptions

Attribute

SimulOptions

Identifier

R3PRIMA_SimulOptions

JavaScript type

Integer

C type

R3INT

Description

for internal use

Syntax


jsobj.SetSimulOptions(value);
value = jsobj.GetSimulOptions();


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

Values for R3PRIMA_RenderControlPoly

R3PWRCTRLP_WHENEDITING
R3PWRCTRLP_ALWAYS
R3PWRCTRLP_NEVER

Values for R3PRIMA_SelectiveVisibility

R3PRIMSHOW_BOTH
R3PRIMSHOW_SHADED
R3PRIMSHOW_UNSHADED

Handle types

R3H_TRANSLATEX
R3H_TRANSLATEY
R3H_TRANSLATEZ
R3H_SCALEX
R3H_SCALEY
R3H_SCALEZ
R3H_ROTATEX
R3H_ROTATEY
R3H_ROTATEZ
R3H_PIVOT
R3H_FACE
R3H_EDGE
R3H_CURVEU
R3H_CURVEV
R3H_NOSELECTED
R3H_SELECTHANDLE

R3PRIMA_LASTNORMALATTR

see extrapolate codes below

A couple of free dynamic tags

R3PRIMA_MaterialEvaluatorObj

R3PRIMA_BoundingBox

progress indicator for the 'root' object

R3PRIMA_ProgressIndicatorObj
R3PRIMA_LatticeMatrix
R3PRIMA_LatticeList
R3PRIMA_UVTextureMatrix
R3PRIMA_InsertRemoveObj

R3PRIMA_NativeMatrix
R3PRIMA_ConstructorObj

Some new tags for data packing

R3PRIMA_MatEvalExtObj

select types

R3PRIMSELTYPE_POINT
R3PRIMSELTYPE_LASSO
R3PRIMSELTYPE_INSIDEBOX

impact wave types

R3IMPACTW_0_AMPLITUDE
R3IMPACTW_AMPLITUDE_0

Flags for select window

R3PRIMF_SELECTED
R3PRIMF__EDITING
R3PRIMF_OPEN

RT flags for R3PRIMM_RENDER. Effect is enabled if a flag in R3PRIMA_RTEnableFlags is set. Set a flag in R3PRIMA_RTFoundFlags if the primitive needs a certain rendering operation.

R3PRTF_CAUSTICS

Codes for R3PRIMA_RenderAlways

R3PRIMRENDER_VISIBLES
R3PRIMRENDER_ALL
R3PRIMRENDER_HITOBJECTS

Rendering flags

R3PRIMF_INVERTED
R3PRIMF_EDITMODE
R3PRIMF_PAINT
R3PRIMF_WFINVISIBLE
R3PRIMF_RTINVISIBLE
R3PRIMF_MATRIXCHANGED
R3PRIMF_HOLLOW
R3PRIMF_MATRIXCHANGEDINV
R3PRIMF_NONSELECTABLE
R3PRIMF_CAMERAINVISIBLE
R3PRIMF_SHADOWINVISIBLE
R3PRIMF_REFLECTIONINVISIBLE
R3PRIMF_ROTATEHPB
R3PRIMF_HITINVISIBLE
R3PRIMF_NOTINSHADOW
R3PRIMF_UNCOVERED1
R3PRIMF_UNCOVERED2
R3PRIMF_SECTOR
R3PRIMF_WFINVISIBLE2

Internal flags

R3PRIMF_NOTIFIEDPARENT
R3PRIMF_DONTSENDCHILDCHANGED
R3PRIMF_MATRIXNOTUSEDINSUBTOTAL
R3PRIMF_DEFORMED
R3PRIMF_UPDATEMAP
R3PRIMF_RTINVISIBLE2

it can be set and reset internally without changing user settings

R3PRIMF_BOUNDINGBOXVALID
R3PRIMF_HASLATTICELIST
R3PRIMF_IGNORELATTICEUPDATES
R3PRIMF_VOLUMEONLY

was inparamspace

transformation specific data for non-linearizing etc.

see space codes below

for mapping transformation to other spaces (object, lattice, ..)

R3PRTRF_NONDESTRUCTIVE

a+b+c == a+c. Used in interactive transformation

R3PRTRF_OBJECT
R3PRTRF_POINTS
R3PRTRF_NOTONCHILDREN
R3PRTRF_NOTINOTHERSPACE
R3PRTRF_NONLINEAR

optimization flags, helps if the caller can define these

R3PRTRF_TRANSLATE
R3PRTRF_SCALE
R3PRTRF_ROTATE
R3PRTRF_SKEW
R3PRTRF_USEOPTIMIZATIONFLAGS
R3PRTRF_ABOUTCOG
R3PRTRF_TRUELYNONLINEAR

Spaces for evaluation, point enumeration etc.

R3SPACE_ABSOLUTE
R3SPACE_OBJECT
R3SPACE_PARENT
R3SPACE_LOCAL
R3SPACE_PARAMETER
R3SPACE_MATRIX
R3SPACE_TEXTURE
R3SPACE_PARAMETERIFMAPPED
R3SPACE_UV

Extrap. codes for p1 for EVALUATEEXT

R3EXTRAPOLATION_TANGENT
R3EXTRAPOLATION_CLIP
R3EXTRAPOLATION_REPEAT
R3EXTRAPOLATION_MODULO

Codes for R3PRIMM_TimeTransformType

R3TTRT_POINTWISE
R3TTRT_SUBOBJECTWISE
R3TTRT_OBJECTWISE
R3TTRT_GLOBAL

Codes for R3PRIMM_UPDATEWIRE

R3UWSEL_ALL
R3UWSEL_UVONLY
R3UWSEL_GEOMETRYONLY

unused, use R3H_SELECTHANDLE etc definitions above

R3PRIMHT_POINT
R3PRIMHT_FACE
R3PRIMHT_EDGE
R3PRIMHT_CURVEU
R3PRIMHT_CURVEV

index to target points

indexed attr

for R3PRIMA_LatticeList

R3PRIMMAP_OBJECT/POINT/SELECTEDPOINT etc.

R3PRIMA_Lattice + id defines varattr id for lattice points

skeleton's unique id

object weight, pointwise weights are saved using varattr

see flags below

used with 'selectedpoint' mapping

pointer to lattice object

lattice node flags

R3LNF_TRANSLATE
R3LNF_SCALE
R3LNF_ROTATE
R3LNF_SKEW

R3TEXMAP_UVMAP
R3TEXMAP_SPHEREMAP
R3TEXMAP_ILLUMINATIONMAP

bounding boxes for optim. purposes

private data follows

Macros for computing value from initial+material+randomness

For backward compability

Min size for bbox to avoid collapsed dimensions:

R3BBOXEXTRA

Selection range

R3FULLSELECTION

Tags

Tags

R3PRIMA_Force
R3PRIMA_Torque
R3PRIMA_PointSpace
R3PRIMA_EvalTotalU
R3PRIMA_EvalTotalV
R3PRIMA_EvalSpace
R3PRIMA_IndexU
R3PRIMA_IndexV
R3PRIMA_IndexW
R3PRIMA_RenderEngine
R3PRIMA_MapFlags
R3PRIMA_MapTarget
R3PRIMA_OrigPoints
R3PRIMA_RenderFilter
R3PRIMA_RenderFilterMth
R3PRIMA_PreImageList
R3PRIMA_EvalDenseDensity
R3PRIMA_EvalDenseRelative
R3PRIMA_EvalDenseContext
R3PRIMA_ForceUVMap
R3PRIMA_UVMaterialContext
R3PRIMA_CausticsMaterialContext
R3PRIMA_RTEnableFlags
R3PRIMA_RTFoundFlags
R3PRIMA_GlobalRenderQuality
R3PRIMA_FaceIndex
R3PRIMA_Connected
R3PRIMA_ConnectData
R3PRIMA_EdgeIndex
R3PRIMA_InterruptFuncParam
R3PRIMA_MatEvalInChannels
R3PRIMA_MatEvalOutChannels