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

Error computing extrude-difference on step-rotated assembly #871

Open
davidgilkaufman opened this issue Dec 26, 2020 · 4 comments
Open

Error computing extrude-difference on step-rotated assembly #871

davidgilkaufman opened this issue Dec 26, 2020 · 4 comments
Labels

Comments

@davidgilkaufman
Copy link

System information

SolveSpace version: 3.0~a2b5d0d4

Operating system: Arch Linux

Expected behavior

g00a-extrude should cut a notch for each of its 6 profiles.

Actual behavior

g00a-extrude cuts a notch for profiles that intersect exactly one copy of the step-rotated part, and fails to construct geometry for notches that bridge two copies of the step-rotated part. It outputs the error failed to assemble polygon to trim nurbs surface in uv space on the command line.

trim_nurbs_surface

Additional information

I also tried setting the g003 import to "union" instead of "assemble" but the union operation fails.

slip_disk.zip
(main file is outside.slvs, which links profile_outside.slvs)

@ruevs
Copy link
Member

ruevs commented Dec 27, 2020

Note to self - analyse if this belongs to an existing type of failure and add it here #738 .

@phkahler
Copy link
Member

Looking closely, the rotate 9x group failed to merge coincident surfaces in the area where the later failures occur. Here is a view highlighting a surface that should not exist:
Issue871
There are still 2 coincident surfaces in there.

@ruevs
Copy link
Member

ruevs commented Jan 8, 2021

Yes two surfaces co-exist there with opposite normals. This is a typical "singularity" case... Like the spoon here #470

Explanation(s) #470 (comment)

@phkahler
Copy link
Member

phkahler commented Jan 9, 2021

@ruevs it's not really the same as #470 since the problem actually happens in the Rotate group here. The opposite facing surfaces should have been eliminated in that group. I think most of those surfaces get eliminated properly, but not these two pairs for some reason.

I tried making a 22.5 degree wedge by revolving a rectangle (not around its own edge), then did a rotate group to make multiple copies and constrain so they are coincident. It failed very very badly.

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

No branches or pull requests

3 participants