%autocrop 20 setxunit -10 13 setxrange -5.2 9 setyrange %quadrillage marks /q {6 4 0} def /r {6 -4 0} def /p {-5 0 0} def /s {0 0 8} def /vect_I {-10 cos -10 sin} def /vect_J {40 cos 40 sin .8 mulv} def /vect_K {0 1} def %% [O vect_I] (->) ligne %% [O vect_J] (->) ligne %% [O vect_K] (->) ligne /xyz2xy { 3 dict begin /z exch def /y exch def /x exch def vect_I x mulv vect_J y mulv vect_K z mulv addv addv end } def [/P /Q /R /S] [p q r s] {xyz2xy} capply mapnp 3 P S ydpoint /I defpoint 4 R S ydpoint /K defpoint 2 Q S ydpoint /J defpoint %% corrige K J R Q interdroite /A defpoint K I P R interdroite /B defpoint gsave .6 setlinewidth pointilles orange [K A] ligne [K B] ligne grestore gsave .8 setlinewidth mixte A B 1.2 trait grestore [A B] {times2} plot %%%%%%%%%% gsave .8 setlinewidth pointilles [P Q] ligne grestore /dotscale {2 dup} def [I J K] {times} plot 1.2 setlinewidth [S P R] ligne [S Q R] ligne [S R] ligne %% le plan de base /P1 {7 -5} def /P2 {-7 -2} def /P3 {12 0} def 2 setlinewidth [P2 P1 P3] ligne 12 setfontsize setTimesItalic (I) I ultext (J) J urtext (K) K urtext (P) P dltext (Q) Q drtext (R) R drtext (S) S urtext (A) A urtext (B) B ultext