Cobject
C++ | Python |
---|---|
Cmaxwell::Cobject | CmaxwellObject |
Describes a scene object.
Inherits from
Sub-classes
Methods
Name | Description |
---|---|
setPointer | Internal use. |
free | Destroys the object. |
getName | Gets object name. |
setName | Sets object name. |
isMesh | Checks whether the object is a mesh. |
isInstance | Checks whether the object is an instance. |
getInstanced | Gets instance's parent. |
isRFRK | Checks whether the object is a RFRK object. |
getRFRKParameters | Gets ReaFlow RenderKit parameters. |
setRFRKParameters | Sets ReaFlow RenderKit parameters. |
getReferencedScenePath | Gets the scene file referenced by this object. |
setReferencedScenePath | Sets the scene file referenced by this object. |
getReferencedSceneMaterial | Gets the material of an specific object inside the referenced scene. |
setReferencedSceneMaterial | Sets the material of an specific object inside the referenced scene. |
getReferencedOverrideFlags | Get the override policy for visibility flags. |
setReferencedOverrideFlags | Set the override policy for visibility flags. |
mergeMeshes | Merges an array of meshes into a single mesh. Target object must not be included. |
getParent | Gets the parent object in the hierarchy. |
setParent | Sets the parent object in the hierarchy. |
getUuid | Unique user ID that can be used for custom purposes. |
setUuid | Sets the unique user ID. |
getMaterial | Gets the material applied. |
setMaterial | Sets the object material. |
setProperties | Sets the caustics properties of the object. |
Gets all the extern dependencies of the object (rfrk files, etc). | |
Geometry | |
getNumVertexes | Gets number of vertexes of the object. |
getNumTriangles | Gets number of triangles of the object. |
getNumNormals | Gets number of the normals of the object. |
getNumPositionsPerVertex | Gets number of positions per vertex of the object. |
getNumChannelsUVW | Gets number of UVW channels of the object. |
addChannelUVW | Adds an UVW channel to the object. |
generateSphericalUVW | Generates spherical UVW coordinates. |
generateCylindricalUVW | Generates cylindrical UVW coordinates. |
generateCubicUVW | Generates cubic UVW coordinates. |
generatePlanarUVW | Generates planar UVW coordinates. |
getVertex | Gets vertex by index. |
setVertex | Sets vertex by index. |
getNormal | Gets normal by index. |
setNormal | Sets normal by index. |
getTriangle | Gets triangle (vertexes and normals) by index. |
setTriangle | Sets triangle (vertexes and normals) by index. |
getTriangleGroup | Gets triangle group by index. |
setTriangleGroup | Sets triangle group. |
getTriangleUVW | Gets triangle UVW coordinates. |
setTriangleUVW | Sets triangle UVW coordinantes. |
getTriangleMaterial | Gets triangle material. |
setTriangleMaterial | Sets triangle material. |
getGroupMaterial | Gets material of a group of triangles. |
setGroupMaterial | Sets material of a group of triangles. |
getBaseAndPivot | Gets base and pivot axes of the object. |
setBaseAndPivot | Sets base and pivot axes of the object. |
getWorldTransform | Return the world transform of the object. |
getTransformSubstepsCount | Return the number of substeps used for defining Base and Pivot motion blur. |
getTransfrormStepInfoByIndex | Return transform information( base, pivot and time) for the given index. |
getPosition | Used by Maxwell Studio (not needed for rendering). |
setPosition | Used by Maxwell Studio (not needed for rendering). |
getRotation | Used by Maxwell Studio (not needed for rendering). |
setRotation | Used by Maxwell Studio (not needed for rendering). |
getScale | Used by Maxwell Studio (not needed for rendering). |
setScale | Used by Maxwell Studio (not needed for rendering). |
getShear | Used by Maxwell Studio (not needed for rendering). |
setShear | Used by Maxwell Studio (not needed for rendering). |
getPivotPosition | Used by Maxwell Studio (not needed for rendering). |
setPivotPosition | Used by Maxwell Studio (not needed for rendering). |
getPivotRotation | Used by Maxwell Studio (not needed for rendering). |
setPivotRotation | Used by Maxwell Studio (not needed for rendering). |
isPosRotScaleInitialized | Checks if the methods above have been used for the given object. |
cleanGeometry | Optional routine that removes degenerated triangles, repeated/unused vertex and normals. |
Display | |
getHide | Gets "hide" status of the object. |
setHide | Sets "hide" status of the object. |
getHideToCamera | Gets "hide to camera" status of the object. |
setHideToCamera | Sets "hide to camera" status of the object. |
getHideToReflectionsRefractions | Gets "hide to reflections and refractions" status of the object. |
setHideToReflectionsRefractions | Sets "hide to reflections and refractions" status of the object. |
getHideToGI | Gets "hide to global illumination" status of the object. |
setHideToGI | Gets "hide to global illumination" status of the object. |
isExcludedOfCutPlanes | Gets "excluded of cut planes" status of the object. |
excludeOfCutPlanes | Sets "excluded of cut planes" status of the object. |
getReferenceDisplayPoints | This function is useful to display a mesh on a viewport. |
setColorID | Sets the color used by this object in the Object ID render channel. |
getColorID | Gets the color used by this object in the Object ID render channel. |
setSubdivisionLevel | Sets the subdivision level of the mesh. |
getSubdivisionLevel | Gets the subdivision level of the mesh. |
setGeometryDirty | Set the geometry "dirty". |
getUserData | Internal use. |
setUserData | Internal use. |
getVertexesBuffer | Internal use. |
getNormalsBuffer | Internal use. |
getTrianglesBuffer | Internal use. |
initializeMesh | Clean the mesh and allocates memory for vertexes, normals, triangles and motion blur. |
resizeMesh | Reinitializes all the basic geometry and UV arrays. |
generateCustomUVW | |
getUVWChannelProperties | Gets UVW channel properties. |
getGlobalXform | |
getGlobalNormalsXform | |
getInverseGlobalXform | |
getInverseGlobalNormalsXform | |
isGeometryLoader | Checks if the object was created by a geometry loader extension. |
isGeometryProcedural | Checks if the object was created by a procedural geometry extension. |
hasGeometryModifiers | Checks if the object has geometry modifiers (extensions). |
applyGeometryModifierExtension | |
cleanAllGeometryModifierExtensions | Clean all geometry modifier extensions applyed to the object. |
getGeometryLoaderExtensionParams | |
getGeometryProceturalExtensionParams | |
getGeometryModifierExtensionsNumber | Gets the number of geometry modifier extensions applied to the object. |
getGeometryModifierExtensionParamsAtIndex |
Inherited methods
free
Destroys the object.
Language | Syntax |
---|---|
C++ | byte free() |
Python | int free() |
Return value
0 = Error destroying object.
1 = Success.
getName
Gets the name of the object.
Language | Syntax |
---|---|
C++ | byte getName( char** pName) |
Python | str getName() |
Return value
C++
0 = Error getting name.
1 = Success.
Python
Object name.
setName
Sets the name of the object.
Language | Syntax |
---|---|
C++ | byte setName( const char* pName ) |
Python | int setName( str pName ) |
Return value
0 = Error setting name.
1 = Success.
isMesh
Checks whether the object is a mesh.
Language | Syntax |
---|---|
C++ | byte isMesh( byte& isMesh ) |
Python | int isMesh() |
Return value
C++
0 = Error getting isMesh value.
1 = Success.
Python
0 = The object is not a mesh.
1 = The object is a mesh.
"" = Error.
isInstance
Checks whether the object is an instance.
Language | Syntax |
---|---|
C++ | byte isInstance( byte& isInstance ) |
Python | int isInstance() |
Return value
C++
0 = Error getting isInstance value.
1 = Success.
Python
0 = The object is not an instance.
1 = The object is an instance.
"" = Error.
getInstanced
If this Cobject is an instance this method returns its parent object.
Language | Syntax |
---|---|
C++ | Cmaxwell::Cobject getInstanced() |
Python | CmaxwellObject getInstanced() |
Return value
Cmaxwell::Cobject reference to the instanced object. Null object if the object is not an instance, (Cmaxwell::Cobject::isNull() == true).
isRFRK
Checks whether the object is a RealFlow RenderKit object.
Language | Syntax |
---|---|
C++ | byte isRFRK( byte& isRfrk ) |
Python | int isRFRK() |
Return value
C++
0 = Error getting isRfrk value.
1 = Success.
Python
0 = Object is not a RFRK object.
1 = Object is a RFRK object.
"" = Error.
getRFRKParameters
Gets RealFlow parameters of the object if it is a RFRK object.
Language | Syntax |
---|---|
C++ | byte getRFRKParameters( char*& binSeqNames, char*& rwName, char*& substractiveField, real& scale, real& resolution, real& polySize, real& radius, real& smooth, real& core, real& splash, real& maxVelocity, int& axis, real& fps, int& frame, int& offset, bool& flipNormals, int& rwTesselation, bool& mb, real& mbCoef ) |
Python | { str 'binSeqNames', str 'rwName', str 'substractiveField', float 'scale', float 'resolution', float 'polySize', float 'radius', float 'smooth', float 'core', float 'splash', float 'maxVelocity', int 'axis', float 'fps', int 'frame', int 'offset', bool 'flipNormals', int 'rwTesselation', bool 'mb', float 'mbCoef' } getRFRKParameters() |
Parameters
Type | Name | In/Out | Description |
---|---|---|---|
char* | binSeqNames | out | Comma separated list of full paths to .bin or .pd files. |
char* | rwName | out | Full path to a realwave .sd file. |
char* | substractiveField | out | '' or Null -> all particle fields are positive. i.e: substractiveField = '011010' -> six particle files, first, third and sixth are negative, and second, third and fifth are positive. |
real | scale | out | Default value = 1.0. |
real | resolution | out | Default value = 1.0. |
real | polySize | out | Default value = 0.0. |
real | radius | out | Default value = 0.33. |
real | smooth | out | Default value = 0.3. |
real | core | out | Default value = 0.0. |
real | splash | out | Default value = 0.0. |
real | maxVelocity | out | Default value = 1000.0. |
int | axis | out | 0 = YXZ, 1 = ZXY, 2 = YZX. |
real | fps | out | Default value = 25.0. |
int | frame | out | |
int | offset | out | Default value = 0. |
bool | flipNormals | out | Default value = false. |
int | rwTesselation | out | Default value = 3. |
bool | mb | out | Motion blur (true) or not (false). |
real | mbCoef | out | 0.0 to 1.0. Motion blur duration in % of shutter angle. |
Return value
C++
0 = Error getting RFRK parameters.
1 = Success.
Python
Dictionary containing all RFRK parameters.
"" = Error.
setRFRKParameters
Gets RealFlow parameters of the object if it is a RFRK object.
Language | Syntax |
---|---|
C++ | byte setRFRKParameters( const char* binSeqNames, const char* rwName, char* substractiveField, real scale, real resolution, real polySize, real radius, real smooth, real core, real splash, real maxVelocity, int axis, real fps, int frame, int offset, bool flipNormals, int rwTesselation, bool mb, real mbCoef ) |
Python | int setRFRKParameters( str binSeqNames, str rwName, str substractiveField, float scale, float resolution, float polySize, float radius, float smooth, float core, float splash, float maxVelocity, int axis, float fps, int frame, int offset, bool flipNormals, int rwTesselation, bool mb, float mbCoef ) |
Parameters
Type | Name | In/Out | Description |
---|---|---|---|
char* | binSeqNames | in | Comma separated list of full paths to .bin or .pd files. |
char* | rwName | in | Full path to a realwave .sd file. |
char* | substractiveField | in | '' or Null -> all particle fields are positive. i.e: substractiveField = '011010' -> six particle files, first, third and sixth are negative, and second, third and fifth are positive. |
real | scale | in | Default value = 1.0. |
real | resolution | in | Default value = 1.0. |
real | polySize | in | Default value = 0.0. |
real | radius | in | Default value = 0.33. |
real | smooth | in | Default value = 0.3. |
real | core | in | Default value = 0.0. |
real | splash | in | Default value = 0.0. |
real | maxVelocity | in | Default value = 1000.0. |
int | axis | in | 0 = YXZ, 1 = ZXY, 2 = YZX. |
real | fps | in | Default value = 25.0. |
int | frame | in | |
int | offset | in | Default value = 0. |
bool | flipNormals | in | Default value = false. |
int | rwTesselation | in | Default value = 3. |
bool | mb | in | Motion blur (true) or not (false). |
real | mbCoef | in | 0.0 to 1.0. Motion blur duration in % of shutter angle. |
Return value
0 = Error setting RFRK parameters.
1 = Success.
getReferencedScenePath
Gets the scene file referenced by this object.
Language | Syntax |
---|---|
C++ | const char* getReferencedScenePath() |
Python | str getReferencedScenePath() |
setReferencedScenePach
Sets the scene file referenced by this object.
Language | Syntax |
---|---|
C++ | byte setReferencedScenePath( const char* proxyPath ) |
Python | int setReferencedScenePath( const char* proxyPath ) |
Return value
0 = Error setting reference scene file.
1 = Success.
getReferencedSceneMaterial
Gets the material of an specific object inside the referenced scene.
Language | Syntax |
---|---|
C++ | byte getReferencedSceneMaterial( const char* objectName, Cmaxwell::Cmaterial& material ) |
Python | CmaxwellMaterial getReferencedSceneMaterial( str objectName ) |
setReferencedSceneMaterial
Sets the material of an specific object inside the referenced scene.
Language | Syntax |
---|---|
C++ | byte setReferencedSceneMaterial( const char* objectName, Cmaxwell::Cmaterial material ) |
Python | int setReferencedSceneMaterial( str objectName, CmaxwellMaterial material ) |
Return value
0 = Error setting reference scene file.
1 = Success.
getReferencedOverrideFlags
Gets the override policy for visibility flags. Flags are described in OVERRIDE_REFERENCE_FLAGS in maxwellenums.h.
Language | Syntax |
---|---|
C++ | byte getReferencedOverrideFlags( byte& flags ) |
Python | (int flags, int success) getReferencedOverrideFlags() |
Return value
C++
0 = Error
1 = Success
Python
Tuple containing the "override reference" flags of the object, and the function success value.
setReferencedOverrideFlags
Sets the override policy for visibility flags. Flags are described in OVERRIDE_REFERENCE_FLAGS in maxwellenums.h.
Language | Syntax |
---|---|
C++ | byte setReferencedOverrideFlags( byte& flags ) |
Python | int setReferencedOverrideFlags( int flags ) |
Return value
0 = Error
1 = Success
mergeMeshes
Merges an array of meshes into a single mesh. The original meshes are not removed (it can be done later calling Cmaxwell::Cobject::free() ). The target object must not be included in the mesh list, so target geometry (if exists) will be erased.
Language | Syntax |
---|---|
C++ | byte mergeMeshes( const Cmaxwell::Cobject* pMeshes, dword nMeshes ) |
Python | int mergeMeshes( CmaxwellObject[] meshes ) |
Return value
0 = Error setting reference scene file.
1 = Success.
Examples
meshes = [] meshes.append( scene.getObject("sphere") ); meshes.append( scene.getObject("cube") ); scene.getObject("cubesphere").mergeMeshes( meshes ); // "cubesphere must exists" scene.getObject("sphere").free(); scene.getObject("cube").free();
getParent
Gets the parent object in the hierarchy.
Language | Syntax |
---|---|
C++ | byte getParent( Cmaxwell::Cobject& parent ) |
Python | CmaxwellObject getParent() |
Return value
C++
0 = Error getting parent object.
1 = Success.
Python
Parent object.
setParent
Sets the parent object in the hierarchy.
Language | Syntax |
---|---|
C++ | byte setParent( Cmaxwell::Cobject parent ) |
Python | int setParent( CmaxwellObject parent ) |
Return value
0 = Error setting parent object.
1 = Success.
getUuid
Unique user ID that can be used for custom purposes.
Language | Syntax |
---|---|
C++ | const char* getUuid() |
Python | str getUuid() |
setUuid
Sets the unique user ID.
Language | Syntax |
---|---|
C++ | byte setUuid( const char* pUuid ) |
Python | int setUuid( str uuid ) |
Return value
0 = Error setting unique user ID.
1 = Success.
getMaterial
Gets the material applied.
Language | Syntax |
---|---|
C++ | byte getMaterial( Cmaxwell::Cmaterial& parent ) |
Python | CmaxwellMaterial getMaterial() |
Return value
C++
0 = Error getting object material.
1 = Success.
Python
Object material.
setMaterial
Sets the object material.
Language | Syntax |
---|---|
C++ | byte setMaterial( Cmaxwell::Cmaterial material ) |
Python | int setMaterial( CmaxwellMaterial material ) |
Return value
0 = Error setting object material.
1 = Success.
setProperties
Sets the caustics properties of the object. 1 enables, 0 disables.
Language | Syntax |
---|---|
C++ | byte setProperties( int doDirectCausticsReflection, int doDirectCausticsRefraction, int doIndirectCausticsReflection, int doIndirectCausticsRefraction ) |
Python | int setProperties( byte doDirectCausticsReflection, byte doDirectCausticsRefraction, byte doIndirectCausticsReflection, byte doIndirectCausticsRefraction ) |
Return value
0 = Error setting object material.
1 = Success.
getDependencies
Returns an array of strings with all the extern dependencies of the object (rfrk files, etc).
Language | Syntax |
---|---|
C++ | byte getDependencies( dword& numDependencies, char** & paths, const bool& searchInsideProxy = true ) |
Python | str[] getDependencies( bool searchInsideProxy = true ) |
Parameters
Type | Name | In/Out | Description |
---|---|---|---|
dword& | numDependencies | out | (C++ only) Number of dependencies returned. |
char**& | paths | out | (C++ onlu) String array (size = numDependencies) containing all the dependencies requested. |
const bool& | searchIndideProxy | in | If true, the function search for dependencies also in the referenced proxy objects if exists. searchInsideProxy is true by default. |
Return value
C++
0 = Error getting dependency paths.
1 = Success.
Python
List of str containing the dependency paths.
getNumVertexes
Gets number of vertexes of the object.
Language | Syntax |
---|---|
C++ | byte getNumVertexes( dword& nVertexes ) |
Python | int getNumVertexes() |
Return value
C++
0 = Error getting number of vertexes.
1 = Success.
Python
Number of vertexes.
getNumTriangles
Gets number of triangles of the object.
Language | Syntax |
---|---|
C++ | byte getNumTriangles( dword& nTriangles ) |
Python | int getNumTriangles() |
Return value
C++
0 = Error getting number of triangles.
1 = Success.
Python
Number of triangles.
getNumNormals
Gets number of normals of the object.
Language | Syntax |
---|---|
C++ | byte getNumNormals( dword& nNormals ) |
Python | int getNumNormals() |
Return value
C++
0 = Error getting number of normals.
1 = Success.
Python
Number of normals.
getNumPositionsPerVertex
Gets number of positions per vertex of the object.
Language | Syntax |
---|---|
C++ | byte getNumPositionsPerVertex( dword& nPositions ) |
Python | int getNumPositionsPerVertex() |
Return value
C++
0 = Error getting number of positions per vertex.
1 = Success.
Python
Number of positions per vertex.
getNumChannelsUVW
Gets number of UVW channels of the object.
Language | Syntax |
---|---|
C++ | byte getNumChannelsUVW( dword& nChannelsUVW ) |
Python | int getNumChannelsUVW() |
Return value
C++
0 = Error getting number UVW channels.
1 = Success.
Python
Number of UVW channels.
addChannelUVW
Adds an UVW channel to the object.
Language | Syntax |
---|---|
C++ | byte addChannelUVW( dword& index, byte id = 0xFF ) |
Python | int addChannelUVW( byte id = 0xFF ) |
Return value
C++
0 = Error adding UVW channel.
1 = Success.
Python
Index of the new channel.
generateSphericalUVW
Generates spherical UVW coordinates.
Language | Syntax |
---|---|
C++ | byte generateSphericalUVW( dword& iChannel, CbaseT& projectorBase, real& startLatitude, real& endLatitude, real& startLongitude, real& endLongitude ) |
Python | int generateSphericalUVW( int iChannel, Cbase projectorBase, float startLatitude, float endLatitude, float startLongitude, float endLongitude ) |
Return value
0 = Error generating spherical UVW coordinaltes.
1 = Success.
generateCylindricalUVW
Generates cylindrical UVW coordinates.
Language | Syntax |
---|---|
C++ | byte generateCylindricalUVW( dword& iChannel, Cbase& projectorBase, real& startAngle, real& endAngle ) |
Python | int generateCylindricalUVW( int iChannel, Cbase projectorBase, float startAngle, float endAngle ) |
Return value
0 = Error generating cylindrical UVW coordinaltes.
1 = Success.
generateCubicUVW
Generates cubic UVW coordinates.
Language | Syntax |
---|---|
C++ | byte generateCubicUVW( dword& iChannel, Cbase& projectorBase, bool mirrorBackFaces = false ) |
Python | int generateCubicUVW( int iChannel, Cbase projectorBase, bool mirrorBackFaces = False ) |
Return value
0 = Error generating cubic UVW coordinaltes.
1 = Success.
generatePlanarUVW
Generates planar UVW coordinates.
Language | Syntax |
---|---|
C++ | byte generatePlanarUVW( dword& iChannel, Cbase& projectorBase ) |
Python | int generatePlanarUVW( int iChannel, Cbase projectorBase ) |
Return value
0 = Error generating planar UVW coordinaltes.
1 = Success.
getVertex
Gets vertex by index.
Language | Syntax |
---|---|
C++ | byte getVertex( dword iVertex, dword iPosition, Cpoint& point ) |
Python | Cvector getVertex( int iVertex, int iPosition ) |
Return value
C++
0 = Error getting the vertex.
1 = Success.
Python
Cvector containing the vertex requested.
setVertex
Sets vertex by index.
Language | Syntax |
---|---|
C++ | byte setVertex( dword iVertex, dword iPosition, const Cpoint& point ) |
Python | int setVertex( int iVertex, int iPosition, Cvector point ) |
Return value
0 = Error setting the vertex.
1 = Success.
getNormal
Gets normal by index.
Language | Syntax |
---|---|
C++ | byte getNormal( dword iVertex, dword iPosition, Cvector&normal ) |
Python | Cvector getNormal( int iVertex, int iPosition ) |
Return value
C++
0 = Error getting the normal.
1 = Success.
Python
Cvector containing the normal requested.
setNormal
Sets normal by index.
Language | Syntax |
---|---|
C++ | byte setNormal( dword iNormal, dword iPosition, const Cvector& normal ) |
Python | int setNormal( int iNormal, int iPosition, Cvector normal ) |
Return value
0 = Error setting the normal.
1 = Success.
getTriangle
Gets triangle (vertexes and normals) by index.
Language | Syntax |
---|---|
C++ | byte getTriangle( dword iTriangle, dword &iVertex1, dword &iVertex2, dword &iVertex3, dword &iNormal1, dword &iNormal2, dword &iNormal3 ) |
Python | (int iVertex1, int iVertex2, int iVertex3, int iNormal1, int iNormal2, int iNormal3) getTriangle( int iTriangle ) |
Return value
C++
0 = Error getting the triangle.
1 = Success.
Python
Tuple containing the triangle data.
setTriangle
Sets triangle (vertexes and normals) by index.
Language | Syntax |
---|---|
C++ | byte setTriangle( dword iTriangle, dword iVertex1, dword iVertex2, dword iVertex3, dword iNormal1, dword iNormal2, dword iNormal3 ) |
Python | int setTriangle( int iTriangle, int iVertex1, int iVertex2, int iVertex3, int iNormal1, int iNormal2, int iNormal3 ) |
Return value
0 = Error setting the triangle.
1 = Success.
getTriangleGroup
Gets triangle group by index.
Language | Syntax |
---|---|
C++ | byte getTriangleGroup( dword iTriangle, dword& idGroup ) |
Python | int getTriangleGroup( int iTriangle ) |
Return value
C++
0 = Error getting the triangle group.
1 = Success.
Python
Triangle group ID.
setTriangleGroup
Sets group that's the triangle belongs to.
Language | Syntax |
---|---|
C++ | byte setTriangleGroup( dword iTriangle, dword idGroup ) |
Python | int setTriangleGroup( int iTriangle, int idGroup ) |
Return value
0 = Error setting the triangle group.
1 = Success.
getTriangleUVW
Gets triangle UVW coordinates.
Language | Syntax |
---|---|
C++ | byte getTriangleUVW( dword iTriangle, dword iChannelID, float& u1, float& v1, float& w1, float& u2, float& v2, float& w2, float& u3, float& v3, float& w3 ) |
Python | (float u1, float v1, float w1, float u2, float v2, float w2, float u3, float v3, float w3) getTriangleUVW( int iTriangle, int iChannelID ) |
Return value
C++
0 = Error getting the triangle UVW coordinates.
1 = Success.
Python
Tuple containing the triangle UVW coordinates.
setTriangleUVW
Sets triangle UVW coordinantes.
Language | Syntax |
---|---|
C++ | byte setTriangleUVW( dword iTriangle, dword iChannelID, float u1, float v1, float w1, float u2, float v2, float w2, float u3, float v3, float w3 ) |
Python | int setTriangleUVW( int iTriangle, int iChannelID, float u1, float v1, float w1, float u2, float v2, float w2, float u2, float v2, float w3 ) |
Return value
0 = Error setting the triangle UVW coordinates.
1 = Success.
getTriangleMaterial
Gets triangle material.
Language | Syntax |
---|---|
C++ | byte getTriangleMaterial( dword iTriangle, Cmaxwell::Cmaterial& material ) |
Python | CmaxwellMaterial getTriangleMaterial( int iTriangle ) |
Return value
C++
0 = Error getting triangle material.
1 = Success.
Python
Triangle material.
setTriangleMaterial
Sets the triangle material.
Language | Syntax |
---|---|
C++ | byte setTriangleMaterial( dword iTriangle, Cmaxwell::Cmaterial material ) |
Python | int setTriangleMaterial( int iTriangle, CmaxwellMaterial material ) |
Return value
0 = Error setting triangle material.
1 = Success.
getGroupMaterial
Gets material of a group of triangles.
Language | Syntax |
---|---|
C++ | byte getGroupMaterial( dword iGroup, Cmaxwell::Cmaterial& material ) |
Python | CmaxwellMaterial getGroupMaterial( int iGroup ) |
Return value
C++
0 = Error getting triangle group material.
1 = Success.
Python
Triangle group material.
setGroupMaterial
Sets material of a group of triangles.
Language | Syntax |
---|---|
C++ | byte setGroupMaterial( dword iGroup, Cmaxwell::Cmaterial material ) |
Python | int setGroupMaterial( int iGroup, CmaxwellMaterial material ) |
Return value
0 = Error setting triangle group material.
1 = Success.
setBaseAndPivot
Sets base and pivot axes of the object.
Language | Syntax |
---|---|
C++ | byte setBaseAndPivot( Cbase base, Cbase pivot, real substepTime = 0.0 ) |
Python | int setBaseAndPivot( Cbase base, Cbase pivot, float substepTime = 0.0 ) |
Return value
0 = Error setting object base and pivot.
1 = Success.
getBaseAndPivot
Gets base and pivot axes of the object.
Language | Syntax |
---|---|
C++ | byte getBaseAndPivot( Cbase& base, Cbase& pivot, const real substepTime = 0.0 ) |
Python | (Cbase base, Cbase pivot) getBaseAndPivot( float substepTime = 0.0 ) |
Return value
C++
0 = Error getting object base and pivot.
1 = Success.
Python
Tuple containing Cbase base and Cbase pivot axes (base,pivot).
getWorldTransform
Returns the world transform of the object taking into account base and pivot of all its parents..
Return value
C++
0 = Error getting world transform of the object.
1 = Success.
Python
Object world transform.
getTransfromSubstepsCount
Return the number of substeps used for defining Base and Pivot motion blur.
Language | Syntax |
---|---|
C++ | dword getTransformSubstepsCount() |
Python | int getTransformSubstepsCount() |
getTransformStepInfoByIndex
Return transform information( base, pivot and time) for the given index.
Language | Syntax |
---|---|
C++ | byte getTransformStepInfoByIndex( Cbase& base, Cbase& pivot, real& time, const dword index ) |
Python | (Cbase base, Cbase pivot, float time) getTransformStepInfoByIndex( int index ) |
Return value
C++
0 = Error getting transform information of the object.
1 = Success.
Python
Tuple containing transform information.
isPosRotScaleInitialized
Checks if any of the following methods have been used for the object: setPosition, setRotation, setScale, setShear, setPivotPosition and setPivotRotation. The correct way to transform the object is through the setBaseAndPivot method.
Language | Syntax |
---|---|
C++ | byte isPosRotScaleInitialized( bool& init ) |
Python | bool isPosRotScaleInitialized() |
Return value
C++
0 = Error getting object transformed for Maxwell Studio.
1 = Success.
Python
True = object initialized using setPosition, setRotation, setScale, setShear, setPivotPosition and/or setPivotRotation (methods used for Maxwell Studio, not for rendering.
cleanGeometry
Optional routine that removes degenerated triangles, repeated/unused vertex and normals. This function is automatically called inside the writeMXS method. It is not needed to call it except in scenarios like the interactive engine.
Language | Syntax |
---|---|
C++ | byte cleanGeometry() |
Python | int cleanGeometry() |
Return value
0 = Error cleaning geometry.
1 = Success.
getHide
Gets "hide" status of the object.
Language | Syntax |
---|---|
C++ | byte getHide( bool& hide ) |
Python | bool getHide() |
Return value
C++
0 = Error getting "hide" status.
1 = Success.
Python
True = object is hidden.
False = object is not hidden.
setHide
Sets "hide" status of the object.
Language | Syntax |
---|---|
C++ | byte setHide( bool hide ) |
Python | int setHide( bool hide ) |
Return value
0 = Error setting "hide" state.
1 = Success.
getHideToCamera
Gets "hide to camera" status of the object.
Language | Syntax |
---|---|
C++ | byte getHideToCamera( bool& hide ) |
Python | bool getHide() |
Return value
C++
0 = Error getting "hide to camera" status.
1 = Success.
Python
True = object is hidden to camera.
False = object is not hidden to camera.
setHideToCamera
Sets "hide to camera" status of the object.
Language | Syntax |
---|---|
C++ | byte setHideToCamera( bool hide ) |
Python | int setHideToCamera( bool hide ) |
Return value
0 = Error setting "hide to camera" state.
1 = Success.
getHideToReflectionsRefractions
Gets "hide to reflections and refractions" status of the object.
Language | Syntax |
---|---|
C++ | byte getHideToReflectionsRefractions( bool& hide ) |
Python | bool getHideToReflectionsRefractions() |
Return value
C++
0 = Error getting "hide to reflections and refractions" status.
1 = Success.
Python
True = object is hidden to reflections and refractions.
False = object is not hidden to reflections and refractions.
setHideToReflectionsRefractions
Sets "hide to reflections and refractions" status of the object.
Language | Syntax |
---|---|
C++ | byte setHideToReflectionsRefractions( bool hide ) |
Python | int setHideToReflectionsRefractions( bool hide ) |
Return value
0 = Error setting "hide to reflections and refractions" state.
1 = Success.
getHideToGI
Gets "hide to global illumination" status of the object.
Language | Syntax |
---|---|
C++ | byte getHideToGI( bool& hide ) |
Python | bool getHideToGI() |
Return value
C++
0 = Error getting "hide to global illumination" status.
1 = Success.
Python
True = object is hidden to global illumination.
False = object is not hidden to global illumination.
setHideToGI
Sets "hide to global Illumination" status of the object.
Language | Syntax |
---|---|
C++ | byte setHideToGI( bool hide ) |
Python | int setHideToGI( bool hide ) |
Return value
0 = Error setting "hide to global illumination" state.
1 = Success.
isExcludedOfCutPlanes
Gets "excluded of cut planes" status of the object.
Language | Syntax |
---|---|
C++ | byte isExcludedOfCutPlanes( bool& excluded ) |
Python | bool isExcludedOfCutPlanes() |
Return value
C++
0 = Error getting "excluded of cut planes" status.
1 = Success.
Python
True = object is excluded to cut planes.
False = object is not excluded of cut planes.
excludeOfCutPlanes
Sets "excluded of cut planes" status of the object.
Language | Syntax |
---|---|
C++ | byte excludeOfCutPlanes( bool exclude ) |
Python | int excludeOfCutPlanes( bool exclude ) |
Return value
0 = Error setting "excluded of cut planes" state.
1 = Success.
getReferenceDisplayPoints
This function is useful to display a mesh on a viewport. Returns an array with the vertices of the object in object space. This function is not accurate but should be used for preview purposes only.
Language | Syntax |
---|---|
C++ | float* getReferenceDisplayPoints( const dword& percent, const dword& maxPoints, dword& nPoints ) |
Python | array getReferenceDisplayPoints( int percent, int maxPoints ) |
Parameters
Type | Name | In/Out | Description |
---|---|---|---|
const dword& | percent | in | Percent of points of the mesh that will be returned. |
const dword& | maxPoints | in | Maximum number of points that will be in the returned array (-1 means there is not a maximum fixed) |
dword& | nPoints | out | Number of points returned. |
Return value
C++
Array of nPoints * 3 containing the proxy points requested.
Python
NumPy array containing the proxy points requested. Shape is (nPoints,3).
setColorID
Sets the color used by this object in the Object ID render channel. RGB values must always be in the 0-1 range.
Return value
0 = Error setting color ID.
1 = Success.
getColorID
Gets the color used by this object in the Object ID render channel.
Return value
C++
0 = Error getting the color ID.
1 = Success.
Python
Crgb containing the color ID.
setSubdivisionLevel
Sets the subdivision level of the mesh.
Language | Syntax |
---|---|
C++ | byte setSubdivisionLevel( const dword& level ) |
Python | int setSubdivisionLevel( int level ) |
Return value
0 = Error
1 = Success
getSubdivisionLevel
Gets the subdivision level of the mesh.
Language | Syntax |
---|---|
C++ | byte getSubdivisionLevel( dword& level ) |
Python | (int level, int success) getSubdivisionLevel() |
Return value
C++
0 = Error
1 = Success
Python
Tuple containing the subdivision level of the mesh and the success value of the method.
setGeometryDirty
Method used to recalculate structures needed in interactive mode when the object changes. It is not needed to call it if the UVs or material change, but just should be called when the mesh or base change.
Language | Syntax |
---|---|
C++ | byte setGeometryDirty() |
Python | int setGeometryDirty() |
Return value
0 = Error setting geometry dirty.
1 = Success.
initializeMesh
Clean the mesh and allocates memory for vertexes, normals, triangles and motion blur.
Language | Syntax |
---|---|
C++ | byte initializeMesh( dword nVertex, dword nNormals, dword nFaces, dword positionsPerVertex ) |
Python | int initializeMesh( int nVertex, int nNormals, int nFaces, int positionsPerVertex ) |
Return value
0 = Error initializing mesh.
1 = Success.
resizeMesh
This function reinitializes all the basic geometry and UV arrays. The number of UV channels and their ids remain the same, but UV´s are zeroed. Motion blur vertices can be wiped (if there were) setting newNpositionsPerVertex = 1, or added (if there weren´t) setting newNpositionsPerVertex = 2.
Language | Syntax |
---|---|
C++ | byte resizeMesh( dword newNVertex, dword newNNormals, dword newNFaces, dword newNpositionsPerVertex ) |
Python | int resizeMesh( int newNVertex, int newNNormals, int newNFaces, int newNpositionsPerVertex ) |
Return value
0 = Error resizing mesh.
1 = Success.
generateCustomUVW
--TODO--.
Language | Syntax |
---|---|
C++ | byte generateCustomUVW( dword iChannel, dword iGeneratorType ) |
Python | int generateCustomUVW( int iChannel, int iGeneratorType ) |
Return value
0 = Error generating custom UVW coordinates.
1 = Success.
getUVWChannelProperties
--TODO--.
Language | Syntax |
---|---|
C++ | byte getUVWChannelProperties( dword iChannel, byte& projType, bool& customProj, Cbase& projectorBase, real& startLatitude, real& endLatitude, real& startLongitude, real& endLongitude, real& startAngle, real& endAngle, bool& mirrorBackFaces ) |
Python | (int projType, bool custumProj, Cbase projectorBase, float startLatitude, float endLatutide, float startLongitude, float endLongitude, float startAngle, float endAngle, bool mirrorBackFaces) getUVWChannelProperties( int iChannel ) |
Return value
C++
0 = Error getting UVW channel properties.
1 = Success.
Python
Tuple containing the UVW channel properties.
getGlobalXform
--TODO--.
Return value
C++
0 = Error getting --TODO--
1 = Success.
Python
Cbase containing --TODO--
getGlobalNormalsXform
--TODO--.
Return value
C++
0 = Error getting --TODO--
1 = Success.
Python
Cbase containing --TODO--
getInverseGlobalXform
--TODO--.
Return value
C++
0 = Error getting --TODO--
1 = Success.
Python
Cbase containing --TODO--
getInverseGlobalNormalXform
--TODO--.
Language | Syntax |
---|---|
C++ | byte getInverseGlobalNormalXform( Cbase& ixForm ) |
Python | Cbase getInverseGlobalNormalXform() |
Return value
C++
0 = Error getting --TODO--
1 = Success.
Python
Cbase containing --TODO--
isGeometryLoader
Checks if the object was created by a geometry loader extension.
Language | Syntax |
---|---|
C++ | byte isGeometryLoader( bool& isGeomExtension ) |
Python | bool isGeometryLoader() |
Return value
C++
0 = Error checking object was created from a geometry loader extension.
1 = Success.
Python
True = the object was created by a geometry loader extension.
isGeometryProcedural
Checks if the object was created by a procedural geometry extension.
Language | Syntax |
---|---|
C++ | byte isGeometryProcedural( bool& isGeomProceduralExtension ) |
Python | bool isGeometryProcedural() |
Return value
C++
0 = Error checking object was created from a procedural geometry extension.
1 = Success.
Python
True = the object was created by a procedural geometry extension.
hasGeometryModifiers
Checks if the object has geometry modifiers (extensions).
Language | Syntax |
---|---|
C++ | byte hasGeometryModifiers( bool& isGeomModifiersExtension ) |
Python | bool hasGeometryModifiers() |
Return value
C++
0 = Error checking object have geometry modifiers (extensions).
1 = Success.
Python
True = the object have geometry modifiers (extensions).
cleanAllGeometryModifierExtensions
Clean all geometry modifier extensions applyed to the object.
Language | Syntax |
---|---|
C++ | byte cleanAllGeometryModifierExtensions() |
Python | int cleanAllGeometryModifierExtensions() |
Return value
0 = Error cleaning geometry modifier extensions.
1 = Success.
getGeometryModifierExtensionsNumber
Gets the number of geometry modifier extensions applied to the object.
Language | Syntax |
---|---|
C++ | byte getGeometryModifierExtensionsNumber( dword& numModifierExtensions ) |
Python | int getGeometryModifierExtensionsNumber() |
Return value
C++
0 = Error getting the number of geometry modifier extensions applied to the object.
1 = Success.
Python
Number of geometry modifier extensions applied to the object.