gl_math.cpp 857 B

123456789101112131415161718192021222324252627282930313233343536
  1. // This file is part of Desktop App Toolkit,
  2. // a set of libraries for developing nice desktop applications.
  3. //
  4. // For license and copyright information please follow this link:
  5. // https://github.com/desktop-app/legal/blob/master/LEGAL
  6. //
  7. #include "ui/gl/gl_math.h"
  8. namespace Ui::GL {
  9. QVector4D Uniform(const QRect &rect, float factor) {
  10. return QVector4D(
  11. rect.x() * factor,
  12. rect.y() * factor,
  13. rect.width() * factor,
  14. rect.height() * factor);
  15. }
  16. QVector4D Uniform(const Rect &rect) {
  17. return QVector4D(rect.x(), rect.y(), rect.width(), rect.height());
  18. }
  19. QSizeF Uniform(QSize size) {
  20. return size;
  21. }
  22. Rect TransformRect(const Rect &raster, QSize viewport, float factor) {
  23. return {
  24. raster.left() * factor,
  25. float(viewport.height() - raster.bottom()) * factor,
  26. raster.width() * factor,
  27. raster.height() * factor,
  28. };
  29. }
  30. } // namespace Ui::GL