diff --git a/js/fea/DmaBeam.js b/js/fea/DmaBeam.js
index ebe433b1a297e4f7f6b66771a6ff1695daafb2d8..c1a0ecd28a02c8411967487ce23a49110d9364ae 100644
--- a/js/fea/DmaBeam.js
+++ b/js/fea/DmaBeam.js
@@ -31,6 +31,7 @@ DmaBeam.prototype._buildBeamMesh = function(){
     var position = this.nodes[0].getPosition();
     position.sub(this.nodes[1].getPosition());
     position.multiplyScalar(0.5);
+    position.add(this.parentCell.getPosition());
     mesh.position.set(position.x, position.y, position.z);
     var scale = this.parentCell.getScale();
     mesh.scale.set(scale, scale, scale);
diff --git a/js/fea/DmaCell.js b/js/fea/DmaCell.js
index dda72d77cedeed0d802896cf8d61ccf8e8e1847e..556e05e116fe07fee22fbf8b9ddc69fb5733d4d1 100644
--- a/js/fea/DmaCell.js
+++ b/js/fea/DmaCell.js
@@ -32,7 +32,7 @@ DMACell.prototype.drawForMode = function(scale, cellMode, inverseMode, beamMode)
         if (part) part.setVisibility(cellMode == "part" && !beamMode);
     });
     _.each(this.beams, function(beam){
-        beam.setVisibility(beamMode);
+        beam.setVisibility(beamMode && cellMode == "part");
     });
 };