\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}
% 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}
\tikzset{cav/.style={x={(1cm,0cm)},y={(0.46cm,0.32cm)},z={(0cm,1cm)}}}
\usepackage{tikz}
\usepackage{tikz}\usepackage{amsmath}
\usetikzlibrary{calc}
\usepackage{tikz}\usepackage{amsmath}
\newcommand{\titre}{Les solides}
\newcommand{\soustitre}{Cycle 3 — Sixième · Géométrie dans l'espace}

\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/solides.php}\\[2pt]
    {\small\ttfamily\bfseries\color{red} LEC6SOL}
\end{minipage}%
}
}

\begin{document}

% Corps maître « Les solides » (6e). Contenu FIDÈLE au HTML (déf + patron +
% perspective par solide). Solides et patrons en TikZ ; arêtes cachées en
% pointillés. Photos d'objets réels (HTML) décoratives → hors PDF.

\section{Introduction aux solides}

\begin{definition}
Un \textbf{solide} est un objet en trois dimensions. Il est constitué de
\textbf{faces}, d'\textbf{arêtes} (les segments où deux faces se rejoignent) et
de \textbf{sommets} (les points où les arêtes se rejoignent).
\end{definition}

\begin{application}
Un \textbf{patron} est une figure plane qui, une fois pliée, forme le solide :
il réunit toutes les faces disposées à plat.
\end{application}

\begin{remarque}
La \textbf{perspective cavalière} représente un solide en trois dimensions sur
une feuille : les droites parallèles dans la réalité restent parallèles sur le
dessin, et \textbf{les arêtes cachées sont tracées en pointillés}.
\end{remarque}

\needspace{4.5cm}
\section{Le pavé droit}

\begin{definition}
Un \textbf{pavé droit} (ou parallélépipède rectangle) est un solide à six faces
rectangulaires ; ses arêtes sont perpendiculaires à ses bases.
\end{definition}

\subsection{Patron}

Le patron d'un pavé droit est constitué de \textbf{six rectangles}, disposés de
manière à pouvoir être pliés pour former le solide.

\begin{center}
  {\shorthandoff{!:;?}\resizebox{0.5\linewidth}{!}{\begin{tikzpicture}[line cap=round,line join=round,thick,font=\small]
  \def\L{3}\def\l{1.8}\def\h{1.4}
  % bande latérale : L, l, L, l (hauteur h) à partir de x=0, y=0
  \draw (0,0) rectangle (\L,\h);
  \draw (\L,0) rectangle (\L+\l,\h);
  \draw (\L+\l,0) rectangle (2*\L+\l,\h);
  \draw (2*\L+\l,0) rectangle (2*\L+2*\l,\h);
  % dessus / dessous (L x l) collés à la 1re face
  \draw (0,\h) rectangle (\L,\h+\l);
  \draw (0,-\l) rectangle (\L,0);
\end{tikzpicture}}}
\end{center}

\begin{exemple}
\textbf{À toi de jouer :} dessine, dans ton cahier, le patron d'un pavé droit de
dimensions 3 cm, 4 cm et 5 cm.
\end{exemple}

\subsection{Perspective cavalière}

\begin{center}
  {\shorthandoff{!:;?}\resizebox{0.42\linewidth}{!}{\begin{tikzpicture}[cav,line cap=round,line join=round,thick]
  \def\a{4}\def\b{2.6}\def\c{2.6}
  \coordinate (A) at (0,0,0);\coordinate (B) at (\a,0,0);\coordinate (F) at (\a,0,\c);\coordinate (E) at (0,0,\c);
  \coordinate (D) at (0,\b,0);\coordinate (C) at (\a,\b,0);\coordinate (G) at (\a,\b,\c);\coordinate (H) at (0,\b,\c);
  \draw[dashed] (D)--(A) (D)--(C) (D)--(H);
  \draw (A)--(B)--(F)--(E)--cycle;
  \draw (F)--(G)--(H)--(E);
  \draw (B)--(C)--(G);
\end{tikzpicture}}}
\end{center}

\needspace{4.5cm}
\section{Le prisme droit}

\begin{definition}
Un \textbf{prisme droit} est un solide dont les deux bases sont des polygones
parallèles et superposables, et dont les faces latérales sont des rectangles.
\end{definition}

\subsection{Patron}

Le patron d'un prisme droit comprend \textbf{deux polygones} (les bases) et des
\textbf{rectangles} (les faces latérales).

\begin{center}
  {\shorthandoff{!:;?}\resizebox{0.34\linewidth}{!}{\begin{tikzpicture}[line cap=round,line join=round,thick,font=\small]
  \def\h{2.4}\def\a{1.6}
  \draw (0,0) rectangle (\a,\h);
  \draw (\a,0) rectangle (2*\a,\h);
  \draw (2*\a,0) rectangle (3*\a,\h);
  % triangles (bases) au-dessus de la 2e face et en dessous
  \draw (\a,\h)--(2*\a,\h)--(1.5*\a,\h+1.3)--cycle;
  \draw (\a,0)--(2*\a,0)--(1.5*\a,-1.3)--cycle;
\end{tikzpicture}}}
\end{center}

\subsection{Perspective cavalière}

\begin{center}
  {\shorthandoff{!:;?}\resizebox{0.4\linewidth}{!}{\begin{tikzpicture}[cav,line cap=round,line join=round,thick]
  \def\h{3.2}
  \coordinate (A) at (0,0,0);\coordinate (B) at (3,0,0);\coordinate (C) at (1.1,0,2.2);
  \coordinate (D) at (0,\h,0);\coordinate (E) at (3,\h,0);\coordinate (F) at (1.1,\h,2.2);
  \draw[dashed] (D)--(A) (D)--(E) (D)--(F);
  \draw (A)--(B)--(C)--cycle;
  \draw (E)--(F); \draw (B)--(E); \draw (C)--(F);
  \draw (E)--(F);
\end{tikzpicture}}}
\end{center}

\needspace{4.5cm}
\section{Le cylindre}

\begin{definition}
Un \textbf{cylindre} a deux bases circulaires parallèles reliées par une surface
courbe. La distance entre les centres des deux bases est sa \textbf{hauteur}.
\end{definition}

\subsection{Patron}

Le patron d'un cylindre comprend \textbf{deux cercles} (les bases) et un
\textbf{rectangle} (la surface latérale), dont la longueur est le périmètre du
cercle.

\begin{center}
  {\shorthandoff{!:;?}\resizebox{0.5\linewidth}{!}{\begin{tikzpicture}[line cap=round,line join=round,thick,font=\small]
  \def\w{4.4}\def\h{2.4}\def\r{0.7}
  % surface latérale
  \draw (0,0) rectangle (\w,\h);
  % bases : cercles TANGENTS à l'extérieur (haut et bas), au milieu
  \draw (\w/2,\h+\r) circle(\r);
  \draw (\w/2,-\r) circle(\r);
  % cote : longueur du rectangle = 2 pi r
  \draw[thin] (0,0)--(0,-2.15);
  \draw[thin] (\w,0)--(\w,-2.15);
  \draw[<->] (0,-2.0)--(\w,-2.0);
  \node[fill=white,inner sep=1pt] at (\w/2,-2.0){$2\times\pi\times r$};
\end{tikzpicture}}}
\end{center}

\subsection{Perspective cavalière}

\begin{center}
  {\shorthandoff{!:;?}\resizebox{0.28\linewidth}{!}{\begin{tikzpicture}[line cap=round,line join=round,thick]
  \def\r{1.5}\def\ry{0.5}\def\h{3.4}
  \draw (0,\h) ellipse[x radius=\r,y radius=\ry];
  \draw (\r,0) arc[start angle=0,end angle=-180,x radius=\r,y radius=\ry];
  \draw[dashed] (\r,0) arc[start angle=0,end angle=180,x radius=\r,y radius=\ry];
  \draw (\r,0)--(\r,\h); \draw (-\r,0)--(-\r,\h);
\end{tikzpicture}}}
\end{center}

\needspace{4.5cm}
\section{La pyramide}

\begin{definition}
Une \textbf{pyramide} a une base polygonale et des faces triangulaires qui se
rejoignent en un même point, le \textbf{sommet}.
\end{definition}

\subsection{Patron}

Le patron d'une pyramide comprend un \textbf{polygone} (la base) et des
\textbf{triangles} (les faces latérales).

\begin{center}
  {\shorthandoff{!:;?}\resizebox{0.34\linewidth}{!}{\begin{tikzpicture}[line cap=round,line join=round,thick,font=\small]
  \def\c{1.8}\def\ht{1.5}
  \draw (0,0) rectangle (\c,\c);
  \draw (0,\c)--(\c,\c)--(\c/2,\c+\ht)--cycle;
  \draw (0,0)--(\c,0)--(\c/2,-\ht)--cycle;
  \draw (0,0)--(0,\c)--(-\ht,\c/2)--cycle;
  \draw (\c,0)--(\c,\c)--(\c+\ht,\c/2)--cycle;
\end{tikzpicture}}}
\end{center}

\subsection{Perspective cavalière}

\begin{center}
  {\shorthandoff{!:;?}\resizebox{0.34\linewidth}{!}{\begin{tikzpicture}[cav,line cap=round,line join=round,thick]
  \coordinate (A) at (0,0,0);\coordinate (B) at (3,0,0);\coordinate (C) at (3,3,0);\coordinate (D) at (0,3,0);
  \coordinate (S) at (1.5,1.5,3.4);
  \draw[dashed] (D)--(A) (D)--(C) (D)--(S);
  \draw (A)--(B)--(C);
  \draw (A)--(S)--(B); \draw (C)--(S);
  \fill (S) circle(1.3pt);
\end{tikzpicture}}}
\end{center}

\needspace{4.5cm}
\section{Le cône de révolution}

\begin{definition}
Un \textbf{cône de révolution} a une base circulaire et une surface courbe qui
se termine en un sommet unique.
\end{definition}

\subsection{Patron}

Le patron d'un cône est composé d'un \textbf{disque} (la base) et d'un
\textbf{secteur circulaire} (la surface latérale).

\begin{center}
  {\shorthandoff{!:;?}\resizebox{0.4\linewidth}{!}{\begin{tikzpicture}[line cap=round,line join=round,thick,font=\small]
  \def\R{2.7}\def\rb{0.62}
  % surface latérale = secteur (apex en bas, arc en haut)
  \fill[blue!7] (0,0) -- (35:\R) arc(35:145:\R) -- cycle;
  \draw (0,0) -- (35:\R) arc(35:145:\R) -- cycle;
  % base = disque TANGENT à l'arc, en son milieu (90° → point (0,\R))
  \draw (0,\R+\rb) circle(\rb);
  \node[right=1pt] at (\rb,\R+\rb){base};
  \node[below=1pt] at (0,0){sommet};
\end{tikzpicture}}}
\end{center}

\subsection{Perspective cavalière}

\begin{center}
  {\shorthandoff{!:;?}\resizebox{0.3\linewidth}{!}{\begin{tikzpicture}[line cap=round,line join=round,thick]
  \def\r{1.7}\def\ry{0.5}\def\h{3.6}
  \coordinate (S) at (0,\h);
  \draw (\r,0) arc[start angle=0,end angle=-180,x radius=\r,y radius=\ry];
  \draw[dashed] (\r,0) arc[start angle=0,end angle=180,x radius=\r,y radius=\ry];
  \draw (\r,0)--(S)--(-\r,0);
  \fill (S) circle(1.3pt);
\end{tikzpicture}}}
\end{center}

\needspace{4.5cm}
\section{La sphère et la boule}

\begin{definition}
La \textbf{sphère} est la surface formée par les points situés à une distance
fixe (le rayon) d'un point appelé \textbf{centre}. La \textbf{boule} est
l'espace contenu à l'intérieur de cette surface.
\end{definition}

\begin{remarque}
En perspective cavalière, une sphère comme une boule se représentent par un
cercle (on ajoute souvent l'équateur en pointillés). La sphère n'a pas de
patron : on ne peut pas la mettre à plat sans la déformer.
\end{remarque}

\begin{center}
  {\shorthandoff{!:;?}\resizebox{0.28\linewidth}{!}{\begin{tikzpicture}[line cap=round,line join=round,thick]
  \def\R{2}
  \draw (0,0) circle(\R);
  \draw (\R,0) arc[start angle=0,end angle=-180,x radius=\R,y radius=0.5];
  \draw[dashed] (\R,0) arc[start angle=0,end angle=180,x radius=\R,y radius=0.5];
  \fill (0,0) circle(1.3pt); \node[below left=0pt] at (0,0){O};
\end{tikzpicture}}}
\end{center}

\end{document}
