Ciao,
hai chiesto una cosa che è tutto tranne che banale. Hai due strade:
La prima è aiutarti con il pacchetto tkz-3dplot. In questo caso il codice che propongo è il seguente
`
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{calc,intersections}
\usepackage{tikz-3dplot}
\begin{document}
\centering
\def\radius{5}
\def\h{3}
\pgfmathsetmacro{\AC}{sqrt(\radius^2-\h^2)}
\pgfmathsetmacro{\angleChord}{acos(\h/\radius)}
\begin{tikzpicture}
% circle
\coordinate (O) at (0,0);
\draw[thick,name path=circle] (O) circle[radius=\radius];
% Chord
\path[name path=rough_chord] ($(O)+(\radius,-\h)$)–($(O)-(\radius,\h)$);
\path[name intersections={of=circle and rough_chord}];
\coordinate (A) at (intersection-1);
\coordinate (B) at (intersection-2);
\draw (A)node
{$A$}–(B)node
{$B$};
% High
\coordinate (C) at ($(A)!(O)!(B)$);
\draw[dashed](O)–(C)node[midway,right]{$h$};
% draw center
\fill (O)circle(.5mm)node[above]{$O$};
% draw angle
\draw[dashed](A)–(O)–(B);
\draw[<->]($(O)-(0,\h/2)$)arc[radius = \h/2,
start angle = 270,
delta angle = -\angleChord];
\node[below] (theta) at ($(O)+({-90-\angleChord/2}:\h/2)$){$\theta$};
\end{tikzpicture}
\vskip 2cm
\tdplotsetmaincoords{70}{30}
\begin{tikzpicture}[tdplot_main_coords]
\def\MetaLunghezza{3}
% ARCS
%->1
\tdplotsetrotatedcoords{0}{90}{-90}
\coordinate (Shift) at (\MetaLunghezza,0,0);
\tdplotsetrotatedcoordsorigin{(Shift)}
\tdplotdrawarc[tdplot_rotated_coords,]{(0,0,0)}{\radius}{90-\angleChord}{90+\angleChord}{}{}
%->2
\def\ang{65}
\coordinate (Shift) at (-\MetaLunghezza,0,0);
\tdplotsetrotatedcoordsorigin{(Shift)}
\tdplotdrawarc[tdplot_rotated_coords,]{(0,0,0)}{\radius}{90-\angleChord}{\ang}{}{}
% plane cut
\draw[dashed] (-\MetaLunghezza,0,0)–(\MetaLunghezza,0,0);
\draw[fill=white](-\MetaLunghezza,-\AC,-\h)–
(-\MetaLunghezza,\AC,-\h)–
(\MetaLunghezza,\AC,-\h)–
(\MetaLunghezza,-\AC,-\h)–
cycle;
% connecting line
\pgfmathsetmacro{\pointX}{-\MetaLunghezza}
\pgfmathsetmacro{\pointY}{-\radius*cos(\ang)}
\pgfmathsetmacro{\pointZ}{-\radius*sin(\ang)}
\coordinate (point) at (\pointX,\pointY,\pointZ);
\draw(point)–++(2*\MetaLunghezza,0,0);
\end{tikzpicture}
\end{document}
`
che da il seguente risultato(clicca sull’immagine per ingrandire):

Hai quattro parametri con cui giocare:
1. \radius
2. \h distaza della corda dal centro dlla sezione circolare
3. \MetaLunghezza della trav
4. \ang angolo che serve per disegnae bene la retta inferiore che unisce le sue curve in prospettiva
La seconda soluzione è affidarti al programma Sketch raggiungibile qui
Nellaa seconda non dovresti usare il trucchetto che ho usato con il parametro \ang, ma dovresti dare ad ogni faccia del cilindro un colore diverso.
Spero di esserti stato di aiuto.
Michele
P.S. Il disegno ti serve nell’ambito della teoria delle travi, in particolare per la formula di Jourawski per determinare il taglio?