ENH: Use include and exclude in vis::Group

This commit is contained in:
2023-02-05 11:56:49 -05:00
parent b17b221fa3
commit aa2566319f
2 changed files with 4 additions and 4 deletions

View File

@@ -24,6 +24,7 @@ namespace vis {
vec3 color;
std::vector<std::vector<size_t>> exclude {{0, 1, 2}};
std::vector<std::vector<size_t>> include = combinations(generators(group), 3);
};
struct VBOs {
@@ -53,9 +54,7 @@ namespace vis {
// todo generate all, then mask using glMultiDraw.
const size_t N = 4;
auto gens = generators(group.group);
auto combos = combinations(gens, N - 1);
auto inds = merge<N>(hull<N>(group.group, combos, group.exclude));
auto inds = merge<N>(hull<N>(group.group, group.include, group.exclude));
vbos.ibo.put(inds.begin(), inds.end());
}

View File

@@ -130,7 +130,8 @@ void run(const std::string &config_file, GLFWwindow* window) {
tc::schlafli({5, 3, 3, 2}),
vec5{0.80, 0.09, 0.09, 0.09, 0.04},
vec3{0.90, 0.90, 0.90},
std::vector<std::vector<size_t>>{{0, 1, 2}}
std::vector<std::vector<size_t>>{{0, 1, 2},
{0, 3, 4}, {1, 3, 4}, {2, 3, 4}}
);
registry.emplace<vis::VBOs>(entity);
}