IPO Module documentation INTRODUCTION The module ipo allows you to access all the data of an ipo. The most important part(s) of an ipo is its ipocurve(s). The ipocurve has a set of bezier points (defined by 9 coordinates). The ipo module grants the user read/write access to these points. functions of the module : Get(Name:string) : returns the Ipo associated whose name is Name. get : same as Get New(Name:string , idcode:int ) : Creates and returns a new Ipo Object. The parameters are mandatory. If the name is already used, blender will change it to name.XXX (XXX is an integer) Ipo object member functions : getName() : Retrieves the name of the Ipo Object. setName(newname:string) : Sets the name of the Ipo Object. getBlocktype() : Retrieves the blocktype of the Ipo Object. setBlocktype(newblocktype:string) : Sets the blocktype of the Ipo Object. getShowkey() : Retrieves the showkey of the Ipo Object. setShowkey(val:int) : Sets the showkey of the Ipo Object. getPad() : Retrieves the pad of the Ipo Object. setPad(val:int) : Sets the pad of the Ipo Object. getRctf() : Retrieves the rctf of the Ipo Object. setRctf(val:int) : Sets the rctf of the Ipo Object. I do not fully understand the meaning of these parameters. getNcurves() : returns the number of ipocurves the ipo object contains. getBP() : returns the basepoint of the ipo object (generally NULL) getCurveCurval(numcurve:int) : returns the current value of the ipo curve number numcurve. getCurveBeztriple(numcurve:int,numpoint:int) : returns a list of 9 floats, which are the coordinates of the control point number numpoint of the ipocurve number numcurve. setCurveBeztriple(numcurve:int,numpoint:int,newvalues : list of 9 floats) : sets the coordinates of the control point number numpoint of the ipocurve number numcurve to newvalues. (the z coordinate should be 0, but blender does not complain if non null values are passed) Example : import Blender d = Blender.Ipo.Get('ObIpo') # hope there is an ipo named "ObIpo"...Else create it before.