diff options
author | Graham Linden graham@lindenlab.com <Graham Linden graham@lindenlab.com> | 2018-05-23 01:16:12 +0100 |
---|---|---|
committer | Graham Linden graham@lindenlab.com <Graham Linden graham@lindenlab.com> | 2018-05-23 01:16:12 +0100 |
commit | 439273c9c11ec5f3c186fd7d97a28d11419153cd (patch) | |
tree | f6e4f1566425921d71e40b9628011eb0f5f539f3 /indra/llinventory/llsettingsbase.cpp | |
parent | 13536bb273b7413aa4461c8eeaf5a6a865f4234d (diff) | |
parent | 689beff6698fcb8582c44f58bb9896606850b149 (diff) |
Merge
Diffstat (limited to 'indra/llinventory/llsettingsbase.cpp')
-rw-r--r-- | indra/llinventory/llsettingsbase.cpp | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/indra/llinventory/llsettingsbase.cpp b/indra/llinventory/llsettingsbase.cpp index e297fbd94e..f870ec8904 100644 --- a/indra/llinventory/llsettingsbase.cpp +++ b/indra/llinventory/llsettingsbase.cpp @@ -207,11 +207,6 @@ LLSD LLSettingsBase::interpolateSDMap(const LLSD &settings, const LLSD &other, F LLQuaternion q = slerp(mix, LLQuaternion(value), LLQuaternion(other_value)); newvalue = q.getValue(); } - else if (value[0].type() == LLSD::TypeMap) - { - // TODO - // determine if lerping between maps is both feasible and reasonable - } else { // TODO: We could expand this to inspect the type and do a deep lerp based on type. // for now assume a heterogeneous array of reals. @@ -219,6 +214,7 @@ LLSD LLSettingsBase::interpolateSDMap(const LLSD &settings, const LLSD &other, F for (size_t i = 0; i < len; ++i) { + newvalue[i] = lerp(value[i].asReal(), other_value[i].asReal(), mix); } } @@ -539,7 +535,7 @@ bool LLSettingsBase::Validator::verifyIntegerRange(LLSD &value, LLSD range) //========================================================================= void LLSettingsBlender::update(F64 blendf) { - + setPosition(blendf); } F64 LLSettingsBlender::setPosition(F64 blendf) @@ -561,8 +557,8 @@ F64 LLSettingsBlender::setPosition(F64 blendf) void LLSettingsBlender::triggerComplete() { mTarget->replaceSettings(mFinal->getSettings()); - LLSettingsBlender::ptr_t hold = shared_from_this(); // prevents this from deleting too soon - mOnFinished(shared_from_this()); + LLSettingsBlender::ptr_t hold = shared_from_this(); // prevents this from deleting too soon + mOnFinished(shared_from_this()); } //------------------------------------------------------------------------- |