Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Set Linear doesn't work on flat surfaces #33

Open
hced opened this issue Nov 28, 2024 · 3 comments
Open

Set Linear doesn't work on flat surfaces #33

hced opened this issue Nov 28, 2024 · 3 comments

Comments

@hced
Copy link

hced commented Nov 28, 2024

I'm using Blender 4.3 and EdgeFlow 1.0.0 on Windows.

For me, using Set Linear doesn't work on edges that flow over a flat surface, whereas it works fine on uneven surfaces (see video). Is this intentional or can it be fixed to work like the attached video?

Note: In the video I'm using another operator, Straighten Loops (Smart Loops Toolkit) to demonstrate how I'd imagine Set Linear would work. I can certainly use the latter addon for this, but would prefer Set Linear as it completes the "Set" trilogy :)

20241128154012.mp4

I'm also attaching the exact .blend file used in the video.
Set_Linear_issue_blendfile.zip

@BenjaminSauder
Copy link
Owner

Well - this works as expected. The addon tries to match the blenders loop select behaviour - if you apply that selection logic you will see that from that perspective, it's not one but three edgeloops. The centerpoints of each edgeloop are already in the middle nothing visible really happens when you run this tool.

I can see how this is not the behaviour you want in this case, but sadly when playing with heuristics/rules - chances are a high that another usecase breaks.

One thing which would be interessting to explore - expose some of the rules to the user, so you could allow the script to see this as one edgeloop. But it has been a while since I wrote that section of the code - and I fear its confusing :D

@hced
Copy link
Author

hced commented Dec 5, 2024

Thanks for your explanation, Benjamin! I agree with your mention of breaking the intended usecase. But I'm trying to understand why one usecase would actually defeat the other.

To me, it seems logical that if you only want to linearize (what Blender considers to be) legal loops, nothing prevents you from selecting that via Ctr- or Alt-click. While, at the same time, if you select anything else (an arbitrary series of connected edges), it would be safe to assume that the user wants to linearize that?

I apologize for my annoying thoughts. :) Perhaps I'm missing something that's conceptually key to the idea of Set Linear?

@BenjaminSauder
Copy link
Owner

Well you miss out on the fact that i need to sort a spaghetti selection and filter out edgeloops to work on - its not based on selecting just one edgeloop.

As is said it might make sense to look into processing the edgeloops to merge something like in your example, i did briefly experiment with this a few days ago, but not working as of now ;)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants