Blog for the RepRap project at www.reprap.org - a project to create an open-source self-copying 3D printer. To get all the early posts on this blog with all the images as a single PDF visit this page.

Saturday, August 12, 2006

Diagonal Infilling...

After Adrian's warning about the dangers of overlaying the same pattern slice after slice, I went back and developed an alternating diagonal infill routine. One of the issues that I had to confront was what to do when the perimeter routine couldn't deal with a feature of a slice that was narrower than a perimeter extrusion track. That required a little routine that determined which parts of the slice were outside of the perimeter after the perimeter had been developed.

You can see the results here. That red bit at the top is a feature that is narrower than a single trace of the Mk II. You can also see some red bits on the corners that represent parts of the slice that are too fine for the Mk II extrusion to reach.

Yesterday, Adrian suggested that I should be a bit more forthcoming with my developments both in documenting them and making them available while they are in the development phase. His point is very well taken in that I consider what I do almost perpetually "in development".

On the other hand, I am well aware of the fact that I am a very untidy person and am hesitant to let that untidiness flood into places like RepRap's subversion system. I'm going to try something that might be the best of both worlds. To that end I've opened up a directory on my own server...http://www.sanma12.com/reprap

...as a repository for my extensive, messy, non-standard "developments", such as they are. For those of you working in a Wintel, Visual Studio.NET development environment my current code can be acquired at...

For the more orthodox RepRappers who are using Linux and Java, still feel free to grab my code and give it a look if you suspect that there may be something useful to what you want to do. VB.NET isn't very hard to read if you know where to look in the half-dozen files that a Visual Studio project generates.

In this case all of the actual BASIC code can be found in Form1.vb. Just open that file up in some sort of text editor and search for #End Region. The actual code follows that statement which is at the end of a bunch of statements that tell Visual Studio how to set up the form with buttons, labels and the like. The code proceeds from #End Region to the end of the file in plain ASCII text.

Going a bit further, the routine has three procedures that are taken in the following order...