📄 drawamp.m
字号:
function dr = drawamp(c,d,f,t,l,p,s,F)
% drawamp.m Draw amplifier
% 1:20 22/2/99
% Album of Analog Filter Realizations
%
% Authors: Dejan V. Tosic, Miroslav D. Lutovac, 1999.02.21
% tosic@telekom.etf.bg.ac.yu
% lutovac@galeb.etf.bg.ac.yu
%
% Copyright (c) 1999 by Tosic & Lutovac
% $Revision: 1.0 $ $Date: 1999/02/21 02:17:42 $
%
% References:
% Miroslav D. Lutovac, Dejan V. Tosic, Brian L. Evans
% Advanced Filter Design for Signal Processing
% Using MATLAB and Mathematica
%
a=(f+c)/2-0.4*s;
b=d;
g=c;
h=(f+d)/2-0.4*s;
if p == 0
x1 = a + s*[0.6, 0.2, 0.2, 0.6, (f-a)/s];
y1 = b + s*[ 0, 0.3,-0.3, 0, 0];
x2 = a + s*[(c-a)/s, 0.2]; y2 = b + s*[0, 0];
line(x1,y1); line(x2,y2);
text(a+s*0.5,b+s*0.3,l,'FontName','Times','FontSize',F,...
'HorizontalAlignment','left','VerticalAlignment','cap')
text(a+s*0.5,b+s*0.3,t,'FontName','Times-Italic','FontSize',F,...
'HorizontalAlignment','left','VerticalAlignment','baseline')
elseif p == 1
x1 = g + s*[0,0.3,-0.3,0,0];
y1 = h + s*[0.6,0.2,0.2,0.6,(f-h)/s];
x2 = g + s*[0,0]; y2 = h + s*[(d-h)/s,0.2];
line(x1,y1); line(x2,y2);
text(g-s*0.2,h+s*0.5,l,'FontName','Times','FontSize',F,...
'HorizontalAlignment','right','VerticalAlignment','cap')
text(g-s*0.2,h+s*0.5,t,'FontName','Times-Italic','FontSize',F,...
'HorizontalAlignment','right','VerticalAlignment','baseline')
elseif p == 2
x1 = a + s*[0.2,0.6,0.6,0.2,(c-a)/s];
y1 = b + s*[0,0.3,-0.3,0,0];
x2 = a + s*[(f-a)/s,0.6]; y2 = b + s*[0,0];
line(x1,y1); line(x2,y2);
text(a+s*0.3,b-s*0.3,l,'FontName','Times','FontSize',F,...
'HorizontalAlignment','right','VerticalAlignment','cap')
text(a+s*0.3,b-s*0.3,t,'FontName','Times-Italic','FontSize',F,...
'HorizontalAlignment','right','VerticalAlignment','baseline')
elseif p == 3
x1 = g + s*[0,0.3,-0.3,0,0];
y1 = h + s*[0.2,0.6,0.6,0.2,(d-h)/s];
x2 = g + s*[0,0]; y2 = h + s*[(f-h)/s,0.6];
line(x1,y1); line(x2,y2);
text(g+s*0.2,h+s*0.3,l,'FontName','Times','FontSize',F,...
'HorizontalAlignment','left','VerticalAlignment','cap')
text(g+s*0.2,h+s*0.3,t,'FontName','Times-Italic','FontSize',F,...
'HorizontalAlignment','left','VerticalAlignment','baseline')
elseif p == 4
x1 = a + s*[0.6, 0.2, 0.2, 0.6, (f-a)/s];
y1 = b + s*[ 0, 0.3,-0.3, 0, 0];
x2 = a + s*[(c-a)/s, 0.2]; y2 = b + s*[0, 0];
line(x1,y1); line(x2,y2);
text(a+s*0.5,b-s*0.3,l,'FontName','Times','FontSize',F,...
'HorizontalAlignment','left','VerticalAlignment','cap')
text(a+s*0.5,b-s*0.3,t,'FontName','Times-Italic','FontSize',F,...
'HorizontalAlignment','left','VerticalAlignment','baseline')
elseif p == 5
x1 = g + s*[0,0.3,-0.3,0,0];
y1 = h + s*[0.6,0.2,0.2,0.6,(f-h)/s];
x2 = g + s*[0,0]; y2 = h + s*[(d-h)/s,0.2];
line(x1,y1); line(x2,y2);
text(g+s*0.2,h+s*0.5,l,'FontName','Times','FontSize',F,...
'HorizontalAlignment','left','VerticalAlignment','cap')
text(g+s*0.2,h+s*0.5,t,'FontName','Times-Italic','FontSize',F,...
'HorizontalAlignment','left','VerticalAlignment','baseline')
elseif p == 6
x1 = a + s*[0.2, 0.6, 0.6, 0.2, (c-a)/s];
y1 = b + s*[ 0, 0.3,-0.3, 0, 0];
x2 = a + s*[(f-a)/s, 0.6]; y2 = b + s*[0, 0];
line(x1,y1); line(x2,y2);
text(a+s*0.3,b+s*0.3,l,'FontName','Times','FontSize',F,...
'HorizontalAlignment','right','VerticalAlignment','cap')
text(a+s*0.3,b+s*0.3,t,'FontName','Times-Italic','FontSize',F,...
'HorizontalAlignment','right','VerticalAlignment','baseline')
else
x1 = g + s*[0,0.3,-0.3,0,0];
y1 = h + s*[0.2,0.6,0.6,0.2,(d-h)/s];
x2 = g + s*[0,0]; y2 = h + s*[(f-h)/s,0.6];
line(x1,y1); line(x2,y2);
text(g-s*0.2,h+s*0.3,l,'FontName','Times','FontSize',F,...
'HorizontalAlignment','right','VerticalAlignment','cap')
text(g-s*0.2,h+s*0.3,t,'FontName','Times-Italic','FontSize',F,...
'HorizontalAlignment','right','VerticalAlignment','baseline')
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -