What is the easiest way to recreate the picture using tikz or tkz-euclide?

Here's how this can be done using tkz-euclide:

\documentclass[border=5mm]{standalone}
\usepackage{tkz-euclide}
\usetkzobj{all}

\begin{document}
\begin{tikzpicture}[scale=2]

% Define the first two points
\tkzDefPoint(0,0){A}
\tkzDefPoint(3.07,0){B}

% Find the intersections of the circles around A and B with the given radii
\tkzInterCC[R](A,2.37cm)(B,1.82cm)
\tkzGetPoints{C}{C'}

% Draw the interior circle
\tkzDrawCircle[in](A,B,C)

% Reset the bounding box so we don't get empty space around our triangle
\pgfresetboundingbox

% Draw the triangle and the points
\tkzDrawPolygon(A,B,C)
\tkzDrawPoints(A,B,C)

% Label the sides
\tkzLabelSegment[below](A,B){3.07}
\tkzLabelSegment[above right](B,C){1.82}
\tkzLabelSegment[above left](A,C){2.37}

\end{tikzpicture}
\end{document}

Based on Jake's answer with some refinements

\documentclass[border=5mm]{standalone}
\usepackage{tkz-euclide}
\usetkzobj{all}
\begin{document}

    \pgfkeys{/pgf/decoration/.cd, distance/.initial = 10pt}  

    \pgfdeclaredecoration{add dim}{final}{
    \state{final}{% 
    \pgfmathsetmacro{\dist}{\pgfkeysvalueof{/pgf/decoration/distance}}
              \pgfpathmoveto{\pgfpoint{0pt}{0pt}}             
              \pgfpathlineto{\pgfpoint{0pt}{2*\dist}}   
              \pgfpathmoveto{\pgfpoint{\pgfdecoratedpathlength}{0pt}} 
              \pgfpathlineto{\pgfpoint{(\pgfdecoratedpathlength}{2*\dist}}     
              \pgfsetarrowsstart{latex}
              \pgfsetarrowsend{latex}
              \pgfpathmoveto{\pgfpoint{0pt}{\dist}}
              \pgfpathlineto{\pgfpoint{\pgfdecoratedpathlength}{\dist}} 
              \pgfusepath{stroke} 
              \pgfpathmoveto{\pgfpoint{0pt}{0pt}}
              \pgfpathlineto{\pgfpoint{\pgfdecoratedpathlength}{0pt}}
    }}

    \tikzset{
        dim/.style args={#1,#2,#3}{%
                    decoration = {add dim,distance=\ifx&#2&0pt\else#2\fi},
                    decorate,
                    postaction = {%
                       decorate,
                       decoration={%
                            raise=\ifx&#2&0pt\else#2\fi,
                            markings,
                            mark=at position .5 with {\node[inner sep=0pt,
                                                            font=\footnotesize,
                                                            fill=\ifx&#1&none\else white\fi,
                                                            #3] at (0,0) {#1};}
                       }
                    }
        },
        dim/.default={,0pt,}
    }       
\begin{tikzpicture}[scale=2]
\pgfkeys{/pgf/number format/.cd,fixed,precision=2}
% Define the first two points
\tkzDefPoint(0,0){A}
\tkzDefPoint(3.07,0){B}

% Find the intersections of the circles around A and B with the given radii
\tkzInterCC[R](A,2.37cm)(B,1.82cm)
\tkzGetPoints{C}{C'}

% Draw the interior circle
\tkzDrawCircle[in](A,B,C) \tkzGetPoint{G}
\tkzGetLength{rIn} 

% Reset the bounding box so we don't get empty space around our triangle
\pgfresetboundingbox

% Draw the triangle and the points
\tkzDrawPolygon(A,B,C)
\tkzDrawPoints(A,B,C)

% Label the sides
\tkzCalcLength[cm](A,B)\tkzGetLength{ABl}
\tkzCalcLength[cm](B,C)\tkzGetLength{BCl}
\tkzCalcLength[cm](A,C)\tkzGetLength{ACl}

% add dim
\tkzDrawSegment[dim={\pgfmathprintnumber\BCl,6pt,transform shape}](C,B)
\tkzDrawSegment[dim={\pgfmathprintnumber\ACl,6pt,transform shape}](A,C)
\tkzDrawSegment[dim={\pgfmathprintnumber\ABl,-6pt,transform shape}](A,B)

% Labels 
\tkzLabelPoints(A,B) \tkzLabelPoints[above](C)
\tkzDefShiftPoint[G](70:\rIn pt){g}  
\tkzDefShiftPoint[g](70: .5 cm){gg} \tkzDefShiftPoint[gg](0: .5 cm){ggg}  
\tkzDrawSegment[->](G,g) \tkzDrawSegment(g,gg) 
\tkzDrawLine[add=0 and 0,end={$r=?$}](gg,ggg) 
\end{tikzpicture}
\end{document}

enter image description here


This only shows only the drawing of the triangle and circle, not the arrows and labels.

I draw first one side, then make two circles starting at the end points of this line. The third point is the intersection of the two circles (there are two intersections).

There are some calculations to get the radius of the incircle, the center of which is found with barycentric coordinates. I realize tkz-euclide simplifies this considerably, but there are enough examples of that in other answers, so I thought I'd add a pure TikZ suggestion for that part.

\documentclass[border=3mm]{standalone}
\usepackage{tikz}
\usetikzlibrary{intersections}
\begin{document}
\begin{tikzpicture}%[rotate=-20]

% save side lenghths in macros
\pgfmathsetmacro{\sideA}{3.07}
\pgfmathsetmacro{\sideB}{1.82}
\pgfmathsetmacro{\sideC}{2.35}

% calculate semiperimeter
\pgfmathsetmacro{\semip}{(\sideA+\sideB+\sideC)/2}
% calculate radius of incircle: area (given by Heron's formula) divided by semiperimeter
\pgfmathsetmacro{\inrad}{sqrt(\semip*(\semip-\sideA)*(\semip-\sideB)*(\semip-\sideC))/\semip}

% define coordinates for points A and B
\coordinate (A) at (0,0);
\coordinate (B) at (\sideA,0);

% define circular paths centered on A and B, with radius as side AC and BC respectively
\path [name path=AC] (A) circle[radius=\sideC];
\path [name path=BC] (B) circle[radius=\sideB];

% calculate the intersection(s) of the two circles
% by default the coordinates are called intersection-N, name=C means they're called C-1 and C-2
\path [name intersections={of=AC and BC,name=C}];

% reset bounding box to avoid extra whitespace
\pgfresetboundingbox

% draw the triangle
\draw (A) -- (B) -- (C-1) -- cycle;
%\draw [help lines,dashed] (A) -- (B) -- (C-2) -- cycle;

% center of inradius given in barycentric coordinates
\coordinate (center) at (barycentric cs:A=\sideB,B=\sideC,C-1=\sideA);
\draw (center) circle[radius=\inrad];

\end{tikzpicture}
\end{document} 

enter image description here