vect X vect?
От: Аноним  
Дата: 30.05.06 08:34
Оценка:
Добрый день!

Можно ли ввести операцию векторного произведения векторов и обозначить ее как принятов в математике но вместо креста взять X. Пока сделал + вроде работаети но не красиво как то.

class vector3D {
public:

  point3D M1;
  point3D M2;


  vector3D()  {
     M1=point3D(0,0,0);
     M2=point3D(0,0,0);
  }

  vector3D(point3D _M1, point3D _M2)  {
     M1=_M1;
     M2=_M2;
  }

  double operator*(vector3D &A){
     return
        (this->M2.x-this->M1.x)*(A.M2.x-A.M1.x)+
        (this->M2.y-this->M1.y)*(A.M2.y-A.M1.y)+
        (this->M2.z-this->M1.z)*(A.M2.z-A.M1.z)
     ;
  }



  vector3D operator+ (vector3D &A){
     return  vector3D
     (
        point3D(this->M1),
        point3D
        (
          (this->M2.y-this->M1.y)*(A.M2.z-A.M1.z)-(A.M2.y-A.M1.y)*(this->M2.z-this->M1.z),
          (this->M2.z-this->M1.z)*(A.M2.x-A.M1.x)-(A.M2.z-A.M1.z)*(this->M2.x-this->M1.x),
          (this->M2.x-this->M1.x)*(A.M2.y-A.M1.y)-(A.M2.x-A.M1.x)*(this->M2.y-this->M1.y)
        )
     );
  }


};
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.