Sunday, July 06, 2008


The fraught question of 3D modeling for Reprap

The Reprap effort has made a remarkable effort not only to pursue the development of an open source 3D prototype machine but also to use, wherever possible, open source development tools in its development. While that ideal has largely been carried out in reality, the selection and use of the open source
Art of Illusion 3D modeling tool has been, perhaps, one of the more heavily contested choices in this regard... read more

Blender has really impressed me so far, and scripting with Python seems like it could do a LOT for autogenerating useful structures like gears..
Forgive my ignorance, but can can either of these programs export to IGES or STEP formats? Either of these formats can used on all the commercial solid modeling programs. Plus they provide true solids, not a surface map or point-cloud.
Why does the RepRap project even care? User can build using any software they want - all we need to be sure of is that we have converters two and from at least a couple of major file formats and (most importantly) some decent automatic tools for hole filling, degenerate triangle removal, etc, etc.

IMHO, blender is by far the most popular and most complete OpenSource modeller out there - but I HATE the user interface with a passion. However, a good many people love it to death and proclaim that the interface is a wonderful thing.

(My son is avidly pro-blender and he does some amazingly good work with it.)

But RepRap doesn't have to have an opinion. So long as there is at least one OpenSourced modeller that can do the job - we're good to go.

Blender's python scripting is actually it's other major weak point. The API that glues the Python language to the modellers' internal data structures is essentially undocumented (such documentation as there is is many years out of date) and the API itself lags changes in the core data structures to such a degree that there are a lot of things that don't work anymore and a lot more things that don't work yet!

But - that's comparing it to a full-up commercial package such as Maya, LightWave or 3DStudioMax. Compared to other OpenSource packages - it's streets ahead of the competition. I said, IMHO.
I agree with Steve. RepRap shouldn't care about the modeler. It should only care about the file format. Let us decide which tools we want to use. Rest assured, if the modeler is popular enough with RepRappers, they'll write the plugins necessary for it to use the format.
Another agreement with steve. Imo what's most important is selecting a really good file format, which we haven't yet done. We need something which retains information like curves, instead of breaking it down into points; a reprap is mechanically capable of tracing a smooth curve, so it's ridiculous to let our software hold us back like that. I'm sure there's similar arguments in favor of having something store volumes instead of just surfaces, too. Admittedly, it might be very hard to adapt polygon-modelling tools like Blender to such a format, but that's a sacrifice worth making for using a truly appropriate data storage format.
Hi, I'm currently looking to build a reprap myself although I'm thinking about building a granule extruder first to recycle some of my old HDPE DVD cases

has anyone considered any of the tools over at caelinux?
It's a live CD with open source Cad software

I'm hoping to use elmerfem / salome to simulate the transfer of heat within different 3D objects using Finite Element Analysis (there are some tutorials online which make this pretty easy)

For the Cad element I had an idea about breaking down the process into several stages, e.g.
stage 1 import of a 3d component from a modeler (whichever takes your fancy)
stage 2 breaking down the 3d model into 2d cross sections
stage 3 translating the cross sections into a path for the reprap (e.g. additional info such as drill points)

with each stage customizable to make final tweaks from the autogenerated shape or path, storing your own custom file formats within Java is fairly easy using serialization (it just dumps a copy of the class contents to a file) for example for some of the steps after the import of the model
storing your own custom file formats within Java is fairly easy using serialization (it just dumps a copy of the class contents to a file)

If we need to use an own file format in some part of the toolchain, I recommend the XStream library for Java implementations. It takes a class file and writes it out as XML, and can read it in later also, with one or two rows of code.

With a few extra code lines, the tags in the xml can get shorter and neater names than full java class names, which makes it easy to use the XML format for interfacing with third party tools or other languages.

This could be used for our own intermediate formats if necessary, but otherwise I agree that we should find some other commonly used format and support it (Collada seems to be the official interchange format in the 3D art industry, not sure what the CAD industry uses though).
Post a Comment

<< Home

This page is powered by Blogger. Isn't yours?

Subscribe to
Posts [Atom]