This has been bothering me for quite a while now,

This has been bothering me for quite a while now, but I have yet to find any implementation of this sort of idea:

  • is there any existing software (even commercial , just for curiosity’s sake) that implements editable “inner structures”/ editable object inner material properties ? sort of like “I want the inside of the object to be flexible, honeycombed” or “this object need to have capillarity (soak fluids up)”
  • this might be a bit of a generic question, but I am disliking the divide between 3d modeling and slicing, and the lack of tools which would allow these sort of material/inner structure definitions.

I think that we are still for the most part using 3d printing tools as “improved upon substractive technology” ie : outer shells, not taking enough advantage of the full set of abilities of 3d printers .

This is of course just my opinion, so discussion and counter arguments, examples, ideas are welcome :slight_smile:

For disclosure; I am the author of the @CoffeeSCad modelling tool, and if I could come even 10% closer to that goal, I would die a happy developer :slight_smile:

It’s a good point about modeling software and slicing software being so far apart. But I think we also run into the problem that people are really shy when it comes to modeling software. I know a handful (a large percentage though) of people with no interest in modeling, but know how to jigger the settings for slic3r to create vases, or the proper settings for specific prints.

Another side effect of the gap is that STL is the de-facto standard to bridge the two, which sucks if you want to export the primitives to take advantage of native arc support in your machine.

Use {coffee,open}scad -> tesselate to STL -> reconstruct arc with slic3r -> print/mill. Insanity :slight_smile:

When I have time to do more personal design work, I’m planning to probably do most of my modeling with internal structures in place so that a slicing engine really just slices up what is there instead of handling the support structures or internal supports. I’ve come across many things that I could put in some key support structure with a removable attachment that would not cause issues, but that the supports generated automatically would just be fairly random. Same with infill. I could see a variable infill need that might be more coarse in the middle, but finer on the top side or in the center of a large rounded object.

Probably what would make sense would be something that is more of an interactive slicer so you can see how the changes modify the internal, and to be able to have finer control over both structure and other factors. The flip side of this would be a very abstracted tool that has no significant configuration, but some calibration steps to determine the appropriate settings automatically and to provide feedback from the user after each print.

Anyhow, to answer the original question, nope, I’ve not come across anything that I know of.

What I would like to see in design software, similar to what MakerGear is offering, is a suite that allows me to place custom supports.

We are going to be looking at slicing next in the software toolchain as we get more people on board.

The real potential of 3dP is hacking the inside of a part - generation of inhomogenious parts with special physical properties (balance point etc.) and resistances against forces.

What about FEM-software and the software used in light weight construction for finding optimal part configurations? Afaik a few parts of the +NetFab professional software have some possibilities in this area. Please check their different software tools.

Yes, I have been pondering on this for quite a while as well, and there is a basic JavaScript slicer at https://github.com/triffid/WebSkein/ and working example http://triffid-hunter.no-ip.info/webskein/webskein2.html waiting to be enhanced :slight_smile: once built into a parametric modeler like OpenJSCAD.org (I maintain) or CoffeeSCad.net (Mark maintains) would imply I could create dedicated fill structures per piece (like color or material), a rough finite element analysis suggesting some pattern would be the crown. And yes, STL as intermediary format would be gone, you would slice directly the internal geometrical forms.

@ThantiK Interesting, I never considered the fact that some people might be more at ease with slicers than modeling. I honestly don’t have a deep enough understanding of all the nitty gritty of slicers to see how this “distance” could be bridged in a nice way though.
Also I think that neither “code-based” open[scad,jscad,coffee] or pure graphical modeling are the “end all be all” of modeling…something new or a hybrid would be interesting.

@Koen_Kooi the AMF file format actually has support for curved triangles which might help in that case, and also, graded and lattice materials etc
Though there is some murkiness about this “successor to stl” (seriously, you have to pay to access the official specs of the format???)(http://en.wikipedia.org/wiki/Additive_Manufacturing_File_Format)

@Jonathan_Buford Interactive slicer would be fantastic! Thought given the speed issues with even the fastest slicers I am afraid of how that would go for reasonable complex objects.
Ah yes, support is something I have not thought of but yeah, an “auto/manual” hybrid in that area would be interesting .
Thinking more about it, all of this would also require feeding information about the type of technology (fdm ,etc) and capabilities of the specific printer you use for printing…

@Henrik_Peiss exactly ! and thanks a lot for that ! I had completely forgotten about FEM software , that just gave me a whole lot of good reads (tons of publications in that area it seems). Also thanks for the info about netfabb tools, I will try to check that out !

@Rene_K_Mueller thanks for posting that link again, was looking for it actually :slight_smile:
What you describe would be ACE ! Let us win the lottery, build a team, and work full time on that :slight_smile: Jokes aside, those are lofty goals I am looking forward to the day we get there !:wink:

Well, @Gary_Hodgson seemed to be interested to look at JS slicing too :slight_smile: so we would be three with you Mark :wink: - the main challenge as pointed out by @Triffid_Hunter is a proper off-setting algorithm. I did a some illustration to wrap my mind about that problem: https://docs.google.com/document/d/1EF8eKuRG9CeRMg409oS833CsvRI4FHuH_N23ddPuxfM/edit

Regarding paid OSS development, I look at some growing HK 3d printer company here :wink: I currently do a paid project with video streaming, with flash (you cannot estimate how this annoys me), because hyped html5 cannot save streamed webrtc video chat (yet), and when I’m done in july surely webrtc permits saving video (&audio) :expressionless: (bad timing and deadline).

I read the rss-feed of the Rapid Prototyping Journal (http://goo.gl/onhEX ) There are e.g. articles relating FEM of FDM materials and modeling in the current issue.

I think about this a lot, because I try to get different mechanical properties out of one material. What I’ve ended up doing is designing my own interior spaces in openscad based on how I know the slicer will work, so my objects have the properties I want (eg, flexibility or squishiness). It would be great to have a series of fill options, though this would need to be specified in the cad stage.

Hey @Mark_Moissette_ckaos - this is a subject that interests me greatly (as do so many others :)). The separation between calculating infill and modelling has always bothered me, simply because I think the infill could be much smarter. I wrote a post about it a while ago (wow, over 15 months!) [1] which tried to get across my thoughts. I still consider it my long term project, but of course that means it drops off the radar for quite a while at a time.

I was always going to write a follow-up about what I have found out so far (which your post may spur me into doing). I’m still trying to learn the math and algorithms behind it all, including FEM, but as you can imagine this is quite a large field to dive into already - particularly as a layman. Whilst the ultimate goal may be to have a program calculate the perfect fill pattern (based on some specified criteria), the most likely intermediate step is to have a CAD program guide the developer in some way, much as @Chris_Horton suggests (btw, Chris - I would love to hear more about your design process!)

Part of my investigations led to Functional Representation, and this is why I built FREP-CSG [2] mainly because of this paper: “Procedural function-based modelling of volumetric microstructures” [3] particularly pages 8, 12 and 17 which show interesting microstructures. I had some success, for example this script [4] would generate this example model [5]

Netfabb’s Selective Space Structures [6] also look interesting, but as it’s closed source there’s not much to glean from it.

It’s worth mentioning that the slicers are getting smarter, for example Slic3r 0.9.9. has the option to only create infill where it thinks it is needed.

Definitely a space I would love to explore further as I think there is huge potential and it will only get bigger as 3D printing progresses.

[1] http://garyhodgson.com/reprap/2012/01/thoughts-on-fill-algorithms/
[2] http://garyhodgson.github.io/frep-csg.js/
[3] http://eprints.bournemouth.ac.uk/18563/1/ms_preprint.pdf
[4] https://gist.github.com/garyhodgson/5477631
[5] http://goo.gl/eMAF8
[6] http://netfabb.com/structure.php

@Chris_Horton that is a good aproach for the current state of tech, it does require quite a bit of beforehand knowledge of the various slicers “tricks and limitations” does it not ?

@Gary_Hodgson wow, fantastic insights and information (as usual from you :slight_smile:
Gosh I just remember reading your article and trying out frep-csg way back ! (except I did not know it was you :slight_smile:
Yeah FEM seems way out of my league, but the scientific articles on it are extensive to say the least!

The “organic” like infill patterns you mention also remind me of the possibilities of using voronoi (or similar ) like patterns, with variable, localized “tessellation” .

Thanks a lot for the very interesting links, will take a while to read through those :slight_smile:
And yeah, this is definetly an area with huge potential and importance for the future of 3d printing (it seems like there is an article about the limitations of design software for 3d printing every other day!)

Ha, just wanted to mention @Gary_Hodgson 's awesome old-school blog post (http://garyhodgson.com/reprap/2012/01/thoughts-on-fill-algorithms/). Too late :wink:

@Mark_Moissette_ckaos , I find it’s mostly knowing the wall widths and the difference in flexibility between printing the part on its side vs face-up. A “C” shape will be more flexible when printed on its side, for example. But yes, the slicers do weird things sometimes. At least openscad makes trial and error less painful because you can use a variable to specify internal wall width. I’m usually trying to get one or two perimeters in my internal walls.