Saltar al contenido

Dibujar un triángulo isósceles en un plano cartesiano

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):

ingrese la descripción de la imagen aquí

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

  1. 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);
    
  2. 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;
    
  3. Es más fácil de usar angles y quotes 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
      ;
    
  4. 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

ingrese la descripción de la imagen aquí

Ilustración con

path[draw,red,name path global=circle] (A) circle (Side);
path[draw,red,name path global=line] (O)circle (side); 

da

ingrese la descripción de la imagen aquí

Hmm, a juzgar por las otras respuestas, tal vez no entiendo los requisitos del OP porque pensé que esta era la imagen requerida:

ingrese la descripción de la imagen aquí

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.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags : /

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *