~ultimaker/ultimaker/+git/CuraEngine:CURA-7948_remove_singular_nodes

Last commit made on 2021-02-25
Get this branch:
git clone -b CURA-7948_remove_singular_nodes https://git.launchpad.net/~ultimaker/ultimaker/+git/CuraEngine

Branch merges

Branch information

Name:
CURA-7948_remove_singular_nodes
Repository:
lp:~ultimaker/ultimaker/+git/CuraEngine

Recent commits

a380567... by Ruben D

Also remove nodes linking to deleted edges

7588be5... by Ruben D

Add clean-up that removes singular edges without any twin

Only twins are allowed in the graph. Any others must be removed.

Contributes to issue CURA-7948.

b8afdc5... by Ruben D

Make arrow head size relative to line width

This is common with SVG images, and guarantees it all stays readable as long as your line width is readable.

add2c18... by Ruben D

Make writeArrow more accurate

No longer give it an offset at all. Instead of using two lines, make a single polygon where the tip of the arrow is simply offset in a certain 45 degree direction. Also don't cast to integer first when calculating the normalised direction, but work purely with floats.

Contributes to issue CURA-7948.

71559df... by Ruben D

Allow floating point sizes for writing points

Contributes to issue CURA-7948.

8db8833... by Ruben D

Add utility function to draw a grid on the SVG image

Handy if you know some coordinates from other types of debugging and want to figure out where they are in the image.

Contributes to issue CURA-7948.

9ac9b3e... by Ruben D

Const correctness of SVG class

Found during investigation of CURA-7948.

4db183a... by Kostas Karmas <email address hidden>

Increase the maximum deviation angle when removing colinear segments

The previous value (0.0005) was way to small, which would still allow for almost-colinear segments
to be included.

CURA-7952

a6ec64f... by Kostas Karmas <email address hidden>

Remove all colinear edges with removeColinearEdges()

Previously, `removeColinearEdges()` would only remove points that had an angle of ~180degrees.

            angle=~180
  o------------o-----------------o
prev pr next

This commit fixes that by making sure that the function above also removes colinear edges with an
angle of ~0deg or ~360deg.

By removing these cases too, the `SkeletalTrapezoidation` will not fall into the issue of
generating an edge without a twin.

CURA-7952

3b15627... by Jelle Spijker <email address hidden>

Merge pull request #1415 from Ultimaker/CURA-7853_Imprecise_wall_positioning

Remove scaling to fix self intersections