r3triset
real/objects/r3triset.h
r3obj
Triset Class
r3Level
R3CLID_LEVEL
r3Triset
R3CLID_TRISET - 532
UPDATEFACECENTERS, ADDFACE, SMOOTH, FLATTEN, MERGE, NEWGEOMETRY, SMOOTHALLQUICKLY, SETFACEINDICES, SETFACENORMALS, GETFACECENTER, GETEDGECENTER, GETFACENORMALHANDLES, SETDEFAULTNORMALLENG, SMOOTHBYANGLE, FLIPNORMALS, SETPOINTWISEVALUE, GETPOINTWISEVALUE, ADDPOINTWISEATTRIBUT, REMOVEPOINTWISEATTRI, ENUMFACEVERTICES,
PointCount, Points, FaceCount, SelectResolution, SelectedFaces, SelectedEdges, SelectedVertices, PointsNotAnimateable, PhongCorrection, SelectedFaceVertices,
super clas
R3TRISM_UPDATEFACECENTERS
UPDATEFACECENTERS
R3TRISM_UPDATEFACECENTERS
obj.UPDATEFACECENTERS();
R3TRISM_ADDFACE
ADDFACE
R3TRISM_ADDFACE
obj.ADDFACE();
adds a face between three selected vertices
R3TRISM_SMOOTH
SMOOTH
R3TRISM_SMOOTH
obj.SMOOTH();
smooths normals of selected faces or vertices
R3TRISM_FLATTEN
FLATTEN
R3TRISM_FLATTEN
obj.FLATTEN();
flattens normals of selected faces
R3TRISM_MERGE
MERGE
R3TRISM_MERGE
obj.MERGE();
merges selected vertices
R3TRISM_NEWGEOMETRY
NEWGEOMETRY
R3TRISM_NEWGEOMETRY
R3INT, new face count
R3INT*, facecount*3 vertex indexes
obj.NEWGEOMETRY(p1, p2, 0);
Replaces current face and point set with a new one.
R3TRISM_SMOOTHALLQUICKLY
SMOOTHALLQUICKLY
R3TRISM_SMOOTHALLQUICKLY
obj.SMOOTHALLQUICKLY();
Computes smooth normals to all points. Normal side of faces may not be consistent.
R3TRISM_SETFACEINDICES
SETFACEINDICES
R3TRISM_SETFACEINDICES
R3BOOL, true if succeeded
R3INT, index of the face
R3INT*, array of three indices
rc = obj.SETFACEINDICES(p1, p3);
Set face indices
R3TRISM_SETFACENORMALS
SETFACENORMALS
R3TRISM_SETFACENORMALS
R3BOOL, true if succeeded
R3INT, index of the face
R3VECTOR, array of three vectors specifying normals
rc = obj.SETFACENORMALS(p1, p3);
Set face normals
R3TRISM_GETFACECENTER
GETFACECENTER
R3TRISM_GETFACECENTER
R3INT, index of the face
R3VECTOR, center is stored here
obj.GETFACECENTER(p1, p3);
ask face center point
R3TRISM_GETEDGECENTER
GETEDGECENTER
R3TRISM_GETEDGECENTER
R3INT, index of the edge
R3VECTOR, center is stored here
obj.GETEDGECENTER(p1, p3);
ask edge center point
R3TRISM_GETFACENORMALHANDLES
GETFACENORMALHANDLES
R3TRISM_GETFACENORMALHANDLES
R3INT, index of the face
R3VECTOR, array of 3 vectors. Method writes handle points to it.
obj.GETFACENORMALHANDLES(p1, p3);
ask face normal handle points
R3TRISM_SETDEFAULTNORMALLENG
SETDEFAULTNORMALLENG
R3TRISM_SETDEFAULTNORMALLENG
obj.SETDEFAULTNORMALLENG();
set nice normal length for all face normals
R3TRISM_SMOOTHBYANGLE
SMOOTHBYANGLE
R3TRISM_SMOOTHBYANGLE
R3FLOAT, threshold angle in radians
obj.SMOOTHBYANGLE(p3);
smooths normals of selected faces or vertices if angle is greater than given limit
R3TRISM_FLIPNORMALS
FLIPNORMALS
R3TRISM_FLIPNORMALS
R3BOOL, if TRUE all normals are flipped regardless of point selection state
obj.FLIPNORMALS(p3);
flips normal directions. In edit mode, only selected areas are flipped.
R3TRISM_SETPOINTWISEVALUE
SETPOINTWISEVALUE
R3TRISM_SETPOINTWISEVALUE
R3BOOL, true if succeeded
R3INT, index of the point whose property is to be set
R3INT, property identifier
void*, new value, type depends on the property id.
rc = obj.SETPOINTWISEVALUE(p1, p2, p3);
Set pointwise property
R3TRISM_GETPOINTWISEVALUE
GETPOINTWISEVALUE
R3TRISM_GETPOINTWISEVALUE
R3BOOL, true if succeeded
R3INT, index of the point whose property is to be fetched
R3INT, property identifier
void*, buffer for the value to be fetched, type depends on the property id.
rc = obj.GETPOINTWISEVALUE(p1, p2, p3);
Get pointwise property
R3TRISM_ADDPOINTWISEATTRIBUT
ADDPOINTWISEATTRIBUT
R3TRISM_ADDPOINTWISEATTRIBUT
void*, non null if succeeded
R3TAG*, R3TRISA_PointwiseType, R3TRISA_PointwiseChannel, * R3TRISA_PointwiseID, R3TRISA_PointwiseName, R3TRISA_PointwiseData
rc = obj.ADDPOINTWISEATTRIBUT(p3);
Add pointwise property
R3TRISM_REMOVEPOINTWISEATTRI
REMOVEPOINTWISEATTRI
R3TRISM_REMOVEPOINTWISEATTRI
void*, non null if succeeded
R3INT, property identifier
rc = obj.REMOVEPOINTWISEATTRI(p3);
Remove pointwise property
R3TRISM_ENUMFACEVERTICES
ENUMFACEVERTICES
R3TRISM_ENUMFACEVERTICES
R3TAG*, tag list with R3RA_Hook and R3RA_HookData
obj.ENUMFACEVERTICES(p3);
Enumerates UV vertices of selected faces as * hook(void *hookdata, R3OBJ *triset, R3VECTOR *uvcoord, int index_of_uvvertex, int R3TRISHT_FACEVERTEX)
PointCount
PointCount
R3TRISA_PointCount
Integer
R3INT
number of vertices
jsobj.SetPointCount(value);
value = jsobj.GetPointCount();
R3INT value = ...;
R3SetAttrs(r3obj, R3TRISA_PointCount, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3TRISA_PointCount, &value, R3TAG_END);
Points
Points
R3TRISA_Points
array of vertices
jsobj.SetPoints(value);
value = jsobj.GetPoints();
R3VECTOR* value = ...;
R3SetAttrs(r3obj, R3TRISA_Points, value, R3TAG_END);
R3VECTOR* value;
R3GetAttrs(r3obj, R3TRISA_Points, &value, R3TAG_END);
FaceCount
FaceCount
R3TRISA_FaceCount
Integer
R3INT
number of faces
jsobj.SetFaceCount(value);
value = jsobj.GetFaceCount();
R3INT value = ...;
R3SetAttrs(r3obj, R3TRISA_FaceCount, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3TRISA_FaceCount, &value, R3TAG_END);
SelectResolution
SelectResolution
R3TRISA_SelectResolution
Integer
R3INT
selection resolution, R3TRISR_POINT, R3TRISR_EDGE or R3TRISR_FACE
jsobj.SetSelectResolution(value);
value = jsobj.GetSelectResolution();
R3INT value = ...;
R3SetAttrs(r3obj, R3TRISA_SelectResolution, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3TRISA_SelectResolution, &value, R3TAG_END);
SelectedFaces
SelectedFaces
R3TRISA_SelectedFaces
String
R3UBYTE*
array of flags showing selected faces
value = jsobj.GetSelectedFaces();
R3UBYTE* value;
R3GetAttrs(r3obj, R3TRISA_SelectedFaces, &value, R3TAG_END);
SelectedEdges
SelectedEdges
R3TRISA_SelectedEdges
String
R3UBYTE*
array of flags showing selected edges
value = jsobj.GetSelectedEdges();
R3UBYTE* value;
R3GetAttrs(r3obj, R3TRISA_SelectedEdges, &value, R3TAG_END);
SelectedVertices
SelectedVertices
R3TRISA_SelectedVertices
String
R3UBYTE*
array of flags showing selected vertices
value = jsobj.GetSelectedVertices();
R3UBYTE* value;
R3GetAttrs(r3obj, R3TRISA_SelectedVertices, &value, R3TAG_END);
PointsNotAnimateable
PointsNotAnimateable
R3TRISA_PointsNotAnimateable
Boolean
R3BOOL
for special sub classes such as metaball
jsobj.SetPointsNotAnimateable(value);
value = jsobj.GetPointsNotAnimateable();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3TRISA_PointsNotAnimateable, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3TRISA_PointsNotAnimateable, &value, R3TAG_END);
PhongCorrection
PhongCorrection
R3TRISA_PhongCorrection
Number
R3FLOAT
0..1 factor for fading lighting at edges
jsobj.SetPhongCorrection(value);
value = jsobj.GetPhongCorrection();
R3FLOAT value = ...;
R3SetAttrs(r3obj, R3TRISA_PhongCorrection, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3TRISA_PhongCorrection, &value, R3TAG_END);
SelectedFaceVertices
SelectedFaceVertices
R3TRISA_SelectedFaceVertices
String
R3UBYTE*
array of flags showing selected UV vertices
value = jsobj.GetSelectedFaceVertices();
R3UBYTE* value;
R3GetAttrs(r3obj, R3TRISA_SelectedFaceVertices, &value, R3TAG_END);
Faces
does not have to be unit vectors
Handle types
Registry function
Tags
r3metab
plugins/objects/metaball/r3metab.h
r3metab
Metaball object
r3Triset
R3CLID_TRISET
r3Metaball
R3CLID_METABALL - 618
ResolutionX, ResolutionY, ResolutionZ, IsoValue, Regularity, Accuracy, Field, IsoValueClid, IsoValueChannelName, RenderType,
int R3RegisterMetaBallClass(R3APP *app);
super clas
R3METABM_RENDERMETABALL
RENDERMETABALL
R3METABM_RENDERMETABALL
obj.RENDERMETABALL();
ResolutionX
ResolutionX
R3METABA_ResolutionX
Integer
R3INT
number of voxels
jsobj.SetResolutionX(value);
value = jsobj.GetResolutionX();
R3INT value = ...;
R3SetAttrs(r3obj, R3METABA_ResolutionX, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3METABA_ResolutionX, &value, R3TAG_END);
ResolutionY
ResolutionY
R3METABA_ResolutionY
Integer
R3INT
'R3METABA_ResolutionY' not documented
jsobj.SetResolutionY(value);
value = jsobj.GetResolutionY();
R3INT value = ...;
R3SetAttrs(r3obj, R3METABA_ResolutionY, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3METABA_ResolutionY, &value, R3TAG_END);
ResolutionZ
ResolutionZ
R3METABA_ResolutionZ
Integer
R3INT
'R3METABA_ResolutionZ' not documented
jsobj.SetResolutionZ(value);
value = jsobj.GetResolutionZ();
R3INT value = ...;
R3SetAttrs(r3obj, R3METABA_ResolutionZ, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3METABA_ResolutionZ, &value, R3TAG_END);
IsoValue
IsoValue
R3METABA_IsoValue
Number
R3FLOAT
initial value for isovalue
jsobj.SetIsoValue(value);
value = jsobj.GetIsoValue();
R3FLOAT value = ...;
R3SetAttrs(r3obj, R3METABA_IsoValue, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3METABA_IsoValue, &value, R3TAG_END);
Regularity
Regularity
R3METABA_Regularity
Integer
R3INT
1-10, the lower the value, the better small details are noticed
jsobj.SetRegularity(value);
value = jsobj.GetRegularity();
R3INT value = ...;
R3SetAttrs(r3obj, R3METABA_Regularity, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3METABA_Regularity, &value, R3TAG_END);
Accuracy
Accuracy
R3METABA_Accuracy
Integer
R3INT
field evaluation accuracy, 0-10
jsobj.SetAccuracy(value);
value = jsobj.GetAccuracy();
R3INT value = ...;
R3SetAttrs(r3obj, R3METABA_Accuracy, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3METABA_Accuracy, &value, R3TAG_END);
Field
Field
R3METABA_Field
Integer
R3INT
scalar field, see codes below
jsobj.SetField(value);
value = jsobj.GetField();
R3INT value = ...;
R3SetAttrs(r3obj, R3METABA_Field, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3METABA_Field, &value, R3TAG_END);
IsoValueClid
IsoValueClid
R3METABA_IsoValueClid
Integer
R3INT
evaluate this channel by evaluating this channel
jsobj.SetIsoValueClid(value);
value = jsobj.GetIsoValueClid();
R3INT value = ...;
R3SetAttrs(r3obj, R3METABA_IsoValueClid, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3METABA_IsoValueClid, &value, R3TAG_END);
IsoValueChannelName
IsoValueChannelName
R3METABA_IsoValueChannelName
String
char*
name of the channel to be evaluated
jsobj.SetIsoValueChannelName(value);
value = jsobj.GetIsoValueChannelName();
char* value = ...;
R3SetAttrs(r3obj, R3METABA_IsoValueChannelName, value, R3TAG_END);
char* value;
R3GetAttrs(r3obj, R3METABA_IsoValueChannelName, &value, R3TAG_END);
RenderType
RenderType
R3METABA_RenderType
Integer
R3INT
jsobj.SetRenderType(value);
value = jsobj.GetRenderType();
R3INT value = ...;
R3SetAttrs(r3obj, R3METABA_RenderType, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3METABA_RenderType, &value, R3TAG_END);
codes for field tag
codes for render type
Registry function
</sect6>