forked from bartvdbraak/blender
examples for keyframing nested paths. based on report from user der_On's report [#25746]
This commit is contained in:
parent
e4c656c7bf
commit
2900557568
@ -0,0 +1,31 @@
|
||||
"""
|
||||
Keying Nested Properties
|
||||
++++++++++++++++++++++++
|
||||
|
||||
Note that when keying data paths which contain nested properties this must be
|
||||
done from the :class:`ID` subclass, in this case the :class:`Armature` rather
|
||||
then the bone.
|
||||
"""
|
||||
|
||||
import bpy
|
||||
from bpy.props import PointerProperty
|
||||
|
||||
|
||||
# define a nested property
|
||||
class MyPropGroup(bpy.types.PropertyGroup):
|
||||
nested = bpy.props.FloatProperty(name="Nested", default=0.0)
|
||||
|
||||
# register it so its available for all bones
|
||||
bpy.utils.register_class(MyPropGroup)
|
||||
bpy.types.Bone.my_prop = PointerProperty(type=MyPropGroup,
|
||||
name="MyProp")
|
||||
|
||||
# get a bone
|
||||
obj = bpy.data.objects["Armature"]
|
||||
arm = obj.data
|
||||
|
||||
# set the keyframe at frame 1
|
||||
arm.bones["Bone"].my_prop_group.nested = 10
|
||||
arm.keyframe_insert(data_path='bones["Bone"].my_prop.nested',
|
||||
frame=1,
|
||||
group="Nested Group")
|
@ -0,0 +1,14 @@
|
||||
"""
|
||||
Basic Keyframing
|
||||
++++++++++++++++
|
||||
|
||||
This is the most simple example of inserting a keyframe from python.
|
||||
"""
|
||||
|
||||
import bpy
|
||||
|
||||
obj = bpy.context.object
|
||||
|
||||
# set the keyframe at frame 1
|
||||
obj.location = 3.0, 4.0, 10.0
|
||||
obj.keyframe_insert(data_path="location", frame=1)
|
@ -27,7 +27,7 @@ For HTML generation
|
||||
-------------------
|
||||
- Run this script from blenders root path once you have compiled blender
|
||||
|
||||
./blender.bin -b -P doc/python_api/sphinx_doc_gen.py
|
||||
./blender.bin --background --python doc/python_api/sphinx_doc_gen.py
|
||||
|
||||
This will generate python files in doc/python_api/sphinx-in/,
|
||||
assuming that ./blender.bin is or links to the blender executable
|
||||
@ -74,7 +74,7 @@ else:
|
||||
"mathutils.geometry",
|
||||
)
|
||||
|
||||
FILTER_BPY_TYPES = ("PropertyGroup", "Panel", "Menu", "Operator", "RenderEngine") # allow
|
||||
FILTER_BPY_TYPES = ("bpy_struct", "Panel", "Menu", "Operator", "RenderEngine") # allow
|
||||
FILTER_BPY_OPS = ("import.scene", ) # allow
|
||||
|
||||
# for quick rebuilds
|
||||
@ -272,7 +272,7 @@ def py_descr2sphinx(ident, fw, descr, module_name, type_name, identifier):
|
||||
else:
|
||||
raise TypeError("type was not GetSetDescriptorType, MethodDescriptorType or ClassMethodDescriptorType")
|
||||
|
||||
write_example_ref(ident, fw, module_name + "." + type_name + "." + identifier)
|
||||
write_example_ref(ident + " ", fw, module_name + "." + type_name + "." + identifier)
|
||||
fw("\n")
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user