Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 22 Next »

C++Python
Cmaxwell::CobjectCmaxwellObject

Describes a scene object.

Inherits from

Cpointer.

Sub-classes

Citerator

Methods

NameDescription
setPointerInternal use.
Cobject#freeDestroys the object.
getNameGets object name.
setNameSets object name.
isMeshChecks whether the object is a mesh.
isInstanceChecks whether the object is an instance.
getInstancedGets instance's parent.
isRFRKChecks whether the object is a RFRK object.
getRFRKParametersGets ReaFlow RenderKit parameters.
setRFRKParametersSets ReaFlow RenderKit  parameters.
getReferencedScenePathGets the scene file referenced by this object.
setReferencedScenePathSets the scene file referenced by this object.
getReferencedSceneMaterialGets the material of an specific object inside the referenced scene.
setReferencedSceneMaterialSets the material of an specific object inside the referenced scene.
getReferencedOverrideFlagsGet the override policy for visibility flags.
setReferencedOverrideFlagsSet the override policy for visibility flags.
mergeMeshesMerges an array of meshes into a single mesh. Target object must not be included.
getParentGets the parent object in the hierarchy.
setParentSets the parent object in the hierarchy.
getUuidUnique user ID that can be used for custom purposes.
setUuidSets the unique user ID.
getMaterialGets the material applied.
setMaterialSets the object material.
setPropertiesSets the caustics properties of the object.

getDependencies

Gets all the extern dependencies of the object (rfrk files, etc).
Geometry
getNumVertexesGets number of vertexes of the object.
getNumTrianglesGets number of triangles of the object.
getNumNormalsGets number of the normals of the object.
getNumPositionsPerVertexGets number of positions per vertex of the object.
getNumChannelsUVWGets number of UVW channels of the object.
addChannelUVWAdds an UVW channel to the object.
generateSphericalUVWGenerates spherical UVW coordinates.
generateCylindricalUVWGenerates cylindrical UVW coordinates.
generateCubicUVWGenerates cubic UVW coordinates.
generatePlanarUVWGenerates planar UVW coordinates.
getVertexGets vertex by index.
setVertexSets vertex by index.
getNormalGets normal by index.
setNormalSets normal by index.
getTriangleGets triangle (vertexes and normals) by index.
setTriangleSets triangle (vertexes and normals) by index.
getTriangleGroupGets triangle group by index.
setTriangleGroupSets triangle group.
getTriangleUVWGets triangle UVW coordinates.
setTriangleUVWSets triangle UVW coordinantes.
getTriangleMaterialGets triangle material.
setTriangleMaterialSets triangle material.
getGroupMaterialGets material of a group of triangles.
setGroupMaterialSets material of a group of triangles.
getBaseAndPivotGets base and pivot axes of the object.
setBaseAndPivotSets base and pivot axes of the object.
getWorldTransformReturn the world transform of the object.
getTransformSubstepsCountReturn the number of substeps used for defining Base and Pivot motion blur.
getTransfrormStepInfoByIndexReturn transform information( base, pivot and time) for the given index.
getPositionUsed by Maxwell Studio (not needed for rendering).
setPositionUsed by Maxwell Studio (not needed for rendering).
getRotationUsed by Maxwell Studio (not needed for rendering).
setRotationUsed by Maxwell Studio (not needed for rendering).
getScaleUsed by Maxwell Studio (not needed for rendering).
setScaleUsed by Maxwell Studio (not needed for rendering).
getShearUsed by Maxwell Studio (not needed for rendering).
setShearUsed by Maxwell Studio (not needed for rendering).
getPivotPositionUsed by Maxwell Studio (not needed for rendering).
setPivotPositionUsed by Maxwell Studio (not needed for rendering).
getPivotRotationUsed by Maxwell Studio (not needed for rendering).
setPivotRotationUsed by Maxwell Studio (not needed for rendering).
isPosRotScaleInitializedChecks if the methods above have been used for the given object.
cleanGeometryOptional routine that removes degenerated triangles, repeated/unused vertex and normals.
Display
getHideGets "hide" status of the object.
setHideSets "hide" status of the object.
getHideToCameraGets "hide to camera" status of the object.
setHideToCameraSets "hide to camera" status of the object.
getHideToReflectionsRefractionsGets "hide to reflections and refractions" status of the object.
setHideToReflectionsRefractionsSets "hide to reflections and refractions" status of the object.
getHideToGIGets "hide to global illumination" status of the object.
setHideToGIGets "hide to global illumination" status of the object.
isExcludedOfCutPlanesGets "excluded of cut planes" status of the object.
excludeOfCutPlanesSets "excluded of cut planes" status of the object.
getReferenceDisplayPointsThis function is useful to display a mesh on a viewport.
setColorIDSets the color used by this object in the Object ID render channel.
getColorIDGets the color used by this object in the Object ID render channel.
setGeometryDirtySet the geometry "dirty".
getUserDataInternal use.
setUserDataInternal use.
getVertexesBufferInternal use.
getNormalsBufferInternal use.
getTrianglesBufferInternal use.
initializeMeshClean the mesh and allocates memory for vertexes, normals, triangles and motion blur.
resizeMeshReinitializes all the basic geometry and UV arrays.
generateCustomUVW--TODO--
getUVWChannelPropertiesGets UVW channel properties.
getGlobalXform--TODO--
getGlobalNormalsXform--TODO--
getInverseGlobalXform--TODO--
getInverseGlobalNormalsXform--TODO--
isGeometryLoaderChecks if the object was created by a geometry loader extension.
isGeometryProceduralChecks if the object was created by a procedural geometry extension.
hasGeometryModifiersChecks if the object has geometry modifiers (extensions).
applyGeometryModifierExtension--TODO--
cleanAllGeometryModifierExtensionsClean all geometry modifier extensions applyed to the object.
getGeometryLoaderExtensionParams--TODO--
getGeometryProceturalExtensionParams--TODO--
getGeometryModifierExtensionsNumberGets the number of geometry modifier extensions applied to the object.
getGeometryModifierExtensionParamsAtIndex--TODO--

Inherited methods

isNull.

free

Destroys the object.

LanguageSyntax
C++byte free()
Pythonint free()

Return value

0 = Error destroying object.

1 = Success.

getName

Gets the name of the object.

LanguageSyntax
C++byte getName( char** pName)
Pythonstr getName()

Return value

C++

0 = Error getting name.

1 = Success.

Python

Object name.

setName

Sets the name of the object.

LanguageSyntax
C++byte setName( const char* pName )
Pythonint setName( str pName )

Return value

0 = Error setting name.

1 = Success.

isMesh

Checks whether the object is a mesh.

LanguageSyntax
C++byte isMesh( byte& isMesh )
Pythonint 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.

LanguageSyntax
C++byte isInstance( byte& isInstance )
Pythonint 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.

LanguageSyntax
C++Cmaxwell::Cobject getInstanced()
PythonCmaxwellObject 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.

LanguageSyntax
C++byte isRFRK( byte& isRfrk )
Pythonint 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.

LanguageSyntax
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

TypeNameIn/OutDescription
char*binSeqNamesoutComma separated list of full paths to .bin or .pd files.
char*rwNameoutFull path to a  realwave .sd file.
char*substractiveFieldout'' 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.
realscaleoutDefault value = 1.0.
realresolutionoutDefault value = 1.0.
realpolySizeoutDefault value = 0.0.
realradiusoutDefault value = 0.33.
realsmoothoutDefault value = 0.3.
realcoreoutDefault value = 0.0.
realsplashoutDefault value = 0.0.
realmaxVelocityoutDefault value = 1000.0.
intaxisout0 = YXZ, 1 = ZXY, 2 = YZX.
realfpsoutDefault value = 25.0.
intframeout 
intoffsetoutDefault value = 0.
boolflipNormalsoutDefault value = false.
intrwTesselationoutDefault value = 3.
boolmboutMotion blur (true) or not (false).
realmbCoefout0.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.

LanguageSyntax
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

TypeNameIn/OutDescription
char*binSeqNamesinComma separated list of full paths to .bin or .pd files.
char*rwNameinFull path to a  realwave .sd file.
char*substractiveFieldin'' 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.
realscaleinDefault value = 1.0.
realresolutioninDefault value = 1.0.
realpolySizeinDefault value = 0.0.
realradiusinDefault value = 0.33.
realsmoothinDefault value = 0.3.
realcoreinDefault value = 0.0.
realsplashinDefault value = 0.0.
realmaxVelocityinDefault value = 1000.0.
intaxisin0 = YXZ, 1 = ZXY, 2 = YZX.
realfpsinDefault value = 25.0.
intframein 
intoffsetinDefault value = 0.
boolflipNormalsinDefault value = false.
intrwTesselationinDefault value = 3.
boolmbinMotion blur (true) or not (false).
realmbCoefin0.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.

LanguageSyntax
C++const char* getReferencedScenePath()
Pythonstr getReferencedScenePath()

setReferencedScenePach

Sets the scene file referenced by this object.

LanguageSyntax
C++byte setReferencedScenePath( const char* proxyPath )
Pythonint 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.

LanguageSyntax
C++byte getReferencedSceneMaterial( const char* objectName, Cmaxwell::Cmaterial& material )
PythonCmaxwellMaterial getReferencedSceneMaterial( str objectName )

setReferencedSceneMaterial

Sets the material of an specific object inside the referenced scene.

LanguageSyntax
C++byte setReferencedSceneMaterial( const char* objectName, Cmaxwell::Cmaterial  material )
Pythonint 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.

LanguageSyntax
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.

LanguageSyntax
C++byte setReferencedOverrideFlags( byte& flags )
Pythonint 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.

LanguageSyntax
C++byte mergeMeshes( const Cmaxwell::Cobject* pMeshes, dword nMeshes )
Pythonint mergeMeshes( CmaxwellObject[] meshes )

Return value

0 = Error setting reference scene file.

1 = Success.

Examples

Python
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.

LanguageSyntax
C++byte getParent( Cmaxwell::Cobject& parent )
PythonCmaxwellObject getParent()

Return value

C++

0 = Error getting parent object.

1 = Success.

Python

Parent object.

setParent

Sets the parent object in the hierarchy.

LanguageSyntax
C++byte setParent( Cmaxwell::Cobject parent )
Pythonint setParent( CmaxwellObject parent )

Return value

0 = Error setting parent object.

1 = Success.

getUuid

Unique user ID that can be used for custom purposes.

LanguageSyntax
C++const char* getUuid()
Pythonstr getUuid()

setUuid

Sets the unique user ID.

LanguageSyntax
C++byte setUuid( const char* pUuid )
Pythonint setUuid( str uuid )

Return value

0 = Error setting unique user ID.

1 = Success.

getMaterial

Gets the material applied.

LanguageSyntax
C++byte getMaterial( Cmaxwell::Cmaterial& parent )
PythonCmaxwellMaterial  getMaterial()

Return value

C++

0 = Error getting object material.

1 = Success.

Python

Object material.

setMaterial

Sets the object material.

LanguageSyntax
C++byte setMaterial( Cmaxwell::Cmaterial material )
Pythonint setMaterial( CmaxwellMaterial  material )

Return value

0 = Error setting object material.

1 = Success.

setProperties

Sets the caustics properties of the object. 1 enables, 0 disables.

LanguageSyntax
C++byte setProperties( int doDirectCausticsReflection, int doDirectCausticsRefraction, int doIndirectCausticsReflection, int doIndirectCausticsRefraction )
Pythonint 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).

LanguageSyntax
C++byte getDependencies( dword& numDependencies, char** & paths, const bool& searchInsideProxy = true )
Pythonstr[] getDependencies( bool searchInsideProxy = true )

Parameters

TypeNameIn/OutDescription
dword&numDependenciesout(C++ only) Number of dependencies returned.
char**&pathsout(C++ onlu) String array (size = numDependencies) containing all the dependencies requested.
const bool&searchIndideProxyin

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.

LanguageSyntax
C++byte getNumVertexes( dword& nVertexes )
Pythonint getNumVertexes()

Return value

C++

0 = Error getting number of vertexes.

1 = Success.

Python

Number of vertexes.

getNumTriangles

Gets number of triangles of the object.

LanguageSyntax
C++byte getNumTriangles( dword& nTriangles )
Pythonint getNumTriangles()

Return value

C++

0 = Error getting number of triangles.

1 = Success.

Python

Number of triangles.

getNumNormals

Gets number of normals of the object.

LanguageSyntax
C++byte getNumNormals( dword& nNormals )
Pythonint 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.

LanguageSyntax
C++byte getNumPositionsPerVertex( dword& nPositions )
Pythonint 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.

LanguageSyntax
C++byte getNumChannelsUVW( dword& nChannelsUVW )
Pythonint 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.

LanguageSyntax
C++byte addChannelUVW( dword& index, byte id = 0xFF )
Pythonint 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.

LanguageSyntax
C++byte generateSphericalUVW( dword& iChannel, CbaseT& projectorBase, real& startLatitude, real& endLatitude, real& startLongitude, real& endLongitude )
Pythonint 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.

LanguageSyntax
C++byte generateCylindricalUVW( dword& iChannel,  Cbase& projectorBase, real& startAngle, real& endAngle )
Pythonint generateCylindricalUVW( int iChannel,  Cbase projectorBase, float startAngle, float endAngle )

Return value

0 = Error generating cylindrical UVW coordinaltes.

1 = Success.

generateCubicUVW

Generates cubic UVW coordinates.

LanguageSyntax
C++byte generateCubicUVW( dword& iChannel,  Cbase& projectorBase, bool mirrorBackFaces = false )
Pythonint generateCubicUVW( int iChannel,  Cbase projectorBase, bool mirrorBackFaces = False )

Return value

0 = Error generating cubic UVW coordinaltes.

1 = Success.

generatePlanarUVW

Generates planar UVW coordinates.

LanguageSyntax
C++byte generatePlanarUVW( dword& iChannel,  Cbase& projectorBase )
Pythonint generatePlanarUVW( int iChannel,  Cbase projectorBase )

Return value

0 = Error generating planar UVW coordinaltes.

1 = Success.

getVertex

Gets vertex by index.

LanguageSyntax
C++byte getVertex( dword iVertex, dword iPosition, Cpoint& point )
PythonCvector 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.

LanguageSyntax
C++byte setVertex( dword iVertex, dword iPosition, const Cpoint& point )
Pythonint setVertex( int iVertex, int iPosition, Cvector point )

Return value

0 = Error setting the vertex.

1 = Success.

getNormal

Gets normal by index.

LanguageSyntax
C++byte getNormal( dword iVertex, dword iPosition, Cvector&normal )
PythonCvector 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.

LanguageSyntax
C++byte setNormal( dword iNormal, dword iPosition, const Cvector& normal )
Pythonint setNormal( int iNormal, int iPosition, Cvector normal )

Return value

0 = Error setting the normal.

1 = Success.

getTriangle

Gets triangle (vertexes and normals) by index.

LanguageSyntax
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.

LanguageSyntax
C++byte setTriangle( dword iTriangle, dword iVertex1, dword iVertex2, dword iVertex3, dword iNormal1, dword iNormal2, dword iNormal3 )
Pythonint 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.

LanguageSyntax
C++

byte getTriangleGroup( dword iTriangle, dword& idGroup )

Pythonint 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.

LanguageSyntax
C++byte setTriangleGroup( dword iTriangle, dword idGroup )
Pythonint setTriangleGroup( int iTriangle, int idGroup )

Return value

0 = Error setting the triangle group.

1 = Success.

getTriangleUVW

Gets triangle UVW coordinates.

LanguageSyntax
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.

LanguageSyntax
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 )
Pythonint 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.

LanguageSyntax
C++byte getTriangleMaterial( dword iTriangle, Cmaxwell::Cmaterial& material )
PythonCmaxwellMaterial getTriangleMaterial( int iTriangle )

Return value

C++

0 = Error getting triangle material.

1 = Success.

Python

Triangle material.

setTriangleMaterial

Sets the triangle material.

LanguageSyntax
C++byte setTriangleMaterial( dword iTriangle, Cmaxwell::Cmaterial material )
Pythonint setTriangleMaterial( int iTriangle, CmaxwellMaterial material )

Return value

0 = Error setting triangle material.

1 = Success.

getGroupMaterial

Gets material of a group of triangles.

LanguageSyntax
C++byte getGroupMaterial( dword iGroup, Cmaxwell::Cmaterial& material )
PythonCmaxwellMaterial 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.

LanguageSyntax
C++byte setGroupMaterial( dword iGroup, Cmaxwell::Cmaterial material )
Pythonint setGroupMaterial( int iGroup, CmaxwellMaterial material )

Return value

0 = Error setting triangle group material.

1 = Success.

setBaseAndPivot

Sets base and pivot axes of the object.

LanguageSyntax
C++

byte setBaseAndPivot( Cbase base, Cbase pivot, real substepTime = 0.0 )

Pythonint 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.

LanguageSyntax
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..

LanguageSyntax
C++byte getWorldTransform( Cbase& base )
PythonCbase getWorldTransform()

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.

LanguageSyntax
C++dword getTransformSubstepsCount()
Pythonint getTransformSubstepsCount()

getTransformStepInfoByIndex

Return transform information( base, pivot and time) for the given index.

LanguageSyntax
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.

LanguageSyntax
C++byte isPosRotScaleInitialized( bool& init )
Pythonbool 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.

LanguageSyntax
C++byte cleanGeometry()
Pythonint cleanGeometry()

Return value

0 = Error cleaning geometry.

1 = Success.

getHide

Gets "hide" status of the object.

LanguageSyntax
C++byte getHide( bool& hide )
Pythonbool 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.

LanguageSyntax
C++byte setHide( bool hide )
Pythonint setHide( bool hide )

Return value

0 = Error setting "hide" state.

1 = Success.

getHideToCamera

Gets "hide to camera" status of the object.

LanguageSyntax
C++byte getHideToCamera( bool& hide )
Pythonbool 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.

LanguageSyntax
C++byte setHideToCamera( bool hide )
Pythonint 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.

LanguageSyntax
C++byte getHideToReflectionsRefractions( bool& hide )
Pythonbool 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.

LanguageSyntax
C++byte setHideToReflectionsRefractions( bool hide )
Pythonint 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.

LanguageSyntax
C++byte getHideToGI( bool& hide )
Pythonbool 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.

LanguageSyntax
C++byte setHideToGI( bool hide )
Pythonint 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.

LanguageSyntax
C++byte isExcludedOfCutPlanes( bool& excluded )
Pythonbool 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.

LanguageSyntax
C++byte excludeOfCutPlanes( bool exclude )
Pythonint 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.

LanguageSyntax
C++float* getReferenceDisplayPoints( const dword& percent, const dword& maxPoints, dword& nPoints )
Pythonarray getReferenceDisplayPoints( int percent, int maxPoints )

Parameters

TypeNameIn/OutDescription
const dword&percentinPercent of points of the mesh that will be returned.
const dword&maxPointsin

Maximum number of points that will be in the returned array (-1 means there is not a maximum fixed)

dword&nPointsoutNumber 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.

LanguageSyntax
C++byte setColorID( const Crgb& color )
Pythonint setColorID( Crgb  color )

Return value

0 = Error setting color ID.

1 = Success.

getColorID

Gets the color used by this object in the Object ID render channel.

LanguageSyntax
C++byte getColorID( Crgb & color )
PythonCrgb  getColorID()

Return value

C++

0 = Error getting the color ID.

1 = Success.

Python

Crgb containing the color ID.

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.

LanguageSyntax
C++byte setGeometryDirty()
Pythonint setGeometryDirty()

Return value

0 = Error setting geometry dirty.

1 = Success.

initializeMesh

Clean the mesh and allocates memory for vertexes, normals, triangles and motion blur.

LanguageSyntax
C++byte initializeMesh( dword nVertex, dword nNormals, dword nFaces, dword positionsPerVertex )
Pythonint 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.

LanguageSyntax
C++byte resizeMesh( dword newNVertex, dword newNNormals, dword newNFaces, dword newNpositionsPerVertex )
Pythonint resizeMesh( int newNVertex, int newNNormals, int newNFaces, int newNpositionsPerVertex )

Return value

0 = Error resizing mesh.

1 = Success.

generateCustomUVW

--TODO--.

LanguageSyntax
C++byte generateCustomUVW( dword iChannel, dword iGeneratorType )
Pythonint generateCustomUVW( int iChannel, int iGeneratorType )

Return value

0 = Error generating custom UVW coordinates.

1 = Success.

getUVWChannelProperties

--TODO--.

LanguageSyntax
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--.

LanguageSyntax
C++byte getGlobalXform( Cbase& xForm )
PythonCbase getGlobalXform()

Return value

C++

0 = Error getting  --TODO--

1 = Success.

Python

Cbase containing --TODO--

getGlobalNormalsXform

--TODO--.

LanguageSyntax
C++byte getGlobalNormalsXform( Cbase& xForm )
PythonCbase getGlobalNormalsXform()

Return value

C++

0 = Error getting  --TODO--

1 = Success.

Python

Cbase containing --TODO--

getInverseGlobalXform

--TODO--.

LanguageSyntax
C++byte getInverseGlobalXform( Cbase& ixForm )
PythonCbase getInverseGlobalXform()

Return value

C++

0 = Error getting  --TODO--

1 = Success.

Python

Cbase containing --TODO--

getInverseGlobalNormalXform

--TODO--.

LanguageSyntax
C++byte getInverseGlobalNormalXform( Cbase& ixForm )
PythonCbase 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.

LanguageSyntax
C++byte isGeometryLoader( bool& isGeomExtension )
Pythonbool 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.

LanguageSyntax
C++byte isGeometryProcedural( bool& isGeomProceduralExtension )
Pythonbool 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).

LanguageSyntax
C++byte hasGeometryModifiers( bool& isGeomModifiersExtension )
Pythonbool 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.

LanguageSyntax
C++byte cleanAllGeometryModifierExtensions()
Pythonint cleanAllGeometryModifierExtensions()

Return value

0 = Error cleaning geometry modifier extensions.

1 = Success.

getGeometryModifierExtensionsNumber

Gets the number of geometry modifier extensions applied to the object.

LanguageSyntax
C++byte getGeometryModifierExtensionsNumber( dword& numModifierExtensions )
Pythonint 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.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • No labels