diff options
| author | Dave Parks <davep@lindenlab.com> | 2011-07-06 18:54:50 -0500 | 
|---|---|---|
| committer | Dave Parks <davep@lindenlab.com> | 2011-07-06 18:54:50 -0500 | 
| commit | 71eb68a85d5a5157622ae8f42bac1c21f00d54cd (patch) | |
| tree | 60062a3d8b9e6bd6c3d83b8e36ae7e116c84f766 /indra/llprimitive | |
| parent | bab80fed2f1404b5b13aed5ac87911f852be3bfb (diff) | |
Fix for "set to default" button not resetting some data.
Diffstat (limited to 'indra/llprimitive')
| -rw-r--r-- | indra/llprimitive/llmodel.cpp | 22 | 
1 files changed, 9 insertions, 13 deletions
| diff --git a/indra/llprimitive/llmodel.cpp b/indra/llprimitive/llmodel.cpp index da78b30b34..34b81c9672 100644 --- a/indra/llprimitive/llmodel.cpp +++ b/indra/llprimitive/llmodel.cpp @@ -2171,6 +2171,8 @@ LLSD LLModel::Decomposition::asLLSD() const  	ret["Min"] = min.getValue();  	ret["Max"] = max.getValue(); +	LLVector3 range = max-min; +  	if (!hulls.empty())  	{  		ret["HullList"] = hulls; @@ -2180,10 +2182,6 @@ LLSD LLModel::Decomposition::asLLSD() const  	{  		LLSD::Binary p(total*3*2); -		LLVector3 min(-0.5f, -0.5f, -0.5f); -		LLVector3 max(0.5f, 0.5f, 0.5f); -		LLVector3 range = max-min; -  		U32 vert_idx = 0;  		for (U32 i = 0; i < mHull.size(); ++i) @@ -2195,11 +2193,11 @@ LLSD LLModel::Decomposition::asLLSD() const  			for (U32 j = 0; j < mHull[i].size(); ++j)  			{  				U64 test = 0; +				const F32* src = mHull[i][j].mV; +  				for (U32 k = 0; k < 3; k++)  				{ -					F32* src = (F32*) (mHull[i][j].mV); - -					llassert(src[k] <= 0.501f && src[k] >= -0.501f); +					llassert(src[k] <= 0.51f && src[k] >= -0.51f);  					//convert to 16-bit normalized across domain  					U16 val = (U16) (((src[k]-min.mV[k])/range.mV[k])*65535); @@ -2239,19 +2237,17 @@ LLSD LLModel::Decomposition::asLLSD() const  	{  		LLSD::Binary p(mBaseHull.size()*3*2); -		LLVector3 min(-0.5f, -0.5f, -0.5f); -		LLVector3 max(0.5f, 0.5f, 0.5f); -		LLVector3 range = max-min; -  		U32 vert_idx = 0;  		for (U32 j = 0; j < mBaseHull.size(); ++j)  		{ +			const F32* v = mBaseHull[j].mV; +  			for (U32 k = 0; k < 3; k++)  			{ -				llassert(mBaseHull[j].mV[k] <= 0.51f && mBaseHull[j].mV[k] >= -0.51f); +				llassert(v[k] <= 0.51f && v[k] >= -0.51f);  				//convert to 16-bit normalized across domain -				U16 val = (U16) (((mBaseHull[j].mV[k]-min.mV[k])/range.mV[k])*65535); +				U16 val = (U16) (((v[k]-min.mV[k])/range.mV[k])*65535);  				U8* buff = (U8*) &val;  				//write to binary buffer | 
