Here is a start point: I am using package tkz-euclide which is based on tikz but has its own macros making Euclid geometry easier to draw. With some changes you can make this example work not only for equilateral triangles but for every triangle. All distances and points in this example are all internally calculated by tikz based only on the initial points A and B which are defined at the beginning and the fact that the triangle ABC is equilateral.
\documentclass{standalone}
\usepackage{tkz-euclide}
\tkzSetUpPoint[size=2,color=black,fill=white]
\begin{document}
\begin{tikzpicture}
\tkzDefPoints{0/0/A,6/0/B}
\tkzDefPointByrotation=center A angle 60\tkzGetPoint{C}
\tkzDrawPolygon(A,B,C)
\tkzDefLinebisector\tkzGetPoint{c}
\tkzDefLinebisector\tkzGetPoint{b}
\tkzDefLinebisector\tkzGetPoint{a}
\tkzDrawSegments(A,a B,b C,c)
\tkzLabelSegmentabove,sloped,near start,yshift=-3pt{bisector}
\tkzLabelSegmentabove left=,sloped,near end,yshift=-3pt{bisector}
\tkzLabelSegmentabove left=,sloped,near start,yshift=-3pt,xshift=1cm{bisector}
\tkzInterLL(A,a)(B,b)\tkzGetPoint{D} % <-- find the incenter
\tkzDefPointByprojection=onto B--C\tkzGetPoint{Dbc}%<- find the projection of D on BC
\tkzDefPointByprojection=onto A--C\tkzGetPoint{Dac}
\tkzDefPointByprojection=onto A--B\tkzGetPoint{Dab}
\tkzCalcLength(D,Dab)\tkzGetLength{dab}
\tkzCalcLength(D,Dbc)\tkzGetLength{dbc}%<-- find the distance of D from BC
\tkzCalcLength(D,Dac)\tkzGetLength{dac}
\tkzDrawPoints(A,B,C,D,Dab,Dac,Dbc)
\tkzLabelPoints(A,B,D)\tkzLabelPointabove{C}
\tkzLabelSegmentabove,sloped{\tiny$\dbc cm$}
\begin{scope}[xfp]
\tkzMarkAnglesize=0.5,mark=|
\tkzMarkAnglesize=0.5,mark=|
\end{scope}
\end{tikzpicture}
\end{document}
