Dans le préambule on met :

\usepackage{tikz}
\tikzset{math3d/.style={x={(-0.353cm,-0.353cm)},z={(0cm,1cm)},y={(1cm,0cm)}}}

Un cube

Pour obtenir :

On tape :

\begin{tikzpicture}[math3d,scale=4]
\draw [dashed] (0,0,0) edge (1,0,0) edge (0,1,0) edge (0,0,1);
\draw (1,0,0) -- (1,1,0);
\draw (1,1,0) -- (0,1,0) ;
\draw (0,0,1) -- (1,0,1) -- (1,1,1) -- (0,1,1) -- cycle;
\draw (1,0,0) -- (1,0,1);
\draw (1,1,0) -- (1,1,1);
\draw (0,1,0) -- (0,1,1);
\draw (1,-0.1,0) node {$A$};
\draw (1,1.1,0) node {$B$};
\draw (0,1.1,0) node {$C$};
\draw (0,0.1,0.1) node {$D$};
\draw (1,-0.1,1) node {$E$};
\draw (1,1,1.1) node {$F$};
\draw (0,1.1,1) node {$G$};
\draw (0,0,1.1) node {$H$};
\draw (0,0.75,1) node{$\bullet$} +(0,0,+0.1) node{$N$};
\draw (0,1,0.25) node{$\bullet$} +(0,+0.1,0) node{$O$};
\draw (0.33,0,1) node{$\bullet$} +(0,-0.1,0) node{$M$};
\end{tikzpicture}\\

Une pyramide

Pour obtenir :

On tape :

\begin{tikzpicture}[math3d,scale=4]
\draw [dashed] (0,0,0) -- (0,1,0);
\draw (O,1,0) -- (0,1.8,0);
\draw (O,0,0) -- (1.8,1.8,0);
\draw (1,1,0) -- (0,1,0);
\draw (1.6,1.5,0) -- (-0.1,1.5,0);
\draw (0.3,0.5,1) edge (0,1,0) edge (0,0,0) edge (1,1,0);
\draw (0.3,0.5,1.1) node {$S$};
\draw (0,-0.1,0) node {$A$};
\draw (0,1,0.1) node {$C$};
\draw (1,1,-0.1) node {$B$};
\draw (0,1.5,0) node{$\bullet$} +(0,0,+0.1) node{$E$};
\draw (1.5,1.5,0) node{$\bullet$} +(0,0,-0.1) node{$R$};
\draw ({0.3*0.66},{0.5*0.66},{1*0.66}) node{$\bullet$} +(0,0,-0.1) node{$F$};
\end{tikzpicture}\\

Une première figure

Pour obtenir :

On tape :

\begin{tikzpicture}[math3d, scale=3.5]
\coordinate (B) at (1,0,0);
\draw (B) node[below]{$ B $};
\coordinate (C) at (1,1,0);
\draw (C) node[below]{$ C $};
\coordinate (D) at (0,1,0);
\draw (D) node[below]{$ D $};
\coordinate (A) at (0,0,0);
\draw (A) node[below]{$ A $};
\coordinate (F) at (1,0,1);
\draw (F) node[above]{$ F $};
\coordinate (G) at (1,1,1);
\draw (G) node[above]{$ G $};
\coordinate (H) at (0,1,1);
\draw (H) node[above]{$ H $};
\coordinate (E) at (0,0,1);
\draw (E) node[above]{$ E $};
\draw (B) -- (C) -- (G) -- (F) -- cycle;
\draw (C) -- (D) -- (H) -- (E) -- (F);
\draw (G) -- (H);
\draw [dashed](B) -- (A) -- (E);
\draw [dashed](A) -- (D);
\coordinate (I) at (1,0.25,0);
\draw (I) node[above]{$ I $};
\coordinate (J) at (0,0.75,1);
\draw (J) node[above]{$ J $};
\coordinate (K) at (0.4,0,1);
\draw (K) node[above]{$ K $};
\coordinate (M) at (1,0,0.25);
\draw (M) node[aleft]{$ M $};
\coordinate (N) at (0,1,0.75);
\draw (N) node[right]{$ N $};
\coordinate (L) at (0.6,1,0);
\draw (L) node[above]{$ L $};
\draw [color=blue] (J) -- (K);
\draw [color=blue] (M) -- (I);
\draw [color=blue] (N) -- (L);
\draw [dashed,color=blue] (I) -- (L);
\draw [dashed,color=blue] (J) -- (N);
\draw [dashed,color=blue] (K) -- (M);
\end{tikzpicture}

Une deuxième figure

Pour obtenir :

On tape :

\begin{tikzpicture}[x={(-3:73mm)},y={(26:32mm)},z={(90:74mm)}]
\coordinate (A) at (0,0,0);
\coordinate (B) at (1,0,0);
\coordinate (C) at (1,1,0);
\coordinate (D) at (0,1,0);
\coordinate (E) at (0,0,1);
\coordinate (F) at (1,0,1);
\coordinate (G) at (1,1,1);
\coordinate (H) at (0,1,1);
\coordinate (I) at (0.5,0.5,0);
\coordinate (J) at (1,0.5,0.5);
\coordinate (K) at (0.5,1,0.5);
\coordinate (L) at (0,0.5,0.5);
\coordinate (M) at (0.5,0,0.5);
\coordinate (N) at (0.5,0.5,1);
\draw (A) node [left]{A} -- (B) node [below right]{B} --
(C) node [right]{C} -- (D) node [above left]{D}--cycle
(E) node [left]{E} -- (F) node [below right]{F} --
(G) node [right]{G} -- (H) node [above left]{H}--cycle
(A)--(E) (B)--(F) (C)--(G) (D)--(H);
\draw[line width=1pt] (I) node [below right] {I} --(J) node [right] {J}--(N) node [above] {N}--(L) node [left] {L}--cycle
(L)--(M) node [below left] {M}--(J) (N)--(M)--(I);
\draw[line width=1pt, dashed] (J)--(K) node [above right] {K} --(L) (N)--(K)--(I);
\end{tikzpicture}