!2D: Distanza d di P=(px,py) dalla retta per A con direzione V

ax= !coord.punto applicazione del vettore V appartenente alla retta
ay=
vx= !coord.vettore V appartenente alla retta
vy=
px= !coord.punto P
py=

!eq. parametrica della retta:
!x=vx*u+ax
!y=vy*u+ay
!
!eq. cartesiana della retta:
!aa*x+bb*y+cc=0
!dove:
aa=vy
bb=-vx
cc=ay*vx-ax*vy
d=abs(aa*px+bb*py+cc)/sqr(aa^2+bb^2)

!formula diretta:
d=abs(vy*px-vx*py-vy*ax+vx*ay)/sqr(vx^2+vy^2)
---------------------------------------------------
!2D: Distanza d di P=(px,py) da 1-2
px=
py=
x1=
y1=
x2=
y2=

d=((y1-y2)*px+(x2-x1)*py+x1*y2-y1*x2)/sqr((y2-y1)^2+(x2-x1)^2)

---------------------------------------------------
!2D: Distanza d di P da r per 1 con direzione V
x1= !coord.punto applicazione 1 di V appartenente a retta r
y1=
vx= !=x2-x1=ascissa  vettore V appartenente a retta r
vy= !=y2-y1=ordinata vettore V appartenente a retta r
px= !coord.punto P
py=

mv=sqr(vx^2+vy^2)             !modulo vettore V
na=((px-x1)*vx+(py-y1)*vy)/mv !dist.1N;N=proiez.ortog.di P su r
xn=x1+na*vx/mv
yn=y1+na*vy/mv                !coordinate N
d=sqr((px-xn)^2+(py-yn)^2)     !dist.P da r=dist.PN

xq=px-na*vx/mv !coordinate Q per rettangolo 1NPQ
yq=py-na*vy/mv

!formula alternativa
d=sqr(((px-x1)*vy^2-(py-y1)*vy*vx)^2+((py-y1)*vx^2-(px-x1)*vx*vy)^2)/mv^2
============================================================================
!3D: Distanza d di P da r per A con direzione V
xa= !coord.punto applicazione A di V appartenente a retta r
ya=
za=
vx= !coord.vettore V appartenente a retta r
vy=
vz=
px= !coord.punto P
py=
pz=

mv=sqr(vx^2+vy^2+vz^2)                   !modulo vettore V
na=((px-xa)*vx+(py-ya)*vy+(pz-za)*vz)/mv !dist.AN;N=proiez.ortog.di P su r
xn=xa+na*vx/mv
yn=ya+na*vy/mv
zn=za+na*vz/mv                           !coordinate N
d=sqr((px-xn)^2+(py-yn)^2+(pz-zn)^2)     !dist.P da r=dist.PN

xq=px-na*vx/mv !coordinate Q per rettangolo ANPQ
yq=py-na*vy/mv
zq=pz-na*vz/mv

!formula alternativa
mv_q=(vx^2+vy^2+vz^2)^2 !modulo elevato a 4° del vettore V
ps_ap_v=(px-xa)*vx+(py-ya)*vy+(pz-za)*vz !prodotto scalare braccio AP per V
d=sqr((px-xa-ps_ap_v*vx/mv_q)^2+(py-ya-ps_ap_v*vy/mv_q)^2+(pz-za-ps_ap_v*vz/mv_q)^2)

!formula basata sul momento:
mx=(ya-py)*vz-(za-pz)*vy
my=(za-pz)*vx-(xa-px)*vz
mz=(xa-px)*vy-(ya-py)*vx
mm=sqr(mx^2+my^2+mz^2)  !modulo momento
mv=sqr(vx^2+vy^2+vz^2)  !modulo V
d=mm/mv

!forma estesa:
d=sqr(((ya-py)*vz-(za-pz)*vy)^2+((za-pz)*vx-(xa-px)*vz)^2+((xa-px)*vy-(ya-py)*vx)^2)/sqr(vx^2+vy^2+vz^2)
-----------------------------------------------------------------
!3D: Distanza d di P dal piano definito da Va,Wa uscenti da A:
ax= !coord.punto applicazione dei vettori Va,Wa appartenente al piano
ay=
az=
vax= !coord.vettore V1 appartenente al piano
vay=
vaz=
wax= !coord.vettore V2 appartenente al piano
way=
waz=
px= !coord.punto P
py=
pz=

!eq. parametrica piano:
!x=vax*u+wax*v+ax
!y=vay*u+way*v+ay
!z=vaz*u+waz*v+az
!
!eq. cartesiana piano:
!aa*x+bb*y+cc*z+dd=0
!dove: (formula)

aa=vaz*way-waz*vay
bb=vax*waz-wax*vaz
cc=vay*wax-way*vax
dd=-aa*ax-bb*ay-cc*az

!Distanza del piano da P:
dp=abs(aa*px+bb*py+cc*pz+dd)/sqr(aa^2+bb^2+cc^2)
-----------------------------------------------------------------