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

Add "default solid model" configuration option #635

Closed
ghost opened this issue Jun 21, 2020 · 7 comments
Closed

Add "default solid model" configuration option #635

ghost opened this issue Jun 21, 2020 · 7 comments

Comments

@ghost
Copy link

ghost commented Jun 21, 2020

System information

SolveSpace version: 3.x

Operating system: All supported

Expected behavior

Add configuration option "default solid model as: union|assembly|difference|intersection" to be able set preferred default solid model type for new solid model groups.

NOTE: Suggest, it would be better if by default "solid model" type would be assembly instead of union, as it prevent immediate boolean operations & it would be easier to tune next created solid before apply union/difference/intersection boolean operations with previous solid model groups.

Actual behavior

Actually by default "solid model as: " set (hardcoded) to union for all new created groups.

As result, on complex models next created solid model group could cause whole model on union operation with previous solid models groups & its sometime hard to tune "united" solids.

Additional information

@whitequark
Copy link
Contributor

This seems like it'd just annoy people who are used to the current behavior, and not do anything about the underlying performance issues.

@ghost
Copy link
Author

ghost commented Jun 21, 2020

This seems like it'd just annoy people who are used to the current behavior

That is why I request to add "option" instead of hardcoding single choice.

By default this "option" of course should be set to union, but user would be able to set other option on they wish.

@whitequark
Copy link
Contributor

Fair point.

@ghost
Copy link
Author

ghost commented Jun 21, 2020

FTR, Maybe it would be enough just add checkbox configuration option "☑ default solid model as assembly", which by default would be unchecked ☐ to provide union as "default solid model" (as it came from SolveSpace v2.x) for this case.

@phkahler
Copy link
Member

This seems like it'd just annoy people who are used to the current behavior, and not do anything about the underlying performance issues.

AFAICT the entire "force to triangle mesh" system is a workaround for issues with NURBS booleans ;-)

I agree that I'd be very annoyed if this was a new default but I could see it as an option.

@ghost
Copy link
Author

ghost commented Jun 21, 2020

I could see it as an option.

Agree.

@phkahler
Copy link
Member

Closing. The correct default should be union. Adding a user option to change it is probably some kind of work around. I'm not even a fan of allowing "assembly" as an option for non-assembly groups as it doesn't do a boolean at all and can lead to overlapping shells, and performance has improve significantly since then.

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

No branches or pull requests

2 participants