Re: [rp-ml] algorithm&implementation for STL slicing

From: Adrian Bowyer <>
Date: Fri Aug 18 2006 - 14:52:16 EEST


> I believe there are at least a couple of quite inexpensive software
> packages out there that can output slices from an STL file (including
> many slices at a time). But the practical problem with trying to go
> from some public domain type software (even if available) to a
> commercial or even semi-commercial algorithm is that there is usually
> a little more involved than just the basic math and concepts
> underlying such things. Unfortunately you have to contend with speed
> issues and questions about tolerances, topology ambiguities and what
> you actually need to do with the sections you get. Remember you will
> basically just get outer boundary region lines (and that's if your
> lucky and do it right). If only things in the "real" world were that
> easy I wouldn't have had to spend several years working on
> surface/surface intersectors (NURBS not STL). Besides who wants to
> keep using STL files anyway? They're SOoooo 80's. If you're really
> going to go to the trouble, in my opinion, the way to go is Nurbs and
> skip the STL all together.

I think that the ideal representation for RP is a CSG/boolean one. You
can represent surfaces just as complicated as NURBS with implicit
polynomials (you can even put these in the Bernstein basis if you
like), and (especially if you superimpse a Woodwark-style recursive
subdivision structure on your CSG model), point-membership tests are
faster than a speeding bullet. If you are (say) scanning a laser over
a layer, all you need is a point-membership test to tell you when to
turn the beam on and off.

Ray-tracing is really fast, too, if you need the whole structure of a
scan line before you start it.

CSG is inherently robust - you _never_ get a topological inconsistency,
because there is no topology.

And finally, creating a slice is trivial - you just substitute a number
for the Z variable...


Received on Fri Aug 18 13:55:03 2006

This archive was generated by hypermail 2.1.8 : Tue Jul 21 2009 - 10:27:52 EEST