summaryrefslogtreecommitdiff
path: root/indra/llprimitive/llmodel.cpp
diff options
context:
space:
mode:
authorTofu Buzzard <no-email>2011-02-28 13:01:40 -0800
committerTofu Buzzard <no-email>2011-02-28 13:01:40 -0800
commit858a544dc97b340f0cd2ad21c677f8683935c1fa (patch)
treef18df2b305522d1ed888690012df45b4cc5bf52d /indra/llprimitive/llmodel.cpp
parent41dc7188ea0b5a1031e82ef8a1b3861107b16216 (diff)
parent10f14598243ef93f8990f9a1473334ef918f9cf7 (diff)
merge
Diffstat (limited to 'indra/llprimitive/llmodel.cpp')
-rwxr-xr-xindra/llprimitive/llmodel.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/indra/llprimitive/llmodel.cpp b/indra/llprimitive/llmodel.cpp
index 5f9ed850c9..4ce5c15898 100755
--- a/indra/llprimitive/llmodel.cpp
+++ b/indra/llprimitive/llmodel.cpp
@@ -810,6 +810,22 @@ BOOL LLModel::createVolumeFacesFromFile(const std::string& file_name)
return FALSE;
}
+void LLModel::offsetMesh( const LLVector3& pivotPoint )
+{
+ LLVector4a pivot( pivotPoint[VX], pivotPoint[VY], pivotPoint[VZ] );
+
+ for (std::vector<LLVolumeFace>::iterator faceIt = mVolumeFaces.begin(); faceIt != mVolumeFaces.end(); )
+ {
+ std::vector<LLVolumeFace>:: iterator currentFaceIt = faceIt++;
+ LLVolumeFace& face = *currentFaceIt;
+ LLVector4a *pos = (LLVector4a*) face.mPositions;
+
+ for (U32 i=0; i<face.mNumVertices; ++i )
+ {
+ pos[i].add( pivot );
+ }
+ }
+}
void LLModel::optimizeVolumeFaces()
{