"**************************************************************" "**************************************************************" "CIRCUNCIRCULO Y CIRCULO DE FEUERBACH" "**************************************************************" "**************************************************************" "UNAS CUANTAS FUNCIONES BASICAS AUXILIARES" "**************************************************************" PMEDIO(a,b,c,d):=[(a+c)/2,(b+d)/2] PUNTOMEDIOV(a,b):=(a+b)/2 "**************************************************************" RECTAPORDOSPUNTOS(a,b,c,d):=x*(b-d)+y*(c-a)+a*d-b*c=0 RECTAPORDOSPUNTOSV(u,v):=x*(u SUB 2-v SUB 2)+y*(v SUB 1-u SUB 1)+u SUB 1*v SU~ B 2-u SUB 2*v SUB 1=0 "**************************************************************" INTERSECCIONRECTAS(alpha,beta,tau,kappa,lambda,mu):=[(beta*mu-tau*lambda)/(al~ pha*lambda-beta*kappa),(tau*kappa-alpha*mu)/(alpha*lambda-beta*kappa)] "**************************************************************" RECTAPARALELA(m,n,p,a,b):=m*(x-a)+n*(y-b)=0 RECTAPARALELAV(m,n,p,v):=m*(x-v SUB 1)+n*(y-v SUB 2)=0 "**************************************************************" RECTAPERPENDICULAR(m,n,p,a,b):=n*(x-a)-m*(y-b)=0 RECTAPERPENDICULARV(m,n,p,v):=n*(x-v SUB 1)-m*(y-v SUB 2)=0 "**************************************************************" RECTAPENDIENTEARECTACART(a,b,m):=IF(m=inf,x=a,m*x-y-m*a+b=0) RECTAPENDIENTEARECTACARTV(a,m):=IF(m=inf,x=a SUB 1,m*x-y-m*a SUB 1+a SUB 2=0) "**************************************************************" RECTACARTAPUNTOPENDIENTE(m,n,p):=IF(n/=0,SOLVE(m*x+n*y+p=0,y),SOLVE(m*x+n*y+p~ =0,x)) "**************************************************************" MEDIATRIZ(a,b,c,d):=2*x*(a-c)+2*y*(b-d)-a^2-b^2+c^2+d^2=0 MEDIATRIZV(a,b):=(b-a) SUB 1*(x-((a+b)/2) SUB 1)+(b-a) SUB 2*(y-((a+b)/2) SUB~ 2)=0 "**************************************************************" INTERSECDIAGCUADR(m,n,p,q,r,s,t,u):=[(m*(p*(s-u)+t*(q-s))-r*(n*(p-t)-p*u+q*t)~ )/(m*(q-u)+n*(t-p)+p*s-q*r+r*u-s*t),(m*s*(q-u)-n*(p*u+q*(r-t)-r*u)+s*(p*u-q*t~ ))/(m*(q-u)+n*(t-p)+p*s-q*r+r*u-s*t)] "**************************************************************" NORMALUNITARIA(a,b,m,n,p):=IF(m*a+n*b+p>0,-1/(m^2+n^2)^(1/2)*[m,n],1/(m^2+n^2~ )^(1/2)*[m,n]) NORMALUNITARIAV(v,m,n,p):=IF(m*v SUB 1+n*v SUB 2+p>0,-1/(m^2+n^2)^(1/2)*[m,n]~ ,1/(m^2+n^2)^(1/2)*[m,n]) "**************************************************************" DISTANCIA(a,b,m,n,p):=ABS(m*a+n*b+p)/(m^2+n^2)^(1/2) DISTANCIAV(v,m,n,p):=ABS(m*v SUB 1+n*v SUB 2+p)/(m^2+n^2)^(1/2) "**************************************************************" SIMETRICO(a,b,m,n,p):=[a,b]+2*DISTANCIA(a,b,m,n,p)*NORMALUNITARIA(a,b,m,n,p) SIMETRICOV(v,m,n,p):=v+2*DISTANCIAV(v,m,n,p)*NORMALUNITARIAV(v,m,n,p) "**************************************************************" SIMETRICODEPUNTORESPECTOPUNTO(a,b,p,q):=2*[p,q]-[a,b] SIMETRICODEPUNTORESPECTOPUNTOV(v,p):=2*p-v "**************************************************************" SIMETRICOPUNTORESPECTORECTA(a,b,m,n,p):=[(a*(n^2-m^2)-2*b*m*n-2*p*m)/(m^2+n^2~ ),(b*(m^2-n^2)-2*a*m*n-2*p*n)/(m^2+n^2)] SIMETRICOPUNTORESPECTORECTAV(v,m,n,p):=[(v SUB 1*(n^2-m^2)-2*v SUB 2*m*n-2*p*~ m)/(m^2+n^2),(v SUB 2*(m^2-n^2)-2*v SUB 1*m*n-2*p*n)/(m^2+n^2)] "**************************************************************" ROTACION(a,b,p,q,ang):=[p,q]+[(a-p)*COS(ang)-(b-q)*SIN(ang),(a-p)*SIN(ang)+(b~ -q)*COS(ang)] ROTACION(v,p,ang):=p+[(v SUB 1-p SUB 1)*COS(ang)-(v SUB 2-p SUB 2)*SIN(ang),(~ v SUB 1-p SUB 1)*SIN(ang)+(v SUB 2-p SUB 2)*COS(ang)] "**************************************************************" HOMOTETICODEVRESPECTOPRAZONK(u,v,p,q,k):=[p,q]+k*[u-p,v-q] HOMOTETICODEVRESPECTOPRAZONKV(v,p,k):=p+k*(v-p) "**************************************************************" INVERSODEVRESPECTOPPOTENCIAK(u,v,p,q,k):=[p,q]+k/ABS([u-p,v-q])^2*[u-p,v-q] INVERSODEVRESPECTOPPOTENCIAKV(v,p,k):=p+k/ABS(v-p)^2*(v-p) "**************************************************************" TRIANGULO(m,n,p,q,r,s):=[[m,n],[p,q],[r,s],[m,n]] "**************************************************************" "EXPERIMENTANDO CON LAS MEDIANAS" "**************************************************************" MEDIANAATRIANGULO(m,n,p,q,r,s):=RECTAPORDOSPUNTOS(m,n,(p+r)/2,(q+s)/2) MEDIANABTRIANGULO(m,n,p,q,r,s):=MEDIANAATRIANGULO(p,q,r,s,m,n) MEDIANACTRIANGULO(m,n,p,q,r,s):=MEDIANAATRIANGULO(r,s,m,n,p,q) MACROMEDIANASTRIANGULO(m,n,p,q,r,s):=[[[m,n],[p,q],[r,s],[m,n]],[MEDIANAATRIA~ NGULO(m,n,p,q,r,s),MEDIANABTRIANGULO(m,n,p,q,r,s),MEDIANACTRIANGULO(m,n,p,q,r~ ,s)]] "**************************************************************" MACROMEDIANASTRIANGULO(3,4,-2,5,6,1) MACROMEDIANASTRIANGULO(0,4,-2,-3,5,2) "*************************************************" "**************************************************************" BARICENTROTRIANGULO(m,n,p,q,r,s):=[(m+p+r)/3,(n+q+s)/3] "**************************************************************" "**************************************************************" "EXPERIMENTANDO CON LAS ALTURAS DE UN TRIANGULO" ALTURAATRIANGULO(m,n,p,q,r,s):=x*(r-p)+y*(s-q)+m*(p-r)+n*(q-s)=0 ALTURABTRIANGULO(m,n,p,q,r,s):=ALTURAATRIANGULO(p,q,r,s,m,n) ALTURACTRIANGULO(m,n,p,q,r,s):=ALTURAATRIANGULO(r,s,m,n,p,q) MACROALTURASTRIANGULO(m,n,p,q,r,s):=[[[m,n],[p,q],[r,s],[m,n]],[ALTURAATRIANG~ ULO(m,n,p,q,r,s),ALTURABTRIANGULO(m,n,p,q,r,s),ALTURACTRIANGULO(m,n,p,q,r,s)]~ ] MACROALTURASTRIANGULO(0,0,4,0,1,2) "**************************************************************" "**************************************************************" ORTOCENTROTRIANGULO(m,n,p,q,r,s):=[-(m*(n*(p-r)-p*q+r*s)+(n^2-n*(q+s)+p*r+q*s~ )*(q-s))/(m*(q-s)+n*(r-p)+p*s-q*r),(m^2*(p-r)+m*(n*(q-s)-p^2+r^2)+n*(r*s-p*q)~ +p^2*r+p*(q*s-r^2)-q*r*s)/(m*(q-s)+n*(r-p)+p*s-q*r)] ORTOCENTROTRIANGULO(0,0,4,0,1,2) "**************************************************************" "**************************************************************" "**************************************************************" "EXPERIMENTANDO CON LAS MEDIATRICES" MEDIATRIZATRIANGULO(m,n,p,q,r,s):=MEDIATRIZ(p,q,r,s) MEDIATRIZBTRIANGULO(m,n,p,q,r,s):=MEDIATRIZATRIANGULO(p,q,m,n,r,s) MEDIATRIZCTRIANGULO(m,n,p,q,r,s):=MEDIATRIZATRIANGULO(r,s,m,n,p,q) MACROMEDIATRICESTRIANGULO(m,n,p,q,r,s):=[[[m,n],[p,q],[r,s],[m,n]],[MEDIATRIZ~ ATRIANGULO(m,n,p,q,r,s),MEDIATRIZBTRIANGULO(m,n,p,q,r,s),MEDIATRIZCTRIANGULO(~ m,n,p,q,r,s)]] MACROMEDIATRICESTRIANGULO(0,0,4,0,2,1) CIRCUNCENTROTRIANGULO(m,n,p,q,r,s):=[0.5*(m^2*(q-s)+n^2*(q-s)-n*(p^2+q^2-r^2-~ s^2)+p^2*s+q*(q*s-r^2-s^2))/(m*(q-s)+n*(r-p)+p*s-q*r),-0.5*(m^2*(p-r)-m*(p^2+~ q^2-r^2-s^2)+n^2*(p-r)+p^2*r-p*(r^2+s^2)+q^2*r)/(m*(q-s)+n*(r-p)+p*s-q*r)] CIRCUNCENTROTRIANGULO(0,0,4,0,2,1) "**************************************************************" CIRCUNCIRCULO(m,n,p,q,r,s):=(x-(CIRCUNCENTROTRIANGULO(m,n,p,q,r,s)) SUB 1)^2+~ (y-(CIRCUNCENTROTRIANGULO(m,n,p,q,r,s)) SUB 2)^2-ABS(CIRCUNCENTROTRIANGULO(m,~ n,p,q,r,s)-[m,n])^2=0 CIRCUNCIRCULO(0,0,4,0,2,1) MACROCIRCUNCIRCULOTRIANGULO(m,n,p,q,r,s):=[[[m,n],[p,q],[r,s],[m,n]],CIRCUNCI~ RCULO(m,n,p,q,r,s),CIRCUNCENTROTRIANGULO(m,n,p,q,r,s)] MACROCIRCUNCIRCULOTRIANGULO(0,0,4,0,2,1) "**************************************************************" MACROCIRCULOFEUERBACHTRIANGULO(m,n,p,q,r,s):=[TRIANGULO(m,n,p,q,r,s),CIRCUNCI~ RCULO(m,n,p,q,r,s),CIRCUNCIRCULO((m+p)/2,(n+q)/2,(p+r)/2,(q+s)/2,(m+r)/2,(n+s~ )/2)] MACROCIRCULOFEUERBACHTRIANGULO(0,0,4,0,3,2) "**************************************************************"