Welcome! Log In Create A New Profile

Advanced

Blender-based printing software

Posted by yeus 
Blender-based printing software
May 27, 2009 12:41PM
Well.. I wanted to know what you guys think about moving from the java-app to a blender-based printing software. There could be a python-based blender plugin which handles everything. I think there would be much less effort needed to maintain such a blender plugin.
Since it is possible to take almost complete control over blender you could also start blender directly into that plugin to keep users who are not familiar with blender from beeing confused.

I first wanted to get some feedback on this before starting experiments with blender. (I know blender very well but I am just starting with building my own reprap)

greetings, Tom
Re: Blender-based printing software
May 27, 2009 01:29PM
Interesting concept. spinning smiley sticking its tongue out


-------------------------------------------------------

Hell, there are no rules here - we're trying to accomplish something.

Opportunity is missed by most people because it is dressed in overalls and looks like work.

Thomas A. Edison
Re: Blender-based printing software
May 27, 2009 06:31PM
I'm involved with another group, where the coders have made an unbelievable plugin for blender to create levels for a video game.

Now I looked briefly at the Skeinforge program, and I wondered why they chose to try and do rendering with a python engine, I don't think it would be too difficult to port that to blender.
Only real problem is to address with blender to a usb port to send the g code.

FYI I am in the process of building a RepStrap from lego, as I have so litte money right now that my old lego mindstorms is all I have. Currently researching torque of stepper motors
Re: Blender-based printing software
May 28, 2009 02:15PM
Found something last night, an added library to python to support communication via FTDI chips
[bleyer.org]
Anonymous User
Re: Blender-based printing software
May 28, 2009 05:55PM
Using Blender to model and print 3D art from start to finish would be great. Using Blender to model and print mechanical components - I'm not sure. 3D graphics applications and 3D engineering applications, despite their similar looks and mostly identical inner workings, are different in so many ways that one can't be possibly used in place of the other. Blender, which I'm using pretty often, is great at making art, but sucks terribly at CAD-type tasks. Autodesk Inventor, which I'm also using pretty often, is an exact opposite.

What I'm going to say, is that writing plugins for various applications is OK, but abandoning an application-neutral tool in favor of any specific modeller or CAD system is not really a good idea. You can't possibly write a plugin for everything people use (due to the sheer number of possibilities and the fact that many of them are not open-source), and you should not inconvinience users of applications you don't know/like/see as important enough.

In short, something like Skeinforge or the original Java-based host software, a generic RepRap interface that can load files created by the user's tool of choice, has its place and should be maintained as long as there's someone willing to do so.
I understand that Blender can import STL files - therefore a plugin could be functionally equivalent to the current host software without needing to handle 3D stuff itself. You could design in whatever software you want, export an STL file, then print it using the Blender-based plugin. The only objection to that is the added bloat of a second modeling program which would be attached
Re: Blender-based printing software
June 08, 2009 02:56AM
I don't think this is a good idea.

Blender has an extreme learning-curve and discourages new users
while AOI is easy to use and the code looks pretty clean and
well designed.
I'm currently writing a plugin for AOI and it's really easy.


-------------------------------------------
* homeprototype free 3d design repository
* Blog
* Google+
Re: Blender-based printing software
June 08, 2009 03:37AM
Um excuse me, just looked at their tutorial for making an hour glass, and AoI seems to need more steps than Blender does to do the same thing.

Eg, in Blender, you want to scale something press the "S" key
to constrain the scaling to an axis, eg x axis you'd press "S" followed by "X" keys.
What can be even more simple?

Blender is, believe it or not, turning heads at Hollywood, as it was once so buggy and useless that it was ignored, now it is so much more powerful, and still user friendly (at least to me), tutorials abound for ANY facet you don't know about with the program, as opposed to Maya or Max where you need to take a course to learn the darn package.

Blender is also Open Source, so is Python, and python is used in so many places, like NASA for one.

I wrote a plugin for Blender which was really easy too (understanding different API's wasn't same thing happens for any package), and because Python is higher level, its easy to read without comments.

I'm actually encouraging kids to learn it, and use it, wish I had it to play with when I was a kid with my mothers 286 with DOS 6.0, rofl.


I can't really imagine anyone doing 3D printing without it, seems Blender is ideal for RP.

So port Skeinforge if you like to Blender, seems to me like a natural progression.

Edited 1 time(s). Last edit at 06/08/2009 03:41AM by Grogyan.
Re: Blender-based printing software
June 08, 2009 03:51AM
* AOI is open source too, so that's no argument.
* Python is no "higher level" then Java.
* That blender is recognized inb hollywood is also no argument. We are (mis)using the software as a cad/cam-program. We are not making movies.

Your point with the keyboard-shortcuts is exactly what I'm talking about.
I used a lot of 3d design-software in my past (loving ti write Maya-plugins on Irix in the university, using SoftImage, 3dsMax,...)
and they all could be used to do basic modelling in a few minutes after looking around to see where the usual tools where and reading through the menus.

With blender you have to learn all the keyboard-shortcuts before you can do
even the most basic editing.

I tried to load a simple 3D-scan into blender and just cut a lot of useless triangles.
That took me the better part of last saturday.
* It does not tell you what mode you are in (why is that object sticking to my mouse? Where has my object gone now?)
* There is no edit-undo/redo even though ctrl+y seems to work most of the time (basic usability flaw)
* There is no help-system where you can look up how a specific tool is supposed to be used (I could not figure out how the taper-tool was supposed to be used after 1 hour of searching and experimenting)
* The file-dialogs are confusing (UI-design-guidelines for each graphical environment exist for a reason.)
*... basically it fails at usability and reference-documentation (dozes of tutorials are no excuse for no help-system. People should USE a software, not STURY it.)

This is not a tool I can give some new user who just has an .stl -file and
wants to move some things around, scale something, cut off a corner and then print it.


-------------------------------------------
* homeprototype free 3d design repository
* Blog
* Google+
Re: Blender-based printing software
June 08, 2009 03:57AM
One other issue I have with blender:

Our host-software is in Java.
That would mean that with a python-plugin for blender instead of
a Java-plugin for AOI developers would need to know 2 very different
languages very well to write good code for this project instead of one.

That seriously limits the development-resources here.
(I've seen other large projects run into serious problems and not
get out of it at all becouse someone insisted on his pet-language.)


-------------------------------------------
* homeprototype free 3d design repository
* Blog
* Google+
Re: Blender-based printing software
June 08, 2009 04:27AM
I know the original Java host is there, but i'm looking at this new Skienforge thing that is totally python based, my opinion is that python is slow to do 3D rendering (ie print preview) as it is in Skeinforge, its better off inside Blender with only modifying it to meld it to Blenders' API.

I too have tried numerous other programs, and found Blender to be the most "natural" to work with, some of the programs i've tried are Max, Maya, Bryce, Crystal Space, an old Auto CAD, Played with Solid Works for a short while.

Solid Works is nice, but I can't afford it, so its using Blender as CAD, which as you say isn't what its designed for, yet there are plugins to help with conversions to metric an empirical so you can kinda play with it as a CAD package.

There was a number of times in discussions in the Blender group about getting Blender more aligned with typical CAD packages, maybe in 2.5 I can hope.
Re: Blender-based printing software
June 08, 2009 12:59PM
Coming from a solid modelling background, I find animation programs like Blender or AoI very challenging to design parts with. The UI isn't the problem, it's the lack of parametric modelling tools. I am looking forward to some better plugins for AoI or Blender; it would be nice to specify things like wall thickness and infill pattern and density during the design session, as opposed to in a separate process. Having a good, fast 3d renderer to display all the exact filament locations would be great too, especially as one is designing.

In the meantime, both CoCreate and Alibre have free personal use versions of their modelling software. It's not open source, but it does work well.

Wade
Re: Blender-based printing software
June 11, 2009 04:29AM
I don't think writing a CAD program in Python necessarily makes it slow.
These days, the rendering ought to be able to be done with a seperate tool set that can interface where required for moulding and connection options.

Years ago, I wrote some simple maths code to show cross sections through an engine I'd invented, and I used to play at creating interesting 3D pictures using some simple 3D functions I'm made to alter size according to distance.

What would be nice, is to have a CAD program that had high level functions to manipulate the assembly of G-codes into a linked rendering process, so that you could design the components with less tearing apart and rebuilding required to build them. It might not work well, things like designing on the Z-X planes would segment over the X-Y planes, but it might still lead to a more controllable build process.

I had a play with pygame a couple of years ago, which is simply python with python callable 2-D gaming extensions, and the animation side was slow, but I was experimenting with nested dictionary structures, so that big parts could connect to middle sized parts which connected to smaller parts etc. The data manipulation side is certainly easy.

However, when you are trying to show over 30 frames per second, and the parts are nested like that, with angular matrix rotation calculations being factored in, it all starts guzzling processor cycles, no matter what language you are using. It then comes down to using tricks like precalculating the difficult things, and then simply cycling through a list of the precalculations to animate something.

I don't think that using python to sort, layer and send the parts to a renderer would be a particularly time intensive process, especially when we aren't specifically requiring real time animation. In terms of grabbing and manipulating components, ends etc, those operations are less massively parallel, and don't strain a processor's time availability. I'm curious about how it would go, but as I still have a lot of work to do on the embedded software of my control circuit board, I won't be investigating much further, not at the moment anyway !

I haven't studied G-codes properly yet.
Sorry, only registered users may post in this forum.

Click here to login