### 10.14.3 La symétrie par rapport à un plan, une droite ou un point : `reflection symetrie`

Voir aussi : 9.18.3 pour la géométrie plane.
`symetrie`, en géométrie 3-d, a un ou deux arguments : un point ou une droite ou un plan et éventuellement l’objet géométrique à transformer.
Lorsque `symetrie` a un argument, c’est une fonction qui agit sur un objet géométrique : quand le premier argument est un point il s’agit de la symétrie par rapport à ce point, quand le premier argument est une droite il s’agit de la symétrie par rapport à cette droite et quand le premier argument est un plan il s’agit de la symétrie par rapport à ce plan.
On tape :

`s:=symetrie(point(1,1,1))`

Puis :

`s(point(-1,2,4))`

On obtient :

`Le point (3,0,-2) est tracé`

On tape :

`sd:=symetrie(droite([1,1,0],[-1,-3,0]))`

Puis :

`sd(point(-1,2,4))`

On obtient :

`Le point (3,0,-4) est tracé`

On tape :

`sp:=symetrie(plan([1,1,0],[-1,-3,0],[1,1,1]))`

Puis :

`sp(point(-1,2,4))`

On obtient :

`Le point (3,0,4) est tracé`

Lorsque `symetrie` a deux arguments, `symetrie` dessine et renvoie le transformé du deuxième argument dans la symétrie définie par le premier argument : quand le premier argument est un point il s’agit de la symétrie par rapport à ce point, quand le premier argument est une droite il s’agit de la symétrie par rapport à cette droite et quand le premier argument est un plan il s’agit de la symétrie par rapport à ce plan.
On tape :

`symetrie(point(1,1,1),point(-1,2,4))`

On obtient :

`Le point (3,0,-2) est tracé`

On tape :

`symetrie(droite([1,1,0],[-1,-3,0]),point(-1,2,4))`

On obtient :

`Le point (3,0,-4) est tracé`

On tape :

`sp:=symetrie(plan([1,1,0],[-1,-3,0],[1,1,1]),point(-1,2,3))`

On obtient :

`Le point (3,0,4) est tracé`