Freesteel Blog » Horizontal interlude finishing

Horizontal interlude finishing

Tuesday, March 13th, 2007 at 11:03 am Written by:

Yes, I’ve been driving myself nuts building up yet more machining strategies for people who can find out what’s wrong with them by return of post. Not such a good mood when you have a nasty hang-over from just one and a half pints last night. Then, because it’s Tuesday, I’ll have to endure yoga at lunchtime. This is a picture of a specially constructed model someone in Denmark has been making to give the algorithm a hard a time as possible. Still, we haven’t worked out an automatic regression testing system to make sure that what has been proven to work, stays working for the rest of time, because that’s way too hard. You can only do that when the system has become stable enough to be able to write programs to run it, but once you get there you never can see the point of regression testing code that you don’t believe is going to be further changing.

Horizontal machining is a strategy for detecting all the perfectly horizontal areas in a model and facing them off with some sort of flat-bottomed tool. It’s done by first scanning through the list of triangles and adding up the areas of the (nearly) flat ones according to (approximate) z-height. This gives a sequence of candidate z-values. Now go through this list and make a z-contours for your toolshape slightly above the z, and slightly below the z, and return the difference of the two areas. This leaves you with all the flat-bottomed pockets that disappear at that level, as well as all horizontal shelves.

Send these contours over to some other part of the system and some kind of 2D area filling toolpath strategy provides the result.

This strategy is also used for machining a model where there are lots of little terraces. There are flaws in its use here. When the terrace is narrower than the tool diameter, you still get a closed contour such that the tool will go along it twice, along the inside and back along the outside, unable to tell that once is enough. Also, when the terrace is narrower than the tool corner radius, no part of the tool can be touching it, since when the tool is against the wall, its flat is further away than the width of the terrace. I imagine one normally uses a slot drill for this job.

What you really want to be using in these cases is the pencil milling operation, because that gives one pass. Also, if the tool corner radius is bigger than the width of the terrace, you get a pass that’s slightly lower to put the tool in the place where it is at the same time in contact with the wall and the edge of the terrace. The z-value of this pass will go up and down according to the precise width of the terrace.

Alternatively, there’s probably a derivation of the Adaptive Clearing strategy that gets in there and does multiple passes if required, and single passes on narrow shelves, and skips it when the corner radius doesn’t reach it. I got too much other stuff on my plate at the minute to bother doing that. Maybe later in the year.


My previous post about a futurologist who talks a lot about the future while conveniently omitting to mention the one huge factor that is really going to define the immediate future of the species has showed up on a blog aggregator at his university. That means he might have read it. Uh-oh.

Anyway, to avoid boring all the legions of readers of this blog who aren’t interested in anything except the machining algorithms, I’ve put a link to the machining category on the front page of the site, where I also wondered about changing from the too short “FAQ” to the too long “Frequently Asked Questions”, and then settled on “Freq. Asked Questions”.

I need to get out more.

Leave a comment

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <blockquote cite=""> <code> <em> <strong>