diff options
author | Ton Roosendaal <ton@blender.org> | 2005-09-26 19:34:21 +0400 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2005-09-26 19:34:21 +0400 |
commit | 43d290403704a0b953949ac2ca82c251feee0133 (patch) | |
tree | 6a7324f6fb3b83296c3c61c9e96edc707d78b23b /source/blender/blenkernel/BKE_key.h | |
parent | 9656e8be02972740055f3614590645535840acc9 (diff) |
Cleanup and new features for vertex keys.
User doc: http://www.blender3d.org/cms/Shape_Keys.678.0.html
- The mixed use of "Vertex Key","Key" or "RVK" in Blender was a bit
confusing. Also a 'vertex key' assumes keys per vertex, which actually is
only a single key for the entire shape. The discussions on blender.org
forums all mentioned "Shape" or "Blend Shapes", which I think is an OK
name for a "Vertex Key" in the UI. :)
- Most work was code spaghetti cleanup. Doing shape-keys now nicely goes
via the depgraph and DerivedMesh. That then allows to have different
shapes per object, with the new "Pin" feature.
Objects now define what Shape is shown (ob->shapenr)
- Added a Shape Panel in the Edit buttons with the various options
- Fixed a lot of issues in the IpoWindow, with drawing the channels.
For example, deleting a key-line there caused the entire Relative option to
go wrong, same for moving the lines up/down.
Changing key-line order now reflects in order of channels. The active
Shape is drawn more clear now too.
- Noticed it doesnt work yet for curves/lattice. Need modifier advise!
Diffstat (limited to 'source/blender/blenkernel/BKE_key.h')
-rw-r--r-- | source/blender/blenkernel/BKE_key.h | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/source/blender/blenkernel/BKE_key.h b/source/blender/blenkernel/BKE_key.h index 59984389f21..94ba1cbd69d 100644 --- a/source/blender/blenkernel/BKE_key.h +++ b/source/blender/blenkernel/BKE_key.h @@ -48,19 +48,17 @@ struct Key *add_key(struct ID *id); struct Key *copy_key(struct Key *key); void make_local_key(struct Key *key); void sort_keys(struct Key *key); + void set_four_ipo(float d, float *data, int type); void set_afgeleide_four_ipo(float d, float *data, int type); -void cp_key(int start, int end, int tot, char *poin, struct Key *key, struct KeyBlock *k, int mode); + +/* only exported to curve.c! */ void cp_cu_key(struct Curve *cu, struct KeyBlock *kb, int start, int end); -void do_mesh_key(struct Mesh *me); -void do_curve_key(struct Curve *cu); -void do_latt_key(struct Lattice *lt); -void do_ob_key(struct Object *ob); -void do_spec_key(struct Key *key); -void unlock_all_keys(void); +int do_ob_key(struct Object *ob); -struct KeyBlock *key_get_active(struct Key *keyData); +struct Key *ob_get_key(struct Object *ob); +struct KeyBlock *ob_get_keyblock(struct Object *ob); #endif |