Пример #1
0
Vecteur Vecteur::operator+(const Vecteur &vecteur2) // Somme vectorielle
{
	assert(dim()==vecteur2.dim() && ( (ref() && vecteur2.ref()) || (!ref() && !vecteur2.ref()) ));
	
	changerDeReferentiel(vecteur2.ref());
	
	Vecteur res(*this);
	
	for(int i=0 ; i<dim() ; i++)
	{
		res[i] += vecteur2[i];
	}
	
	return res;
}
Point Point::operator+(Vecteur &vecteur2) const // Somme vectorielle
{
    assert(dim()==vecteur2.dim() && ( (ref() && vecteur2.ref()) || (!ref() && !vecteur2.ref()) ));

    if(ref())
    {
        vecteur2.changerDeReferentiel(ref());
    }

    Point res(*this);

    for(int i=0 ; i<dim() ; i++)
    {
        res[i] += vecteur2[i];
    }

    return res;
}
Пример #3
0
Vecteur Vecteur::operator+(const Vecteur &vecteur2) const // Somme vectorielle
{
	assert(dim()==vecteur2.dim() && ref() == vecteur2.ref());
	
	Vecteur res(*this);
	
	for(int i=0 ; i<dim() ; i++)
	{
		res[i] += vecteur2[i];
	}
	
	return res;
}
Пример #4
0
bool Vecteur::operator==(const Vecteur &vecteur2)// Test d'égalité
{
	if(this == &vecteur2)
	{
		return true;
	}
	
	if(dim() != vecteur2.dim())
	{
		return false;
	}
	
	changerDeReferentiel(vecteur2.ref());
	
	bool res = true;
	for(int i=0 ; i<dim() && res ; i++)
	{
		res &= (coord[i]==vecteur2[i]); // On pourrait peut-être introduire un seuil
	}
	return res;
}
Пример #5
0
Vecteur::Vecteur(const Vecteur &vecteurACopier) //Copie d'un vecteur
{
	init(vecteurACopier.coord, vecteurACopier.ref());
}