Index: /issm/trunk/src/m/classes/public/contourenvelope.m
===================================================================
--- /issm/trunk/src/m/classes/public/contourenvelope.m	(revision 2517)
+++ /issm/trunk/src/m/classes/public/contourenvelope.m	(revision 2518)
@@ -1,11 +1,22 @@
-function segments=contourenvelope(md,file)
+function segments=contourenvelope(md,varargin)
 %CONTOURENVELOPE - build a set of segments enveloping a contour .exp
 %
 %   Usage:
-%      segments=contourenvelope(md,file)
+%      segments=contourenvelope(md,varargin)
+%
+%   Example:
+%      segments=contourenvelope(md,'Stream.exp');
+%      segments=contourenvelope(md);
 
 %some checks
-if ~exist(file),
-	error(['thicknessevolution error message: file ' file ' not found']);
+if nargin>2,
+	help contourenvelope
+	error('contourenvelope error message: bad usage');
+end
+if nargin==2,
+	file=varargin{1};
+	if ~exist(file),
+		error(['thicknessevolution error message: file ' file ' not found']);
+	end
 end
 
@@ -20,17 +31,21 @@
 
 %get nodes inside profile
-%get flag list of elements and nodes inside the contour
-nodein=ContourToMesh(md.elements,md.x,md.y,expread(file,1),'node',1);
-elemin=(sum(nodein(md.elements),2)==size(md.elements,2));
-%modify element connectivity
-elemout=find(~elemin);
 elementconnectivity=md.elementconnectivity;
-elementconnectivity(elemout,:)=0;
-elementconnectivity(find(ismember(elementconnectivity,elemout)))=0;
+if nargin==2,
+	%get flag list of elements and nodes inside the contour
+	nodein=ContourToMesh(md.elements,md.x,md.y,expread(file,1),'node',1);
+	elemin=(sum(nodein(md.elements),2)==size(md.elements,2));
+	%modify element connectivity
+	elemout=find(~elemin);
+	elementconnectivity(elemout,:)=0;
+	elementconnectivity(find(ismember(elementconnectivity,elemout)))=0;
+end
 
 %Find element on boundary
 %First: find elements on the boundary of the domain
 flag=elementconnectivity;
-flag(find(flag))=elemin(flag(find(flag)));
+if nargin==2,
+	flag(find(flag))=elemin(flag(find(flag)));
+end
 elementonboundary=double(sum(flag,2)<3 & sum(flag,2)>0);
 
