{\Large Distance et perpendiculaire commune de deux droites}\\ \rule{\textwidth}{0.3mm}\vspace{2mm} On commence par charger le fichier contenant la définition de deux macros: \begin{description} \item[\texttt{PointDeLaDroite}]-- détermination d'un point d'une droite définie comme intersection de deux plans, \item[\texttt{VecteurDeLaDroite}]-- détermination d'un vecteur directeur d'une droite définie comme intersection de de deux plans. \end{description} Ce même fichier charge \texttt{vect.mac} qui contient la définition de \verb|~| servant à calculer un produit vectoriel. .m load("geo3d.mc")$ On introduit la première droite $\mathcal{D}_1$. .m D1:[x=3*z+1,y=2*z-1]; Puis $\mathcal{D}_2$. .m D2:[y=x-2,z=1]; On détermine un point et un vecteur directeur de $\mathcal{D}_1$. .m block(A1:PointDeLaDroite(D1,z=0),V1:VecteurDeLaDroite(D1,z=0),[A1,V1]); On en fait autant pour $\mathcal{D}_2$. .m block(A2:PointDeLaDroite(D2,x=0),V2:VecteurDeLaDroite(D2,x=0),[A2,V2]); On détermine, à l'aide du produit vectoriel, un vecteur directeur de la perpendiculaire commune $\Delta$. .m V:express(V1~V2); On introduit un point générique. .m M:[x,y,z]; On détermine une équation du plan contenant $\mathcal{D}_1$ et $\Delta$. .m P1:expand((M-A1).express(V~V1))=0; Maintenant le plan contenant $\mathcal{D}_2$ et $\Delta$. .m P2:expand((M-A2).express(V~V2))=0; Nous pouvons définir $\Delta$ comme intersection des deux plans précédents. .m Delta:[P1,P2]; À titre d'exemple voici un point de $\Delta$. .m A:PointDeLaDroite(Delta,y=x-2); Et la distance des deux droites $\mathcal{D}_1$ et $\mathcal{D}_2$. .m d:abs((A2-A1).V)/sqrt(V.V);