Jetzt will ich einen Vektor linear interpolieren und eigentlich ist das ja nicht schwer.
hier mal ein Auszug:
Code: Alles auswählen
//{(2DVECTOR STRUCT)
struct rVector2D {
//2D Vector with x,y as Parameters
float x,y;
rVector2D(): x(0), y(0) {};
rVector2D(const rVector2D& xbRefTo2DVector) : x(xbRefTo2DVector.x), y(xbRefTo2DVector.y) {};
rVector2D(float bx, float by) : x(bx), y(by) {};
};
//}
//{(INLINE 2D OPERATORS OUTSIDE)
inline rVector2D operator + (rVector2D& xbNum1, rVector2D& xbNum2) {
rVector2D ReturnVector(xbNum1.x+xbNum2.x, xbNum1.y+xbNum2.y);
return ReturnVector;
};
inline rVector2D operator - (rVector2D& xbNum1, rVector2D& xbNum2) {
rVector2D ReturnVector(xbNum1.x-xbNum2.x, xbNum1.y-xbNum2.y);
return ReturnVector;
};
inline rVector2D operator * (rVector2D& xbNum1, float xbSkalar) {
rVector2D ReturnVector(xbNum1.x*xbSkalar, xbNum1.y*xbSkalar);
return ReturnVector;
};
inline rVector2D operator * (float xbSkalar, rVector2D& xbNum1) {
rVector2D ReturnVector(xbNum1.x*xbSkalar, xbNum1.y*xbSkalar);
return ReturnVector;
};
Hier mein Code:
Code: Alles auswählen
inline rVector2D VectorInterpolate(rVector2D& xbVec1, rVector2D& xbVec2, float bFloatFac) {
rVector2D ReturnVector(xbVec1+ bFloatFac *(xbVec2-xVec1));
return ReturnVector;
};
error: no match for 'operator+' in 'operator*(float, rVector2D&)(((rVector2D&)(+xbVec1))) + xbVec2'|
Was habe ich falsch gemacht? Wär schön wenn mir jemand helfen könnte.