https://plotter.vision converts 3D STL files to 2D SVG suitable for #plottertoots with interactive camera positioning, back-face culling, hidden-line removal, and coplanar-triangle merging.
@chrysn smooth surfaces are a challenge - relaxing the "close enough" parameter for coplanar detection might work, although it would need some experimentation. If you're doing one-off art pieces, you can edit and color it in inkscape as much as you like...
@chrysn Increasing `coplanar_constant` from 0.001 to 0.5 does merge the curved surfaces, although there needs to be some way to detect "is this the last visible egde" so that it doesn't get dropped.
@th That's neat. With colored face rendering and removal of lines on smooth surfaces (where they are not between a front- and a backface), this could give great renderings for Lego MPD files in a way that doesn't look like (because it is) rendered and edge-detected.