97 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			97 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| # Blender.BezTriple module and the BezTriple PyType object
 | |
| 
 | |
| """
 | |
| The Blender.BezTriple submodule
 | |
| 
 | |
| B{New}: 
 | |
|   -  new attributes L{handleTypes<BezTriple.handleTypes>},
 | |
|      L{selects<BezTriple.selects>} and L{weight<BezTriple.weight>} 
 | |
| 
 | |
| This module provides access to the BezTriple Data in Blender.  It is used by
 | |
| CurNurb and IpoCurve objects.
 | |
| 
 | |
| @type HandleTypes: readonly dictionary
 | |
| @var HandleTypes: The available BezTriple handle types.
 | |
|     - FREE - handle has no constraints
 | |
|     - AUTO - completely constrain handle based on knot position
 | |
|     - VECT - constraint handle to line between current and neighboring knot
 | |
|     - ALIGN - constrain handle to lie in a straight line with knot's other
 | |
|     handle
 | |
|     - AUTOANIM - constrain IPO handles to be horizontal on extremes
 | |
| """
 | |
| 
 | |
| def New (coords):
 | |
|   """
 | |
|   Create a new BezTriple object.  
 | |
| 
 | |
|   @type coords: sequence of three or nine floats
 | |
|   @param coords: the coordinate values for the new control point.  If three
 | |
|   floats are given, then the handle values are automatically generated.
 | |
|   @rtype: BezTriple
 | |
|   @return: a new BezTriple object
 | |
|   """
 | |
| 
 | |
| class BezTriple:
 | |
|   """
 | |
|   The BezTriple object
 | |
|   ====================
 | |
|   This object gives access to generic data from all BezTriple objects in
 | |
|   Blender.  
 | |
|   @ivar pt : the [x,y] coordinates for knot point of this BezTriple.  After
 | |
|   changing coordinates of a Ipo curve, it is advisable to call 
 | |
|   L{IpoCurve.recalc()<IpoCurve.IpoCurve.recalc>} to update the curve.
 | |
|   @type pt: list of two floats
 | |
|   @ivar vec : a list of the 3 points [ handle, knot, handle ] that comprise a
 | |
|   BezTriple, with each point composed of a list [x,y,z] of floats.  The list 
 | |
|   looks like [ [H1x, H1y, H1z], [Px, Py, Pz], [H2x, H2y, H2z] ].
 | |
|   Example::
 | |
|       # where bt is of type BezTriple
 | |
|       #  and h1, p, and h2 are lists of 3 floats
 | |
|       h1, p, h2 = bt.vec
 | |
|   @type vec: list of points
 | |
|   @ivar tilt: the tilt/alpha value for the point
 | |
|   @type tilt: float
 | |
|   @ivar radius: the radius of this point (used for tapering bevels)
 | |
|   @type radius: float
 | |
|   @ivar hide: the visibility status of the knot.  B{Note}: true/nonzero means
 | |
|   I{not} hidden.  B{Note}: primarily intended for curves; not a good idea to 
 | |
|   hide IPO control points.
 | |
|   @type hide: int
 | |
|   @ivar handleTypes: the types of the point's two handles.  See 
 | |
|   L{HandleTypes} for a complete description.
 | |
|   @type handleTypes list of two ints
 | |
|   @ivar selects: the select status for [handle, knot, handle].  True/nonzero
 | |
|   if the point is selected.
 | |
|   @type selects: list of three ints
 | |
|   @ivar weight: the weight assigned to the control point.  Useful for
 | |
|   softbodies and possibly others.
 | |
|   @type weight: float
 | |
|   """
 | |
| 
 | |
|   def getPoints():
 | |
|     """
 | |
|     Returns the x,y coordinates of the Bezier knot point (B{deprecated}).
 | |
|     See the L{BezTriple.pt} attribute.
 | |
|     @rtype: list of floats
 | |
|     @return: list of the x and y coordinates of the Bezier point.
 | |
|     """
 | |
| 
 | |
|   def setPoints(newval):
 | |
|     """
 | |
|     Sets the x,y coordinates of the Bezier knot point (B{deprecated}).
 | |
|     See the L{BezTriple.pt} attribute.
 | |
|     @type newval: tuple of 2 floats
 | |
|     @param newval: the x and y coordinates of the new Bezier point.
 | |
|     @rtype: None
 | |
|     @return: None
 | |
|     """
 | |
| 
 | |
|   def getTriple():
 | |
|     """
 | |
|     Returns the x,y,z coordinates for each of the three points that make up
 | |
|     a BezierTriple (B{deprecated}).  See the L{BezTriple.vec} attribute.
 | |
|     @rtype: list consisting of 3 lists of 3 floats
 | |
|     @return: handle1, knot, handle2
 | |
|     """
 | |
| 
 |