Here is another variant (via TikZ) with a random starting angle (each compilation gives a different result):


\documentclass[tikz,margin=2mm]{standalone}
\usetikzlibrary{calc,positioning}
\pgfmathsetseed{\pdfuniformdeviate 10000000}
\begin{document}
\begin{tikzpicture}
% constants
\pgfmathsetmacro\unit{360/(3+4+5)}
\pgfmathsetmacro\radius{2cm}
\pgfmathsetmacro\labeldist{3mm}
% random starting angle
\pgfmathsetmacro\angleinit{rnd*360}
% center
\fill circle(2pt) coordinate (I);
\node at ($(I) + (\angleinit:3mm)$) {I};
% circle
\draw circle(\radius pt);
% triangle
\draw ({\unit*0+\angleinit}:\radius pt) coordinate (A)
-- ({\unit*(3)+\angleinit}:\radius pt) coordinate (B)
-- ({\unit*(3+4)+\angleinit}:\radius pt) coordinate (C)
-- cycle;
% The vertices and their names
\foreach \point in {A,B,C}{
\fill (\point) circle (2pt);
\node at ($(I)!\radius pt+\labeldist pt!(\point)$) {\point};
}
% the relative angular distances
\node at ($(I)!\radius pt+\labeldist pt!($(A)!.5!(B)$)$) {3};
\node at ($(I)!\radius pt+\labeldist pt!($(B)!.5!(C)$)$) {4};
\node at ($(I)!\radius pt+\labeldist pt!($(C)!.5!(A)$)$) {5};
\end{tikzpicture}
\end{document}
Edit:
New version with labels formated in italic and segments IA, IB and IC.

\documentclass[tikz,margin=2mm]{standalone}
\usetikzlibrary{calc,positioning}
\pgfmathsetseed{\pdfuniformdeviate 10000000}
\begin{document}
\begin{tikzpicture}
% constants
\pgfmathsetmacro\unit{360/(3+4+5)}
\pgfmathsetmacro\radius{2cm}
\pgfmathsetmacro\labeldist{3mm}
% random starting angle
\pgfmathsetmacro\angleinit{rnd*360}
% center
\fill circle(2pt) coordinate (I);
\node at ($(I) + (\angleinit+50:3mm)$) {$I$};
% circle
\draw circle(\radius pt);
% triangle
\draw ({\unit*0+\angleinit}:\radius pt) coordinate (A)
-- ({\unit*(3)+\angleinit}:\radius pt) coordinate (B)
-- ({\unit*(3+4)+\angleinit}:\radius pt) coordinate (C)
-- cycle;
% vertices, labels and segments
\foreach \point in {A,B,C}{
\fill (\point) circle (2pt);
\node at ($(I)!\radius pt+\labeldist pt!(\point)$) {$\point$};
\draw (I) -- (\point);
}
% relative angular distances
\node at ($(I)!\radius pt+\labeldist pt!($(A)!.5!(B)$)$) {3};
\node at ($(I)!\radius pt+\labeldist pt!($(B)!.5!(C)$)$) {4};
\node at ($(I)!\radius pt+\labeldist pt!($(C)!.5!(A)$)$) {5};
\end{tikzpicture}
\end{document}
Last edit:
Examples with different polygons:


\documentclass[tikz,margin=2mm]{standalone}
\usetikzlibrary{calc,positioning}
\pgfmathsetseed{\pdfuniformdeviate 10000000}
\begin{document}
\foreach \p in {{A/1,B/2,C/4,D/5},{A/2,B/3,C/4,D/6,E/9}}{
\begin{tikzpicture}
\pgfmathsetmacro\r{2cm} \pgfmathsetmacro\ld{3mm}
\foreach \l/\v[evaluate=\v as \s using \s + \v,remember=\s as \s (initially 0),
remember=\l as \ls,remember=\v as \lv] in \p{}
\pgfmathsetmacro\unit{360/\s} \pgfmathsetmacro\ai{rnd*360}
\fill circle(2pt) coordinate (I); \draw circle(\r pt);
\draw (\ai:\r pt)
\foreach \l/\v[evaluate=\v as \s using \psum + \v, remember=\s as \psum (initially 0)]
in \p {-- ({\unit*\psum+\ai}:\r pt) coordinate (\l)} -- cycle;
\foreach \l/\v in \p {
\draw (I) -- (\l); \fill (\l) circle (2pt);
\node at ($(I)!\r pt+\ld pt!(\l)$) {$\l$};
}
\node[circle,inner sep=1pt,fill=white] at ($(I) + (\ai:5mm)$) {$I$};
\foreach \l/\v[remember=\l as \pl (initially \ls),remember=\v as \pv (initially \lv)]
in \p {\node at ($(I)!\r pt+\ld pt!($(\pl)!.5!(\l)$)$) {\pv};}
\end{tikzpicture}
}
\end{document}