Index: /issm/trunk/src/m/classes/public/plot/plot_unit.m
===================================================================
--- /issm/trunk/src/m/classes/public/plot/plot_unit.m	(revision 4497)
+++ /issm/trunk/src/m/classes/public/plot/plot_unit.m	(revision 4498)
@@ -63,9 +63,9 @@
 		else
 			A=elements(:,1); B=elements(:,2); C=elements(:,3); D=elements(:,4); E=elements(:,5); F=elements(:,6);
-			patch( 'Faces', [A B C], 'Vertices', [x y z],'CData', data,'FaceColor','flat','EdgeColor',edgecolor);
-			patch( 'Faces', [D E F], 'Vertices', [x y z],'CData', data,'FaceColor','flat','EdgeColor',edgecolor);
-			patch( 'Faces', [A B E D], 'Vertices', [x y z],'CData', data,'FaceColor','flat','EdgeColor',edgecolor);
-			patch( 'Faces', [B E F C ], 'Vertices', [x y z],'CData', data,'FaceColor','flat','EdgeColor',edgecolor);
-			patch( 'Faces', [C A D F ], 'Vertices', [x y z],'CData', data,'FaceColor','flat','EdgeColor',edgecolor);
+			patch( 'Faces', [A B C], 'Vertices', [x y z],'CData', data,'FaceColor','interp','EdgeColor',edgecolor);
+			patch( 'Faces', [D E F], 'Vertices', [x y z],'CData', data,'FaceColor','interp','EdgeColor',edgecolor);
+			patch( 'Faces', [A B E D], 'Vertices', [x y z],'CData', data,'FaceColor','interp','EdgeColor',edgecolor);
+			patch( 'Faces', [B E F C ], 'Vertices', [x y z],'CData', data,'FaceColor','interp','EdgeColor',edgecolor);
+			patch( 'Faces', [C A D F ], 'Vertices', [x y z],'CData', data,'FaceColor','interp','EdgeColor',edgecolor);
 		end
 
Index: /issm/trunk/src/m/classes/public/plot/processmesh.m
===================================================================
--- /issm/trunk/src/m/classes/public/plot/processmesh.m	(revision 4497)
+++ /issm/trunk/src/m/classes/public/plot/processmesh.m	(revision 4498)
@@ -46,9 +46,17 @@
 else
 	%Process Patch
-	elements=transpose(reshape(1:3*md.numberofelements,3,md.numberofelements));
-	x=transpose(reshape(md.x(data.index)',1,3*md.numberofelements));
-	y=transpose(reshape(md.y(data.index)',1,3*md.numberofelements));
-	z=zeros(3*md.numberofelements,1);
-	is2d=1;
+	if (md.dim==2),
+		elements=transpose(reshape(1:3*md.numberofelements,3,md.numberofelements));
+		x=transpose(reshape(md.x(data.index)',1,3*md.numberofelements));
+		y=transpose(reshape(md.y(data.index)',1,3*md.numberofelements));
+		z=zeros(3*md.numberofelements,1);
+		is2d=1;
+	else
+		elements=transpose(reshape(1:6*md.numberofelements,6,md.numberofelements));
+		x=transpose(reshape(md.x(data.index)',1,6*md.numberofelements));
+		y=transpose(reshape(md.y(data.index)',1,6*md.numberofelements));
+		z=transpose(reshape(md.z(data.index)',1,6*md.numberofelements));
+		is2d=0;
+	end
 end
 
