I wonder how to draw something like this picture using tikz or tkz-euclide. I really don't have any clue what to do first.

enter image description here

  • Thanks for editing my question. This is my first question. – masrosid Jun 13 '16 at 15:44

Labels are on you

\documentclass[tikz]{standalone}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}
  \filldraw (0,2) -- (2,0) -| cycle (0,0) 
        arc (270:315:2) coordinate(a)--($(a)!2!(45:{sqrt(2)})$) arc (135:180:2);
\end{tikzpicture}
\end{document}

enter image description here

  • Thanks. But I need to learn it first, because there are some syntax I don't understand. – masrosid Jun 14 '16 at 8:25
  • What about \filldraw(0,0)arc(270:315:2)--(0,2)--(0,0)arc(180:135:2)--(2,0)--(0,0); ? – Kpym Aug 31 '16 at 17:21
  • Or \filldraw(,)arc(270:315:2)--(1,3)--(,)arc(180:135:2)--(3,1)--(,);, but I don't know why (,) is (1,1) and not (0,0) ... – Kpym Aug 31 '16 at 17:31

A solution without magic numbers (except for zero) and angle calculations.

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{calc}

\begin{document}
\begin{tikzpicture}
  % The corners of the triangle
  % \Ay and \Cx are the length of the catheti of the right-angled triangle
  % and the radius for the circles in A and C.
  \def\Ay{2cm}
  \def\Cx{2cm}
  \path
    (0, \Ay) coordinate (A)
    (0, 0) coordinate (B)
    (\Cx, 0) coordinate (C)
  ;

  % The areas are filled by filling the two circles in A and B.
  % Because of the "even odd rule", the intersection is not filled.
  % The fill areas are limited to the triangle by clipping.
  % The local overlay removes the larger circles from the bounding
  % box calculations for the whole tikzpicture.
  \begin{scope}[overlay]
    \clip (A) -- (B) -- (C) -- cycle;
    \fill[even odd rule]
      (A) circle[radius=\Ay]
      (C) circle[radius=\Cx]
    ;
  \end{scope}

  % The triangle is drawn.
  \draw (A) -- (B) -- (C) -- cycle;

  % The annotations with the point names.
  \path
    (A) node[above left] {$A$}
    (B) node[below left] {$B$}
    (C) node[below right] {$C$}
    % The coordinates for D and E are calculated
    % via the syntax of distance modifiers.
    ($(C)!\Cx!0:(A)$) coordinate (D) node[above right] {$D$}
    ($(A)!\Ay!0:(C)$) coordinate (E) node[above right] {$E$}
  ;

\end{tikzpicture}
\end{document}

Result

Too verbose compared with percusse's solution but, I hope, not so cryptic.

\documentclass[tikz,border=2mm]{standalone}
\begin{document}
\begin{tikzpicture}
\draw (0,0) coordinate[label=above left:$A$] (A) --++(-90:2cm) coordinate[label=below left:$B$] (B) --++(0:2cm) coordinate[label=below right:$C$] (C) --cycle;

\fill (A)--(B) arc (180:135:2cm) coordinate[label=above right:$D$] (D)--cycle;

\fill (C)--(B) arc (-90:-45:2cm) coordinate[label=above right:$E$] (E)--cycle;
\end{tikzpicture}
\end{document}

enter image description here

  • 2
    Hey !! who is cryptic here it is a compact river of of ideas :P – percusse Jun 15 '16 at 22:37

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

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