Ten en cuenta que en las ciencias informáticas un problema casi siempre tiene diversas resoluciones, por lo tanto compartimos lo más óptimo y mejor.
Solución:
Una opción que usa coordenadas polares (ver comentarios a continuación):
El código:
documentclass[10pt]amsart
usepackagetikz
usetikzlibraryangles,quotes
tikzset
mydot/.style=
fill,
circle,
inner sep=1.5pt
defSide6cm
begindocument
begintikzpicture[>=latex]
% the coordinates of the vertices
coordinate (O) at (0,0);
path ++(122:Side) coordinate (A) ++(-40:Side)
coordinate (B);
% auxiliary coordinates to draw the marks for the angles
coordinate (aux) at (3,0);
% the axis
draw[help lines,->] (-3.5,0) -- (2.5,0);
draw[help lines,->] (0,-0.5) -- (0,5.5);
% the edges of the triangle
draw
(O) --
node[auto] $l$
(A) --
node[auto] $l$
(B) --
node[auto] $c$
cycle;
% labelling the vertices
node[mydot,label=above:$A$] at (A) ;
node[mydot,label=right:$B$] at (B) ;
node[mydot,label=below left:$O$] at (O) ;
% the arcs for the angles
beginscope[gray,angle eccentricity=1.2,->]
path
pic[draw,angle radius=1.5cm,"$alpha$"] angle = aux--O--B
pic[draw,->,angle radius=0.75cm,"$beta$"] angle = aux--O--A
;
endscope
endtikzpicture
enddocument
Observaciones
-
Los vértices se pueden obtener mediante coordenadas polares:
% the coordinates of the vertices coordinate (O) at (0,0); path ++(122:Side) coordinate (A) ++(-40:Side) coordinate (B);
-
Las etiquetas para los lados se pueden producir usando nodos:
% the edges of the triangle draw (O) -- node[auto] $l$ (A) -- node[auto] $l$ (B) -- node[auto] $c$ cycle;
-
Es más fácil de usar
angles
yquotes
bibliotecas para producir las marcas para los ángulos:path pic[draw,angle radius=1.5cm,"$alpha$"] angle = aux--O--B pic[draw,->,angle radius=0.75cm,"$beta$"] angle = aux--O--A ;
-
Utilizando
Side
puedes cambiar fácilmente la longitud de las longitudes.
Este usa intersections
biblioteca y tienes que conocer las longitudes de dos lados. Para descansar, he tomado el código de Gonzalo como tal.
documentclass[10pt]amsart
usepackagetikz
usetikzlibraryangles,quotes,intersections
tikzset
mydot/.style=
fill,
circle,
inner sep=1.5pt
%% two sides
defSide6cm
defside2cm
begindocument
begintikzpicture[>=latex]
% the coordinates of the two vertices
coordinate (O) at (0,0);
coordinate (A) at (122:Side);
beginpgfinterruptboundingbox
path[name path global=circle] (A) circle (Side);
path[name path global=line] (O)circle (side);
endpgfinterruptboundingbox
path[name intersections=of=line and circle];
coordinate (B) at (intersection-1); %% third vertex
draw (O) -- (B) -- (A) -- cycle;
% auxiliary coordinates to draw the marks for the angles
coordinate (aux) at (3,0);
% the axis
draw[help lines,->] (-3.5,0) -- (2.5,0);
draw[help lines,->] (0,-0.5) -- (0,5.5);
% the edges of the triangle
draw
(O) --
node[auto] $l$
(A) --
node[auto] $l$
(B) --
node[auto] $c$
cycle;
% labelling the vertices
node[mydot,label=above:$A$] at (A) ;
node[mydot,label=right:$B$] at (B) ;
node[mydot,label=below left:$O$] at (O) ;
% the arcs for the angles
beginscope[gray,angle eccentricity=1.2,->]
path
pic[draw,angle radius=1.5cm,"$alpha$"] angle = aux--O--B
pic[draw,->,angle radius=0.75cm,"$beta$"] angle = aux--O--A
;
endscope
endtikzpicture
enddocument
Ilustración con
path[draw,red,name path global=circle] (A) circle (Side);
path[draw,red,name path global=line] (O)circle (side);
da
Hmm, a juzgar por las otras respuestas, tal vez no entiendo los requisitos del OP porque pensé que esta era la imagen requerida:
También usé el pic
sintaxis con el angles
y quotes
bibliotecas, por lo que esto requiere la última PGF
liberar:
documentclass[tikz,border=5]standalone
usetikzlibraryangles,quotes
tikzsetmydot/.style= fill, circle, inner sep=1.5pt
begindocument
begintikzpicture[>=latex]
% the coordinates of the vertices
coordinate (O) at (0:0);
coordinate (A) at (41:5);
coordinate (B) at (122:5);
% the axis
draw[help lines,->] (-3,0) -- (4,0) coordinate (X);
draw[help lines,->] (0,-0.5) -- (0,5);
% the edges of the triangle
draw (O)
-- (A) node [midway, below right] $l$
-- (B) node [midway, above] $c$
-- cycle node [midway, below left] $l$;
% labelling the vertices
node[mydot,label=right:$A$] at (A) ;
node[mydot,label=left:$B$] at (B) ;
node[mydot,label=below left:$O$] at (O) ;
% the arcs for the angles
beginscope[gray]
path pic ["$alpha$", draw, ->, angle eccentricity=1.10, angle radius=1.5cm]
angle=X--O--A;
path pic ["$beta$", draw, ->, angle eccentricity=1.25, angle radius=1.0cm]
angle=X--O--B;
endscope
endtikzpicture
enddocument
Acuérdate de que tienes la capacidad de valorar este enunciado si te fue preciso.