Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorvng <viktor.govako@gmail.com>2013-05-04 01:57:20 +0400
committerAlex Zolotarev <alex@maps.me>2015-09-23 01:54:28 +0300
commitba5f1d312bb50f47b92feefe195b2165fe43e9d9 (patch)
treea4c9a0e299c823412a7f1866fef922c302146cf1 /skin_generator
parentc9a0c07cf1f5c649cd23ea4d22c27d39861b7ec8 (diff)
[skin_generator] Sort icons by greater height when packing on texture.
Diffstat (limited to 'skin_generator')
-rw-r--r--skin_generator/skin_generator.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/skin_generator/skin_generator.cpp b/skin_generator/skin_generator.cpp
index db43071deb..1e2bb8ab7f 100644
--- a/skin_generator/skin_generator.cpp
+++ b/skin_generator/skin_generator.cpp
@@ -205,11 +205,12 @@ namespace tools
return s;
}
- struct LessHeight
+ struct GreaterHeight
{
- bool operator()(SkinGenerator::SymbolInfo const & left, SkinGenerator::SymbolInfo const & right)
+ bool operator() (SkinGenerator::SymbolInfo const & left,
+ SkinGenerator::SymbolInfo const & right) const
{
- return left.m_size.height() < right.m_size.height();
+ return (left.m_size.height() > right.m_size.height());
}
};
@@ -356,6 +357,8 @@ namespace tools
for (TSkinPages::iterator pageIt = m_pages.begin(); pageIt != m_pages.end(); ++pageIt)
{
SkinPageInfo & page = *pageIt;
+ sort(page.m_symbols.begin(), page.m_symbols.end(), GreaterHeight());
+
/// Trying to repack all elements as tight as possible
page.m_width = 64;
page.m_height = 64;
@@ -385,6 +388,7 @@ namespace tools
continue;
}
+ /*
for (TFonts::iterator fontIt = page.m_fonts.begin(); fontIt != page.m_fonts.end(); ++fontIt)
{
for (TChars::iterator charIt = fontIt->m_chars.begin(); charIt != fontIt->m_chars.end(); ++charIt)
@@ -414,6 +418,7 @@ namespace tools
page.m_height *= 2;
continue;
}
+ */
break;
}