From 44267293e02480655fb4337636b0d7bccf563a28 Mon Sep 17 00:00:00 2001 From: Nomango Date: Wed, 24 Jun 2020 17:51:33 +0800 Subject: [PATCH 1/3] update Color --- src/kiwano/render/Color.cpp | 24 +++++++++++++++++++++--- src/kiwano/render/Color.h | 28 +++++++++++++++++++++++++--- 2 files changed, 46 insertions(+), 6 deletions(-) diff --git a/src/kiwano/render/Color.cpp b/src/kiwano/render/Color.cpp index ef4272e3..c351369c 100644 --- a/src/kiwano/render/Color.cpp +++ b/src/kiwano/render/Color.cpp @@ -43,7 +43,15 @@ Color::Color() { } -Color::Color(uint32_t r, uint32_t g, uint32_t b, float alpha) +Color::Color(float r, float g, float b, float alpha) + : r(r) + , g(g) + , b(b) + , a(alpha) +{ +} + +Color::Color(int r, int g, int b, float alpha) : r(r / 255.0f) , g(g / 255.0f) , b(b / 255.0f) @@ -59,7 +67,12 @@ Color::Color(uint32_t rgb, float alpha) { } -Color Color::Rgb(uint32_t r, uint32_t g, uint32_t b) +Color Color::Rgb(float r, float g, float b) +{ + return Color::Rgba(r, g, b, 1.0f); +} + +Color Color::Rgb(int r, int g, int b) { return Color::Rgba(r, g, b, 1.0f); } @@ -69,7 +82,12 @@ Color Color::Rgb(uint32_t rgb) return Color::Rgba(rgb, 1.0f); } -Color Color::Rgba(uint32_t r, uint32_t g, uint32_t b, float alpha) +Color Color::Rgba(float r, float g, float b, float alpha) +{ + return Color(r, g, b, alpha); +} + +Color Color::Rgba(int r, int g, int b, float alpha) { return Color(r, g, b, alpha); } diff --git a/src/kiwano/render/Color.h b/src/kiwano/render/Color.h index 34870a65..b16484a8 100644 --- a/src/kiwano/render/Color.h +++ b/src/kiwano/render/Color.h @@ -46,13 +46,21 @@ public: /// @details 默认颜色为 R: 0, G: 0, B: 0, A: 1.0 Color(); + /// \~chinese + /// @brief 构造 RGBA 颜色 + /// @param r 红色值,范围 0 - 1 + /// @param g 绿色值,范围 0 - 1 + /// @param b 蓝色值,范围 0 - 1 + /// @param alpha Alpha值,范围 0.0 - 1.0 + Color(float r, float g, float b, float alpha = 1.0f); + /// \~chinese /// @brief 构造 RGBA 颜色 /// @param r 红色值,范围 0 - 255 /// @param g 绿色值,范围 0 - 255 /// @param b 蓝色值,范围 0 - 255 /// @param alpha Alpha值,范围 0.0 - 1.0 - Color(uint32_t r, uint32_t g, uint32_t b, float alpha = 1.0f); + Color(int r, int g, int b, float alpha = 1.0f); /// \~chinese /// @brief 构造 RGBA 颜色 @@ -60,25 +68,39 @@ public: /// @param alpha Alpha值,范围 0.0 - 1.0 Color(uint32_t rgb, float alpha = 1.0f); + /// \~chinese + /// @brief 构造 RGB 颜色 + /// @param r 红色值,范围 0 - 1 + /// @param g 绿色值,范围 0 - 1 + /// @param b 蓝色值,范围 0 - 1 + static Color Rgb(float r, float g, float b); + /// \~chinese /// @brief 构造 RGB 颜色 /// @param r 红色值,范围 0 - 255 /// @param g 绿色值,范围 0 - 255 /// @param b 蓝色值,范围 0 - 255 - static Color Rgb(uint32_t r, uint32_t g, uint32_t b); + static Color Rgb(int r, int g, int b); /// \~chinese /// @brief 构造 RGB 颜色 /// @param rgb 使用16进制整形值表示 RGB颜色 static Color Rgb(uint32_t rgb); + /// \~chinese + /// @brief 构造 RGB 颜色 + /// @param r 红色值,范围 0 - 1 + /// @param g 绿色值,范围 0 - 1 + /// @param b 蓝色值,范围 0 - 1 + static Color Rgba(float r, float g, float b, float alpha); + /// \~chinese /// @brief 构造 RGBA 颜色 /// @param r 红色值,范围 0 - 255 /// @param g 绿色值,范围 0 - 255 /// @param b 蓝色值,范围 0 - 255 /// @param alpha Alpha值,范围 0.0 - 1.0 - static Color Rgba(uint32_t r, uint32_t g, uint32_t b, float alpha); + static Color Rgba(int r, int g, int b, float alpha); /// \~chinese /// @brief 构造 RGBA 颜色 From 9d51b1c6692efc8e8ef539f51bf560ed0301a91a Mon Sep 17 00:00:00 2001 From: Nomango Date: Wed, 24 Jun 2020 18:35:16 +0800 Subject: [PATCH 2/3] minor fixes --- src/kiwano/platform/Window.h | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/kiwano/platform/Window.h b/src/kiwano/platform/Window.h index f8845f6a..daec4663 100644 --- a/src/kiwano/platform/Window.h +++ b/src/kiwano/platform/Window.h @@ -54,6 +54,13 @@ struct Resolution uint32_t width = 0; ///< 分辨率宽度 uint32_t height = 0; ///< 分辨率高度 uint32_t refresh_rate = 0; ///< 刷新率 + + Resolution(uint32_t width, uint32_t height, uint32_t refresh_rate) + : width(width) + , height(height) + , refresh_rate(refresh_rate) + { + } }; /** From 8e3d418f7a1f10840fcd88ea5ed77fb50dd77215 Mon Sep 17 00:00:00 2001 From: Nomango Date: Wed, 24 Jun 2020 18:38:15 +0800 Subject: [PATCH 3/3] minor fixes --- src/kiwano/platform/Window.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/kiwano/platform/Window.h b/src/kiwano/platform/Window.h index daec4663..af1f4422 100644 --- a/src/kiwano/platform/Window.h +++ b/src/kiwano/platform/Window.h @@ -55,6 +55,8 @@ struct Resolution uint32_t height = 0; ///< 分辨率高度 uint32_t refresh_rate = 0; ///< 刷新率 + Resolution() = default; + Resolution(uint32_t width, uint32_t height, uint32_t refresh_rate) : width(width) , height(height)