DDraceNetwork Documentation
Loading...
Searching...
No Matches
quadart.h
Go to the documentation of this file.
1#ifndef GAME_EDITOR_QUADART_H
2#define GAME_EDITOR_QUADART_H
3
4#include <base/types.h>
5
6#include <engine/image.h>
7
9#include <game/mapitems.h>
10
11#include <memory>
12#include <optional>
13
23
25{
26public:
27 CQuadArt(CQuadArtParameters Parameters, CImageInfo &&Img);
28 ~CQuadArt();
29 bool Create(std::shared_ptr<CLayerQuads> &pQuadLayer);
30
31private:
32 ivec2 GetOptimizedQuadSize(const ColorRGBA &Pixel, const ivec2 &Pos);
33 void MarkPixelAsVisited(const ivec2 &Pos, const ivec2 &Size);
34
35 size_t FindSuperPixelSize(const ColorRGBA &Pixel, const ivec2 &Pos, size_t CurrentSize);
36
37 ColorRGBA GetPixelClamped(const ivec2 &Pos) const;
38 bool IsPixelOptimizable(const ivec2 &Pos, const ColorRGBA &Pixel) const;
39
40 CQuad CreateNewQuad(const vec2 &Pos, const ivec2 &Size, const ColorRGBA &Color) const;
41
44 std::vector<bool> m_vVisitedPixels;
45};
46#endif
Definition image.h:12
Definition quadart.h:15
int m_ImagePixelSize
Definition quadart.h:17
bool m_Centralize
Definition quadart.h:19
bool m_Optimize
Definition quadart.h:20
char m_aFilename[IO_MAX_PATH_LENGTH]
Definition quadart.h:21
int m_QuadPixelSize
Definition quadart.h:18
CQuadArt(CQuadArtParameters Parameters, CImageInfo &&Img)
Definition quadart.cpp:12
ColorRGBA GetPixelClamped(const ivec2 &Pos) const
Definition quadart.cpp:76
bool Create(std::shared_ptr< CLayerQuads > &pQuadLayer)
Definition quadart.cpp:138
size_t FindSuperPixelSize(const ColorRGBA &Pixel, const ivec2 &Pos, size_t CurrentSize)
Definition quadart.cpp:47
CImageInfo m_Img
Definition quadart.h:43
void MarkPixelAsVisited(const ivec2 &Pos, const ivec2 &Size)
Definition quadart.cpp:91
ivec2 GetOptimizedQuadSize(const ColorRGBA &Pixel, const ivec2 &Pos)
Definition quadart.cpp:23
CQuad CreateNewQuad(const vec2 &Pos, const ivec2 &Size, const ColorRGBA &Color) const
Definition quadart.cpp:104
CQuadArtParameters m_Parameters
Definition quadart.h:42
~CQuadArt()
Definition quadart.cpp:18
std::vector< bool > m_vVisitedPixels
Definition quadart.h:44
bool IsPixelOptimizable(const ivec2 &Pos, const ColorRGBA &Pixel) const
Definition quadart.cpp:83
Definition mapitems.h:337
Definition color.h:182
constexpr auto IO_MAX_PATH_LENGTH
Definition types.h:49
vector2_base< int > ivec2
Definition vmath.h:163
vector2_base< float > vec2
Definition vmath.h:161