Vous êtes engagé par une société voulant se lancer dans une application de géométrie. Pour tester vos connaissances dans ce domaine et celui de l'informatique, elle vous demande de faire un petit programme permettant à un utilisateur de donner des coordonnés à des points dans l'espace (3D) et de calculer la distance entre ces points.
Vous devez donc réalisez un programme contenant une classe Point
, qui permet d'initialiser un point (objet de la classe Point) de trois manières différentes. C'est à dire selon les valeurs initiales connues des trois coordonnées, on connaît soit (x), soit (x et y), soit (x, y et z). Si une coordonnée n'est pas connue, elle vaut 0.
Indice : utilisez les valeurs par défaut dans votre constructeur.
Pour permette à l'utilisateur de jouer un peu avec le programme, vous devez programmer 8 méthodes :
getX(self)
: permet de récupérer la coordonnée du point x de l'objet Point qui l'appelle.getY(self)
: permet de récupérer la coordonnée du point y de l'objet Point qui l'appelle.getZ(self)
: permet de récupérer la coordonnée du point z de l'objet Point qui l'appelle.setX(self, a)
: permet de changer la coordonnée du point x de l'objet Point qui l'appelle à la valeur contenue dans la variable "a".setY(self, a)
: permet de changer la coordonnée du point y de l'objet Point qui l'appelle à la valeur contenue dans la variable "a".setZ(self, a)
: permet de changer la coordonnée du point z de l'objet Point qui l'appelle à la valeur contenue dans la variable "a".translate(self, dx=0, dy=0, dz=0)
: permet de translater les coordonnées de l'objet Point qui l'appelle.*Attention :* utilisez des valeurs par défaut si l'utilisateur ne spécifie pas la translation d'une des valeurs de la coordonnée.distance(self, p)
: Retourne la distance entre la coordonnée d'un objet Point et un autre objet Point contenu dans la variable p. Puisque l'on donne en entrée un autre objet Point, vos méthodes codées précédemment peuvent être utilisées.
- Attention :
- La formule de la distance entre deux points dans l'espace est :
- Vous pouvez importer le module math également pour réaliser cette formule.