mirror of
https://github.com/allemangD/toddcox-visualize.git
synced 2026-01-24 14:39:21 -05:00
ENH: Simplify solving logic
This is a combination of multiple WIP commits: - Semantic group names - G, H - Simplify fan<>() - Template int deduction - Remove _recontext_gens - Move g_gens logic into caller - Move subgroup logic into caller - Move recontext logic into coller - Move _generators, _recontext_gens to anonymous namespace - Simplify hull, tile
This commit is contained in:
@@ -22,9 +22,6 @@ namespace vis {
|
||||
tc::Group group;
|
||||
vec5 root;
|
||||
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 {
|
||||
@@ -62,9 +59,13 @@ namespace vis {
|
||||
vbos.verts.put(lower.colwise().begin(), lower.colwise().end());
|
||||
|
||||
// todo generate all, then mask using glMultiDraw.
|
||||
const size_t N = 4;
|
||||
const Eigen::Index N = 4;
|
||||
|
||||
auto inds = merge<N>(hull<N>(group.group, group.include, group.exclude));
|
||||
auto tiles = hull<N>(group.group);
|
||||
|
||||
tiles.erase(tiles.begin()); // remove {0, 1, 2} cells
|
||||
|
||||
auto inds = merge<N>(tiles);
|
||||
|
||||
vbos.ibo.put(inds.colwise().begin(), inds.colwise().end());
|
||||
}
|
||||
|
||||
@@ -140,14 +140,7 @@ int run(GLFWwindow* window, ImGuiContext* ctx) {
|
||||
entity,
|
||||
tc::schlafli({5, 3, 3, 2}),
|
||||
vec5{0.80, 0.09, 0.09, 0.09, 0.09},
|
||||
vec3{0.90, 0.90, 0.90},
|
||||
std::vector<std::vector<size_t>>{
|
||||
{0, 1, 2},
|
||||
|
||||
{0, 3, 4},
|
||||
{1, 3, 4},
|
||||
{2, 3, 4},
|
||||
}
|
||||
vec3{0.90, 0.90, 0.90}
|
||||
);
|
||||
registry.emplace<vis::VBOs>(entity);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user