39 lines
1.3 KiB
C++
39 lines
1.3 KiB
C++
#include "flugkurve02.h"
|
|
#include <iostream>
|
|
using namespace std;
|
|
|
|
Vektor mulVektor(const Vektor &vec, const float &skalar){
|
|
Vektor ergebnis = {vec.x * skalar, vec.y * skalar};
|
|
return ergebnis;
|
|
}
|
|
|
|
Vektor addVektor(const Vektor &vec1, const Vektor &vec2) {
|
|
Vektor erg = {vec1.x + vec2.x, vec1.y + vec2.y};
|
|
return erg;
|
|
}
|
|
|
|
Koerper bewegeKoerper(const Koerper &korp, const Vektor &gesamtkraft,const float &dt) {
|
|
Koerper erg = {0, {0,0}, {0,0}};
|
|
// Berechnung der Beschleunigung aus der Kraft
|
|
const float xBeschleunigung = gesamtkraft.x / korp.masse;
|
|
const float yBeschleunigung = gesamtkraft.y / korp.masse;
|
|
|
|
// Ermittlung der neuen Geschwindigkeit
|
|
erg.geschwindigkeit.x = korp.geschwindigkeit.x + dt * xBeschleunigung;
|
|
erg.geschwindigkeit.y = korp.geschwindigkeit.y + dt * yBeschleunigung;
|
|
|
|
// Ermittlung der neuen Position
|
|
erg.position.x += korp.position.x + dt * erg.geschwindigkeit.x;
|
|
erg.position.y += korp.position.y + dt * erg.geschwindigkeit.y;
|
|
return erg;
|
|
}
|
|
|
|
void ausgabeKoerper(const Koerper &korp){
|
|
cout << "x = " << korp.position.x << "y = " << korp.position.y;
|
|
}
|
|
|
|
void ausgabeVektor(const Vektor &vec){
|
|
cout << "x = " << vec.x << endl;
|
|
cout << "y = " << vec.y << endl;
|
|
}
|