\documentclass[a4paper,11pt]{article}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[french]{babel}
\usepackage[a4paper,top=3.2cm,bottom=2cm,left=2cm,right=2cm]{geometry}
\usepackage{graphicx}
\usepackage[export]{adjustbox}
\usepackage{fancyhdr}
\usepackage{qrcode}
\usepackage[table]{xcolor}
\usepackage{amsmath,amssymb}
\usepackage{enumitem}
% Puces nettes (babel-french remplace sinon la puce par un tiret « – » peu pro).
% Vaut pour TOUTES les fiches qui importent ce module. AtBeginDocument pour
% passer après la personnalisation des listes faite par babel-french.
\AtBeginDocument{%
  \setlist[itemize]{leftmargin=1.8em,itemsep=0.5ex,topsep=0.4ex,parsep=0pt}%
  \setlist[itemize,1]{label=\textcolor{red!75!black}{\small\textbullet}}%
  \setlist[itemize,2]{label=\textcolor{red!75!black}{\scriptsize\textbullet}}%
}
% Titres compacts (gain de place vertical, fiches plus denses) — vaut pour tous.
\usepackage{titlesec}
\titlespacing*{\section}{0pt}{1.4ex}{0.6ex}
\titlespacing*{\subsection}{0pt}{1.0ex}{0.3ex}
% multicol : listes denses (calcul mental) sur 2 colonnes — neutre tant qu'il
% n'est pas utilisé, dispo pour tous les générateurs.
\usepackage{multicol}
\setlength{\columnsep}{1.5em}
% needspace : empêche un titre d'exercice de rester orphelin en bas de page
% (réserve quelques lignes ; sinon le titre passe à la page suivante avec sa
% liste). Neutre tant qu'il n'est pas appelé — dispo pour tous les générateurs.
\usepackage{needspace}
\usepackage{tikz}
\usetikzlibrary{decorations.text}

\usepackage{tgheros}
\pagestyle{fancy}
\fancyhf{}
\setlength{\headheight}{75pt}
\setlength{\headsep}{10pt}

\newcommand{\logowouf}{%
\begin{tikzpicture}[baseline={(current bounding box.center)},scale=0.55,
                    line cap=round,line join=round]
    \path[use as bounding box] (-2.20,-1.45) rectangle (2.20,2.20);
    \path[
        postaction={decorate},
        decoration={
            text along path,
            text={|\fontfamily{qhv}\bfseries\fontsize{9}{9}\selectfont|site2wouf.fr},
            text align={center},
            raise=0.03ex
        }
    ] (-1.29,0.48) arc[start angle=160,end angle=20,radius=1.29];
    \begin{scope}[xshift=-0.06cm]
        \fill[black] (-0.66,0.14) ellipse (0.21 and 0.31);
        \fill[black] ( 0.66,0.14) ellipse (0.21 and 0.31);
        \fill[black] (-0.23,0.49) ellipse (0.22 and 0.35);
        \fill[black] ( 0.23,0.49) ellipse (0.22 and 0.35);
        \fill[black]
            (0,-0.10)
            .. controls (-0.36,-0.02) and (-0.63,-0.24) .. (-0.58,-0.58)
            .. controls (-0.52,-0.93) and (-0.16,-1.12) .. (0,-0.90)
            .. controls (0.16,-1.12) and (0.52,-0.93) .. (0.58,-0.58)
            .. controls (0.63,-0.24) and (0.36,-0.02) .. (0,-0.10)
            -- cycle;
    \end{scope}
\end{tikzpicture}%
}

% Numérotation CALQUÉE sur le HTML des leçons : I / A / 1 / a (façon de planifier
% de l'utilisateur) — indispensable pour retrouver le même plan sur PDF et en ligne.
\renewcommand{\thesection}{\Roman{section}}
\renewcommand{\thesubsection}{\Alph{subsection}}
\renewcommand{\thesubsubsection}{\arabic{subsubsection}}
\renewcommand{\theparagraph}{\alph{paragraph}}
\setcounter{secnumdepth}{4}   % numérote aussi le 4e niveau (\paragraph → a, b, c)
\makeatletter
\renewcommand{\@seccntformat}[1]{\csname the#1\endcsname.\hspace{0.6em}}
% \paragraph = vrai titre de niveau 4 (sur sa ligne, gras), pas run-in
\renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
  {1.4ex \@plus 1ex \@minus .2ex}{0.5ex \@plus .2ex}%
  {\normalfont\normalsize\bfseries}}
\makeatother
\usepackage{colortbl}   % \rowcolor / \arrayrulecolor pour tableaux stylés (fiches mémo…)
\usepackage{needspace}  % \needspace{...} : garder un bloc (déf + figure) sur une même page
\usepackage{tcolorbox}
\tcbuselibrary{skins,breakable}
\tcbset{lecbox/.style={
    enhanced, breakable, boxrule=0pt, leftrule=4pt, arc=2pt,
    left=10pt, right=8pt, top=6pt, bottom=6pt,
    fonttitle=\bfseries, coltitle=white,
}}
\newtcolorbox{definition}{lecbox, colback=blue!6, colframe=blue!55!black,
    title={Définition}}
\newtcolorbox{propriete}{lecbox, colback=orange!8, colframe=orange!70!black,
    title={Propriété}}
\newtcolorbox{theoreme}{lecbox, colback=orange!8, colframe=orange!70!black,
    title={Théorème}}
\newtcolorbox{exemple}{lecbox, colback=green!6, colframe=green!55!black,
    title={Exemple}}
\newtcolorbox{remarque}{lecbox, colback=gray!8, colframe=gray!60!black,
    title={Remarque}}
% Application : reformulation « sur la figure », sans titre, en gris.
\newtcolorbox{application}{enhanced, boxrule=0pt, colback=gray!5,
    borderline west={2pt}{0pt}{gray!50}, left=10pt, right=8pt, top=4pt,
    bottom=4pt, arc=1pt, coltext=black!75}
% Compétence : SEULE boîte à argument — \begin{competence}{intitulé}. Elle DOIT
% vivre ici et jamais dans un corps : pandoc ne sait pas lire une définition de
% macro à paramètre (#1) et abandonne tout le fichier. Côté HTML, pandoc rend
% l'argument en <span> de tête, que _competence_titre() transforme en titre.
\newtcolorbox{competence}[1]{colback=green!4, colframe=green!45!black,
    boxrule=0.6pt, arc=2pt, left=5pt, right=5pt, top=3pt, bottom=3pt,
    title={\textbf{Compétence — #1}}, fonttitle=\small,
    coltitle=white, colbacktitle=green!45!black}
% Mémo : fiche récapitulative de fin de leçon (tableau de formules…). MÊME
% contrainte que competence — définie ICI et jamais dans un corps. Un
% \begin{tcolorbox}[title=…] écrit directement dans lecon.body.tex serait
% SILENCIEUSEMENT JETÉ par pandoc (boîte à options qu'il ne sait pas lire) :
% le tableau partait dans le PDF et le Sozi mais disparaissait du HTML.
\newtcolorbox{memo}[1]{enhanced, breakable, colback=white,
    colframe=blue!55!black, fonttitle=\bfseries\large, coltitle=white,
    center title, title={#1}, boxrule=1pt, arc=4pt,
    left=4pt, right=4pt, top=8pt, bottom=8pt}
% Symboles maths courants écrits en UNICODE dans le corps (→ copiables en HTML,
% pandoc les passe tels quels) et rendus en PDF via newunicodechar. Évite le
% mode math $...$ qui casse le copier-coller (MathJax non copiable).
\usepackage{newunicodechar}
\newunicodechar{∈}{\ensuremath{\in}}
\newunicodechar{∉}{\ensuremath{\notin}}
\newunicodechar{⊥}{\ensuremath{\perp}}
\newunicodechar{≈}{\ensuremath{\approx}}
\newunicodechar{×}{\ensuremath{\times}}
\newunicodechar{≠}{\ensuremath{\neq}}
\newunicodechar{≤}{\ensuremath{\leqslant}}
\newunicodechar{≥}{\ensuremath{\geqslant}}
\newunicodechar{°}{\ifmmode{^\circ}\else\textdegree\fi}
\newunicodechar{²}{\ensuremath{^2}}
\newunicodechar{³}{\ensuremath{^3}}
\newunicodechar{÷}{\ensuremath{\div}}
\newunicodechar{−}{\ensuremath{-}}
% numeration : tableau de numération centré. En PDF, simple \begin{center} ;
% en HTML, pandoc émet <div class="numeration"> stylé par css2026/lecon.css
% (couleurs des cellules, perdues sinon car pandoc ignore \cellcolor).
\newenvironment{numeration}{\begin{center}}{\end{center}}
% pose : opération posée (addition/multiplication). En PDF, tabular en
% \ttfamily centré ; en HTML pandoc émet <div class="pose"> (monospace +
% colonnes alignées via css2026/lecon.css). Chiffres copiables.
\newenvironment{pose}{\begin{center}\ttfamily}{\end{center}}
% calcul : un calcul isolé, centré, seul sur sa ligne (jamais coupé en plein
% milieu). En PDF \begin{center}\large ; en HTML pandoc émet <div class="calcul">
% (centré, sans retour ligne interne) via css2026/lecon.css.
\newenvironment{calcul}{\begin{center}\large}{\par\end{center}}
\usepackage{tikz}
\usetikzlibrary{calc,angles,quotes}
% Perspective cavalière : fuyante à 30°, coefficient 0,5.
\tikzset{cav/.style={x={(1cm,0cm)},y={(0.5cm,0.5cm)},z={(0cm,1cm)}}}
\usepackage{tikz}
\usetikzlibrary{calc}
\usepackage{tikz}
\usetikzlibrary{calc}
\tikzset{cav/.style={x={(1cm,0cm)},y={(0.5cm,0.42cm)},z={(0cm,1cm)}}}
\usepackage{tikz}
\usepackage{tikz}
\usetikzlibrary{calc}
\tikzset{cav/.style={x={(1cm,0cm)},y={(0.5cm,0.5cm)},z={(0cm,1cm)}}}
\newcommand{\titre}{Géométrie dans l'espace}
\newcommand{\soustitre}{Cycle 4 — Troisième · Espace et géométrie}

\fancyhead[C]{%
\raisebox{4pt}{%
\begin{minipage}[c]{0.15\textwidth}
    \centering
    \logowouf
\end{minipage}
\begin{minipage}[c]{0.62\textwidth}
    \centering
    {\Large\bfseries \titre\par}
    {\small\color{gray} \soustitre}
\end{minipage}
\begin{minipage}[c]{0.21\textwidth}
    \centering
    \qrcode[height=1.5cm]{https://site2wouf.fr/espace_3eme.php}\\[2pt]
    {\small\ttfamily\bfseries\color{red} LEC3ESP}
\end{minipage}%
}
}

\begin{document}

% Corps maître « Géométrie dans l'espace » (3e). Programme actuel 2020 (DNB).
% Transcription FIDÈLE du HTML : Première partie (I à III), Deuxième partie (I à III).
% Deux parties -> \setcounter{section}{0}. Figures raster. √ \sqrt, √.

% Titre de PARTIE : \section* et NON \begin{center}…\end{center}. C'est la seule
% forme que pandoc place au PREMIER niveau du fragment
% (<section class="level1 unnumbered">), donc le seul endroit d'où le CSS peut
% remettre le compteur I/A/1 à zéro pour la partie suivante — exactement ce que
% fait \setcounter{section}{0} côté PDF. Un \begin{center} atterrissait imbriqué
% dans la dernière sous-section de la partie précédente : la deuxième partie
% était numérotée IV / V / VI en HTML alors que le PDF affichait I / II / III.
% Cf. .lecon-contenu.plan-iabc section.level1.unnumbered dans css2026/lecon.css.
% La ligne \titleformat ci-dessous rend au PDF l'allure d'origine (centré,
% \Large, gras, sans numéro) ; pandoc l'ignore silencieusement.
\titleformat{name=\section,numberless}[display]{\centering\Large\bfseries}{}{0pt}{}
\section*{Première partie}

\section{Perspective}

\subsection{Le point de vue de l'artiste}

\begin{center}
\includegraphics[width=0.7\linewidth]{Piero_della_Francesca_-_Ideal_City.jpg}
\end{center}
\begin{center}\itshape La cité idéale (1475), Piero della Francesca\end{center}

La \textbf{perspective} est l'art de représenter les objets à trois dimensions
sur une surface plane, en tenant compte des effets de l'éloignement et de la
position dans l'espace par rapport à l'observateur. Pour l'artiste, certaines
droites parallèles dans la réalité sont représentées par des droites sécantes.

\subsection{Le point de vue mathématique : la perspective cavalière}

En \textbf{perspective cavalière}, les parallèles de la réalité sont représentées
par des droites parallèles :
\begin{center}
\includegraphics[width=0.4\linewidth]{cube.png}
\end{center}

\begin{remarque}
Par convention, on représente les arêtes invisibles en \textbf{pointillés}. Ainsi
la face au premier plan de ce cube est le carré ABCD.
\end{remarque}

\section{Merci patron : le patron d'un solide}

\subsection{Une représentation plane : le patron}

\begin{application}
Dessiner les 11 patrons d'un cube.
\end{application}

\begin{center}
\includegraphics[width=0.35\linewidth]{patron_cub.png}
\end{center}

\subsection{Définition}

\begin{definition}
Un \textbf{patron} d'un solide est une figure plane composée de polygones
(les faces) disposés de telle manière qu'en les pliant le long de leurs arêtes
communes, on reconstitue le solide en trois dimensions sans que les faces ne se
chevauchent.
\end{definition}

\section{Exemples d'exercices classiques au brevet}

\subsection{Brevet 2004 Aix-Marseille}

\begin{application}
On considère le pavé droit ABCDEFGH ci-dessous (figure non à l'échelle).
Observer la figure, puis recopier et compléter le tableau suivant
(sans justification).
\begin{center}
{\shorthandoff{!:;?}\resizebox{0.4\linewidth}{!}{\begin{tikzpicture}[line cap=round,line join=round,thick,scale=0.9]
  % Pavé droit : face du HAUT = ABCD, face du BAS = EFGH. Sommet caché : F.
  
  \coordinate (A) at (0,3);
  \coordinate (B) at ($(A)+(1.3,0.9)$);
  \coordinate (C) at ($(B)+(5,0)$);
  \coordinate (D) at ($(A)+(5,0)$);
  \coordinate (E) at (0,0);
  \coordinate (F) at ($(E)+(1.3,0.9)$);
  \coordinate (G) at ($(F)+(5,0)$);
  \coordinate (H) at ($(E)+(5,0)$);
  % Arêtes cachées (sommet F) en pointillés.
  \draw[dashed] (B)--(F) (E)--(F) (F)--(G);
  % Arêtes visibles.
  \draw (A)--(B)--(C)--(D)--cycle;      % face du haut
  \draw (E)--(H)--(G);                   % bas visible
  \draw (A)--(E) (C)--(G) (D)--(H);      % arêtes verticales visibles
  % Diagonale AC (triangle ABC).
  \draw (A)--(C);
  % Points et labels.
  \foreach \p in {A,B,C,D,E,G,H} \fill (\p) circle(1.6pt);
  \fill (F) circle(1.6pt);
  \node[left]        at (A) {A};
  \node[above left]  at (B) {B};
  \node[above right] at (C) {C};
  \node[right]       at (D) {D};
  \node[below left]  at (E) {E};
  \node[above right] at (F) {F};
  \node[right]       at (G) {G};
  \node[below right] at (H) {H};
\end{tikzpicture}}}
\end{center}
\begin{center}
\begin{tabular}{|l|p{4cm}|}
\hline
Objet & Nature \\
\hline
Triangle ABC & … \\
\hline
Angle $\widehat{ABF}$ & … \\
\hline
Quadrilatère ABFE & … \\
\hline
Angle $\widehat{ACG}$ & … \\
\hline
Quadrilatère ACGE & … \\
\hline
\end{tabular}
\end{center}
\end{application}

\textbf{Correction.}
\begin{center}
\begin{tabular}{|l|l|}
\hline
Objet & Nature \\
\hline
Triangle ABC & Rectangle \\
\hline
Angle $\widehat{ABF}$ & Droit \\
\hline
Quadrilatère ABFE & Rectangle \\
\hline
Angle $\widehat{ACG}$ & Droit \\
\hline
Quadrilatère ACGE & Rectangle \\
\hline
\end{tabular}
\end{center}

\subsection{Brevet 2005 Aix-Marseille}

\begin{application}
ABCDEFGH est un parallélépipède rectangle. On donne AE = 3 m ; AD = 4 m ;
AB = 6 m.
\begin{center}
{\shorthandoff{!:;?}\resizebox{0.4\linewidth}{!}{\begin{tikzpicture}[line cap=round,line join=round,thick,scale=0.9]
  % Parallélépipède rectangle : face AVANT = ABCD, face ARRIÈRE = EFGH.
  % Sommet caché : H. AB = 6 ; AD = 4 ; AE = 3.
  
  \coordinate (A) at (0,4);
  \coordinate (B) at (6,4);
  \coordinate (C) at (6,0);
  \coordinate (D) at (0,0);
  \coordinate (E) at ($(A)+(1.3,0.9)$);
  \coordinate (F) at ($(B)+(1.3,0.9)$);
  \coordinate (G) at ($(C)+(1.3,0.9)$);
  \coordinate (H) at ($(D)+(1.3,0.9)$);
  % Arêtes cachées (sommet H) en pointillés.
  \draw[dashed] (E)--(H) (H)--(G) (D)--(H);
  % Arêtes visibles.
  \draw (A)--(B)--(C)--(D)--cycle;      % face avant
  \draw (E)--(F)--(G);                   % arrière visible
  \draw (A)--(E) (B)--(F) (C)--(G);      % arêtes de profondeur visibles
  % Points et labels.
  \foreach \p in {A,B,C,D,E,F,G} \fill (\p) circle(1.6pt);
  \fill (H) circle(1.6pt);
  \node[below left]  at (A) {A};
  \node[below right] at (B) {B};
  \node[below right] at (C) {C};
  \node[below left]  at (D) {D};
  \node[above left]  at (E) {E};
  \node[above right] at (F) {F};
  \node[right]       at (G) {G};
  \node[above right] at (H) {H};
  % Dimensions.
  \node[above left]  at ($(A)!0.5!(E)$) {3};
  \node[above]       at ($(A)!0.5!(B)$) {6};
  \node[left]        at ($(A)!0.5!(D)$) {4};
\end{tikzpicture}}}
\end{center}
\textbf{1. a.} Que dire des droites (AE) et (AB) ? \textbf{b.} Les droites (EH) et
(AB) sont-elles sécantes ? \textbf{2. a.} Calculer EG (valeur exacte).
\textbf{b.} Dans EGC rectangle en G, calculer la diagonale [EC].
\textbf{3. a.} Montrer que le volume vaut 72 m³. \textbf{b.} Montrer que l'aire
totale vaut 108 m².
\end{application}

\textbf{Correction.}

\textbf{1. a.} ABCDEFGH est un parallélépipède rectangle, ses arêtes sont
perpendiculaires deux à deux, donc (AE) ⊥ (AB).
\textbf{b.} Les droites (EH) et (AB) ne sont pas coplanaires : elles ne sont donc
pas sécantes.

\textbf{2. a.} Dans EFG rectangle en F, d'après le théorème de Pythagore :
\begin{calcul}$EG^{2} = EF^{2} + FG^{2} = 6^{2} + 4^{2} = 36 + 16 = 52$\end{calcul}
\begin{calcul}$EG = \sqrt{52} = 2\sqrt{13} \text{ m}$\end{calcul}
\textbf{b.} Dans EGC rectangle en G, d'après le théorème de Pythagore :
\begin{calcul}$EC^{2} = EG^{2} + GC^{2} = 52 + 3^{2} = 52 + 9 = 61$\end{calcul}
\begin{calcul}$EC = \sqrt{61} \text{ m}$\end{calcul}

\textbf{3. a.}
\begin{calcul}$V = 3 \times 4 \times 6 = 72 \text{ m}^{3}$\end{calcul}
\textbf{b.}
\begin{calcul}$A = 2 \times (3 \times 4 + 3 \times 6 + 4 \times 6) = 2 \times 54 = 108 \text{ m}^{2}$\end{calcul}

\subsection{Remarque}

\begin{remarque}
Les exercices classiques de l'espace ne sont que des exercices habituels : il
s'agit de trouver le \textbf{plan} dans lequel on travaille !
\end{remarque}

\setcounter{section}{0}
\section*{Deuxième partie}

\section{Les solides « sans pointe »}

\subsection{Les prismes droits}

\subsubsection{Définition}

\begin{definition}
On appelle \textbf{prisme droit} un solide dont la base est un polygone et dont
les faces latérales sont des rectangles.
\end{definition}

\subsubsection{Exemples}

\begin{center}
\includegraphics[width=0.32\linewidth]{prisme.png}\qquad
\includegraphics[width=0.32\linewidth]{pave_droit.png}
\end{center}
Le prisme droit à base triangulaire a 6 sommets, 9 arêtes et 5 faces. Le prisme
droit à base rectangulaire (pavé droit) a 8 sommets, 12 arêtes et 6 faces.

\subsubsection{Section par un plan parallèle à la base}

\begin{definition}
Quand on coupe un prisme droit par un plan parallèle à la base, la section
trouvée est identique à la base.
\end{definition}
\begin{center}
{\shorthandoff{!:;?}\resizebox{0.4\linewidth}{!}{\begin{tikzpicture}[cav,line cap=round,line join=round,thick]
  % Prisme droit à base triangulaire, debout.
  \def\H{4}\def\hc{2}
  \coordinate (P0) at (0,0,0);
  \coordinate (Q0) at (3.4,0,0);
  \coordinate (R0) at (1.4,3,0);
  \coordinate (P1) at (0,0,\H);
  \coordinate (Q1) at (3.4,0,\H);
  \coordinate (R1) at (1.4,3,\H);
  \coordinate (Ps) at (0,0,\hc);
  \coordinate (Qs) at (3.4,0,\hc);
  \coordinate (Rs) at (1.4,3,\hc);
  % 1) Plan de coupe (parallèle à la base).
  \fill[teal!12] (-1.3,-1.2,\hc) -- (4.7,-1.2,\hc) -- (4.7,4.2,\hc) -- (-1.3,4.2,\hc) -- cycle;
  % 2) Remplissage de la section (fond).
  \fill[blue!18] (Ps)--(Qs)--(Rs)--cycle;
  % 3) Arêtes du solide PAR-DESSUS.
  \draw[dashed] (R0)--(R1) (R0)--(P0) (R0)--(Q0);
  \draw (P1)--(Q1)--(R1)--cycle;
  \draw (P0)--(Q0);
  \draw (P0)--(P1) (Q0)--(Q1);
  % 4) Contour coloré de la section.
  \draw[blue,very thick] (Ps)--(Qs)--(Rs)--cycle;
\end{tikzpicture}}}
\end{center}

\subsubsection{Patrons}

\begin{center}
\includegraphics[width=0.5\linewidth]{patron_prisme_droit.png}
\end{center}

\subsubsection{Volume}

\begin{propriete}
\[ V = B \times h \]
où $B$ désigne l'aire de la base et $h$ la hauteur du prisme.
\end{propriete}

\subsection{Cylindre de révolution}

\begin{center}
\includegraphics[width=0.32\linewidth]{cylindre2.png}\qquad
\includegraphics[width=0.32\linewidth]{patron_cylindre.png}
\end{center}

\begin{definition}
Quand on coupe un cylindre de révolution par un plan parallèle à la base, la
section est un cercle de même rayon que la base.
\end{definition}
\begin{center}
{\shorthandoff{!:;?}\resizebox{0.35\linewidth}{!}{\begin{tikzpicture}[line cap=round,line join=round,thick]
  \def\rx{2}\def\ry{0.55}\def\h{4.4}\def\hc{2.2}
  % 1) Plan de coupe (parallèle à la base).
  \fill[teal!13] (-3.1,\hc-0.5) -- (2.9,\hc-0.5) -- (3.6,\hc+0.5) -- (-2.4,\hc+0.5) -- cycle;
  % 2) Remplissage de la section (fond, sans contour).
  \fill[blue!18] (0,\hc) ellipse[x radius=\rx,y radius=\ry];
  % 3) Arêtes du solide PAR-DESSUS (jamais cachées par la section).
  \draw (-\rx,0) -- (-\rx,\h);
  \draw (\rx,0) -- (\rx,\h);
  \draw[dashed] (-\rx,0) arc[start angle=180,end angle=0,x radius=\rx,y radius=\ry];
  \draw (-\rx,0) arc[start angle=180,end angle=360,x radius=\rx,y radius=\ry];
  \draw (0,\h) ellipse[x radius=\rx,y radius=\ry];
  % 4) Contour coloré de la section (par-dessus) : avant plein, arrière pointillé.
  \draw[blue,dashed] (-\rx,\hc) arc[start angle=180,end angle=0,x radius=\rx,y radius=\ry];
  \draw[blue,very thick] (-\rx,\hc) arc[start angle=180,end angle=360,x radius=\rx,y radius=\ry];
\end{tikzpicture}}}
\end{center}

\begin{definition}
Quand on coupe un cylindre de révolution par un plan perpendiculaire à la base,
la section est un rectangle dont un côté est égal à la hauteur du cylindre.
\end{definition}
\begin{center}
{\shorthandoff{!:;?}\resizebox{0.35\linewidth}{!}{\begin{tikzpicture}[line cap=round,line join=round,thick]
  \def\rx{2}\def\ry{0.55}\def\h{4.4}
  \def\d{0.4}                  % décalage en profondeur du plan de coupe
  \pgfmathsetmacro\X{\rx*sqrt(1-(\d/\ry)^2)}   % demi-corde
  % 1) Plan de coupe vertical (perpendiculaire à la base).
  \fill[teal!12] (-2.9,{-0.6+\d}) -- (2.9,{-0.6+\d}) -- (2.9,{\h+0.6+\d}) -- (-2.9,{\h+0.6+\d}) -- cycle;
  % 2) Remplissage de la section (fond).
  \fill[red!15] (-\X,\d) -- (\X,\d) -- (\X,{\h+\d}) -- (-\X,{\h+\d}) -- cycle;
  % 3) Arêtes du solide PAR-DESSUS.
  \draw (-\rx,0) -- (-\rx,\h);
  \draw (\rx,0) -- (\rx,\h);
  \draw[dashed] (-\rx,0) arc[start angle=180,end angle=0,x radius=\rx,y radius=\ry];
  \draw (-\rx,0) arc[start angle=180,end angle=360,x radius=\rx,y radius=\ry];
  \draw (0,\h) ellipse[x radius=\rx,y radius=\ry];
  % 4) Contour coloré du rectangle (section).
  \draw[red] (-\X,\d) -- (\X,\d) -- (\X,{\h+\d}) -- (-\X,{\h+\d}) -- cycle;
\end{tikzpicture}}}
\end{center}

\begin{propriete}
\[ V = B \times h = \pi r^{2} h \]
\end{propriete}

\section{Les solides pointus}

\subsection{Pyramides}

\begin{definition}
Les \textbf{pyramides} ont pour base des polygones, et leurs faces latérales sont
des triangles.
\end{definition}
\begin{center}
{\shorthandoff{!:;?}\resizebox{0.35\linewidth}{!}{\begin{tikzpicture}[cav,line cap=round,line join=round,thick]
  % Base carrée ABCD (sens direct), centre O, sommet S au-dessus de O.
  \coordinate (A) at (0,0,0);
  \coordinate (B) at (4,0,0);
  \coordinate (C) at (4,4,0);
  \coordinate (D) at (0,4,0);
  \coordinate (O) at (2,2,0);
  \coordinate (S) at (2,2,4.4);
  % Arêtes cachées (issues de D, sommet arrière) + hauteur : en pointillés.
  \draw[dashed] (A)--(D)--(C);
  \draw[dashed] (D)--(S);
  \draw[dashed] (O)--(S);
  % Arêtes visibles.
  \draw (A)--(B)--(C);
  \draw (S)--(A) (S)--(B) (S)--(C);
  % Angle droit (hauteur / base) au point O, dans le plan (O,B,S).
  \draw ($(O)+(0,0,0.42)$) -- ($(O)+(0.42,0,0.42)$) -- ($(O)+(0.42,0,0)$);
  % Points.
  \foreach \p in {A,B,C,D,S,O} \fill (\p) circle(1.6pt);
  % Étiquettes.
  \node[below left]  at (A) {A};
  \node[below right] at (B) {B};
  \node[right]       at (C) {C};
  \node[above left]  at (D) {D};
  \node[above]       at (S) {S};
  \node[below right] at (O) {O};
  \node at ($(O)!0.5!(S) + (0.28,0,0)$) {$h$};
\end{tikzpicture}}}
\end{center}

\begin{remarque}
Quand on coupe une pyramide par un plan parallèle à la base, la section est de
même nature que la base.
\end{remarque}
\begin{center}
{\shorthandoff{!:;?}\resizebox{0.4\linewidth}{!}{\begin{tikzpicture}[cav,line cap=round,line join=round,thick]
  % Pyramide à base carrée ABCD, sommet S. Plan // base à hauteur zc.
  \def\hz{4.4}\def\zc{2.2}
  \coordinate (A) at (0,0,0);
  \coordinate (B) at (4,0,0);
  \coordinate (C) at (4,4,0);
  \coordinate (D) at (0,4,0);
  \coordinate (S) at (2,2,\hz);
  \pgfmathsetmacro\t{(\hz-\zc)/\hz}
  \coordinate (As) at ($(S)!\t!(A)$);
  \coordinate (Bs) at ($(S)!\t!(B)$);
  \coordinate (Cs) at ($(S)!\t!(C)$);
  \coordinate (Ds) at ($(S)!\t!(D)$);
  % 1) Plan de coupe (parallèle à la base).
  \fill[teal!12] (-1.4,-1.4,\zc) -- (5.4,-1.4,\zc) -- (5.4,5.4,\zc) -- (-1.4,5.4,\zc) -- cycle;
  % 2) Remplissage de la section (fond).
  \fill[blue!20] (As)--(Bs)--(Cs)--(Ds)--cycle;
  % 3) Arêtes du solide PAR-DESSUS.
  \draw[dashed] (A)--(D)--(C) (D)--(S);
  \draw (A)--(B)--(C);
  \draw (S)--(A) (S)--(B) (S)--(C);
  \fill (S) circle(1.4pt);
  % 4) Contour coloré de la section.
  \draw[blue,very thick] (As)--(Bs)--(Cs)--(Ds)--cycle;
\end{tikzpicture}}}
\end{center}

Les \textbf{pyramides régulières} ont pour base des polygones réguliers
(triangle équilatéral, carré…) et leurs faces latérales sont des triangles
isocèles.

\begin{propriete}
\[ V = \dfrac{1}{3} \times B \times h \]
\end{propriete}

\subsection{Cône de révolution}

\begin{center}
\includegraphics[width=0.32\linewidth]{cone.png}\qquad
{\shorthandoff{!:;?}\resizebox{0.32\linewidth}{!}{\begin{tikzpicture}[line cap=round,line join=round,thick]
  \def\rx{2}\def\ry{0.55}\def\h{4.6}\def\hc{2.5}
  \pgfmathsetmacro\rc{\rx*(\h-\hc)/\h}     % rayon de la section (Thalès)
  \pgfmathsetmacro\ryc{\ry*(\h-\hc)/\h}
  \coordinate (S) at (0,\h);
  % 1) Plan de coupe (parallèle à la base).
  \fill[teal!13] (-3.1,\hc-0.45) -- (2.9,\hc-0.45) -- (3.6,\hc+0.45) -- (-2.4,\hc+0.45) -- cycle;
  % 2) Remplissage de la section (fond).
  \fill[blue!18] (0,\hc) ellipse[x radius=\rc,y radius=\ryc];
  % 3) Arêtes du solide PAR-DESSUS.
  \draw[dashed] (-\rx,0) arc[start angle=180,end angle=0,x radius=\rx,y radius=\ry];
  \draw (-\rx,0) arc[start angle=180,end angle=360,x radius=\rx,y radius=\ry];
  \draw (-\rx,0) -- (S) -- (\rx,0);
  \fill (S) circle(1.4pt);
  % 4) Contour coloré de la section : avant plein, arrière pointillé.
  \draw[blue,dashed] (-\rc,\hc) arc[start angle=180,end angle=0,x radius=\rc,y radius=\ryc];
  \draw[blue,very thick] (-\rc,\hc) arc[start angle=180,end angle=360,x radius=\rc,y radius=\ryc];
\end{tikzpicture}}}
\end{center}

\begin{remarque}
Quand on coupe un cône par un plan parallèle à la base, la section est un cercle
de rayon inférieur à celui de la base.
\end{remarque}

\begin{application}
Tracer le patron d'un cône de révolution dont la base est un cercle de 3 cm de
rayon et de hauteur 4 cm. (Indice : la longueur de l'arc est égale à la
circonférence du cercle de base.)
\end{application}

\textbf{Correction.}
\begin{center}
\includegraphics[width=0.3\linewidth]{calcul_cone.png}\qquad
\includegraphics[width=0.4\linewidth]{Cone_patron.png}
\end{center}

On calcule d'abord $R$, le rayon de l'arc, avec le théorème de Pythagore :
\begin{calcul}$R^{2} = r^{2} + h^{2} = 3^{2} + 4^{2} = 9 + 16 = 25$\end{calcul}
\begin{calcul}$R = \sqrt{25} = 5 \text{ cm}$\end{calcul}

Puis l'angle $\widehat{AOB}$, par proportionnalité (longueur / angle) :

\begin{center}
\begin{tabular}{|c|c|}
\hline
Longueur & Angle \\
\hline
$2\pi R = 10\pi$ & 360° \\
\hline
$2\pi r = 6\pi$ & $\widehat{AOB}$ \\
\hline
\end{tabular}
\end{center}

\begin{calcul}$\widehat{AOB} = \dfrac{360 \times 6\pi}{10\pi} = 216°$\end{calcul}

\begin{propriete}
Volume du cône de rayon $r$ et de hauteur $h$ :
\[ V = \dfrac{1}{3} \times B \times h = \dfrac{1}{3} \times \pi \times r^{2} \times h \]
\end{propriete}

\section{La sphère, la boule}

\subsection{Définitions}

\begin{definition}
Dans un plan, le \textbf{cercle} de centre O et de rayon $r$ est constitué de tous
les points à exactement $r$ de O ; le \textbf{disque} de tous les points dont la
distance à O est inférieure ou égale à $r$.
\end{definition}

\begin{definition}
La \textbf{sphère} de centre O et de rayon $r$ est constituée de tous les points
de l'espace à exactement $r$ de O ; la \textbf{boule}, de tous les points de
l'espace dont la distance à O est inférieure ou égale à $r$.
\end{definition}

\begin{center}
{\shorthandoff{!:;?}\resizebox{0.35\linewidth}{!}{\begin{tikzpicture}[line cap=round,line join=round,thick]
  \def\R{2.6}
  % Contour de la sphère.
  \draw (0,0) circle(\R);
  % Grand cercle (équateur) en perspective : moitié avant pleine, arrière pointillée.
  \draw            (\R,0) arc[start angle=0,end angle=-180,x radius=\R,y radius=0.7];
  \draw[dashed]    (\R,0) arc[start angle=0,end angle=180,x radius=\R,y radius=0.7];
  % Centre O.
  \fill (0,0) circle(1.8pt);
  \node[above left=-1pt] at (0,0) {O};
  % Diamètre [MN] : M et N sont diamétralement opposés.
  \coordinate (M) at (35:\R);
  \coordinate (N) at (215:\R);
  \draw[thick,dashed] (N)--(M);
  \fill (M) circle(1.8pt);
  \fill (N) circle(1.8pt);
  \node[above right=-1pt] at (M) {M};
  \node[below left=-1pt] at (N) {N};
  \node at ($(0,0)!0.55!(M) + (0.1,0.28)$) {$R$};
\end{tikzpicture}}}
\end{center}

\begin{remarque}
M et N sont diamétralement opposés. On ne peut pas construire le patron d'une
sphère. La section d'une sphère par un plan est un cercle : de rayon $R$ si le
plan passe par O, de rayon inférieur sinon.
\end{remarque}

\subsection{Aire et volume}

\begin{theoreme}
Aire de la sphère : \[ A = 4\pi R^{2} \]
Volume de la boule : \[ V = \dfrac{4}{3}\pi R^{3} \]
\end{theoreme}

\end{document}
