Nathan's huge ipo patch.

- now more than 31 channels possible for ipos
- added lotsa new channels all over
- Texture block has ipo now too
- recoded getname_ei functions

(Will ask nathan to give release log info when he's back!)
This commit is contained in:
2004-07-26 21:44:55 +00:00
parent 0437f23008
commit 73f1da749b
16 changed files with 1551 additions and 242 deletions

View File

@@ -26,7 +26,8 @@ def New (type, name):
@type type: string
@type name: string
@param type: The Ipo's blocktype. Depends on the object the ipo will be
linked to. Currently supported types are Object, Camera, World, Material.
linked to. Currently supported types are Object, Camera, World,
Material, Texture, Lamp, Curve, Key.
@param name: The name for this Ipo.
@rtype: Blender Ipo
@return: The created Ipo.
@@ -71,14 +72,26 @@ class Ipo:
'curvename' are:
1. Camera Ipo: Lens, ClSta, ClEnd.
2. Material Ipo: R, G, B, SpecR, SpecG, SpecB, MirR, MirG, MirB, Ref,
Alpha, Emit, Amb, Spec, Hard, SpTra, Ang, Mode, HaSize, OfsX, OfsY,
Alpha, Emit, Amb, Spec, Hard, SpTra, Ang, Mode, HaSize, Translu,
RayMir, FresMir, FresMirI, FresTra, FresTraI, TraGlow, OfsX, OfsY,
OfsZ, SizeX, SizeY, SizeZ, TexR, TexG, TexB, DefVar, Col, Nor, Var;
3. Object Ipo: LocX, LocY, LocZ, dLocX, dLocY, dLocZ, RotX, RotY, RotZ,
dRotX, dRotY, dRotZ, SizeX, SizeY, SizeZ, dSizeX, dSizeY, dSizeZ,
Layer, Time, ColR, ColG, ColB, ColA;
4. World Ipo: HorR, HorG, HorB, ZenR, ZenG, ZenB, Expos, Misi, MisDi,
Layer, Time, ColR, ColG, ColB, ColA, FStreng, FFOff, Damping,
RDamp, Perm;
4. Lamp Ipo: Energ, R, G, B, Dist, SpoSi, SpoBl, Quad1, Quad2, HaIntl;
5. World Ipo: HorR, HorG, HorB, ZenR, ZenG, ZenB, Expos, Misi, MisDi,
MisSta, MisHi, StaR, StaG, StaB, StarDi, StarSi, OfsX, OfsY, OfsZ,
SizeX, SizeY, SizeZ, TexR, TexG, TexB, DefVar, Col, Nor, Var;
6. Texture Ipo: NSize, NDepth, NType, Turb, Vnw1, Vnw2, Vnw3, Vnw4,
MinkMExp, DistM, ColT, iScale, DistA, MgType, MgH, Lacu, Oct,
MgOff, MgGan, NBase1, NBase2;
7. Curve Ipo: Speed;
8. Key Ipo: Speed, 'Key 1' - 'Key 31';
9. Action Ipo: LocX, LocY, LocZ, SizeX, SizeY, SizeZ,
QuatX, QuatY, QuatZ, QuatW;
10.Sequence Ipo: Fac;
11.Constraint Ipo: Inf.
@type curvename : string
@rtype: IpoCurve object
@return: the corresponding IpoCurve, or None.
@@ -89,7 +102,21 @@ class Ipo:
Add a new curve to the IPO object. The possible values for 'curvename' are:
1. Object Ipo: LocX, LocY, LocZ, dLocX, dLocY, dLocZ, RotX, RotY, RotZ,
dRotX, dRotY, dRotZ, SizeX, SizeY, SizeZ, dSizeX, dSizeY, dSizeZ,
Layer, Time, ColR, ColG, ColB, ColA.
Layer, Time, ColR, ColG, ColB, ColA, FStreng, FFOff, Damping, RDamp,
Perm;
2. Camera Ipo: Lens, ClSta, ClEnd;
3. Lamp Ipo: Energ, R, G, B, Dist, SpoSi, SpoBl, Quad1, Quad2, HaIntl
4. Texture Ipo: NSize, NDepth, NType, Turb, Vnw1, Vnw2, Vnw3, Vnw4,
MinkMExp, DistM, ColT, iScale, DistA, MgType, MgH, Lacu, Oct,
MgOff, MgGan, NBase1, NBase2;
5. World Ipo: HorR, HorG, HorB, ZenR, ZenG, ZenB, Expos, Misi, MisDi,
MisSta, MisHi, StaR, StaG, StaB, StarDi, StarSi, OfsX, OfsY, OfsZ,
SizeX, SizeY, SizeZ, TexR, TexG, TexB, DefVar, Col, Nor, Var;
6. Material Ipo: R, G, B, SpecR, SpecG, SpecB, MirR, MirG, MirB, Ref,
Alpha, Emit, Amb, Spec, Hard, SpTra, Ior, Mode, HaSize, Translu,
RayMir, FresMir, FresMirI, FresTra, FresTraI, TraGlow;
7. Curve Ipo: Speed;
8. Key Ipo: Speed, 'Key 1' - 'Key 31'
@type curvename : string
@rtype: IpoCurve object
@return: the corresponding IpoCurve, or None.
@@ -265,10 +292,28 @@ class IpoCurve:
def getName():
"""
Returns the name of the ipo curve. This name can be:
1. LocX, LocY, LocZ, dLocX, dLocY, dLocZ, RotX, RotY, RotZ,
1. Camera Ipo: Lens, ClSta, ClEnd.
2. Material Ipo: R, G, B, SpecR, SpecG, SpecB, MirR, MirG, MirB, Ref,
Alpha, Emit, Amb, Spec, Hard, SpTra, Ang, Mode, HaSize, Translu,
RayMir, FresMir, FresMirI, FresTra, FresTraI, TraGlow, OfsX, OfsY,
OfsZ, SizeX, SizeY, SizeZ, TexR, TexG, TexB, DefVar, Col, Nor, Var;
3. Object Ipo: LocX, LocY, LocZ, dLocX, dLocY, dLocZ, RotX, RotY, RotZ,
dRotX, dRotY, dRotZ, SizeX, SizeY, SizeZ, dSizeX, dSizeY, dSizeZ,
Layer, Time, ColR, ColG, ColB, ColA, QuatX, QuatY, QuatZ or QuatW.
@warn: currently this only works with object and action IPO's..
Layer, Time, ColR, ColG, ColB, ColA, FStreng, FFOff, Damping,
RDamp, Perm;
4. Lamp Ipo: Energ, R, G, B, Dist, SpoSi, SpoBl, Quad1, Quad2, HaIntl;
5. World Ipo: HorR, HorG, HorB, ZenR, ZenG, ZenB, Expos, Misi, MisDi,
MisSta, MisHi, StaR, StaG, StaB, StarDi, StarSi, OfsX, OfsY, OfsZ,
SizeX, SizeY, SizeZ, TexR, TexG, TexB, DefVar, Col, Nor, Var;
6. Texture Ipo: NSize, NDepth, NType, Turb, Vnw1, Vnw2, Vnw3, Vnw4,
MinkMExp, DistM, ColT, iScale, DistA, MgType, MgH, Lacu, Oct,
MgOff, MgGan, NBase1, NBase2;
7. Curve Ipo: Speed;
8. Key Ipo: Speed, 'Key 1' - 'Key 31';
9. Action Ipo: LocX, LocY, LocZ, SizeX, SizeY, SizeZ,
QuatX, QuatY, QuatZ, QuatW;
10.Sequence Ipo: Fac;
11.Constraint Ipo: Inf.
@rtype: string
@return: the name of the ipo curve.
"""

View File

@@ -348,3 +348,23 @@ class Lamp:
@type event: string
@param event: "FrameChanged" or "Redraw".
"""
def getIpo():
"""
Get the Ipo associated with this Lamp object, if any.
@rtype: Ipo
@return: the wrapped ipo or None.
"""
def setIpo(ipo):
"""
Link an ipo to this Lamp object.
@type ipo: Blender Ipo
@param ipo: a "lamp data" ipo.
"""
def clearIpo():
"""
Unlink the ipo from this Lamp object.
@return: True if there was an ipo linked or False otherwise.
"""

View File

@@ -302,3 +302,22 @@ class MTex:
@cvar mapto: "Map to" field of texture. OR'd values of L{MapTo}
"""
def getIpo():
"""
Get the Ipo associated with this texture object, if any.
@rtype: Ipo
@return: the wrapped ipo or None.
"""
def setIpo(ipo):
"""
Link an ipo to this texture object.
@type ipo: Blender Ipo
@param ipo: a "texture data" ipo.
"""
def clearIpo():
"""
Unlink the ipo from this texture object.
@return: True if there was an ipo linked or False otherwise.
"""

View File

@@ -71,7 +71,7 @@ class World:
================
This object gives access to generic data from all worlds in Blender.
Its attributes depend upon its type.
@cvar name: the name of the world.
@cvar skytype: type of the sky. Bit 0 : Blend; Bit 1 : Real; Bit 2 : paper.
@cvar mode:
@@ -145,7 +145,6 @@ class World:
@return: the skytype of the world object.
"""
def setSkytype(skytype):
"""
Sets the skytype of a world object.
@@ -164,7 +163,6 @@ class World:
@return: the mode of the world object.
"""
def setMode(mode):
"""
Sets the mode of a world object.
@@ -183,7 +181,6 @@ class World:
@return: the mistype of the world object.
"""
def setMistype(mistype):
"""
Sets the mist type of a world object.
@@ -202,7 +199,6 @@ class World:
@return: the horizon color of the world object.
"""
def setHor(hor):
"""
Sets the horizon color of a world object.
@@ -220,7 +216,6 @@ class World:
@return: the zenith color of the world object.
"""
def setZen(zen):
"""
Sets the zenith color of a world object.
@@ -238,7 +233,6 @@ class World:
@return: the ambient color of the world object.
"""
def setAmb(amb):
"""
Sets the ambient color of a world object.
@@ -263,7 +257,6 @@ class World:
@return: the star parameters
"""
def setStar(star):
"""
Sets the star parameters of a world object.
@@ -286,7 +279,6 @@ class World:
@return: the mist parameters
"""
def setMist(mist):
"""
Sets the mist parameters of a world object.