3ds Max C++ API Reference
Loading...
Searching...
No Matches
IParticleChannelMap.h

Functions

bool IsShared () const
 check out if some particles have shared mapping data.
 
virtual bool IsUVVertShared () const =0
 check out if some particles have shared UVVert data.
 
virtual bool IsTVFaceShared () const =0
 check out if some particles have shared TVFace data.
 
virtual int GetUVVertCount () const =0
 get total number of actual TabUVVert values in the channel
 
virtual int GetUVVertIndex (int particleIndex) const =0
 get the TabUVVert value index of a particle
 
virtual const TabUVVertGetUVVertByIndex (int valueIndex) const =0
 get TabUVVert of the valueIndex-th value
 
virtual const TabUVVertGetUVVert (int particleIndex) const =0
 get TabUVVert of a particle with the specified index
 
virtual const TabUVVertGetUVVert () const =0
 get global TabUVVert value for all particles.
 
virtual int GetTVFaceCount () const =0
 get total number of actual TabTVFace values in the channel
 
virtual int GetTVFaceIndex (int particleIndex) const =0
 may return NULL.
 
virtual const TabTVFaceGetTVFaceByIndex (int valueIndex) const =0
 get TabTVFace of the valueIndex-th value.
 
virtual const TabTVFaceGetTVFace (int particleIndex) const =0
 get TabTVFace of a particle with the specified index.
 
virtual const TabTVFaceGetTVFace () const =0
 get global TabTVFace value for all particles.
 
virtual void Apply (Mesh *mesh, int particleIndex, int mp) const =0
 apply content of the channel to the mesh [mesh] at mapping channel [mp]
 
FPInterfaceDescGetDesc ()
 

Detailed Description

Function Documentation

◆ IsShared()

bool IsShared ( ) const
inline

check out if some particles have shared mapping data.

if it's true then there is no need to get a mapping for each particle

39{ return (IsUVVertShared() || IsTVFaceShared()); }
virtual bool IsTVFaceShared() const =0
check out if some particles have shared TVFace data.
virtual bool IsUVVertShared() const =0
check out if some particles have shared UVVert data.

◆ IsUVVertShared()

bool IsUVVertShared ( ) const
pure virtual

check out if some particles have shared UVVert data.

if it's true then there is no need to get a UVVert data for each particle

◆ IsTVFaceShared()

bool IsTVFaceShared ( ) const
pure virtual

check out if some particles have shared TVFace data.

if it's true then there is no need to get a TVFace data for each particle

◆ GetUVVertCount()

int GetUVVertCount ( ) const
pure virtual

get total number of actual TabUVVert values in the channel

◆ GetUVVertIndex()

int GetUVVertIndex ( int  particleIndex) const
pure virtual

get the TabUVVert value index of a particle

◆ GetUVVertByIndex()

const TabUVVert * GetUVVertByIndex ( int  valueIndex) const
pure virtual

get TabUVVert of the valueIndex-th value

◆ GetUVVert() [1/2]

const TabUVVert * GetUVVert ( int  particleIndex) const
pure virtual

get TabUVVert of a particle with the specified index

◆ GetUVVert() [2/2]

const TabUVVert * GetUVVert ( ) const
pure virtual

get global TabUVVert value for all particles.

the method returns the TabUVVert value of the first particle if it is local or shared

◆ GetTVFaceCount()

int GetTVFaceCount ( ) const
pure virtual

get total number of actual TabTVFace values in the channel

◆ GetTVFaceIndex()

int GetTVFaceIndex ( int  particleIndex) const
pure virtual

may return NULL.

for different TabUVVert values it has different meanings. if TabUVVert has a single UVVert value then the particle has a planar TVFace data and all vertices of the particles have the same UVVert value. if TabUVVert has the same number of UVVert values as the particle mesh vertices number then the particle has a planar TVFace data and there is one-to-one correspondence between UVVerts and vertices of the particle. get the TabTVFace value index of a particle.

◆ GetTVFaceByIndex()

const TabTVFace * GetTVFaceByIndex ( int  valueIndex) const
pure virtual

get TabTVFace of the valueIndex-th value.

See GetTVFaceIndex(int particleIndex).

◆ GetTVFace() [1/2]

const TabTVFace * GetTVFace ( int  particleIndex) const
pure virtual

get TabTVFace of a particle with the specified index.

See GetTVFaceIndex(int particleIndex).

◆ GetTVFace() [2/2]

const TabTVFace * GetTVFace ( ) const
pure virtual

get global TabTVFace value for all particles.

the method returns the TabTVFace value of the first particle if it is local or shared. See GetTVFaceIndex(int particleIndex).

◆ Apply()

void Apply ( Mesh mesh,
int  particleIndex,
int  mp 
) const
pure virtual

apply content of the channel to the mesh [mesh] at mapping channel [mp]

◆ GetDesc()

FPInterfaceDesc * GetDesc ( )
inlinevirtual
Remarks
Returns a pointer to the class which contains the interface metadata.

Implements FPInterface.

#define PARTICLECHANNELMAPR_INTERFACE
Definition: IParticleChannelMap.h:23
virtual FPInterfaceDesc * GetDescByID(Interface_ID id)
Definition: ifnpub.h:613