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

Inefficient travel #1934

Closed
jerryhalstead opened this issue Mar 11, 2019 · 17 comments
Closed

Inefficient travel #1934

jerryhalstead opened this issue Mar 11, 2019 · 17 comments

Comments

@jerryhalstead
Copy link

Version

1.42a7

Operating system type + version

Mac OS 10.14.3

3D printer brand / version + firmware version (if known)

Prus MK3 (3.6)

Behavior

long moves on this circular slice (starting around 9mm) where there's a bunch of small rectangles on the inner circle it jumps from one side and does one, then to other side, instead of doing them sequentially around the axis. Tried with S3d and it does the right thing.
stevenson_shield_v3-shield.stl.zip

@dzieva
Copy link

dzieva commented Mar 11, 2019

I've seen that, too.
Slic3rPE (Prusa Edition) has an expetacular UI, but in my view this on a not very robust base (Slic3r), I hope the Prusa Edition team will fix it.

@DrLex0
Copy link

DrLex0 commented May 8, 2019

Yes, travel planning is one of the worst things in Slic3r. I have just added another example to #1409 of uselessly large travel moves that ignore the ‘nearest’ seam position setting, and I have actually found a commented-out if statement that is probably responsible for this and turns all seam position choices into subtle variations on ‘aligned’.

I also often observe pointlessly large travels during infill (see #471) that are caused by a dumb greedy optimisation algorithm that first tries to make the longest possible continuous extrusion, and then makes a bunch of huge travels all across the entire layer, in order to fill in all the little spots it had previously ignored in its quest to maintain a travel-free path. This often causes scars on the top layers that could have been avoided.

The whole path planning should be revised instead of applying patchwork fixes. Replace the greedy algorithm with something that is more globally optimal. I'm willing to wait a bit longer on the slicing process if this will reduce print time and improve quality. If speed really is a concern, the greedy algorithm could still be offered as a ‘quick & dirty’ option.

@wavexx
Copy link
Contributor

wavexx commented Jan 9, 2020

I have a new case here: insane_travels.zip

There is a small rectilinear infill area generated on the side of each gear tooth due to the sloping edge. The travel from each of these regions are done along one direction (say, y or x), which is terribly inefficient:

2020-01-09T215908

The travels for the complete gear in this case account for most of the printing time. The attached test case is just a slice to demonstrate the effect.

@DrLex0
Copy link

DrLex0 commented Jan 9, 2020

@wavexx That looks a lot like #375 which is supposed to be fixed…
Also, curiously I cannot reproduce this in either 2.1.0 or my own build of 2.2.0alpha2. But that could mean that #375 is not truly fixed because it was not consistently reproducible…

@DrLex0
Copy link

DrLex0 commented Jan 9, 2020

@wavexx Is your screenshot from 2.1.0 or the latest alpha? I have tested again with the stevenson_shield model from this issue, and 2.2.0alpha2 does a much better job than 2.1.0. Unless you have seen this in 2.2.0, I think this is truly fixed (and this issue was actually a duplicate of #374 indeed).

2.1.0:
Slic3r-2_1_0

2.2.0alpha2:
Slic3r-2_2_0a2

@wavexx
Copy link
Contributor

wavexx commented Jan 9, 2020

The screenshot is from the master branch as of today... (latest alpha).

@bubnikv
Copy link
Collaborator

bubnikv commented Jan 10, 2020

It looks good to me using the 3mf attached

image

@DrLex0
Copy link

DrLex0 commented Jan 10, 2020

I think this is a sporadic bug that only occurs under the right circumstances, as I already found out in #375. When it occurs, it looks as if the parts are being printed in a default order because path planning has not been performed at all. Unfortunately it is unclear what those right circumstances are…

@wavexx
Copy link
Contributor

wavexx commented Jan 10, 2020

@DrLex0 I tried your model linked in #375 (PokerChip-inlays.stl) and there the travels look reasonable.

However, just to be sure, I downloaded my own test again and rebuilt from master again, but the travels still look like my screenshot. It is 100% reproducible by just opening insane_travels.3mf for me and hit slice.

As describe, note how the "bad" travels are really due to the rectilinear infill added to the edge of each tooth:

2020-01-10T123816

the travels here are from infill-to-infill, the rest of the planning looks good.

You can set infill to 0% and still get degenerate cases on this model:

2020-01-10T124143

Note that the travels, in both cases, are not exactly along X or Y, but seem to follow another weird orthogonal angle which is roughly rotated 45'.

@wavexx
Copy link
Contributor

wavexx commented Jan 10, 2020

Just thinking out loud, I'm on linux. Could the difference be due to slight difference in rounding/FPU rules?

@bubnikv
Copy link
Collaborator

bubnikv commented Jan 10, 2020 via email

@vintagepc
Copy link

seems similar #2206, which may offer an additional test case

@wavexx
Copy link
Contributor

wavexx commented Jan 10, 2020

Good catch, but I don't see gap fill in the gear model.

@wavexx
Copy link
Contributor

wavexx commented Jan 11, 2020

It seems that commit 9038dc2 fixed this case

@bubnikv
Copy link
Collaborator

bubnikv commented Jan 14, 2020

@wavexx I see, you are compiling the master. Yes, there was a regression issue.

Could we close this issue then?

@wavexx
Copy link
Contributor

wavexx commented Jan 14, 2020

I follow master closely when I can.

I'd say the travels are very reasonable now. Both the gear and the shield work fine.
I didn't check for #2206, but I'd consider this fixed (@DrLex0: any reason gap fill should behave differently for travels?)

I'm not the OP so I cannot close this directly.

@jerryhalstead
Copy link
Author

That looks great! Thanks everyone.

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

6 participants