1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| # -*- coding: cp1252 -*-
import math
class Vector:
def __init__(self, x=0, y=0):
self.x=x
self.y=y
def __eq__(self, vB):
return (self.x==vB.x) and (self.y==vB.y) ## test l'égalité de 2 vecteurs
def __add__(self, vB):
return Vector(self.x+vB.x,self.y+vB.y) ## retourne le vecteur somme
def __sub__(self, vB):
return Vector(self.x-vB.x,self.y-vB.y) ## retourne le vecteur différence
def __mul__(self, c):
if isinstance(c,Vector):
return self.x*c.x+self.y*c.y ## retourne le produit scalaire
else:
return Vector(c*self.x,c*self.y) ## retourne le vecteur multiplé par un scalaire
def __div__(self, c):
return Vector(self.x/c, self.y/c) ## retourne le vecteur ayant subi une division scalaire
def __abs__(self):
return math.hypot(self.x, self.y) ## retourne la norme2 du vecteur
def __str__(self):
return '('+str(self.x)+','+str(self.y)+')' ## retourne la réprésentation du vecteur sous forme d'une chaîne |
Partager