I feel like feed rate should consider both vertical and horizontal rates when making a move that's a ramp. Currently I see that the G-code generated picks one or the other feed rate rigidly.

A simplified example situation:

Horizontal feed rate: 20mm/s

Vertical feed rate: 5mm/s (plunge rate)

Contour cut around a box with a helix ramp entry dress-up.

My expectation:

Horizontal feed at (or near) 20mm/s. This is mostly a horizontal cut with a gradual ramp into the material.

Actual behavior:

5mm/s feed rate even though it's mostly horizontal motion.

Snippet from the end of the G-code inspector:

Code: Select all

```
G1 F5.000000 X-10.000000 Y11.587500 Z-10.415546
G1 F5.000000 X10.000000 Y11.587500 Z-10.965702
G1 F5.000000 X10.248344 Y11.567954 Z-10.972389
G1 F5.000000 X10.490567 Y11.509801 Z-10.979335
G1 F5.000000 X10.720708 Y11.414474 Z-10.986366
G1 F5.000000 X10.933105 Y11.284317 Z-10.993311
G1 F5.000000 X11.122532 Y11.122532 Z-10.999999
G2 F20.000000 I-1.122532 J-1.122532 K0.000000 X11.587500 Y10.000000 Z-10.999999
G1 F20.000000 X11.587500 Y-10.000000 Z-10.999999
G2 F20.000000 I-1.587500 J0.000000 K0.000000 X10.000000 Y-11.587500 Z-10.999999
G1 F20.000000 X-10.000000 Y-11.587500 Z-10.999999
G2 F20.000000 I0.000000 J1.587500 K0.000000 X-11.587500 Y-10.000000 Z-10.999999
G1 F20.000000 X-11.587500 Y10.000000 Z-10.999999
G2 F20.000000 I1.587500 J0.000000 K0.000000 X-10.000000 Y11.587500 Z-10.999999
G1 F20.000000 X10.000000 Y11.587500 Z-10.999999
G2 F20.000000 I0.000000 J-1.587500 K0.000000 X11.122532 Y11.122532 Z-10.999999
G0 F0.000000 X11.122532 Y11.122532 Z6.000000
```

The behavior is the same for many other moves that change Z; it's not confined to ramp dress-up.