[Blender][Cura] Holes in models are not being printed.

OK I will be more direct. Yes the STL is in ‘units’. Units of measure. So the exported model is actually .07252 units in size(AKA 72.5MM) as Blender is using a unit of METERS not Millimeters. Cura is just auto-correcting and re-sizing the model for you. And other programs are just going ‘OK! you want to try and print a tiny part then.’

You set blender to use Meters and not millimeters for the model scale.

Thus the reason it is so small when others look at the file, and have their programs interpreting it as MM sized units.

*From Websites found in a Google Search…
*

1.1.

Preparing the Software

Adjusting Scale and Units of Measurement

By default, Blender uses an inherent system of measurement which is not based on a measurable unit. However, as the object you will be designing will be physically manufactured, it’s important to define a unit of scale. To accomplish this, head to the “Properties” bar and select “Scene” which is represented by a small sphere, cylindar and light. There you will find measurement options under “Units” – choose “Metric”. By default, one "Blender" unit is equivalent to 1 meter. The “Scale” parameter allows you to raise or lower that equivalence globally. You’ll find the size of the object in the object’s properties (found by touching ‘N’).

http://www.shapeways.com/tutorials/prepping_blender_files_for_3d_printing

Preparing for printing… Next, rotate the object 90° on the X axis. Blender uses Z-up, Shapeways go with the more common Y-up rule, so if you don’t do this, your model will be oriented wrong in the shop gallery picture.

Finally, export to STL. When uploading the file, make sure to select “millimeters” for scale.

If all went well, it’ll upload, and you’ll get notified that it’s ready for printing.

Hope that helps somebody out there. Took me a lot of pain and time to get my stuff printable.

No. Cura is not “auto-correcting” anything, because there is nothing wrong! The model was exported to STL with a scale of 1unit=1mm, and there is nothing “wrong” with that.

There is no “rule” or “standard” that all STL files must be scaled in meters! Anyone can use any scale they want when exporting to STL, and there is nothing “wrong” with using meters, centimeters, millimeters, or even (gasp) inches or feet.

The STL format design deliberately used arbitrary units, so that the files can be easily used with any system of measure. Some here obviously think they should all be expressed in METERS and that’s fine for them. But someone with CNC slicer software that requires Imperial units would likely disagree with you. Using something other than meters as an STL scale is not “wrong”.

Further, repositories like Thingiverse are chock full of STL files that use inch, millimeter, or centimeter per unit. That’s not “wrong” either. It is part of the 3D universe, and anyone who wants the flexibility of using mesh files prepared by others should undertake the arduous mental preparation needed to enable multiplication/division by 25.4, 100, and 1000. The alternative is to end up frustrated and angry, incorrectly telling everyone that Thingiverse models are junk simply because they aren’t all scaled in meters.

Bottom line…

If preparing STL files for your own use, you should use whatever unit value your slicer software expects.

If preparing STL files for publication, realize that SOME people will have trouble with WHATEVER scale you use, because not everyone around the globe uses the same measurement system or scale, nor the same slicer software. The best advice here is to accompany the STL file with a description that includes the scale used in the STL file. That information will enable anyone to scale the file appropriately in their slicer during or after import if needed.

The standard default for 3D printers and slicers is not Meters but millimeters. I have owned three 3D printers all have been configured in mm in the firmware. . Cura defaults to mm, Simplify 3D expects mm most 3D design software is set to mm out of the box so to speak. If you can list the printers and software that is not mm please let us know. Even our Made in USA printers use mm, who works in inches?

If your file was saved in the millimeter format… why does everyone else see a smaller than 1 mm object? So it must be either Blender screws up the conversion from Meters to millimeters or you Saved it wrong.

First, the file is not mine. I am not the original poster.

Second, the file isn’t in “millimeter format”. STL units are arbitrary. Scale is conceptually applied by the importer.

Third, the file opens perfectly in Cura. I opened it in Cura, sliced it and printed it successfully – without any rescaling. All documented earlier in this thread.

I agree that millimeters would be my “preferred” scale for everyone to use when creating STL files. But guess what – they don’t, and it really doesn’t matter. The STL format does not have a standard for unit size. Deal with it. And it is EASY to deal with files which use alternate scales.

Lots of perfectly good STL files are to be found which are scaled in meters, centimeters, or (gasp) inches. When I import an STL that was exported with 1unit=1inch into Cura, the model generally displays as a really tiny, unprintable spec that’s hard to find. Now according to you, I guess I should just stop there and say “That model is crap and I’m not using it!”. But I instead prefer to spend all of 5 seconds to open the scale dialog and type in “25.4”, which correctly scales the object. Then I print a perfectly good part, and thank the designer for freely giving me his/her work rather than chastise him/her for not using my preferred scale in the STL.

If you want to advocate that everyone use 1unit=1mm when exporting their STL files, I’m right there with you. That would be great. It would certainly be more convenient for ME and my slicer software if everyone did that. But until our new proposed standard catches on across the world, saying a designer is “wrong” for using something other than millimeters, or that an STL scaled in something else is wrong/bad/unusable, is just 100% incorrect.

By definition, STL units are arbitrary and the format was purposely designed with the intent of supporting varied measurement scales. There is NO standard. You and I prefer millimeters, but that doesn’t make it wrong for someone to use centimeters or inches. And it isn’t that hard to re-scale when the exporter and importer don’t use the same distance-per-unit value.

Deleted

The designer did nothing “incorrect”. Units in an STL are arbitrary. They have no defined size. They are only assigned a size by YOU or YOUR SOFTWARE when you import the STL file. And for the record, again, Cura reads the file and correctly scales the part as 72.5mm across. No scaling problems with this STL in Cura.

Let’s say I design a part that is 12 inches across, and I export it to an STL with 1unit=1inch. The STL file will simply contain “12 units”. It won’t contain any definition as to what each unit is. NONE. You can’t tell looking at the STL file whether the part was 12 inches, 12 mm, 12 cm, or 12 miles.

Now let’s say I design that same part but make it 12mm across, and then I export it to an STL with 1unit=1mm. Guess what? The resulting STL file will be IDENTICAL to the first one. IDENTICAL! Both will say “12 units”. Neither has any indication of how big those units are.

And in fact… I can use either file, to make either size part. If I import it and tell my importer to assign inches, I get a 12 inch part. If I tell my software to assign mm, I get a 12mm part. And both may be perfectly usable (depends on the design, obviously).

The STL file format intentionally abstracts actual size in favor of arbitrary units. In order produce the part “as designed” from an STL file, you must not only have the STL file, you must also know (or guess correctly) what unit of measure was used when the STL file was created. That information simply isn’t part of the STL file, never has been. This is an inherent limitation with STL files – they define RELATIVE sizes expressed in arbitrary units, not ABSOLUTE sizes. You (or the importing software) must assign a physical size to the unit.

So what unit scale should be used when exporting an STL file? You (and I) like using mm. It would be great for us if everyone used 1unit-1mm. But let’s say some people use meters, or inches. Who’s right? All of them and none of them. THERE IS NO STANDARD. THERE IS NO RULE. People are free to use whatever scale they want when creating an STL. They aren’t wrong just because they aren’t using what you and I prefer and find most convenient with the software we use.

Would it make for easier model interchange if everyone in the world, using every possible design package, always used the same scale when exporting STL files? Absolutely! But that simply isn’t the reality in which we live. STL files use arbitrary units, there is no standard for scale, and it is no more “right” to use millimeters or centimeters or inches. In order to reproduce a part at the size the designer intended, you must have the STL file and know what scale the designer used.

I was not going any further with this, as Kmanley 57 did answer the question for you. When the designer exported or created the STL file he had to pick a measurement, mm, meters, inches or feet or whatever. Is that not true? In this case Blender defaults to Meters and unless that was changed in the drawing set up. So the Designer finished the drawing and decides to create that STL file, which we have been told is just units, yes we all get that.

But what measurement means did he use to create that STL file… its asking so what does he use? The program needs to scale the number of units outputted to meet that that requirement. So in this case it was less than 1 mm? So was it mm, meters, inches, feet or what?

Added from my post above> Finally, export to STL. When uploading the file, make sure to select “millimeters” for scale.

HA HA! I just loaded it into some Makerbot printer software I have loaded from fixing a New generation Makerbot a couple months ago. Even it sees the model as being tiny and wants to resize it bigger. :laughing:

Well, clearly you still don’t understand the concept of unit size abstraction. STL files do not define absolute sizes. Period. I understand that you desperately WANT there to be some standard that says “all STL files shall be scaled in mm” but there isn’t – except in your head. There is absolutely nothing “wrong” with scaling STL units any way the designer wishes.

But go ahead… You throw away those perfectly good STL files for perfectly good parts, and tell the designers they are WRONG because they don’t use the particular unit size that you and your software packages prefer. Even though it is super easy to just re-scale them.

Most people reading this will understand that STL files don’t have a standard for unit size, and that it is SIMPLE to re-scale them if needed when moving between different design and slicing software.

I am done posting, on this subject and its not because your right or wrong.
But I added this >From Websites found in a Google Search…
To the above post I made to let others know it was from two sites who solve problems for people trying to use Blender with a 3D printer, not from anything I authored. They are saying the exact thing that Kmanley57 and I are trying to get across.

Nice link, and nice job going back editing and deleting your previous messages to try and make the discussion look different than it was.

Problem is, that article does NOT support your position. You have repeatedly said that STL files are “wrong” or “incorrect” if they do not use millimeters as unit scale. That is wrong on two counts: (1) STL files were designed to use any unit size, so using something other than millimeters cannot be “wrong”; and (2) STL files using a non-millimeter scale still perfectly usable – via automatic or manual scaling, depending on the target slicer.

That author recommends exporting the STL in millimeters. Why? Because that’s what his slicer expects! Does it say other units will fail, or can’t be scaled, or will be unusable??? No, it does not say that, and therefore does not support your assertion.

As I have said earlier in this discussion, millimeters is the most convenient choice for me, too, so I also prefer that designers export STL files for public use in millimeter scale. But that is substantially different from your position that using anything other than millimeters is “wrong”. There is no “Standard” and you don’t get to impose one on the world based on your personal preference. We can all use STL files exported in meters, centimeters, or inches by simply re-scaling them, rather than chastising the designer for using the “wrong” (to you) scale.

To come full circle, there is nothing wrong with the STL file posted by original poster. It is scaled in meters, which is perfectly legitimate for an STL file, and Cura imports, slices, and prints it just fine. The design itself has some manifold issues, but the STL mesh is perfectly usable.

I’ll be done with this discussion when you stop vilifying designers who export STL files in something other than millimeters, because there is simply nothing wrong with doing that. To wrap up, I will quote my earlier messages because I don’t need to go back and delete/edit history like you did:



I just want to state for the record that I find this whole thread amusing.

I know, right? Like midget cat mud wrestling. :slight_smile: Fur flies, everyone gets dirty, not even the cats enjoy it – but it is hard to look away.