bpy.types.libraries.load sphinx doc & examples (doc system needed some updates).
http://www.blender.org/documentation/blender_python_api_2_56_3/bpy.types.BlendDataLibraries.html#bpy.types.BlendDataLibraries.load
This commit is contained in:
		
							
								
								
									
										23
									
								
								doc/python_api/examples/bpy.types.BlendDataLibraries.load.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								doc/python_api/examples/bpy.types.BlendDataLibraries.load.py
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,23 @@
 | 
			
		||||
import bpy
 | 
			
		||||
 | 
			
		||||
filepath = "//link_library.blend"
 | 
			
		||||
 | 
			
		||||
# load a single scene we know the name of.
 | 
			
		||||
with bpy.data.libraries.load(filepath) as (data_from, data_to):
 | 
			
		||||
    data_to.scenes = ["Scene"]
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# load all meshes
 | 
			
		||||
with bpy.data.libraries.load(filepath) as (data_from, data_to):
 | 
			
		||||
    data_to.meshes = data_from.meshes
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# link all objects starting with 'A'
 | 
			
		||||
with bpy.data.libraries.load(filepath, link=True) as (data_from, data_to):
 | 
			
		||||
    data_to.objects = [name for name in data_from.objects if name.startswith("A")]
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# append everything
 | 
			
		||||
with bpy.data.libraries.load(filepath) as (data_from, data_to):
 | 
			
		||||
    for attr in dir(data_to):
 | 
			
		||||
        setattr(data_to, attr, getattr(data_from, attr))
 | 
			
		||||
@@ -279,6 +279,13 @@ def py_c_func2sphinx(ident, fw, module_name, type_name, identifier, py_func, is_
 | 
			
		||||
        fw(ident + ".. function:: %s()\n\n" % identifier)
 | 
			
		||||
        fw(ident + "   " + undocumented_message(module_name, type_name, identifier))
 | 
			
		||||
 | 
			
		||||
    if is_class:
 | 
			
		||||
        write_example_ref(ident + "   ", fw, module_name + "." + type_name + "." + identifier)
 | 
			
		||||
    else:
 | 
			
		||||
        write_example_ref(ident + "   ", fw, module_name + "." + identifier)
 | 
			
		||||
 | 
			
		||||
    fw("\n")
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
def pyprop2sphinx(ident, fw, identifier, py_prop):
 | 
			
		||||
    '''
 | 
			
		||||
@@ -356,7 +363,7 @@ def pymodule2sphinx(BASEPATH, module_name, module, title):
 | 
			
		||||
            elif value_type in (types.BuiltinMethodType, types.BuiltinFunctionType):  # both the same at the moment but to be future proof
 | 
			
		||||
                # note: can't get args from these, so dump the string as is
 | 
			
		||||
                # this means any module used like this must have fully formatted docstrings.
 | 
			
		||||
                py_c_func2sphinx("", fw, module_name, module, attribute, value, is_class=False)
 | 
			
		||||
                py_c_func2sphinx("", fw, module_name, None, attribute, value, is_class=False)
 | 
			
		||||
            elif value_type == type:
 | 
			
		||||
                classes.append((attribute, value))
 | 
			
		||||
            elif value_type in (bool, int, float, str, tuple):
 | 
			
		||||
@@ -655,6 +662,12 @@ def pyrna2sphinx(BASEPATH):
 | 
			
		||||
            pyfunc2sphinx("   ", fw, identifier, py_func, is_class=True)
 | 
			
		||||
        del py_funcs, py_func
 | 
			
		||||
 | 
			
		||||
        py_funcs = struct.get_py_c_functions()
 | 
			
		||||
        py_func = None
 | 
			
		||||
 | 
			
		||||
        for identifier, py_func in py_funcs:
 | 
			
		||||
            py_c_func2sphinx("   ", fw, "bpy.types", struct.identifier, identifier, py_func, is_class=True)
 | 
			
		||||
 | 
			
		||||
        lines = []
 | 
			
		||||
 | 
			
		||||
        if struct.base or _BPY_STRUCT_FAKE:
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user