allow for animated moves

This commit is contained in:
Justin R. Miller
2014-02-06 16:08:44 -05:00
parent 26433e3288
commit e48207a4ef
4 changed files with 12 additions and 7 deletions

View File

@@ -28,9 +28,14 @@ void Transform::updateAnimations() {
});
}
void Transform::moveBy(double dx, double dy) {
x += cos(angle) * dx + sin(angle) * dy;
y += cos(angle) * dy + sin(-angle) * dx;
void Transform::moveBy(double dx, double dy, double duration) {
if (duration == 0) {
x += cos(angle) * dx + sin(angle) * dy;
y += cos(angle) * dy + sin(-angle) * dx;
} else {
animations.emplace_front(x, x + cos(angle) * dx + sin(angle) * dy, x, duration);
animations.emplace_front(y, y + cos(angle) * dy + sin(-angle) * dx, y, duration);
}
}
void Transform::scaleBy(double ds, double cx, double cy, double duration) {