EFFECT Module documentation INTRODUCTION The module effect allows you to access all the data of an effect. An effect can modify an object (typically a mesh) in three different ways. a) the build effect : makes the mesh appear progressively. b) the wave effect : waves appear on the mesh (which should be fine-grained) c) the particle effect : every vertex of the mesh emits particles, which can themselves emit new particles. This effect is the most parameterizable. In the blender internals, the effect object is just a placeholder for the "real" effect, which can be a wave, particle or build effect. The python API follows this structure : the Effect module grants access to (the few) data which are shared between all effects. It has three submodules : Wave, Build, Particle , which grant r/w access to the real parameters of these effects. functions of the module : Get(Name:string,pos:int) : returns the pos-th Effect associated to the object whose name is Name. get : same as Get New(Type:string ) : Creates and returns a new Effect Object. The parameter Type can take the values "particle", "wave" or "build" Effect object member functions : getType() : Retrieves the type of the Effect Object. setType(val:int) : Sets the type of the Effect Object. The possible values of the type are : 0 : effect build. 1 : effect particle. 2 : effect wave. getFlag()Retrieves the flag of the Effect Object setFlag(val:int) :Sets the flag The flag of the effect is a combination of parameters, whose semantics depend upon the effect type. All types : Bit 0 : set to 1 if the effect is selected in the effects window. Wave effect : Bits 1,2,3 : set to 1 if the button "X", "Y" or "Cycl" is clicked. Particle effect : Bits 1,2,3 : set to 1 if the button "Bspline", "Static" or "Face" is clicked. Submodules : Wave, Build, Particle. Wave module functions of the module : Get(Name:string,pos:int) : returns the pos-th wave Effect associated to the object whose name is Name. get : same as Get New( ) : Creates and returns a new Wave Object. Wave object member functions : getStartx() : returns the startx parameter of the wave object. setStartx(val:int) : sets the startx parameter of the wave object. getStarty() : returns the starty parameter of the wave object. setStarty(val:int) : sets the starty parameter of the wave object. getHeight() : returns the height parameter of the wave object. setHeight(val:int) : sets the height parameter of the wave object. getWidth() : returns the width parameter of the wave object. setWidth(val:int) : sets the width parameter of the wave object. getNarrow() : returns the narrow parameter of the wave object. setNarrow(val:int) : sets the narrow parameter of the wave object. getSpeed() : returns the speed parameter of the wave object. setSpeed(val:int) : sets the speed parameter of the wave object. getMinfac() : returns the minfac parameter of the wave object. setMinfac(val:int) : sets the minfac parameter of the wave object. getDamp() : returns the damp parameter of the wave object. setDamp(val:int) : sets the damp parameter of the wave object. getTimeoffs() : returns the timeoffs parameter of the wave object. setTimeoffs(val:int) : sets the time offset parameter of the wave object. getLifetime() : returns the lifetime parameter of the wave object. setLifetime(val:int) : sets the lifetime parameter of the wave object. The Object.attr syntax Wave attributes can be read/written with the object.attr syntax. Example : w = Blender.Wave.Get("Obname",3) #retrieves the 4th effect associated to the object named Obname a = w.speed # a is now the value corresponding to the speed of the effect w.speed = 42 # the speed of the effect is now equal to 42 The parameter can take these values : "lifetime","timeoffs","damp","minfac","speed","narrow","width","height","startx","starty" Build module functions of the module : Get(Name:string,pos:int) : returns the pos-th build Effect associated to the object whose name is Name. get(Name:string,pos:int) : same as Get New( ) : Creates and returns a new Build Object. Build object member functions : getLen() : returns the length of the effect (in frames). setLen(val:float) : sets the length of the effect (in frames). getSfra() : returns the starting frame of the effect. setSfra(val:float) : sets the starting frame of the effect. The Object.attribute syntax The attribute can take these values : "sfra","len". Particle module functions of the module : Get(Name:string,pos:int) : returns the pos-th particle Effect associated to the object whose name is Name. get(Name:string,pos:int) : same as Get New( ) : Creates and returns a new Effect Object. Particle object member functions : getStartTime() : returns the start time of the particle effect (in frames). setStartTime(val:float) : sets the start time of the particle effect (in frames). getEndTime() : returns the end time of the particle effect (in frames). setEndTime(val:float) : sets the end time of the particle effect (in frames). getLifeTime() : returns the life time of the particles. setLifeTime(val:float) : sets the life time of the particles. getNormfac() : returns the normal strength of the particles (relatively to mesh). setNormfac(val:float) : sets the normal strength of the particles(relatively to mesh). getObfac() : returns the initial of the particles relatively to objects. setObfac(val:float) : sets the initial of the particles relatively to objects. getRandfac() : returns the initial random speed of the particles. setRandfac(val:float) : sets the initial random speed of the particles. getTexfac() : returns the initial speed of the particles caused by the texture. setTexfac(val:float) : sets the initial speed of the particles caused by the texture. getRandlife() : returns the variability of the life of the particles. setRandlife(val:float) : sets the variability of the life of the particles. getNabla() : returns the dimension of the area for gradient computation. setNabla(val:float) : sets the dimension of the area for gradient computation. getTotpart() : returns the total number of particles. setTotpart(val:int) : sets the total number of particles. getTotkey() : returns the number of key positions. setTotkey(val:int) : sets the number of key positions. getSeed() : returns the seed of the RNG. setSeed(val:int) : sets the seed of the RNG. getSeed() : returns the x,y,z components of the constant force applied to the particles. setSeed(valx:float,valy:float,valz:float) : sets the x,y,z components of the constant force applied to the particles. getMult() : returns the 4 probabilities of a particle having a child. setMult(val1:float,val2:float,val3:float,val4:float) : sets the 4 probabilities of a particle having a child. getLife() : returns the lifespan of the 4 generation particles. setLife(val1:float,val2:float,val3:float,val4:float) : sets the lifespan of the 4 generation particles. getMat() : returns the material used by the 4 generation particles. setMat(val1:float,val2:float,val3:float,val4:float) : sets the material used by the 4 generation particles. getChild() : returns the number of children a particle may have. setChild(val1:float,val2:float,val3:float,val4:float) : sets the number of children a particle may have. getDefvec() : returns the x, y and z axis of the force defined by the texture. setDefvec(val1:float,val2:float,val3:float) : sets the x, y and z axis of the force defined by the texture. The Object.attribute syntax The attribute can take these values : "seed","nabla","sta","end","lifetime","normfac","obfac","randfac","texfac","randlife","vectsize","totpart","force","mult","life","child","mat","defvec".