r3fileinst
plugins/objects/fileinst/r3fileinst.h
r3fileinst
File instance - an object whose geometry resides on a file.
r3Level
R3CLID_LEVEL
r3Fileinstance
R3CLID_FILEINSTANCE - 1999
FileName, Geometrics, Materials, Effects, FullGeometry, P0, P1, P2, P3, Width, Height, Depth, RenderInstance, AnimationType, NumFrames, FormatType, FormatDigits, BaseIndex, Frame, TileAnimation, FlipAnimation, ReverseAnimation, Format, CurrentName,
R3FINSTM_INITBOX
INITBOX
R3FINSTM_INITBOX
obj.INITBOX();
Sets the control box to match the geometry of the target disk file
R3FINSTM_GETGEOMETRY
GETGEOMETRY
R3FINSTM_GETGEOMETRY
R3OBJ*, the loaded prim layer or root object. Unref it after use
R3BOOL, if true pastehandlers are executed
rc = obj.GETGEOMETRY(p3);
Loads the target geometry. If geometry is preloaded (R3FINSTA_FullGeometry==TRUE) * returns a pointer to the already existing object which is linked to geom. hierarchy tree.
R3FINSTM_REPLACEWITHTARGET
REPLACEWITHTARGET
R3FINSTM_REPLACEWITHTARGET
R3OBJ*, the loaded geom. root
R3OBJ*, library for loaded effects
R3OBJ*, library for loaded materials
rc = obj.REPLACEWITHTARGET(p1, p3);
Loads the target and deletes the file instance
R3FINSTM_DETECTINDEXRANGE
DETECTINDEXRANGE
R3FINSTM_DETECTINDEXRANGE
obj.DETECTINDEXRANGE();
Detect the index range of the current file
FileName
FileName
R3FINSTA_FileName
String
char*
file name
jsobj.SetFileName(value);
value = jsobj.GetFileName();
char* value = ...;
R3SetAttrs(r3obj, R3FINSTA_FileName, value, R3TAG_END);
char* value;
R3GetAttrs(r3obj, R3FINSTA_FileName, &value, R3TAG_END);
Geometrics
Geometrics
R3FINSTA_Geometrics
Boolean
R3BOOL
load geometric objects
jsobj.SetGeometrics(value);
value = jsobj.GetGeometrics();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3FINSTA_Geometrics, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3FINSTA_Geometrics, &value, R3TAG_END);
Materials
Materials
R3FINSTA_Materials
Boolean
R3BOOL
load materials
jsobj.SetMaterials(value);
value = jsobj.GetMaterials();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3FINSTA_Materials, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3FINSTA_Materials, &value, R3TAG_END);
Effects
Effects
R3FINSTA_Effects
Boolean
R3BOOL
load particle effects
jsobj.SetEffects(value);
value = jsobj.GetEffects();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3FINSTA_Effects, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3FINSTA_Effects, &value, R3TAG_END);
FullGeometry
FullGeometry
R3FINSTA_FullGeometry
Boolean
R3BOOL
loads geometry to memory
jsobj.SetFullGeometry(value);
value = jsobj.GetFullGeometry();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3FINSTA_FullGeometry, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3FINSTA_FullGeometry, &value, R3TAG_END);
P0
P0
R3FINSTA_P0
geom point
jsobj.SetP0(value);
value = jsobj.GetP0();
R3VECTOR* value = ...;
R3SetAttrs(r3obj, R3FINSTA_P0, value, R3TAG_END);
R3VECTOR* value;
R3GetAttrs(r3obj, R3FINSTA_P0, &value, R3TAG_END);
P1
P1
R3FINSTA_P1
geom point
jsobj.SetP1(value);
value = jsobj.GetP1();
R3VECTOR* value = ...;
R3SetAttrs(r3obj, R3FINSTA_P1, value, R3TAG_END);
R3VECTOR* value;
R3GetAttrs(r3obj, R3FINSTA_P1, &value, R3TAG_END);
P2
P2
R3FINSTA_P2
geom point
jsobj.SetP2(value);
value = jsobj.GetP2();
R3VECTOR* value = ...;
R3SetAttrs(r3obj, R3FINSTA_P2, value, R3TAG_END);
R3VECTOR* value;
R3GetAttrs(r3obj, R3FINSTA_P2, &value, R3TAG_END);
P3
P3
R3FINSTA_P3
geom point
jsobj.SetP3(value);
value = jsobj.GetP3();
R3VECTOR* value = ...;
R3SetAttrs(r3obj, R3FINSTA_P3, value, R3TAG_END);
R3VECTOR* value;
R3GetAttrs(r3obj, R3FINSTA_P3, &value, R3TAG_END);
Width
Width
R3FINSTA_Width
Number
R3FLOAT
width
jsobj.SetWidth(value);
value = jsobj.GetWidth();
R3FLOAT value = ...;
R3SetAttrs(r3obj, R3FINSTA_Width, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3FINSTA_Width, &value, R3TAG_END);
Height
Height
R3FINSTA_Height
Number
R3FLOAT
height
jsobj.SetHeight(value);
value = jsobj.GetHeight();
R3FLOAT value = ...;
R3SetAttrs(r3obj, R3FINSTA_Height, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3FINSTA_Height, &value, R3TAG_END);
Depth
Depth
R3FINSTA_Depth
Number
R3FLOAT
depth
jsobj.SetDepth(value);
value = jsobj.GetDepth();
R3FLOAT value = ...;
R3SetAttrs(r3obj, R3FINSTA_Depth, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3FINSTA_Depth, &value, R3TAG_END);
RenderInstance
RenderInstance
R3FINSTA_RenderInstance
Boolean
R3BOOL
try to render as ray traced instance
jsobj.SetRenderInstance(value);
value = jsobj.GetRenderInstance();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3FINSTA_RenderInstance, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3FINSTA_RenderInstance, &value, R3TAG_END);
AnimationType
AnimationType
R3FINSTA_AnimationType
Integer
R3INT
see animation types below
jsobj.SetAnimationType(value);
value = jsobj.GetAnimationType();
R3INT value = ...;
R3SetAttrs(r3obj, R3FINSTA_AnimationType, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3FINSTA_AnimationType, &value, R3TAG_END);
NumFrames
NumFrames
R3FINSTA_NumFrames
Integer
R3INT
total number of files in the image sequence
jsobj.SetNumFrames(value);
value = jsobj.GetNumFrames();
R3INT value = ...;
R3SetAttrs(r3obj, R3FINSTA_NumFrames, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3FINSTA_NumFrames, &value, R3TAG_END);
FormatType
FormatType
R3FINSTA_FormatType
Integer
R3INT
see formatting methods below
jsobj.SetFormatType(value);
value = jsobj.GetFormatType();
R3INT value = ...;
R3SetAttrs(r3obj, R3FINSTA_FormatType, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3FINSTA_FormatType, &value, R3TAG_END);
FormatDigits
FormatDigits
R3FINSTA_FormatDigits
Integer
R3INT
number of digits in the format
jsobj.SetFormatDigits(value);
value = jsobj.GetFormatDigits();
R3INT value = ...;
R3SetAttrs(r3obj, R3FINSTA_FormatDigits, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3FINSTA_FormatDigits, &value, R3TAG_END);
BaseIndex
BaseIndex
R3FINSTA_BaseIndex
Integer
R3INT
the first index
jsobj.SetBaseIndex(value);
value = jsobj.GetBaseIndex();
R3INT value = ...;
R3SetAttrs(r3obj, R3FINSTA_BaseIndex, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3FINSTA_BaseIndex, &value, R3TAG_END);
Frame
Frame
R3FINSTA_Frame
Integer
R3INT
current frame
jsobj.SetFrame(value);
value = jsobj.GetFrame();
R3INT value = ...;
R3SetAttrs(r3obj, R3FINSTA_Frame, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3FINSTA_Frame, &value, R3TAG_END);
TileAnimation
TileAnimation
R3FINSTA_TileAnimation
Boolean
R3BOOL
tile animation
jsobj.SetTileAnimation(value);
value = jsobj.GetTileAnimation();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3FINSTA_TileAnimation, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3FINSTA_TileAnimation, &value, R3TAG_END);
FlipAnimation
FlipAnimation
R3FINSTA_FlipAnimation
Boolean
R3BOOL
filp animation
jsobj.SetFlipAnimation(value);
value = jsobj.GetFlipAnimation();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3FINSTA_FlipAnimation, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3FINSTA_FlipAnimation, &value, R3TAG_END);
ReverseAnimation
ReverseAnimation
R3FINSTA_ReverseAnimation
Boolean
R3BOOL
reverse animation
jsobj.SetReverseAnimation(value);
value = jsobj.GetReverseAnimation();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3FINSTA_ReverseAnimation, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3FINSTA_ReverseAnimation, &value, R3TAG_END);
Format
Format
R3FINSTA_Format
String
char*
format string
jsobj.SetFormat(value);
value = jsobj.GetFormat();
char* value = ...;
R3SetAttrs(r3obj, R3FINSTA_Format, value, R3TAG_END);
char* value;
R3GetAttrs(r3obj, R3FINSTA_Format, &value, R3TAG_END);
CurrentName
CurrentName
R3FINSTA_CurrentName
String
char*
R3RM_GET only, current indexed name
value = jsobj.GetCurrentName();
char* value;
R3GetAttrs(r3obj, R3FINSTA_CurrentName, &value, R3TAG_END);
Animation types
Fileinstance can't know how to load complete projects, so a higher level system must provide the functionality through a callback function
read_flags for LoaderFunction