Module Bpy_data
[frames | no frames]

Module Bpy_data

The bpy module.

bpy.data (Generic Data Access)

Example:
       # apply the active image to the active mesh
       # this script has no error checking to keep it small and readable.

       sce= bpy.data.scenes.active
       ob_act = sce.objects.active             # assuming we have an active, might be None
       me = ob_act.getData(mesh=1)             # assuming a mesh type, could be any
       img = bpy.data.images.active                    # assuming we have an active image
       
       for f in me.faces:
               f.image = img

       Window.RedrawAll()
Example:
       # make a new object from an existing mesh
       # and make it active
       scn= bpy.data.scenes.active
       me = bpy.data.meshes['mymesh']
       ob = sce.objects.new(me) # new object from the mesh
       sce.objects.active = ob
Example:
       # print the names of any non local objects
       sce= bpy.data.scenes.active
       for ob in sce.objects:
               if ob.lib:
                       print 'external object:', ob.name, ob.lib
Example:
       # add an empty object at each vertex of the active mesh
       scn= bpy.data.scenes.active
       ob_act = sce.objects.active
       matrix = ob_act.matrixWorld
       me = ob_act.getData(mesh=1)
       
       for v in me.verts:
               ob = sce.objects.new('Empty')
               ob.loc = v.co * matrix                  # transform the vertex location by the objects matrix.
Example:
       # load all the wave sound files in a directory
       import os
       sound_dir = '/home/me/soundfiles/'
       sounds_new = []
       for fname in os.listdir(sound_dir):
               if fname.lower().endswith('.wav'):
                       try:
                               snd = bpy.data.sounds.new(filename = sound_dir + fname)
                       except:
                               snd = None
                       
                       if snd:
                               sounds_new.append(snd)
       
       # Print the sounds
       for snd in sounds_new:
               print snd
Example:
       # apply a new image to each selected mesh object as a texface.
       width, height= 512, 512
       scn= bpy.data.scenes.active
       
       for ob in sce.objects.context:
               if not ob.lib and ob.type == 'Mesh':    # object isn't from a library and is a mesh
                       me = ob.getData(mesh=1)
                       me.faceUV = True                                        # add UV coords and textures if we don't have them.
                       
                       # Make an image named after the mesh
                       img = bpy.data.images.new(me.name, width, height)
                       
                       for f in me.faces:
                               f.image = img
       
       Window.RedrawAll()

Classes
libBlockSeq This provides a unified way to access and manipulate data types in Blender (scene, object, mesh, curve, metaball, material, texture, image, lattice, lamp, camera, ipo, world, font, text, sound, groups, armatures, actions).

Variable Summary
libBlockSeq actions: sequence for action data
libBlockSeq armatures: sequence for armature data
libBlockSeq cameras: sequence for camera data
libBlockSeq curves: sequence for curve data, used to store Curve, Surface and Text3d data.
libBlockSeq fonts: sequence for font data
libBlockSeq groups: sequence for group data
libBlockSeq images: sequence for image data
libBlockSeq ipos: sequence for ipo data
libBlockSeq lamps: sequence for lamp data
libBlockSeq lattices: sequence for lattice data
libBlockSeq materials: sequence for material data
libBlockSeq meshes: sequence for mesh data
libBlockSeq metaballs: sequence for metaball data
libBlockSeq objects: sequence for object data
libBlockSeq scenes: sequence for scene data
libBlockSeq sounds: sequence for sound data
libBlockSeq texts: sequence for text data
libBlockSeq textures: sequence for texture data
libBlockSeq worlds: sequence for world data

Variable Details

actions

sequence for action data
Type:
libBlockSeq

armatures

sequence for armature data
Type:
libBlockSeq

cameras

sequence for camera data
Type:
libBlockSeq

curves

sequence for curve data, used to store Curve, Surface and Text3d data.
Type:
libBlockSeq

fonts

sequence for font data
Type:
libBlockSeq

groups

sequence for group data
Type:
libBlockSeq

images

sequence for image data
Type:
libBlockSeq

ipos

sequence for ipo data
Type:
libBlockSeq

lamps

sequence for lamp data
Type:
libBlockSeq

lattices

sequence for lattice data
Type:
libBlockSeq

materials

sequence for material data
Type:
libBlockSeq

meshes

sequence for mesh data
Type:
libBlockSeq

metaballs

sequence for metaball data
Type:
libBlockSeq

objects

sequence for object data
Type:
libBlockSeq

scenes

sequence for scene data
Type:
libBlockSeq

sounds

sequence for sound data
Type:
libBlockSeq

texts

sequence for text data
Type:
libBlockSeq

textures

sequence for texture data
Type:
libBlockSeq

worlds

sequence for world data
Type:
libBlockSeq

Generated by Epydoc 2.1 on Thu May 10 20:31:59 2007 http://epydoc.sf.net