From 2d6b9478096580c2d6a6bed5d2cdbb191396dc9a Mon Sep 17 00:00:00 2001 From: lisyarus Date: Sun, 30 Aug 2020 08:43:34 +0300 Subject: [PATCH] Move pixmap from util to gfx --- libs/gfx/include/psemek/gfx/color.hpp | 13 +++++++++++++ .../util => gfx/include/psemek/gfx}/pixmap.hpp | 11 ++++++----- libs/gfx/include/psemek/gfx/texture.hpp | 4 ++-- libs/{util/source => gfx/source/gfx}/pixmap.cpp | 4 ++-- libs/pcg/CMakeLists.txt | 2 +- libs/pcg/include/psemek/pcg/perlin.hpp | 6 +++--- libs/pcg/source/perlin.cpp | 2 +- todo.md | 1 + 8 files changed, 29 insertions(+), 14 deletions(-) create mode 100644 libs/gfx/include/psemek/gfx/color.hpp rename libs/{util/include/psemek/util => gfx/include/psemek/gfx}/pixmap.hpp (96%) rename libs/{util/source => gfx/source/gfx}/pixmap.cpp (97%) diff --git a/libs/gfx/include/psemek/gfx/color.hpp b/libs/gfx/include/psemek/gfx/color.hpp new file mode 100644 index 00000000..cd82c58d --- /dev/null +++ b/libs/gfx/include/psemek/gfx/color.hpp @@ -0,0 +1,13 @@ +#pragma once + +#include + +#include + +namespace psemek::gfx +{ + + using color_rgb = geom::vector; + using color_rgba = geom::vector; + +} diff --git a/libs/util/include/psemek/util/pixmap.hpp b/libs/gfx/include/psemek/gfx/pixmap.hpp similarity index 96% rename from libs/util/include/psemek/util/pixmap.hpp rename to libs/gfx/include/psemek/gfx/pixmap.hpp index 8ac38617..e292dee0 100644 --- a/libs/util/include/psemek/util/pixmap.hpp +++ b/libs/gfx/include/psemek/gfx/pixmap.hpp @@ -1,9 +1,10 @@ #pragma once -#include -#include +#include -namespace psemek::util +#include + +namespace psemek::gfx { template @@ -53,8 +54,8 @@ namespace psemek::util }; using pixmap_monochrome = basic_pixmap; - using pixmap_rgb = basic_pixmap>; - using pixmap_rgba = basic_pixmap>; + using pixmap_rgb = basic_pixmap; + using pixmap_rgba = basic_pixmap; using pixmap_float = basic_pixmap; pixmap_monochrome read_pgm(std::istream & is); diff --git a/libs/gfx/include/psemek/gfx/texture.hpp b/libs/gfx/include/psemek/gfx/texture.hpp index 679ff7af..37b86a39 100644 --- a/libs/gfx/include/psemek/gfx/texture.hpp +++ b/libs/gfx/include/psemek/gfx/texture.hpp @@ -1,7 +1,7 @@ #pragma once #include -#include +#include #include namespace psemek::gfx @@ -76,7 +76,7 @@ namespace psemek::gfx } template - void load(util::basic_pixmap const & p) + void load(basic_pixmap const & p) { load(p.width(), p.height(), p.data()); } diff --git a/libs/util/source/pixmap.cpp b/libs/gfx/source/gfx/pixmap.cpp similarity index 97% rename from libs/util/source/pixmap.cpp rename to libs/gfx/source/gfx/pixmap.cpp index 05c14267..717438fd 100644 --- a/libs/util/source/pixmap.cpp +++ b/libs/gfx/source/gfx/pixmap.cpp @@ -1,8 +1,8 @@ -#include +#include #include -namespace psemek::util +namespace psemek::gfx { pixmap_monochrome read_pgm(std::istream & is) diff --git a/libs/pcg/CMakeLists.txt b/libs/pcg/CMakeLists.txt index e051af16..c8408247 100644 --- a/libs/pcg/CMakeLists.txt +++ b/libs/pcg/CMakeLists.txt @@ -3,4 +3,4 @@ file(GLOB_RECURSE PSEMEK_PCG_SOURCES RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" "sou add_library(pcg ${PSEMEK_PCG_HEADERS} ${PSEMEK_PCG_SOURCES}) target_include_directories(pcg PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/include") -target_link_libraries(pcg PUBLIC util geom) +target_link_libraries(pcg PUBLIC util geom gfx) diff --git a/libs/pcg/include/psemek/pcg/perlin.hpp b/libs/pcg/include/psemek/pcg/perlin.hpp index a3c91ed0..083ae4d0 100644 --- a/libs/pcg/include/psemek/pcg/perlin.hpp +++ b/libs/pcg/include/psemek/pcg/perlin.hpp @@ -1,6 +1,6 @@ #pragma once -#include +#include #include namespace psemek::pcg @@ -9,7 +9,7 @@ namespace psemek::pcg struct perlin { perlin() = default; - perlin(util::basic_pixmap> grad_map); + perlin(gfx::basic_pixmap> grad_map); perlin(perlin &&) = default; perlin & operator = (perlin &&) = default; @@ -29,7 +29,7 @@ namespace psemek::pcg float operator()(float x, float y) const; private: - util::basic_pixmap> grad_map_; + gfx::basic_pixmap> grad_map_; }; } diff --git a/libs/pcg/source/perlin.cpp b/libs/pcg/source/perlin.cpp index fc3f130d..20264b16 100644 --- a/libs/pcg/source/perlin.cpp +++ b/libs/pcg/source/perlin.cpp @@ -7,7 +7,7 @@ namespace psemek::pcg { - perlin::perlin(util::basic_pixmap> grad_map) + perlin::perlin(gfx::basic_pixmap> grad_map) : grad_map_(std::move(grad_map)) {} diff --git a/todo.md b/todo.md index 7c86ce72..2374ebda 100644 --- a/todo.md +++ b/todo.md @@ -3,3 +3,4 @@ * Create a simple generic primive painter * Design ui system * Add platform deployment tools +* Add color utilities