Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender-addons.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShrinivas Kulkarni <shrinivk@gmail.com>2020-01-17 17:55:19 +0300
committerShrinivas Kulkarni <shrinivk@gmail.com>2020-01-17 17:55:19 +0300
commit946ad9c4fa5c0351b5cf1d7733cd28410513b97e (patch)
treeb08cb8efbd6e1999541641908964f155f9470527 /curve_assign_shapekey.py
parentea276ab9d562df1543321bea6cb6688edc558123 (diff)
curve_assign_shapekey: Fix for condition where target has existing shapekeys and basis shape key is different than curve
Diffstat (limited to 'curve_assign_shapekey.py')
-rw-r--r--curve_assign_shapekey.py14
1 files changed, 6 insertions, 8 deletions
diff --git a/curve_assign_shapekey.py b/curve_assign_shapekey.py
index f6f18500..f9d8b501 100644
--- a/curve_assign_shapekey.py
+++ b/curve_assign_shapekey.py
@@ -407,7 +407,8 @@ def main(targetObj, shapekeyObjs, removeOriginal, space, matchParts, \
shapekeys = [Path(c) for c in shapekeyObjs]
- shapekeys = getExistingShapeKeyPaths(target) + shapekeys
+ existingKeys = getExistingShapeKeyPaths(target)
+ shapekeys = existingKeys + shapekeys
userSel = [target] + shapekeys
for path in userSel:
@@ -431,13 +432,10 @@ def main(targetObj, shapekeyObjs, removeOriginal, space, matchParts, \
for j, part in enumerate(path.parts):
part.toClose = allToClose[j]
- if(targetObj.data.shape_keys != None):
- skName = targetObj.data.shape_keys.key_blocks[0].name
- else:
- skName = 'Basis'
-
target.updateCurve()
- target.curve.shape_key_add(name = skName)
+
+ if(len(existingKeys) == 0):
+ target.curve.shape_key_add(name = 'Basis')
addShapeKeys(target.curve, shapekeys, space)
@@ -714,7 +712,7 @@ def getExistingShapeKeyPaths(path):
paths = []
if(obj.data.shape_keys != None):
- keyblocks = obj.data.shape_keys.key_blocks[1:]#Skip basis
+ keyblocks = obj.data.shape_keys.key_blocks[:]
for key in keyblocks:
datacopy = obj.data.copy()
i = 0