L'idée est ici de proposer une base de schémas conçus en .svg (avec Inkscape) ou codés en tikz (extension latex). Les schémas peuvent être utilisés tels quels ou bien servir de base pour d'autres schémas.
Quelle est la différence entre le travail avec Inkscape et le travail en tikz ?
Inkscape est un logiciel de dessin vectoriel qui se manipule de la même façon que Paint par exemple : vous choisissez votre outil, vous dessinez, c'est plutôt simple.
L'inconvénient est qu'il est difficile de définir un formatage précis pour tous vos schémas.
En tikz, votre figure sera codée est vous obtiendrez toujours le même résultat en tapant la même ligne de code. C'est plus complexe, mais l'aspect uniformisé de tous vos schémas est intéressant : la police utilisée sera la même partout (et la même que votre document latex), l'écriture d'un vecteur donnera toujours le même rendu, ...
De mon point de vue, comparer Inskape et tikz revient à comparer Word et Latex :
D'un côté, l'utilisation est facile mais il est difficile d'uniformiser ses productions ;
De l'autre, le code peut être repoussant, mais le rendu des documents est quasi parfait.
La conversion tikz-svg et inversement est-elle possible ?
Un schéma codé avec tikz peut facilement être exporté : avec les lignes de code suivantes
%prévisualisation dessin par dessin
\usepackage[active,tightpage]{preview}
\PreviewEnvironment{tikzpicture}
\setlength\PreviewBorder{5pt} %fin
dans votre source .tex, la compilation avec pdflatex vous produit un .pdf ou chaque page est composée d'un schéma.
Il suffit d'ouvrir le pdf avec inkscape à la bonne page pour retrouver le schéma en .svg que vous pourrez modifier ou exporter en divers formats.
Pour une conversion directe en svg, je vous conseille le site misc2svg qui vous permettra de transformer une page de votre pdf
directement en svg à télécharger.
La conversion svg en code tikz est possible via un module (inkscape2tikz) du logiciel inkscape, mais le code
fourni sera nettement moins lisible (et l'intérêt n'est que limité. Ce peut être intéressant lorsque vous voulez que tous vos schémas soient contenus dans le même fichier .tex. Mais la modification du schéma sera problématique.)
Ajout du 14 janvier 2021
Je viens de tomber sur un lien intéressant et on vient de me faire part d'un autre projet qui ne l'est pas moins :
Le premier permet d'éditer de façon visuel des courbes de Bézier puis d'obtenir le code tikz correspondant :
Editeur de courbes de Bézier
Pour ma part, j'ai toujours eu du mal à les tracer en tikz car il n'est pas facile de prédire le résultat.
Le deuxième m'a été partagé, il s'agit cette fois-ci d'un éditeur de schémas électriques qui permet également d'obtenir après réalisation le code tikz complet :
Editeur de schémas électriques
Merci pour ces créations qui facilitent l'utilisation de tikz qui peut parfois être complexe.
Pour rechercher un mot dans la page, utilisez la fonction de votre navigateur (Ctrl + F)
Voici des petits liens pour vous repérer dans la page :
\begin{tikzpicture}[scale=0.8]
\draw[->] (-2,0) -- (2,0);
\draw[->] (0,-2) -- (0,2);
\draw node [red] at (-2,1.25) {\scriptsize{Lignes de champ}};
\draw node [blue] at (2,-1.25) {\scriptsize{Equipotentielles}};
\draw[color=red,domain=-3.14:3.14,samples=200,smooth] plot (canvas polar cs:angle=\x r,radius={3*sin(\x r)*3*sin(\x r)*5});
%r = angle en radian %domain permet de définir le domaine dans lequel la fonction sera tracée %samples=200 permet d'augmenter le nombre de points pour le tracé %smooth améliore également la qualité de la trace
\draw[color=red,domain=-3.14:3.14,samples=200,smooth] plot (canvas polar cs:angle=\x r,radius={2*sin(\x r)*2*sin(\x r)*5});
\draw[color=blue,domain=-pi:pi,samples=200,smooth] plot (canvas polar cs:angle=\x r,radius={3*sqrt(abs(cos(\x r)))*15});
\draw[color=blue,domain=-pi:pi,samples=200,smooth] plot (canvas polar cs:angle=\x r,radius={2*sqrt(abs(cos(\x r)))*15});
\end{tikzpicture}
%ecran oscilloscope
\begin{tikzpicture}[scale=0.4]
\draw[black,thick,rounded corners=10pt] (0,0) rectangle (10,8);
\begin{scope} % permet d'appliquer des propriétés à une partie de code seulement
\clip (0.05,0.05) rectangle (9.95,7.95);%créer une découpe de la fenêtre comme indiqué
\foreach \x in {1,2,...,9}%Démarrage d'une boucle : "pour tout x appartenant à ..."
{ %la boucle est délimitée par une paire d'accolade
\draw[gray!20, very thin] (\x,0.05) -- (\x,7.95);%thin = fin, il existe aussi very thin et ultra thin
}
\foreach \y in {1,2,...,7}
{
\draw[gray!20, very thin] (0.05,\y) -- (9.95,\y);
}
\foreach \x in {0.2,0.4,...,9.8}
{
\draw[gray!20, very thin] (\x,4.1) -- (\x,3.9);
}
\foreach \y in {0.2,0.4,...,7.8}
{
\draw [gray!20, very thin] (5.1,\y) -- (4.9,\y);
} %FIN ecran oscilloscope
\draw[yshift=4cm,color=green,thick,domain=0:10, smooth, samples=150] plot ({\x},{2.5*sin(0.348*\x r)});
\draw[yshift=4cm,color=green,dashed,thick,domain=0:10,smooth, samples=150] plot ({\x},{1.8*sin(0.348*\x r- pi/2 r)});
\draw[gray!80,line width=1pt,<->,>=triangle 45] (0.1,4) -- (8.9,4) node [midway, below] {\colorbox{white}{\textcolor{gray}{\scriptsize{9 divisions}}}} ;
\end{scope}
\end{tikzpicture}
Courbes de Lissajous
%ecran oscilloscope
\begin{tikzpicture}[scale=0.4]
\draw[black,thick,rounded corners=10pt] (0,0) rectangle (10,8);
\begin{scope}
\clip (0.05,0.05) rectangle (9.95,7.95);
\foreach \x in {1,2,...,9}
{
\draw[gray!20, very thin] (\x,0.05) -- (\x,7.95);
}
\foreach \y in {1,2,...,7}
{
\draw[gray!20, very thin] (0.05,\y) -- (9.95,\y);
}
\foreach \x in {0.2,0.4,...,9.8}
{
\draw[gray!20, very thin] (\x,4.1) -- (\x,3.9);
}
\foreach \y in {0.2,0.4,...,7.8}
{
\draw [gray!20, very thin] (5.1,\y) -- (4.9,\y);
} %FIN ecran oscilloscope
\draw[xshift=5cm,yshift=4cm,color=green,thick,domain=0:2*pi, smooth, samples=150] plot ({3*sin(2*\x r},{3*sin(3*\x r)});
\draw [red,very thin, dashed] (2,1) rectangle (8,7);
\filldraw [blue] (2.5,1) circle (0.15);
\filldraw [blue] (5,1) circle (0.15);
\filldraw [blue] (7.5,1) circle (0.15);
\filldraw [blue] (2,2) circle (0.15);
\filldraw [blue] (2,6) circle (0.15);
\end{scope}
\end{tikzpicture}
Tourniquet
\begin{tikzpicture}
\def \n {7} %Définition d'un paramètre utilisé dans le code qui peut être utilisé x fois
\def \radius {4cm}
\def \margin {8} % margin in angles, depends on the radius
\foreach \s in {1,...,\n}
{
\node[draw, circle, fill=blue!20] at ({360/\n * (\s - 1)}:\radius) {TP$\s$}; %blue!20 = couleur bleu à 20%
\draw[->, >=latex] ({360/\n * (\s - 1)+\margin}:\radius)
arc ({360/\n * (\s - 1)+\margin}:{360/\n * (\s)-\margin}:\radius);
}
\node at (4.5,0) [right, text width=4.5cm] {\small{Oscilloscope et GBF}};
\node at ({360/7 * (2 - 1)}:\radius) [right=0.5cm, text width=4.5cm] {\small{Dipôles passifs}};
\node at ({360/7 * (3 - 1)}:\radius) [right=0.75cm, above=0.5cm, text width=4.5cm] {\small{Moments de forces}};
\node at ({360/7 * (4 - 1)}:\radius) [left=0.4cm,text width=2.6cm] {\small{Lentilles minces}};
\node at ({360/7 * (5 - 1)}:\radius) [left=0.4cm, text width=2.6cm] {\small{Force centrifuge}};
\node at ({360/7 * (6 - 1)}:\radius) [below=0.5cm, text width=2cm] {\small{Calorimétrie}};
\node at ({360/7 * (7 - 1)}:\radius) [right=0.6cm,text width=4.5cm] {\small{Pendules simple et élastique}};
\draw[thick,-latex] (15:2) arc(10:270:2);
\node[text width=3.5cm,text justified] at (0,0.25) {\begin{center}\textbf{Sens de rotation des groupes}\end{center}};
\end{tikzpicture}
Electromagnétisme
Champ électrique créé par des charges
\begin{tikzpicture}[scale=1.2] %scale permet de régler la taille de la figure
\draw [very thin, gray] (0,0) grid[step=0.2] (4.4,4.2);%Tracé du quadrillage
\tikzstyle arrowstyle=[scale=1] %taille des flèches
\tikzstyle directed=[postaction={decorate,decoration={markings,
mark=at position .65 with {\arrow[arrowstyle]{stealth}}}}]%définition d'un trait avec une flèche en son milieu
\begin{tikzpicture}
\foreach \t in {30,60, ...,360} %boucle
\draw[red,thick, directed] (0pt,0pt) -- (\t:3cm);%trait tracé en coordonnées polaires
\fill circle (1mm) node [below right] {\colorbox{white}{+q}};%point central
\end{tikzpicture}
Lignes de champ 2
\begin{tikzpicture}
\useasboundingbox (-5,-4) rectangle (5,4); % découpe de la figure selon les dimensions
\path (-3,0) coordinate (A); %attribution d'un nom à un point
\path (3,0) coordinate (B);
\path (-2,1) coordinate (C);
\path (2,1) coordinate (D);
\begin{scope} %application de style qu'à une partie de code
\tikzstyle arrowstyle=[scale=1.5];%taille de flèche
\tikzstyle directed=[postaction={decorate,decoration={markings,
mark=at position .52 with {\arrow[arrowstyle]{stealth}}}}] ;
\draw[red,thick, directed] (A) .. controls (C) and (D) .. (B);%tracé de courbe de Bézier
\draw[red,thick, directed] (A) .. controls +(1,2) and +(-1,2) .. (B);
\draw[red,thick, directed] (A) .. controls +(1,3) and +(-1,3) .. (B);
\draw[red,thick, directed] (A) .. controls +(1,4) and +(-1,4) .. (B);
\draw[red,thick, directed] (A) .. controls (-2,-1) and (2,-1) .. (B);
\draw[red,thick, directed, yscale=-1] (A) .. controls +(1,2) and +(-1,2) .. (B);%yscale permet de retourner verticalement la figure
\draw[red,thick, directed][yscale=-1] (A) .. controls +(1,3) and +(-1,3) .. (B);
\draw[red,thick, directed][yscale=-1] (A) .. controls +(1,4) and +(-1,4) .. (B);
\end{scope}
\begin{scope}
\tikzstyle arrowstyle=[scale=1.5];
\draw[red,thick, postaction={decorate,decoration={markings,
mark=at position .2 with {\arrow[arrowstyle]{stealth}}}},postaction={decorate,decoration={markings,
mark=at position .82 with {\arrow[arrowstyle]{stealth}}}} ]
(A) .. controls +(1,8) and +(-1,8) .. (B);
\draw[red,thick, postaction={decorate,decoration={markings,
mark=at position .15 with {\arrow[arrowstyle]{stealth}}}},postaction={decorate,decoration={markings,
mark=at position .87 with {\arrow[arrowstyle]{stealth}}}} ]
(A) .. controls +(-3,10) and +(3,10) .. (B);
\draw[red,thick, postaction={decorate,decoration={markings,
mark=at position .12 with {\arrow[arrowstyle]{stealth}}}},postaction={decorate,decoration={markings,
mark=at position .89 with {\arrow[arrowstyle]{stealth}}}} ] (A) .. controls +(-8,10) and +(8,10) .. (B);
\draw[red,thick, postaction={decorate,decoration={markings,
mark=at position .08 with {\arrow[arrowstyle]{stealth}}}},postaction={decorate,decoration={markings,
mark=at position .94 with {\arrow[arrowstyle]{stealth}}}} ] (A) .. controls +(-15,10) and +(15,10) .. (B);
\draw[red,thick, postaction={decorate,decoration={markings,
mark=at position .25 with {\arrow[arrowstyle]{stealth}}}}] (A) -- (-10,0);
\draw[red,thick, postaction={decorate,decoration={markings,
mark=at position .25 with {\arrowreversed[arrowstyle]{stealth}}}}] (B) -- (10,0);
\draw[red,thick, postaction={decorate,decoration={markings,
mark=at position .2 with {\arrow[arrowstyle]{stealth}}}},postaction={decorate,decoration={markings,
mark=at position .82 with {\arrow[arrowstyle]{stealth}}}} ][yscale=-1] (A) .. controls +(1,8) and +(-1,8) .. (B);
\draw[red,thick, postaction={decorate,decoration={markings,
mark=at position .15 with {\arrow[arrowstyle]{stealth}}}},postaction={decorate,decoration={markings,
mark=at position .87 with {\arrow[arrowstyle]{stealth}}}} ][yscale=-1] (A) .. controls +(-3,10) and +(3,10) .. (B);
\draw[red,thick,postaction={decorate,decoration={markings,
mark=at position .12 with {\arrow[arrowstyle]{stealth}}}},postaction={decorate,decoration={markings,
mark=at position .89 with {\arrow[arrowstyle]{stealth}}}} ][yscale=-1] (A) .. controls +(-8,10) and +(8,10) .. (B);
\draw[red,thick, postaction={decorate,decoration={markings,
mark=at position .08 with {\arrow[arrowstyle]{stealth}}}},postaction={decorate,decoration={markings,
mark=at position .94 with {\arrow[arrowstyle]{stealth}}}} ][yscale=-1] (A) .. controls +(-15,10) and +(15,10) .. (B);
\end{scope}
\fill (A) circle (1mm) node [below left] {\colorbox{white}{+q}};%Charge
\fill (B) circle (1mm) node [below right] {\colorbox{white}{-q}};
\end{tikzpicture}
\begin{circuitikz}
\draw (0,0) to[V, v=$E_0$] (0,3) to [R, l=$R_0$] (3,3)--(4,3);
\draw (4,3) to [R, l^=$R_C$] (4,0) -- (0,0); %le ^ signifie que le nom du conducteur sera à droite du symbole (car ici, pour dessiner ce symbole on va de haut en bas, donc au dessus signifie à droite)
\fill [gray!50,opacity=0.5] (-1.25,-0.5) rectangle (2.5,3.75) ;
%opacity = fonction de transparence, en pourcentage
\begin{tikzpicture}[scale=0.8]
\draw (0,0) ellipse (3cm and 1cm);
\draw [thick, -latex] (0,-3) -- (0,3) node [left] {z};
\draw (0,-2) node {$\bullet$} node [above left] {O};
\draw (0,-3) node [above left] {z'};
\draw node at (2,0.73) {$\bullet$};
\draw (2,0.35) node [right=0.02cm] {M};
\draw (0,0) node {$\bullet$} node [above left] {H};
\draw [xshift=0.3cm,rotate around={180:(-0.4,2.2)},line width=1pt,-stealth] (-0.25,2) arc (-30:210:0.3cm and 0.2cm) node[below left=0.4cm] {$\omega$}; %rotate around permet de faire une rotation autour d'un point particulier (ici de 180° autour de (-0.4,2.2)
%line width gère l'épaisseur du trait
\draw [very thick,-latex] (2,0.73) --++ (1.2,0.45) node[below=0.15cm] {$\overrightarrow{F_{ie}}$};
\draw [very thick,-latex] (2,0.73) --++ (-1.2,-0.45)node[below=0.15cm] {$\overrightarrow{F_{0}}$};
\draw [very thick,-latex] (2,0.73) --++ (0,1.2)node[above] {$\overrightarrow{R}$};
\draw [very thick,-latex] (2,0.73) --++ (0,-1.2)node[below] {\colorbox{white}{$\overrightarrow{P}$}};
\draw [red, very thick, -stealth] (2,0.73) --++ (-0.7,0.3) node [above] {$\overrightarrow{t}$};
\draw [red, very thick, -stealth] (2,0.73) --++ (-0.7,-0.25) node [below] at (1.5,0.5) {$\overrightarrow{n}$};
\draw [dotted] (0,0) -- (2,0.73);
\end{tikzpicture}
Elongation d'un ressort vertical
\begin{tikzpicture} [scale=0.75, decoration={coil,aspect=0.4,segment length=3mm,amplitude=3mm}] %decoration : gère l'aspect du ressort par l'instruction decorate
\tikzset{ressort/.style={thick,gray,smooth}} %définition d'un style de ressort
%bloc qui tient le ressort
\draw[thick,gray] (0,0) -- (0,-0.3);
\fill [pattern=north east lines] (-0.5,0) rectangle (0.5,0.3);
%pattern définit un style de remplissage de la forme
\draw[thick](-0.5,0)--(0.5,0);
%fin ressort
Les deux images incluses dans ces figures : capitaine et main.
Thermodynamique
Expérience d'hydrostatique
\begin{tikzpicture}[scale=3]
%------------
%tube en U
%------------
\begin{scope} [shift=({0.5,0.5}),scale=0.75] %Ce shift avec deux coordonnées permet de déplacer la portion de code horizontalement et verticalement
%remplissages
\draw[SkyBlue!30,line width=9pt](0,-0.8) arc (180:360:0.5);
\filldraw [SkyBlue!30] (-0.075,-0.8) rectangle++ (0.15,0.25); %SkyBlue est une couleur du package xcolor
\filldraw [SkyBlue!30] (0.925,-0.8) rectangle++ (0.15,0.25);
\filldraw [SkyBlue!30,draw=black,line width=0.05pt] (0,-0.55) ellipse (0.075cm and 0.05cm);
\filldraw [SkyBlue!30,draw=black,line width=0.05pt] (1,-0.55) ellipse (0.075cm and 0.05cm);
%tube
\filldraw [fill=black!60] (0,0) ellipse (0.075cm and 0.05cm);
\draw (1,0) ellipse (0.075cm and 0.05cm);
\draw (-0.075,0) --++ (0,-0.8);
\draw (0.075,0) --++ (0,-0.8);
\draw (0.925,0) --++ (0,-0.8);
\draw (1.075,0) --++ (0,-0.8);
\draw (-0.075,-0.8) arc (180:360:0.575);
%arc circulaire partant du point entre parenthèses, de l'angle 180 à l'angle 360, d'un rayon de 0.575 cm
\draw (0.075,-0.8) arc (180:360:0.425);
\end{scope} %------------
%FIN
%------------
%récipient
\begin{scope}[shift=({-1,-1})]
\filldraw [fill=SkyBlue!30,draw=black] (0,0) to [bend right=40] (1,0);
%to [bend right=40] permet de dissiner un arc courbé à droite entre deux points, 40° représente "l'angle de contact" avec les points
\fill [SkyBlue!30] (0,0) rectangle (1,0.75);
\filldraw [fill=SkyBlue!30,draw=black] (0.5,0.75) ellipse (0.5cm and 0.15cm);
\draw [draw=black] (0.5,1.15) ellipse (0.5cm and 0.15cm);
\draw (0,0) --++ (0,1.15);
\draw (1,0) --++ (0,1.15);
\end{scope}
\draw [simple] (5,1) to [bend left=10] (2,2) ;
\node at (3.5,1.15) [rotate=-15]{ \scriptsize Compression};
\draw [simple] (2,2) --++ (0,3) node [sloped,above,midway] {\scriptsize Chauffage};
\draw [simple] (2,5) to [bend right=10] (5,3);
\node at (3.5,3.60) [rotate=-30] { \scriptsize détente};
\draw [simple] (5,3) --++ (0,-2) node [sloped,above=0,midway] {\scriptsize Refroidissement};
%sloped permet une écriture verticale
\end{tikzpicture}
Optique
Un grand merci à Jimmy Roussel qui, en partageant son dossier de figures tikz, m'a permis de progresser. Certaines parties de codes ci-dessous sont de lui (comme le code de l'oeil, entre autres ...).
Voici les styles qui ont été définis, pour le tracé des rayons, pour la réalisation d'un oeil, ...
%double flèches
\tikzstyle double=[postaction={decorate,decoration={markings,
mark=at position .5 with {\arrow[scale=1,>=stealth]{>>}}}}]
%double flèches reverse
\tikzstyle doublerev=[postaction={decorate,decoration={markings,
mark=at position .5 with {\arrow[scale=1,>=stealth]{<<}}}}]
%simple flèche grande taille
\tikzstyle simplegros=[postaction={decorate,decoration={markings,
mark=at position .5 with {\arrow[scale=1.5,>=stealth]{>}}}}]
%simple flèche grande taille reverse
\tikzstyle simplegrosrev=[postaction={decorate,decoration={markings,
mark=at position .5 with {\arrow[scale=1.5,>=stealth]{<}}}}]
%double flèches grande taille
\tikzstyle doublegros=[postaction={decorate,decoration={markings,
mark=at position .5 with {\arrow[scale=1.5,>=stealth]{>>}}}}]
%double flèche grande taille reverse
\tikzstyle doublegrosrev=[postaction={decorate,decoration={markings,
mark=at position .5 with {\arrow[scale=1.5,>=stealth]{<<}}}}]
%oeil, le paramètre, indiqué entre crochet permettra de positionner l'oeil avec un shift, rotate ...
\newcommand{\oeil}[1][]
{
\draw[#1,thick,rounded corners] (-15:1)--(0,0)--(15:1);
\draw[#1] (-15:0.8) arc (-15:15:0.8);
\draw[#1,fill=black] (0:0.75) ellipse(0.05 and 0.1);
}
\def \xA{-1.2}; %position de l'objet par rapport à la première lentille
\def \yB{-0.25};%hauteur de l'objet
\coordinate (O1) at (0,0);%centre optique de la première lentille
\coordinate (O2) at (8,0);%centre optique de la deuxième lentille
\def \fUn{1};%focale de la première lentille
\def \fDe{2};%focale de la première lentille
\def \xAA {(\xA*\fUn)/(\xA+\fUn)};%position de l'image %Les calculs s'effectuent entre accolades
\def \yBB {(\xAA*\yB)/(\xA)};%hauteur de l'image
\coordinate (A) at (\xA,0);%position de l'objet
\coordinate (B) at (\xA,\yB);%sommet de l'objet
\coordinate (AA) at ({\xAA},0);
\coordinate (BB) at ({\xAA},{\yBB});
%Les grandeurs calculées s'utilisent entre accolades
\draw[|->, thick] (A)node[above]{A}--(B)node[below]{B};
\draw[|->, thick] (AA)node[below]{ $\mathrm{A}_1$}--(BB)node[above]{ $\mathrm{B}_1$};
\draw[shift={(O1)},ultra thick,<->,>=latex] (0,-2)--++(0,4) node[above]{$\mathcal{L}_1$};%lentille convergente
\draw[shift={(O2)},ultra thick,<->,>=latex] (0,-3)--++(0,6) node[above]{$\mathcal{L}_2$};%lentille convergente
\begin{tikzpicture}[scale=1]
\draw[thin,->](-2.5,0)--++(13,0)node[above right,fill=white]{\tiny +};
\coordinate (O1) at (0,0);%centre optique de la première lentille \coordinate (O2) at (6,0);%centre optique de la première lentille
\def \fUn{4};%focale de la première lentille \def \fDe{2};%focale de la première lentille
\draw[shift={(O1)},ultra thick,<->,>=latex] (0,-2)--++(0,4) node[above]{$\mathcal{L}_1$};%lentille convergente
\draw[shift={(O2)},ultra thick,<->,>=latex] (0,-3)--++(0,6) node[above]{$\mathcal{L}_2$};%lentille convergente
\draw [thick,red, simple] (-2,0.5) --(0,0)--++($3*(0,0)-3*(-2,0.5)$) ; %rayon rouge qui passe par le centre O1 %
\draw [dashed] (6,0) --++(-2,0.5) (6,0)--++(2,-0.5); %parallèle pointillé noir passant par O2 \draw [dashed] (8,-0.5) --++($0.5*(8,-0.5)-0.5*(O2)$) ;%parallèle pointillé noir passant par O2
\draw [red,dashed] (6,-1.5) --++ ($1.5*(6,-1.5)-1.5*(8,-0.5)$); %prolongement rayon vers image
\draw [thick,red, simple](6,-1.5)-- (8,-0.5)--++($0.725*(8,-0.5)-0.725*(6,-1.5)$) ; %rayon rouge divergent de l'oculaire
\draw [thick,blue, double] (-2,1) --(0,0.5); %rayon bleu avant O1 \draw [thick,blue, double] (0,0.5)--++($-1.5*(0,0.5)+1.5*(4,-1)$); %rayon bleu jusqu'à L2
\draw [thick,blue, double](6,-1.75)--++($1.775*(8,-0.75)-1.775*(6,-1.75)$) ;%rayon bleu divergent de l'oculaire
\draw [blue,dashed] (6,-1.75) --++ ($1.5*(6,-1.75)-1.5*(8,-0.75)$); %prolongement rayon vers image
\draw [dotted,thin] (8,0) --++ (0,2) (8,0) --++ (0,-2); %plan focal image L2
\draw [thick,->,-latex] (3,-3.1) --++ (-0.5,-0.3);
\node at (2.5,-3.1) {\tiny \text{Image}};
\draw[|->, thick,dashed] (4,0)node[above left]{ $\mathrm{A}_1$}--++(0,-1) node[below]{$\mathrm{B}_1$};
\draw [dashed] (4,-1) --++($2.25*(O2)-2.25*(4,-1)$); %parallèle pointillé noir passant par O2 %Angle alpha
\draw (-1.2,0) to [bend left] (-1.2,0.3);
\node at (-1.4,0.15) [] {\scriptsize $\alpha$};
%angles alpha prim
\draw (5.4,0) to [bend right] (5.5,-0.27);
\node at (5.2,-0.15) [] {\scriptsize $\alpha'$};
\begin{scope}[rotate=180,shift=({-12.05,0})]
\draw (5.4,0) to [bend right] (5.5,-0.27);
\node at (5.2,-0.2) [] {\scriptsize $\alpha'$};
\end{scope}
%oeil
\oeil[shift={(10.15,0.5)},rotate=210,scale=0.75];
\end{tikzpicture}
Profondeur de champ et focale
\begin{tikzpicture}[scale=1]
\begin{scope} %Portion de code isolé dans la figure \node at (-0.6,0) { \centering \boxed{\textbf{\small Plus la focale est courte, plus la profondeur de champ est grande}}};
\end{scope}
\begin{scope}[shift=({0,-3.5})] %Portion de code isolé et déplacé de 3.5 vers le bas
\def \taillehaut{2.5}; %taille de la lentille \def \taillebas{2.5};%taille de la lentille \def \xA{-5};%position de l'objet \def \xAA {(\xA*\f)/(\xA+\f)};%position de l'image \def \xB{-6.75};%position de l'objet \def \xBB {(\xB*\f)/(\xB+\f)};%position de l'image \def \xC{-4};%position de l'objet \def \xCC {(\xC*\f)/(\xC+\f)};%position de l'image \coordinate (O1) at (0,0);%centre optique de la première lentille \coordinate (A) at (\xA,0);%position de l'objet \coordinate (B) at (\xB,0);%position de l'objet \coordinate (C) at (\xC,0);%position de l'objet \def \f{1.5};%focale de la première lentille \coordinate (F') at (\f,0);
\coordinate (A') at ({\xAA},0);%position de l'image \coordinate (B') at ({\xBB},0);%position de l'image \coordinate (C') at ({\xCC},0);%position de l'image %rectangle grisé de profondeur de champ
\fill [gray!50,opacity=0.75] (-4,0) rectangle (-6.75,1);
\node at (A) {$\bullet$} ;
\foreach \x/\z in {O1/\f}{
\draw[shift={(\x)}] (0,0) node[below left] { O};
\draw[shift={(\x)}] (\z,2pt) --++ (0,-4pt) node[below left] {F'};
\draw[shift={(\x)}] ({-\z},2pt) --++ (0,-4pt) node[below] {F};
}
%Ellipse, tache nette
\fill [gray, opacity=0.75] (2.14,0) ellipse (0.10 and 0.19);
\draw [|<->|] (-4,1) -- (-6.75,1) node [above,midway] {\tiny Profondeur de champ};
\end{scope}
\begin{scope}[shift=({0,-9.5})]
%\draw [ultra thin, gray!20] (-6,-6) grid[step=0.5] (6,6); %\draw [thin,gray!50] (-6,-6) grid[step=1] (6,6); \def \taillehaut{2.5}; %taille de la lentille \def \taillebas{2.5};%taille de la lentille \def \xA{-5};%position de l'objet \def \xAA {(\xA*\f)/(\xA+\f)};%position de l'image \def \xB{-5.95};%position de l'objet \def \xBB {(\xB*\f)/(\xB+\f)};%position de l'image \def \xC{-4.4};%position de l'objet \def \xCC {(\xC*\f)/(\xC+\f)};%position de l'image \coordinate (O1) at (0,0);%centre optique de la première lentille \coordinate (A) at (\xA,0);%position de l'objet \coordinate (B) at (\xB,0);%position de l'objet \coordinate (C) at (\xC,0);%position de l'objet \def \f{2};%focale de la première lentille \coordinate (F') at (\f,0);
\coordinate (A') at ({\xAA},0);%position de l'image \coordinate (B') at ({\xBB},0);%position de l'image \coordinate (C') at ({\xCC},0);%position de l'image %rectangle grisé de profondeur de champ \fill [gray!50,opacity=0.75] (-4.4,0) rectangle (-5.95,1);
\node at (A) {$\bullet$} ;
\foreach \x/\z in {O1/\f}{
\draw[shift={(\x)}] (0,0) node[below left] { O};
\draw[shift={(\x)}] (\z,2pt) --++ (0,-4pt) node[below] { F'};
\draw[shift={(\x)}] ({-\z},2pt) --++ (0,-4pt) node[below] { F};
}
\fill [gray, opacity=0.75] (3.325,0) ellipse (0.10 and 0.19);
\draw [|<->|] (-4.4,1) -- (-5.95,1) node [above,midway] {\tiny Profondeur de champ};
\end{scope}
\begin{scope}[shift=({0,-12.5})]
\fill [gray, opacity=0.75] (-5,0) ellipse (0.10 and 0.19);
\node at (-0.6,0) {: tache qui sera vue nette par la pellicule ou le capteur};
\end{scope}
\end{tikzpicture}
Profondeur de champ et distance de mise au point
\begin{tikzpicture}[scale=1]
\begin{scope}
\node at (-0.6,0) {\centering \boxed{\textbf{\small Plus la distance de mise au point est grande, plus la profondeur de champ est grande}}};
\end{scope}
\begin{scope}[shift=({0,-3.5})]
\def \taillehaut{2.5}; %taille de la lentille \def \taillebas{2.5};%taille de la lentille \def \xA{-5};%position de l'objet \def \xAA {(\xA*\f)/(\xA+\f)};%position de l'image \def \xB{-6.75};%position de l'objet \def \xBB {(\xB*\f)/(\xB+\f)};%position de l'image \def \xC{-4};%position de l'objet \def \xCC {(\xC*\f)/(\xC+\f)};%position de l'image \coordinate (O1) at (0,0);%centre optique de la première lentille \coordinate (A) at (\xA,0);%position de l'objet \coordinate (B) at (\xB,0);%position de l'objet \coordinate (C) at (\xC,0);%position de l'objet \def \f{1.5};%focale de la première lentille \coordinate (F') at (\f,0);
\coordinate (A') at ({\xAA},0);%position de l'image \coordinate (B') at ({\xBB},0);%position de l'image \coordinate (C') at ({\xCC},0);%position de l'image
\fill [gray!50,opacity=0.75] (-4,0) rectangle (-6.75,1);
\node at (A) {$\bullet$} ;
\foreach \x/\z in {O1/\f}{
\draw[shift={(\x)}] (0,0) node[below left] { O};
\draw[shift={(\x)}] (\z,2pt) --++ (0,-4pt) node[below left] {F'};
\draw[shift={(\x)}] ({-\z},2pt) --++ (0,-4pt) node[below] {F};
}
\fill [gray, opacity=0.75] (2.14,0) ellipse (0.10 and 0.19);
\draw [|<->|] (-4,1) -- (-6.75,1) node [above,midway] {\tiny Profondeur de champ};
\end{scope}
\begin{scope}[shift=({0,-9.5})]
\def \taillehaut{2.5}; %taille de la lentille \def \taillebas{2.5};%taille de la lentille \def \xA{-4};%position de l'objet \def \xAA {(\xA*\f)/(\xA+\f)};%position de l'image \def \xB{-4.9};%position de l'objet \def \xBB {(\xB*\f)/(\xB+\f)};%position de l'image \def \xC{-3.4};%position de l'objet \def \xCC {(\xC*\f)/(\xC+\f)};%position de l'image \coordinate (O1) at (0,0);%centre optique de la première lentille \coordinate (A) at (\xA,0);%position de l'objet \coordinate (B) at (\xB,0);%position de l'objet \coordinate (C) at (\xC,0);%position de l'objet \def \f{1.5};%focale de la première lentille \coordinate (F') at (\f,0);
\coordinate (A') at ({\xAA},0);%position de l'image \coordinate (B') at ({\xBB},0);%position de l'image \coordinate (C') at ({\xCC},0);%position de l'image
\fill [gray!50,opacity=0.75] (-3.4,0) rectangle (-4.9,1);
\node at (A) {$\bullet$} ;
\foreach \x/\z in {O1/\f}{
\draw[shift={(\x)}] (0,0) node[below left] { O};
\draw[shift={(\x)}] (\z,2pt) --++ (0,-4pt) node[below] { F'};
\draw[shift={(\x)}] ({-\z},2pt) --++ (0,-4pt) node[below] { F};
}
\fill [gray, opacity=0.75] (2.4,0) ellipse (0.10 and 0.19);
\draw [|<->|] (-3.4,1) -- (-4.9,1) node [above,midway] {\tiny Profondeur de champ};
\end{scope}
\begin{scope}[shift=({0,-12.5})]
\fill [gray, opacity=0.75] (-5,0) ellipse (0.10 and 0.19);
\node at (-0.6,0) {: tache qui sera vue nette par la pellicule ou le capteur};
\end{scope}
\end{tikzpicture}
Profondeur de champ et ouverture
\begin{tikzpicture}[scale=1]
\begin{scope}
\node at (-0.6,0) {\centering \boxed{\textbf{\small Plus l'ouverture de l'objectif est petite, plus la profondeur de champ est grande}}};
\end{scope}
\begin{scope}[shift=({0,-3.5})]
\def \taillehaut{2.5}; %taille de la lentille \def \taillebas{2.5};%taille de la lentille \def \xA{-5};%position de l'objet \def \xAA {(\xA*\f)/(\xA+\f)};%position de l'image \def \xB{-6.75};%position de l'objet \def \xBB {(\xB*\f)/(\xB+\f)};%position de l'image \def \xC{-4};%position de l'objet \def \xCC {(\xC*\f)/(\xC+\f)};%position de l'image \coordinate (O1) at (0,0);%centre optique de la première lentille \coordinate (A) at (\xA,0);%position de l'objet \coordinate (B) at (\xB,0);%position de l'objet \coordinate (C) at (\xC,0);%position de l'objet \def \f{1.5};%focale de la première lentille \coordinate (F') at (\f,0);
\coordinate (A') at ({\xAA},0);%position de l'image \coordinate (B') at ({\xBB},0);%position de l'image \coordinate (C') at ({\xCC},0);%position de l'image
\fill [gray!50,opacity=0.75] (-4,0) rectangle (-6.75,1);
\node at (A) {$\bullet$} ;
\node at (B) {$\bullet$} ;
\node at (C) {$\bullet$} ;
\draw[thin,->](-7.5,0)--++(13,0)node[above right,fill=white]{\tiny +};
\draw[shift={(O1)},ultra thick ,<->,>=latex] (0,-\taillebas)--(0,\taillehaut) node[above]{\scriptsize Objectif};%lentille convergente
\draw[,red,simple] (A)--(0,2);
\draw[,red,simple] (0,2)--(A')--++($0.35*(A')-0.35*(0,2)$);
\draw[,red,simple] (A)--(0,-2);
\draw[,red,simple] (0,-2)--(A')--++($0.35*(A')-0.35*(0,-2)$);
\draw[,blue,simple] (B)--(0,2);
\draw[,blue,simple] (0,2)--(B')--++($0.35*(B')-0.35*(0,2)$);
\draw[,blue,simple] (B)--(0,-2);
\draw[,blue,simple] (0,-2)--(B')--++($0.35*(B')-0.35*(0,-2)$);
\draw[purple,simple] (C)--(0,2);
\draw[purple,simple] (0,2)--(C')--++($0.35*(C')-0.35*(0,2)$);
\draw[purple,simple] (C)--(0,-2);
\draw[purple,simple] (0,-2)--(C')--++($0.35*(C')-0.35*(0,-2)$);
\foreach \x/\z in {O1/\f}{
\draw[shift={(\x)}] (0,0) node[below left] { O};
\draw[shift={(\x)}] (\z,2pt) --++ (0,-4pt) node[below left] {F'};
\draw[shift={(\x)}] ({-\z},2pt) --++ (0,-4pt) node[below] {F};
}
\fill [gray, opacity=0.75] (2.14,0) ellipse (0.10 and 0.19);
\draw [|<->|] (-4,1) -- (-6.75,1) node [above,midway] {\tiny Profondeur de champ};
\end{scope}
\begin{scope}[shift=({0,-10.5})]
\def \taillehaut{3.5}; %taille de la lentille \def \taillebas{3.5};%taille de la lentille \def \xA{-5};%position de l'objet \def \xAA {(\xA*\f)/(\xA+\f)};%position de l'image \def \xB{-6.15};%position de l'objet \def \xBB {(\xB*\f)/(\xB+\f)};%position de l'image \def \xC{-4.25};%position de l'objet \def \xCC {(\xC*\f)/(\xC+\f)};%position de l'image \coordinate (O1) at (0,0);%centre optique de la première lentille \coordinate (A) at (\xA,0);%position de l'objet \coordinate (B) at (\xB,0);%position de l'objet \coordinate (C) at (\xC,0);%position de l'objet \def \f{1.5};%focale de la première lentille \coordinate (F') at (\f,0);
\coordinate (A') at ({\xAA},0);%position de l'image \coordinate (B') at ({\xBB},0);%position de l'image \coordinate (C') at ({\xCC},0);%position de l'image
\fill [gray!50,opacity=0.75] (-4.25,0) rectangle (-6.15,1);
\node at (A) {$\bullet$} ;
\node at (B) {$\bullet$} ;
\node at (C) {$\bullet$} ;
\draw[thin,->](-7.5,0)--++(13,0)node[above right,fill=white]{\tiny +};
\draw[shift={(O1)},ultra thick ,<->,>=latex] (0,-\taillebas)--(0,\taillehaut) node[above]{\scriptsize Objectif};%lentille convergente
\draw[,red,simple] (A)--(0,3);
\draw[,red,simple] (0,3)--(A')--++($0.35*(A')-0.35*(0,3)$);
\draw[,red,simple] (A)--(0,-3);
\draw[,red,simple] (0,-3)--(A')--++($0.35*(A')-0.35*(0,-3)$);
\draw[,blue,simple] (B)--(0,3);
\draw[,blue,simple] (0,3)--(B')--++($0.35*(B')-0.35*(0,3)$);
\draw[,blue,simple] (B)--(0,-3);
\draw[,blue,simple] (0,-3)--(B')--++($0.35*(B')-0.35*(0,-3)$);
\draw[purple,simple] (C)--(0,3);
\draw[purple,simple] (0,3)--(C')--++($0.35*(C')-0.35*(0,3)$);
\draw[purple,simple] (C)--(0,-3);
\draw[purple,simple] (0,-3)--(C')--++($0.35*(C')-0.35*(0,-3)$);
\foreach \x/\z in {O1/\f}{
\draw[shift={(\x)}] (0,0) node[below left] { O};
\draw[shift={(\x)}] (\z,2pt) --++ (0,-4pt) node[below] { F'};
\draw[shift={(\x)}] ({-\z},2pt) --++ (0,-4pt) node[below] { F};
}
\fill [gray, opacity=0.75] (2.15,0) ellipse (0.10 and 0.19);
\draw [|<->|] (-4.25,1) -- (-6.15,1) node [above,midway] {\tiny Profondeur de champ};
\end{scope}
\begin{scope}[shift=({0,-14.5})]
\fill [gray, opacity=0.75] (-5,0) ellipse (0.10 and 0.19);
\node at (-0.6,0) {: tache qui sera vue nette par la pellicule ou le capteur};
\end{scope}
\end{tikzpicture}
\begin{tikzpicture}
%miroir \begin{scope}[rotate=0]
\shadedraw[white,right color=white,left color=gray!50] (0,-2.1)--++(0,4.2)--++(0.7,0)--++(0,-4.2)--cycle;
%\shadedraw = dégradé avec les différentes couleurs définies à l'intérieur des crochets