function splashdemo
% SPLASHDEMO   Plot the L-shaped membrane with semitransparent color.

%   Copyright (c) 1984-2000 The MathWorks, Inc.
%   $Revision: 1.1 $  $Date: 2000/09/08 19:21:19 $

L = 40*membrane(1,25);

% Generate a circular alphadata for the mesh.
[j,i] = meshgrid(1:size(L,1));
alphadata = sqrt((i-4).^2 + .8*(j+4).^2);

% This alphamap causes there to be a thin band that
% is semi-transparent, as opposed to the entire surface
fig = figure;
set(fig, 'Color', 'white',...
	 'AlphaMap',...
	 [ zeros(1,40), ...
	   linspace(0,.5,15), linspace(.5,1,8), ...
	   ones(1,30)]);

axes('CameraPosition', [-193.4013 -265.1546  220.4819],...
     'CameraTarget',[26 26 10], ...
     'CameraUpVector',[0 0 1], ...
     'CameraViewAngle',9.5, ...
     'DataAspectRatio', [1 1 .9],...
     'Position',[0 0 1 1], ...
     'Visible','off', ...
     'XLim',[1 51], ...
     'YLim',[1 51], ...
     'ZLim',[-13 40]);

% This surface represents a white opaque surface with edge lines.
s1 = surface(L, ...
	     'FaceColor','white', ...
	     'FaceLighting','none', ...
	     'Clipping','off',...
	     'EdgeColor',[.8 .8 .8]);
% This represends the colored surface.
% The alpha map will let the white surface show through.
% The FaceOffset* properties force it to be closer to the camera
%     than the edge lines of the white surface
s2 = surface(L, ...
	     'FaceColor',[0.8 0.2 0.2], ...
	     'FaceLighting','phong', ...
	     'AmbientStrength',0.3, ...
	     'DiffuseStrength',0.6, ... 
	     'Clipping','off',...
	     'BackFaceLighting','lit', ...
	     'SpecularStrength',1.1, ...
	     'SpecularColorReflectance',1, ...
	     'SpecularExponent',7, ...
	     'EdgeColor','none', ...
	     'FaceOffsetFactor',-1.5,...
	     'FaceOffsetBias',-0.001,...
	     'FaceAlpha','interp', ...
	     'AlphaData',flipud(alphadata));

l1 = light('Position',[40 100 20], ...
	   'Style','local', ...
	   'Color',[0 0.7 0.7]);
l2 = light('Position',[.5 -1 .4], ...
	   'Color',[1 1 0]);
drawnow;
if ~strcmpi(get(fig,'Renderer'),'OpenGL')
  errordlg('This demo requires OpenGL to look correct.');
end

