addam / Export-Paper-Model-from-Blender

Python addon for creating paper models in Blender (development version)
https://blenderartists.org/t/export-paper-model/476597
406 stars 54 forks source link

Use paper thickness #16

Open addam opened 13 years ago

addam commented 13 years ago

If the paper used is really thick, it has an influence on the model. If the script knew the paper thickness, it would work better.

addam commented 7 years ago

This feature is actually quite difficult to accomplish and it will need careful design. Some time ago, I wrote up a concept for it, but got no response: BlenderArtists.org post Everybody please comment on this. I don't want to code a tool if it wouldn't have any use.

addam commented 4 years ago

Cross-posting the design:

Doppelkeks Model

The material is modeled as two thin layers of surface with chocolate filling inbetween. The outer layer should follow the proportions modeled in Blender. The inner one is accounted for automatically.

fold

glue

The situation gets somewhat more complicated in case of sticking tabs. It requires to add some length of paper before concave joints, and remove slightly more before convex joints.

Various materials could react to the folding angle in very irregular ways. This theoretical concept is perhaps the easiest option.

greenwoodma commented 3 years ago

I know it's over a year since you asked the question, but yes I'd love to be able to set a material thickness as an option. My use case is for designing photo etched metal parts. In this case the material is usually about 0.25mm thick and so that thickness has to be taken into account when producing folded parts. In an ideal world I'd like to be able to design a part and have it unfold taking the material thickness into account and having the fold lines automatically set to the correct width for the half etch required for a fold (I usually use 1.3 times the material thickness, so for a 0.25mm thick brass sheet I'd use lines 0.325mm thick).

My python skills are a little limited (I'm a java developer by occupation) but am happy to help test/debug any new scripts, and will poke around and try tweaking existing code if anyone wants to give me a pointer to where to start. I have a general idea about the maths involved in resizing simple parts to take into account the material thickness, although I'm not sure how that would scale to more complex models.

mkmori commented 3 years ago

Hi, @addam, @greenwoodma! I agree about the importance of handling material thickness--it's the first thing I looked for when checking out the add-on! Speculating on the lack of response, as a layperson, I find it's not an easy problem to fully describe, and perhaps also, this feature set would support projects for which the add-on is not currently considered, (a broader potential user base?)

Anyway, this is a problem common to a whole range of projects I'd like to try in Blender! I noticed the issue in larger corrugated cardboard/fiberboard models, apparently scaled-up papercraft patterns. It could be esp. troublesome for models made of multiple polyhedra, where material thickness errors were compounded....

As you mentioned on blenderartists.org, tabs seem to make less sense for thicker materials, so perhaps that could be left as a problem for the fabricator. Basically, unfolding per your first "broken biscuit" diagram would be great for starters! That would eliminate the material thickness error and open the door to all kinds of large/human-scale applications, right?

I guess this feature set would affect allowable seams and nets--(and might require a second printout for for cutting concave folds on the interior side?)--but for many of my projects, it would be useful even if proper handling were limited to convex polyhedra (for starters?) With material thickness errors handled, one could always break a model down into convex parts for fabrication & assembly--this could make for some strong, low-poly structures!

For thick, rigid materials, the script might optionally support mitre or box joints by doing the opposite of your first "broken biscuit": Leaving convex edges alone, and allowing extra space on concave edges (to ensure all adjacent faces intersected each other when cut & joined)....

For sheet metal--and maybe flexible or heat-softened materials--I wonder if there's a bend radius or something that might be more critical than material thickness...?

Ideas are a dime a dozen, I know! Happy to help if possible, but can't say I've ever implemented anything like this myself! 😅