<div dir="ltr">A figure of 8 is only a self intersecting mesh if you create it by sweeping a 2D shape. If you create it by unioning two rings the mesh will not contain any self intersections. To avoid the problem with sweep you can sweep sections that don't self intersect and union them. The problem of repairing a completely general a self intersection mesh is the exactly the same complexity as union because that is what union does. It computes the boundary of two intersecting meshes, removing the internal faces.<div><br></div><div>The fact that 3MF says the positive fill rule should be used creates a sort of Boolean XOR and is exactly the problem I had when printing somebody else's design. Skeinforge used the positive fill rule but Cura at the time printed the union.</div><div><br></div><div>>"there is no explicit topology but it is preserved."contradicts itself because you cannot preserve something that does not exist.  </div><div><br></div><div>No it doesn't because any manifold has some topology. If the manifold can be stored in an STL file and reconstructed properly it still has the same topology. That will be true as long as there are no shared edges. So although the topology is not explicitly stored it can be reconstructed from a polygon soup. I.e. you can pair up the edges and make a data structure that explicitly connects them.<br><div><br></div><div><br></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, 14 Nov 2019 at 18:43, Jordan Brown <<a href="mailto:openscad@jordan.maileater.net">openscad@jordan.maileater.net</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
  
    
  
  <div bgcolor="#FFFFFF">
    <div>On 11/14/2019 7:32 AM,
      <a href="mailto:arnholm@arnholm.org" target="_blank">arnholm@arnholm.org</a> wrote:<br>
    </div>
    <blockquote type="cite">I think
      self-intersections are almost always a sign of something else gone
      wrong, it is typically a body that overlaps itself and and not a
      result of a boolean operation. A self-overlapping volume is
      physically impossible. There are lots of ways to use bodies that
      are not 2-manifold, but a self overlapping volume seems like an
      obvious mistake.
      <br>
    </blockquote>
    <br>
    Is it?<br>
    <br>
    Consider the 2D case.  I'm drawing with a paintbrush, and so I'm
    drawing areas, not lines.  I draw a figure-8.  It's
    self-intersecting, but it's clearly not impossible.  The two parts
    of the stroke are unioned.<br>
    <br>
    If we view the 3D equivalent as painting in 3D with a 3D brush, the
    result doesn't seem impossible at all.<br>
    <br>
    If we were drawing with voxels, I suspect that the question wouldn't
    even arise.<br>
  </div>

_______________________________________________<br>
OpenSCAD mailing list<br>
<a href="mailto:Discuss@lists.openscad.org" target="_blank">Discuss@lists.openscad.org</a><br>
<a href="http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org" rel="noreferrer" target="_blank">http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org</a><br>
</blockquote></div>