Sean Olson

Results 55 comments of Sean Olson

> What do you think this should render as? I think the main problem is that the `here` label doesn't point at the beginning, end, or middle of the relevant...

Introducing a new type like `JournaledStorage` could once again increase the type complexity in Plexus' internals. Currently, storage is accessed via the `AsStorage` trait, which exposes a reference to a...

I think this issue (or others; I'm not yet sure how to organize the work) should track the following changes to graphs: - Disallow singularities. See 7de93ea, which removed their...

Another important observation that's worth noting here: disallowing these non-manifold features has implications for the way that topological mutations work, especially removals. For example, when removing a face, it may...

So far, I'm experimenting with a simple hierarchical model for removals. When topology is removed, any and all dependent topology is also removed. This means that removing faces is the...

> This differs from OpenMesh, which allows topology to be removed individually. Hmm, that's not quite right. In the linked example, removing vertices in OpenMesh implicitly removes their associated edges....

This is nearly fixed; only vertex removal is yet unimplemented and there is a remaining bug in arc removals. Removals are destructive, and will always remove any dependent topology. There...

There is no API for this at the moment, but it's something I've been thinking about. There are two mechanisms that I think may be useful: 1. A method that...

[Here's a first stab](https://github.com/olson-sean-k/plexus/blob/a1fb5981bf71d8b984666454100b60fafcd50c6a/plexus/src/graph/mod.rs#L627) at isolating disjoint subgraphs. It comes with basic vertex traversal features on the same branch. `disjoint_subgraphs` returns an iterator over arbitrary vertices in each disjoint subgraph....

I've been thinking of another way to approach this that may be useful. `MeshGraph` could provide a `split_at_path` function. This would accept a [path](https://plexus.rs/user-guide/graphs/#representation) and "cut" the graph into two...