arrow

PURPOSE ^

INPUT points x y , puis ratio ( longueur des bras de fleche) ang ( angle

SYNOPSIS ^

function [h1,h2]=arrow(x,y,ratio,ang,epaisseur);

DESCRIPTION ^

INPUT points x y , puis ratio ( longueur des bras de fleche) ang ( angle 
des bras de fleche et epaisseur ( du corps de la fleche).

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

0001 function [h1,h2]=arrow(x,y,ratio,ang,epaisseur);
0002 %INPUT points x y , puis ratio ( longueur des bras de fleche) ang ( angle
0003 %des bras de fleche et epaisseur ( du corps de la fleche).
0004 ang=ang/180*pi;
0005 hold on
0006 
0007 Ap=[x(1)
0008    y(1)];
0009 Bp=[x(2)
0010    y(2)];
0011 u=Bp-Ap;
0012 
0013 alpha=atan2(u(2),u(1))
0014 s=sqrt(sum((Ap-Bp).^2))
0015 s2=s*ratio
0016 
0017 
0018 B=Bp-[-epaisseur/2*sin(alpha)
0019    epaisseur/2*cos(alpha)];
0020 
0021 A=Ap-[-epaisseur/2*sin(alpha)
0022    epaisseur/2*cos(alpha)];
0023 
0024 
0025 C=Bp+[-epaisseur/2*sin(alpha)
0026    epaisseur/2*cos(alpha)];
0027 
0028 D=Ap+[-epaisseur/2*sin(alpha)
0029    epaisseur/2*cos(alpha)];
0030 E=(A+D)/2;
0031 F=(B+C)/2;
0032 
0033 
0034 G=C+[-s2*cos(alpha-ang)
0035    -s2*sin(alpha-ang)];
0036 H=B+[-s2*cos(alpha+ang)
0037    -s2*sin(alpha+ang)];
0038 
0039 
0040 h1=fill([A(1) B(1) C(1) D(1)],[A(2) B(2) C(2) D(2)],'Black');
0041 h2=fill([H(1) B(1) C(1) G(1)],[H(2) B(2) C(2) G(2)],'Black');

Generated on Fri 27-Mar-2009 18:50:01 by m2html © 2003