
Tengo el siguiente código:
pair a; pair b; pair c;
pickup pencircle scaled 0.2pt;
a = (0, 4cm); b = (-2cm, 0); c = (1cm, 0);
draw a -- b -- c -- cycle;
pair p; pair q; pair r; pair d; pair m; pair n;
p = whatever[b, c]; a - p = whatever * (b - c) rotated 90;
q = whatever[c, a]; b - q = whatever * (c - a) rotated 90;
r = whatever[a, b]; c - r = whatever * (a -b) rotated 90;
d = whatever[a, p] = whatever[b, q]; % orthocenter
n = 1/4(a + b + c + d); % remarkably...
m = d rotatedabout(n, 180); % M is also the circumcentre
path circumcircle;
circumcircle = fullcircle scaled 2 abs(m - a) shifted m;
draw circumcircle;
pair l;
pickup pencircle scaled 2pt;
drawdot m;
pickup pencircle scaled 0.2pt;
%draw a -- ((a -- m) intersectionpoint (b -- c));
Puedo calcular el circuncentro y funciona. Pero la última línea comentada cuando no está comentada me dice que los caminos no se cruzan. ¿Es el caso que AM
no se extiende para el cálculo de la intersección con BC? Creo que puedo gestionar eso con shifted
palabras clave pero no sé cómo. Cualquier ayuda será muy apreciada.
Respuesta1
Logré cambiar la última línea a la siguiente:
draw a -- (a -- (a - 100(a - m))) intersectionpoint (b -- c);
y consigue la línea. Parece que es necesario ampliar la línea para intersectionpoint
que funcione.
Respuesta2
Si desea seguir el mismo estilo que su código anterior, también puede hacerlo
pair q ; q = whatever[a,m] = whatever[b,c] ;
draw a -- q ;