mirror of
https://git.mirrors.martin98.com/https://github.com/SoftFever/OrcaSlicer.git
synced 2025-10-22 22:31:09 +08:00

* Initial commit for the builder * fix wx, use hack to install into /app * add some workarounds for /usr/local * fix up rest of paths * attempt to fix wxwebview undef * figure out why wxwidgets isnt getting its patches applied * do "proper" patching of wxwidgets * Flip the flag * actually append the /usr/local * restrict package finding to flatpak only * Update the destdir stuff for mpfr, gmp * Transfer over all the _destdir, again * update patch command for all other plats * initial ci check * what even happened * clear ci image * I doubt this will do anything * do cleanup after running each step * remove build objects for flatpak ci * compress debug info * Fix MacOS build * Try saving space after building deps * No debug info for now * Do debug info, use thin static archives * use BSD flag, not --thin * try building with lto * Use release, no debug info * remove lto * Revert the last 5 commits * It might require write perms * Revert "It might require write perms" This reverts commit 44cec58a5713cb5ebbc44e64e314b88b553b8f75. * Import fixes for merge * remove some patch stuff * the worst hack! * remove uneeded patches * Initial commit for the builder * note to self, go back to regular wx * attempt to fix wxwebview undef * do "proper" patching of wxwidgets * update patch command for all other plats * what even happened * -ldep_name-NOTFOUND is still here * concat patches * Build wx with flatpak * more wx shenatigans * fix a missing import * build wx with proper flags * fix imports and libs * trigger ci * try fixing mac and windows ci * remove duplicate definition of freetype * curl may not have openssl for a dep * has openssl been found? * force building * build images on apple * cleanup for review * cleanup cmake files --------- Co-authored-by: SoftFever <softfeverever@gmail.com>
47 lines
1.5 KiB
C++
47 lines
1.5 KiB
C++
#include "ParameterUtils.hpp"
|
|
#include <cassert>
|
|
|
|
namespace Slic3r {
|
|
|
|
std::vector<LayerPrintSequence> get_other_layers_print_sequence(int sequence_nums, const std::vector<int> &sequence)
|
|
{
|
|
std::vector<LayerPrintSequence> res;
|
|
if (sequence_nums == 0 || sequence.empty())
|
|
return res;
|
|
|
|
assert(sequence.size() % sequence_nums == 0);
|
|
|
|
res.reserve(sequence_nums);
|
|
size_t item_nums = sequence.size() / sequence_nums;
|
|
|
|
for (int i = 0; i < sequence_nums; ++i) {
|
|
std::vector<int> item;
|
|
item.assign(sequence.begin() + i * item_nums, sequence.begin() + ((i + 1) * item_nums));
|
|
|
|
assert(item.size() > 2);
|
|
std::pair<std::pair<int, int>, std::vector<int>> res_item;
|
|
res_item.first.first = item[0];
|
|
res_item.first.second = item[1];
|
|
res_item.second.assign(item.begin() + 2, item.end());
|
|
res.emplace_back(std::move(res_item));
|
|
}
|
|
|
|
return res;
|
|
}
|
|
|
|
void get_other_layers_print_sequence(const std::vector<LayerPrintSequence> &customize_sequences, int &sequence_nums, std::vector<int> &sequence)
|
|
{
|
|
sequence_nums = 0;
|
|
sequence.clear();
|
|
if (customize_sequences.empty()) { return; }
|
|
|
|
sequence_nums = (int) customize_sequences.size();
|
|
for (const auto &customize_sequence : customize_sequences) {
|
|
sequence.push_back(customize_sequence.first.first);
|
|
sequence.push_back(customize_sequence.first.second);
|
|
sequence.insert(sequence.end(), customize_sequence.second.begin(), customize_sequence.second.end());
|
|
}
|
|
}
|
|
|
|
}; // namespace Slic3r
|