4

\tkzDrawArc[R,arc](B,1.1*\dBD)(20,83) works well. But \tkzDrawCircle[R] is not working...

\documentclass[border=2pt]{standalone}
\usepackage[usenames,dvipsnames,svgnames]{xcolor}
\usepackage{tkz-euclide}
\usetkzobj{all}
\definecolor{fondpaille}{cmyk}{0,0,0.1,0}
\pagecolor{fondpaille}
\color{Maroon} 

\begin{document}
\begin{tikzpicture}[scale=1.0]
\tkzDefPoint(0,0){B} 
\tkzDefPoint(0,6){A} 
\tkzDefPoint(8,0){C}
\tkzLabelPoints[below](B,C)
\tkzLabelPoints[left](A)


\tkzDrawSegment[thick](A,B)
\tkzDrawSegment[thick](C,B)
\tkzDrawSegment[thick](A,C)

\tkzDefMidPoint(B,C)\tkzGetPoint{M}
\tkzInterLC(A,C)(M,C) \tkzGetPoints{D}{E} \tkzLabelPoints[above](D)
\tkzDrawSegment[thick](B,D)
\tkzCalcLength[cm](B,D) \tkzGetLength{dBD}
\tkzDrawArc[R,arc](B,1.1*\dBD)(20,83)
\tkzDrawCircle[R](A,1.1*\dBD)
%\tkzInterLC[R](A,C)(B,1.1*\dBD) \tkzGetPoints{D_1}{D_2}
\end{tikzpicture}
\end{document}

enter image description here

  • Possible ´\tkzDrawSegments[thick](A,B B,C C,A)´ or ´\tkzDrawPolygon(A,B,C)’ . In the documentation you can find other possibilities to transform pt in cm. – Alain Matthes Aug 13 '18 at 11:21
10

The macro \tkzGetLength returns the length expressed in pt, if you use cm, you must convert this measurement to cm when calling it.

\tkzDrawCircle[R](A,\dBD cm) instead of \tkzDrawCircle[R](A,\dBD)

In addition, calculations are prohibited during the passage of parameters to allow you to choose the calculation engine (see p 57 of manual):

  • pgf with \pgfsetmacro
  • fp with \fpeval

    \documentclass[border=2pt]{standalone}
    \usepackage[usenames,dvipsnames,svgnames]{xcolor}
    \usepackage{tkz-euclide}
    \usetkzobj{all}
    \definecolor{fondpaille}{cmyk}{0,0,0.1,0}
    \pagecolor{fondpaille}
    \color{Maroon} 
    
    \begin{document}
    \begin{tikzpicture}[scale=1.0]
    \tkzDefPoint(0,0){B} 
    \tkzDefPoint(0,6){A} 
    \tkzDefPoint(8,0){C}
    \tkzLabelPoints[below](B,C)
    \tkzLabelPoints[left](A)
    
    
    \tkzDrawSegment[thick](A,B)
    \tkzDrawSegment[thick](C,B)
    \tkzDrawSegment[thick](A,C)
    
    \tkzDefMidPoint(B,C)\tkzGetPoint{M}
    \tkzInterLC(A,C)(M,C) \tkzGetPoints{D}{E} \tkzLabelPoints[above](D)
    \tkzDrawSegment[thick](B,D)
    \tkzCalcLength[cm](B,D) \tkzGetLength{dBD}
    \pgfmathsetmacro{\tkzLen}{1.1*\dBD}
    \tkzDrawArc[R,arc](B, \tkzLen cm)(20,83)
    \tkzDrawCircle[R](A,\dBD cm)
    \tkzInterLC[R](A,C)(B, \tkzLen cm ) \tkzGetPoints{D_1}{D_2}
    \end{tikzpicture}
    \end{document}
    

output

tkz-euclide

  • 1
    You are right. We have the possibility to use fp or pgf and perhaps lua if can work ! – Alain Matthes Aug 13 '18 at 11:17

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.