diff --git a/js/fea/DmaCell.js b/js/fea/DmaCell.js
index 7bf7350420b5108f2d6896afaf868ea088cd12a2..c0c1d0e0c5a01910a39bf433ba82d41be7bb3729 100644
--- a/js/fea/DmaCell.js
+++ b/js/fea/DmaCell.js
@@ -109,10 +109,18 @@
         var position = this._calcPosition(scale, this.indices);
         this._setMeshPosition(this.cellMesh, position);
         _.each(this.parts, function(part){
-                if (part) part.updateForScale(scale, position);
+            if (part) part.updateForScale(scale, position);
          });
     };
 
+    DMACell.prototype.getScale = function(){
+        return this.lattice.get("scale");
+    };
+
+    DMACell.prototype.getPosition = function(){
+        return this._calcPosition(this.getScale(), this.indices);
+    }
+
     DMACell.prototype.destroy = function(){
         if (this.cellMesh) {
             window.three.sceneRemove(this.cellMesh, "cell");
diff --git a/js/fea/DmaPart.js b/js/fea/DmaPart.js
index 96b20c9b166309159aacc55adcde12bcbca9878a..6c96634d054b097b2a4b052c6f058debbade7d77 100644
--- a/js/fea/DmaPart.js
+++ b/js/fea/DmaPart.js
@@ -51,6 +51,7 @@
     DMAPart.prototype._draw = function(){
         if (this.mesh) console.warn("part mesh already in scene");
         this.mesh = this._makeMeshForType(this.type);
+        this.updateForScale(this.parentCell.getScale(), this.parentCell.getPosition());
         window.three.sceneAdd(this.mesh, "part");
     };
 
@@ -74,20 +75,20 @@
         return mesh;
     };
 
-    DMAPart.prototype._setMeshPosition = function(mesh, scale, position){
+    DMAPart.prototype._setMeshPosition = function(scale, position){
+        var mesh = this.mesh;
         mesh.position.x = position.x;
         mesh.position.y = -scale/3*Math.sqrt(3)+position.y;
         mesh.position.z = position.z;
         if (this.oddZFlag){//adjust some offsets for odd z layers
             mesh.position.y += 7*scale/6;
         }
-        return mesh;
     };
 
     DMAPart.prototype.updateForScale = function(scale, position){
         if (this.mesh) {
             this.mesh.scale.set(scale, scale, scale);
-            this._setMeshPosition(this.mesh, scale, position);
+            this._setMeshPosition(scale, position);
         }
     };