Index: /issm/trunk/src/m/model/plot/plot_unit.m
===================================================================
--- /issm/trunk/src/m/model/plot/plot_unit.m	(revision 7097)
+++ /issm/trunk/src/m/model/plot/plot_unit.m	(revision 7098)
@@ -19,5 +19,5 @@
 	case 1,
 
-		pos=find(~isnan(data)); %needed fpr element on water
+		pos=find(~isnan(data)); %needed for element on water
 		if is2d,
 			A=elements(pos,1); B=elements(pos,2); C=elements(pos,3); 
@@ -56,5 +56,5 @@
 		end
 
-	%Patch plot
+	%Patch plot P1
 	case 4,
 
@@ -70,4 +70,19 @@
 		end
 
+	%Patch plot P0
+	case 5,
+
+		if is2d,
+			A=elements(:,1); B=elements(:,2); C=elements(:,3); 
+			h=patch( 'Faces', [A B C], 'Vertices', [x y z],'CData', data(:),'FaceColor','flat','EdgeColor',edgecolor);
+		else
+			A=elements(:,1); B=elements(:,2); C=elements(:,3); D=elements(:,4); E=elements(:,5); F=elements(:,6);
+			h=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);
+		end
+
 	otherwise,
 		error(['case ' num2str(datatype) ' not supported']);
Index: /issm/trunk/src/m/model/plot/processdata.m
===================================================================
--- /issm/trunk/src/m/model/plot/processdata.m	(revision 7097)
+++ /issm/trunk/src/m/model/plot/processdata.m	(revision 7098)
@@ -20,11 +20,15 @@
 if isstruct(data) 
 	if (isfield(data,'index') & isfield(data,'value')),
-		data=data.value;
-		if size(data,2)==1,
-			data=repmat(data,1,3);
+		if data.interpolation(1)==P1Enum(),
+			data=data.value;
+			data=data';
+			data=data(:);
+			datatype=4;
+		elseif data.interpolation(1)==P0Enum(),
+			data=data.value;
+			datatype=5;
+		else
+			error(['interpolation ' data.interpolation(1) ' not supported yet']);
 		end
-		data=data';
-		data=data(:);
-		datatype=4;
 	else
 		error('structure other than Patch not supported yet');
@@ -39,5 +43,5 @@
 
 %non patch processing
-if datatype~=4,
+if datatype~=4 & datatype~=5,
 
 	%transpose data if necessary
@@ -110,5 +114,5 @@
 
 	%Initialize datatype if non patch
-	if datatype~=4,
+	if datatype~=4 & datatype~=5,
 		datatype=1;
 	end
