105 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			105 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| # Blender.Key module and the Key and KeyBlock PyType objects
 | |
| 
 | |
| """
 | |
| The Blender.Key submodule.
 | |
| 
 | |
| This module provides access to B{Key} objects in Blender.
 | |
| 
 | |
| @type Types: readonly dictionary
 | |
| @var Types: The type of a key owner, indicating the type of data in the
 | |
| data blocks.
 | |
|     - MESH - the key is a Mesh key; data blocks contain
 | |
|     L{NMVert<NMesh.NMVert>} vertices.
 | |
|     - CURVE - the key is a Curve key; data blocks contains either
 | |
|     L{BezTriples<BezTriple.BezTriple>} or points (represented by a list of
 | |
|     3 floating point numbers).
 | |
|     - LATTICE - the key is a Lattice key; data blocks contain
 | |
|     BPoints, each point represented by a list of 3 floating point numbers.
 | |
| """
 | |
| 
 | |
| def Get(name = None):
 | |
|     """
 | |
|     Get the named Key object from Blender. If the name is omitted, it
 | |
|     will retrieve a list of all keys in Blender.
 | |
|     @type name: string
 | |
|     @param name: the name of the requested key
 | |
|     @return: If name was given, return that Key object (or None if not
 | |
|     found). If a name was not given, return a list of every Key object
 | |
|     in Blender.
 | |
|     """
 | |
| 
 | |
| class Key:
 | |
|     """
 | |
|     The Key object
 | |
|     ==============
 | |
|     An object with keyframes (L{Lattice}, L{NMesh} or
 | |
|     L{Curve}) will contain a Key object representing the
 | |
|     keyframe data.
 | |
|     
 | |
|     @ivar ipo:  Key Ipo.  Contains the Ipo if one is assigned to the
 | |
|     object, B{None} otherwise.  Setting to B{None} clears the current Ipo.
 | |
|     @type ipo:  Blender Ipo
 | |
|     @ivar value: The value of the key. Read-only.
 | |
|     @type value: float
 | |
|     @ivar type: An integer from the L{Types} dictionary
 | |
|     representing the Key type.  Read-only.
 | |
|     @type type: int
 | |
|     @ivar blocks: A list of KeyBlocks for the key.  Read-only.
 | |
|     @type blocks: Blender KeyBlock.
 | |
|     @ivar relative: Indicates whether the key is relative(=True) or normal.
 | |
|     @type relative: bool
 | |
|     """
 | |
| 
 | |
|     def getIpo():
 | |
|         """
 | |
|         Get the L{Ipo} object associated with this key.
 | |
|         """
 | |
|     def getBlocks():
 | |
|         """
 | |
|         Get a list of L{KeyBlock}s, containing the keyframes defined for
 | |
|         this Key.
 | |
|         """
 | |
| 
 | |
| class KeyBlock:
 | |
|   """	
 | |
|   The KeyBlock object
 | |
|   ===================
 | |
|   Each Key object has a list of KeyBlocks attached, each KeyBlock
 | |
|   representing a keyframe.
 | |
| 
 | |
|   @ivar curval: Current value of the corresponding IpoCurve.  Read-only.
 | |
|   @type curval: float
 | |
|   @ivar name: The name of the Keyblock.  Truncated to 32 characters.
 | |
|   @type name: string
 | |
|   @ivar pos: The position of the keyframe.
 | |
|   @type pos: float
 | |
|   @ivar slidermin: The minimum value for the action slider.
 | |
|   Value is clamped to the range [-10.0,10.0].
 | |
|   @type slidermin: float
 | |
|   @ivar slidermax: The maximum value for the action slider.
 | |
|   Value is clamped to the range [-10.0,10.0].
 | |
|   @type slidermax: float
 | |
|   @ivar vgroup: The assigned VGroup for the Key Block.
 | |
|   @type vgroup: string
 | |
|   @ivar data: The data of the KeyBlock (see L{getData}). This
 | |
|   attribute is read-only.
 | |
|   @type data: varies
 | |
|   """
 | |
| 
 | |
|   def getData():
 | |
|     """
 | |
|     Get the data of a KeyBlock, as a list of data items. Each item
 | |
|     will have a different data type depending on the type of this
 | |
|     Key.
 | |
|       - Mesh keys have a list of L{NMVert<NMesh.NMVert>} objects in the data
 | |
|       block.
 | |
|       - Lattice keys have a list of BPoints in the data block. These
 | |
|       don't have corresponding Python objects yet, so each BPoint is
 | |
|       represented using a list of three floating-point numbers (the
 | |
|       coordinate for each lattice vertex).
 | |
|       - Curve keys return either a list of L{BezTriple<BezTriple.BezTriple>}
 | |
|       objects in the data if the curve is a Bezier curve, otherwise it 
 | |
|       returns lists of three floats for each NURB or poly coordinate.
 | |
|     """
 | |
| 
 | 
