4.3 - Figur - Vridning med vinkeln π/2

Förberedande kurs i matematik 1

(Skillnad mellan versioner)
Hoppa till: navigering, sök
(Ny sida: <noinclude>Detta är en figur som används i teoriavsnitt 4.3 och är ritad i språket [http://en.wikipedia.org/wiki/Metapost Metapost]. Du kan redigera bild...)
Nuvarande version (23 mars 2008 kl. 14.57) (redigera) (ogör)
 
Rad 9: Rad 9:
verbatimtex \begin{document} etex
verbatimtex \begin{document} etex
-
vardef rotationarrow(expr pnt, direc) =
+
vardef rotarrow(expr mid, alpha) =
-
save L, w, b, wee, ell, p_middle, p_lwr, p_upr, s, s_lwr, s_upr,
+
save h, r, extra_width, over_shoot, slim, creep_in, x,y , p,
-
p_left, p_right, p;
+
small_angle, tiny_angle;
-
+
h := 4pt;
-
L := 10pt; % Length of arrow
+
r := 5pt;
-
w := 3pt; % Width of arrow
+
extra_width := 1pt;
-
b := 6pt; % Bending of arrow
+
over_shoot := 1pt;
-
wee := 0.5pt; % Arrow tip extra width
+
slim := 0.7pt;
-
ell := 4pt; % Arrow tip length
+
creep_in := 0.4pt;
 +
small_angle := 20;
 +
tiny_angle := 10;
-
% Define middle line
+
z0 = (h+2r,h);
-
path p_middle;
+
z1 = z0+(r,0);
-
p_middle := (0,b+w/2){right}..(L/2,0);
+
z2 = (h+r-creep_in,h+2r-slim);
-
s := arctime ((arclength p_middle)-ell) of p_middle;
+
z3 = z2+(creep_in,slim+extra_width);
 +
z4 = (h-over_shoot,h+(3/2)*r);
 +
z5 = (x3,h+r-extra_width);
 +
z6 = z5+(-creep_in,extra_width+slim);
-
% Define lower and upper lines
 
-
path p_lwr, p_upr;
 
-
p_lwr := (0,b){right}..(L/2,0);
 
-
p_upr := (0,b+w){right}..(L/2,0);
 
- 
-
% Find arrow tip times
 
path p;
path p;
-
p := point s of p_middle + (b+w)*((direction s of p_middle) rotated -90)
+
p := z0{dir tiny_angle}
-
-- point s of p_middle + (b+w)*((direction s of p_middle) rotated 90);
+
..{dir -tiny_angle}z1{up}
-
s_lwr := xpart (p_lwr intersectiontimes p);
+
..{left}z2 & z2{up}
-
s_upr := xpart (p_upr intersectiontimes p);
+
..z3 & z3{dir ((angle (z4-z3))+small_angle)}
-
 
+
..{dir ((angle (z4-z3))-small_angle)}z4{dir ((angle (z5-z4))+small_angle)}
-
% Draw double lines
+
..{dir ((angle (z5-z4))-small_angle)}z5 & z5
-
path q_lwr, q_upr;
+
..{up}z6 & z6{right}
-
q_lwr := subpath(0,s_lwr) of p_lwr;
+
..{down}z0 & cycle;
-
q_upr := subpath(0,s_upr) of p_upr;
+
-
 
+
-
% Draw arrow tip
+
-
path q_tip;
+
-
q_tip := point s_lwr of p_lwr
+
-
-- point s_lwr of p_lwr + wee*((direction s of p_middle) rotated -90)
+
-
.. {direction 1 of p_lwr}(L/2,0)
+
-
& (L/2,0){-(direction 1 of p_upr)}
+
-
.. point s_upr of p_upr + wee*((direction s of p_middle) rotated 90)
+
-
-- point s_upr of p_upr;
+
-
 
+
-
% Create arrow
+
-
path q_dblarrow;
+
-
q_dblarrow := q_lwr
+
-
-- q_tip
+
-
-- (reverse q_upr)
+
-
--cycle;
+
-
q_dblarrow := q_dblarrow reflectedabout (origin,(0,1));
+
-
draw (q_dblarrow scaled 1.3 rotated ((angle direc)-90) shifted pnt);
+
 +
p rotated alpha shifted mid
 +
enddef;
enddef;
Rad 139: Rad 121:
pickup pencircle scaled 0.6pt;
pickup pencircle scaled 0.6pt;
p_radius := (0,0)--R*2dx*(dir (90+v));
p_radius := (0,0)--R*2dx*(dir (90+v));
-
draw p_radius withcolor lightgrey dashed evenly;
+
draw p_radius dashed evenly;
pickup pencircle scaled 2.8pt;
pickup pencircle scaled 2.8pt;
-
drawdot point infinity of p_radius withcolor lightgrey;
+
drawdot point infinity of p_radius;
% The angle v
% The angle v
path p_angle;
path p_angle;
-
r := 0.75;
+
r := 0.85;
ahangle := 20; % Angle of the arrow tip
ahangle := 20; % Angle of the arrow tip
ahlength := 3bp; % Length of the arrow tip
ahlength := 3bp; % Length of the arrow tip
Rad 157: Rad 139:
picture p;
picture p;
p := thelabel.urt(btex $v$ etex, origin);
p := thelabel.urt(btex $v$ etex, origin);
-
draw p scaled 0.7 shifted ((r*2dx*(dir 0))+(1pt,1pt));
+
draw p scaled 1.0 shifted ((r*2dx*(dir 0))+(1pt,1pt));
% The other angle v
% The other angle v
path p_angle;
path p_angle;
-
r := 0.75;
+
r := 0.85;
ahangle := 20; % Angle of the arrow tip
ahangle := 20; % Angle of the arrow tip
ahlength := 3bp; % Length of the arrow tip
ahlength := 3bp; % Length of the arrow tip
Rad 170: Rad 152:
..{dir (v+90)}r*2dx*(dir (90+v));
..{dir (v+90)}r*2dx*(dir (90+v));
pickup pencircle scaled 0.2pt;
pickup pencircle scaled 0.2pt;
-
drawarrow endshy p_angle withcolor lightgrey;
+
drawarrow endshy p_angle;
picture p;
picture p;
p := thelabel.top(btex $v$ etex, origin);
p := thelabel.top(btex $v$ etex, origin);
-
draw p scaled 0.7 shifted ((r*2dx*(dir 100))+(-2pt,0));
+
draw p scaled 1.0 shifted ((r*2dx*(dir 100))+(-3pt,0));
-
% The big fat arrow
+
% The right angle
-
pickup pencircle scaled 0.4pt;
+
ell := 6pt;
-
rotationarrow(2.2dx*(dir (45+v-10)),(dir (45-v)));
+
pickup pencircle scaled 1.8pt;
 +
draw subpath(0.3,0.8) of (ell*(dir v)+ell*(dir (90+v))--ell*(dir (90+v)))
 +
withcolor background;
 +
pickup pencircle scaled 0.2pt;
 +
draw ell*(dir v)--ell*(dir v)+ell*(dir (90+v))--ell*(dir (90+v));
% Rescale the image
% Rescale the image

Nuvarande version

Detta är en figur som används i teoriavsnitt 4.3 och är ritad i språket Metapost. Du kan redigera bilden genom att klicka på redigera-fliken.


[Image]