function [a,magp,phasep,impulsep,splanep] = placementS() [obj,fig]=gcbo; if ~isempty(fig) if ~isempty(get(fig,'tag')) if strcmp(get(fig,'tag'),'Laplace transform placement') a = fig; c = get(fig,'Children'); for i=1:length(c) if strcmp(get(c(i),'Tag'),'mag') magp = c(i); end; if strcmp(get(c(i),'Tag'),'phase') phasep = c(i); end; if strcmp(get(c(i),'Tag'),'impulse') impulsep = c(i); end; if strcmp(get(c(i),'Tag'),'splane') splanep = c(i); end; end; return; end; end; end; % otherwise we have not got the figure so create it. % This is the machine-generated representation of a Handle Graphics object % and its children. Note that handle values may change when these objects % are re-created. This may cause problems with any callbacks written to % depend on the value of the handle at the time the object was saved. % % To reopen this object, just type the name of the M-file at the MATLAB % prompt. The M-file and its associated MAT-file must be on your path. % NOTE: splanep is actually zplane tag load placement2 % AJL STUFF (GLOBAL FLAGS) %placepoles = 0; % we are noew playing with pole placement %placezeroes = 1; % we are now playing with zero placement %newpole = 0; % used to store a button press location on the zplane %showsurface = 0; % show the z transform as a surface in separate figure %showcookie = 0; % show the unit circle only as surface in sepearate figure %surfacefig = 0; % seperate figure handle for surface drawing %poles = []; % list of current poles %zeroes = []; % list of current zeros %clear = 0; % whether to zero the list ss = get(0,'ScreenSize'); a = figure('Color',[0.8 0.8 0.8], ... 'Colormap',mat0, ... 'Position',[ss(1)+100 ss(2)+100 ss(3)-200 ss(4)-200], ... 'Tag','Laplace transform placement', ... 'NumberTitle', 'off', ... 'Name','Laplace transform placement'); magp = axes('Parent',a, ... 'Units','points', ... 'CameraUpVector',[0 1 0], ... 'CameraUpVectorMode','manual', ... 'Color',[1 1 1], ... 'ColorOrder',mat1, ... 'Position',[245.153 264.087 257.111 107.628], ... 'Tag','mag', ... 'XColor',[0 0 0], ... 'YColor',[0 0 0], ... 'ZColor',[0 0 0]); b=magp; c = text('Parent',b, ... 'Color',[0 0 0], ... 'HandleVisibility','callback', ... 'HorizontalAlignment','center', ... 'Position',[0.498054 -0.17757 0], ... 'Tag','Axes1Text4', ... 'VerticalAlignment','cap'); set(get(c,'Parent'),'XLabel',c); c = text('Parent',b, ... 'Color',[0 0 0], ... 'HandleVisibility','callback', ... 'HorizontalAlignment','center', ... 'Position',[-0.0894942 0.485981 0], ... 'Rotation',90, ... 'Tag','Axes1Text3', ... 'VerticalAlignment','baseline'); set(get(c,'Parent'),'YLabel',c); c = text('Parent',b, ... 'Color',[0 0 0], ... 'HandleVisibility','callback', ... 'HorizontalAlignment','right', ... 'Position',[-0.961089 1.09346 0], ... 'Tag','Axes1Text2', ... 'Visible','off'); set(get(c,'Parent'),'ZLabel',c); c = text('Parent',b, ... 'Color',[0 0 0], ... 'HandleVisibility','callback', ... 'HorizontalAlignment','center', ... 'Position',[0.498054 1.04673 0], ... 'Tag','Axes1Text1', ... 'VerticalAlignment','bottom'); set(get(c,'Parent'),'Title',c); phasep = axes('Parent',a, ... 'Units','points', ... 'CameraUpVector',[0 1 0], ... 'CameraUpVectorMode','manual', ... 'Color',[1 1 1], ... 'ColorOrder',mat2, ... 'Position',[246.149 138.521 257.111 107.628], ... 'Tag','phase', ... 'XColor',[0 0 0], ... 'YColor',[0 0 0], ... 'ZColor',[0 0 0]); b=phasep; c = text('Parent',b, ... 'ButtonDownFcn','ctlpanel SelectMoveResize', ... 'Color',[0 0 0], ... 'HandleVisibility','callback', ... 'HorizontalAlignment','center', ... 'Interruptible','off', ... 'Position',[0.498054 -0.17757 0], ... 'Tag','Axes1Text4', ... 'VerticalAlignment','cap'); set(get(c,'Parent'),'XLabel',c); c = text('Parent',b, ... 'ButtonDownFcn','ctlpanel SelectMoveResize', ... 'Color',[0 0 0], ... 'HandleVisibility','callback', ... 'HorizontalAlignment','center', ... 'Interruptible','off', ... 'Position',[-0.0894942 0.485981 0], ... 'Rotation',90, ... 'Tag','Axes1Text3', ... 'VerticalAlignment','baseline'); set(get(c,'Parent'),'YLabel',c); c = text('Parent',b, ... 'ButtonDownFcn','ctlpanel SelectMoveResize', ... 'Color',[0 0 0], ... 'HandleVisibility','callback', ... 'HorizontalAlignment','right', ... 'Interruptible','off', ... 'Position',[-0.961089 2.27103 0], ... 'Tag','Axes1Text2', ... 'Visible','off'); set(get(c,'Parent'),'ZLabel',c); c = text('Parent',b, ... 'ButtonDownFcn','ctlpanel SelectMoveResize', ... 'Color',[0 0 0], ... 'HandleVisibility','callback', ... 'HorizontalAlignment','center', ... 'Interruptible','off', ... 'Position',[0.498054 1.04673 0], ... 'Tag','Axes1Text1', ... 'VerticalAlignment','bottom'); set(get(c,'Parent'),'Title',c); impulsep = axes('Parent',a, ... 'Units','points', ... 'CameraUpVector',[0 1 0], ... 'CameraUpVectorMode','manual', ... 'Color',[1 1 1], ... 'ColorOrder',mat3, ... 'Position',[246.149 16.9414 257.111 107.628], ... 'Tag','impulse', ... 'XColor',[0 0 0], ... 'YColor',[0 0 0], ... 'ZColor',[0 0 0]); b=impulsep; c = text('Parent',b, ... 'ButtonDownFcn','ctlpanel SelectMoveResize', ... 'Color',[0 0 0], ... 'HandleVisibility','callback', ... 'HorizontalAlignment','center', ... 'Interruptible','off', ... 'Position',[0.498054 -0.175926 0], ... 'Tag','Axes1Text4', ... 'VerticalAlignment','cap'); set(get(c,'Parent'),'XLabel',c); c = text('Parent',b, ... 'ButtonDownFcn','ctlpanel SelectMoveResize', ... 'Color',[0 0 0], ... 'HandleVisibility','callback', ... 'HorizontalAlignment','center', ... 'Interruptible','off', ... 'Position',[-0.0894942 0.490741 0], ... 'Rotation',90, ... 'Tag','Axes1Text3', ... 'VerticalAlignment','baseline'); set(get(c,'Parent'),'YLabel',c); c = text('Parent',b, ... 'ButtonDownFcn','ctlpanel SelectMoveResize', ... 'Color',[0 0 0], ... 'HandleVisibility','callback', ... 'HorizontalAlignment','right', ... 'Interruptible','off', ... 'Position',[-0.961089 3.37963 0], ... 'Tag','Axes1Text2', ... 'Visible','off'); set(get(c,'Parent'),'ZLabel',c); c = text('Parent',b, ... 'ButtonDownFcn','ctlpanel SelectMoveResize', ... 'Color',[0 0 0], ... 'HandleVisibility','callback', ... 'HorizontalAlignment','center', ... 'Interruptible','off', ... 'Position',[0.498054 1.0463 0], ... 'Tag','Axes1Text1', ... 'VerticalAlignment','bottom'); set(get(c,'Parent'),'Title',c); splanep = axes('Parent',a, ... 'Units','points', ... 'ButtonDownFcn','', ... 'CameraUpVector',[0 1 0], ... 'CameraUpVectorMode','manual', ... 'Color',[1 1 1], ... 'ColorOrder',mat4, ... 'Position',[18.9345 170.411 204.294 199.311], ... 'Tag','splane', ... 'XColor',[0 0 0], ... 'YColor',[0 0 0], ... 'ZColor',[0 0 0]); b=splanep; c = text('Parent',b, ... 'Color',[0 0 0], ... 'HandleVisibility','callback', ... 'HorizontalAlignment','center', ... 'Position',[0.497561 -0.0954774 0], ... 'Tag','Axes1Text8', ... 'VerticalAlignment','cap'); set(get(c,'Parent'),'XLabel',c); c = text('Parent',b, ... 'Color',[0 0 0], ... 'HandleVisibility','callback', ... 'HorizontalAlignment','center', ... 'Position',[-0.112195 0.492462 0], ... 'Rotation',90, ... 'Tag','Axes1Text7', ... 'VerticalAlignment','baseline'); set(get(c,'Parent'),'YLabel',c); c = text('Parent',b, ... 'Color',[0 0 0], ... 'HandleVisibility','callback', ... 'HorizontalAlignment','right', ... 'Position',[-0.0926829 1.05528 0], ... 'Tag','Axes1Text6', ... 'Visible','off'); set(get(c,'Parent'),'ZLabel',c); c = text('Parent',b, ... 'Color',[0 0 0], ... 'HandleVisibility','callback', ... 'HorizontalAlignment','center', ... 'Position',[0.497561 1.02513 0], ... 'Tag','Axes1Text5', ... 'VerticalAlignment','bottom'); set(get(c,'Parent'),'Title',c); b = uicontrol('Parent',a, ... 'Units','points', ... 'BackgroundColor',[0.701961 0.701961 0.701961], ... 'Callback','mySplacement(''placepoles =1; placezeroes=0; newpole = 1;'');', ... 'Position',[18.9345 19.9311 90.6865 25.9104], ... 'String','Place Poles', ... 'Tag','poles'); b = uicontrol('Parent',a, ... 'Units','points', ... 'BackgroundColor',[0.701961 0.701961 0.701961], ... 'Callback','mySplacement(''placezeroes=1; placepoles = 0; newpole = 1;'');', ... 'Position',[123.573 21.9242 85.7037 22.9208], ... 'String','Place Zeroes', ... 'Tag','zeros'); b = uicontrol('Parent',a, ... 'Units','points', ... 'BackgroundColor',[0.701961 0.701961 0.701961], ... 'Callback','mySplacement(''showsurface=1; showcookie=0;'');', ... 'Position',[17.938 50.8243 192.335 26.907], ... 'String','Plot magnitude surface of transform', ... 'Tag','SurfacePlot'); b = uicontrol('Parent',a, ... 'Units','points', ... 'BackgroundColor',[0.701961 0.701961 0.701961], ... 'Callback','mySplacement(''showcookie=1; showsurface=0;'');', ... 'Position',[17.938 80.8243 192.335 26.907], ... 'String','Plot vert. axis (frequency response)', ... 'Tag','PizzaPlot'); b = uicontrol('Parent',a, ... 'Units','points', ... 'BackgroundColor',[0.701961 0.701961 0.701961], ... 'Callback','mySplacement(''clearpoles = 1;'');', ... 'Position',[17.938 110.8243 192.335 20.907], ... 'String','Clear all poles and zeroes', ... 'Tag','Clearing'); b = uicontrol('Parent',a, ... 'Units','points', ... 'BackgroundColor',[0.701961 0.701961 0.701961], ... 'Callback','mySplacement(''shownormalisedfreq = 1;'');', ... 'Position',[17.938 135.8243 192.335 20.907], ... 'String','Show Bode Plot', ... 'Tag','Bode');