Added tests and remove this->

This commit is contained in:
Franz Hoeltermann 2025-07-05 22:18:40 +02:00
parent 39f55ea54d
commit 8bb256e25d
2 changed files with 22 additions and 8 deletions

View file

@ -62,19 +62,19 @@ Vector2D Hyprutils::Math::Vector2D::transform(eTransform transform, const Vector
case HYPRUTILS_TRANSFORM_NORMAL:
return *this;
case HYPRUTILS_TRANSFORM_90:
return Vector2D(this->y, monitorSize.y - this->x);
return Vector2D(y, monitorSize.y - x);
case HYPRUTILS_TRANSFORM_180:
return Vector2D(monitorSize.x - this->x, monitorSize.y - this->y);
return Vector2D(monitorSize.x - x, monitorSize.y - y);
case HYPRUTILS_TRANSFORM_270:
return Vector2D(monitorSize.x - this->y, this->x);
return Vector2D(monitorSize.x - y, x);
case HYPRUTILS_TRANSFORM_FLIPPED:
return Vector2D(monitorSize.x - this->x, this->y);
return Vector2D(monitorSize.x - x, y);
case HYPRUTILS_TRANSFORM_FLIPPED_90:
return Vector2D(this->y, this->x);
return Vector2D(y, x);
case HYPRUTILS_TRANSFORM_FLIPPED_180:
return Vector2D(this->x, monitorSize.y - this->y);
return Vector2D(x, monitorSize.y - y);
case HYPRUTILS_TRANSFORM_FLIPPED_270:
return Vector2D(monitorSize.x - this->y, monitorSize.y - this->x);
return Vector2D(monitorSize.x - y, monitorSize.y - x);
default:
return *this;
}

View file

@ -104,5 +104,19 @@ int main(int argc, char** argv, char** envp) {
EXPECT(std::abs(expected.getMatrix().at(8) - matrixBox.getMatrix().at(8)) < 0.1, true);
}
{
Vector2D original(30, 40);
Vector2D monitorSize(100, 200);
EXPECT_VECTOR2D(original.transform(HYPRUTILS_TRANSFORM_NORMAL, monitorSize), Vector2D(30, 40 ));
EXPECT_VECTOR2D(original.transform(HYPRUTILS_TRANSFORM_90, monitorSize), Vector2D(40, 200 - 30));
EXPECT_VECTOR2D(original.transform(HYPRUTILS_TRANSFORM_180, monitorSize), Vector2D(100 - 30, 200 - 40));
EXPECT_VECTOR2D(original.transform(HYPRUTILS_TRANSFORM_270, monitorSize), Vector2D(100 - 40, 30 ));
EXPECT_VECTOR2D(original.transform(HYPRUTILS_TRANSFORM_FLIPPED, monitorSize), Vector2D(100 - 30, 40 ));
EXPECT_VECTOR2D(original.transform(HYPRUTILS_TRANSFORM_FLIPPED_90, monitorSize), Vector2D(40, 30 ));
EXPECT_VECTOR2D(original.transform(HYPRUTILS_TRANSFORM_FLIPPED_180, monitorSize), Vector2D(30, 200 - 40));
EXPECT_VECTOR2D(original.transform(HYPRUTILS_TRANSFORM_FLIPPED_270, monitorSize), Vector2D(100 - 40, 200 - 30));
}
return ret;
}
}