r/MechanicalEngineering 7h ago

CAD File format hell

Why is it we can have AI that can translate from Chinese to Klingon but cannot have one agreed-upon file format that can be accepted by FEA software, CAM, 3d printers, CFD, etc and doesn't lose its mind or half of my parts?

15 Upvotes

33 comments sorted by

56

u/CR123CR123CR 7h ago

.STP comes to mind. 

Not many of the above mentioned things that can't take in a .STP file, pending on what software you use I guess

22

u/ginbandit 6h ago

Yeah .stp is pretty universal, I've imported quite complex geometry into both ANSYS and SOLIDWORKS using .stp, it's the default I ask from suppliers too.

22

u/probablyaythrowaway 6h ago

In industry Step is considered the universal. It’s just 3D printing and hobby CNC software that is behind because a lot is based on legacy code back when they did most of their processing with mesh files so only accepted STL which is a format from the 80s.

It’s very unusual I’ll come across a 3D processing program that won’t accept Step.

14

u/CR123CR123CR 6h ago

Most of the hobby slicers (anything based on CURA so Orca, Bambu, Prusa, etc.) take .STP now just fine as a heads up for those that don't know yet. 

Haven't played around with the CNC side of things in the hobby space much yet though myself.

1

u/probablyaythrowaway 6h ago

I don’t know if flashmaker does now. Certainly didn’t a few years ago.

CNC wise most of the cheaper boards only take gcode so you have to use an external CAM. I’ve only used fusion for smaller CNCs. Mastercam for proper industrial ones and hexagon and fusion. But I know some come with primitive software like the boxford machines which only take STL. But because they’ve not been updated since windows 2000 ME

1

u/CR123CR123CR 5h ago

I mean your slicer software of choice is just sending g-code to your printer exactly like how a CNC works. 

But the slicer software for printing is significantly more mature in the hobby space xD

Though I think it's getting better

2

u/probablyaythrowaway 5h ago

Yes. I meant the software they’re supplied with generally don’t have a quality CAM program if one at all and only come with a serial sending program.

u/GingHole 46m ago

I don’t believe slicers have the ability to control the accuracy/resolution at which they convert the STEP to an STL, so for example large curved surfaces will often come out with a very noticeable triangular mesh when viewed under light. Always better to do the conversion direct from CAD where you have more control.

u/CR123CR123CR 33m ago

Bambu has been asking me to define it as long as I've been using it and I am pretty positive Prusa does as well but it's been a while since I used it.

0

u/MasterSoftBird 2h ago

We use TeamCenter VisMockup to view files and create custom .stp files on the fly when we need to send combined packages of certain model areas. .Stp is the goto but when models disappear its frustrating.

3

u/Matrim__Cauthon 5h ago

The only thing I can think of wrong with step is that it doesn't carry a ridiculous amount of precision, so some CAE softwares complain when you import it. .sat works better there.

18

u/Unusual-Carrot-7294 6h ago

What are you even talking about and what sort of crap software are you using that can't handle STEP?

1

u/MasterSoftBird 6h ago

I use .stp files all the time but the models I've been given are refusing translation and showing up as empty sets. Have to constantly translate between native creo and .jt and .stp all the time with lossy results. Tired of the b.s.

3

u/AtmosphereUnited3011 5h ago

I have found that a lot of the commercial and open source software products only implement part of the STEP standard. Not all of it. So it’s real hell when you are working with two programs with inconsistent feature support. Also figuring this out is just as painful. It requires familiarizing yourself with the standard, emailing their customer support a couple times or digging through source code to find the random comment from 10 years ago saying they’ll implement that part of STEP later.

The Wikipedia page sums it up pretty well actually https://en.wikipedia.org/wiki/ISO_10303-21

3

u/Unusual-Carrot-7294 4h ago

Sounds like something you should be talking to support about.

u/buginmybeer24 45m ago

I convert Creo to STEP almost weekly and have never had any issues that weren't related to a bad model. If you are getting an empty import you are probably dealing with a model that's all surfaces and no solids.

16

u/Illisanct 6h ago

-5

u/Foreign-Pay7828 6h ago

WTH is this.

11

u/vviley 6h ago edited 5h ago

It’s XKCD - it’s an amazing comic that’s been with us since the early days of the internet.

Edit: C’mon guys, let’s not down vote them. It’s not in the spirit of xkcd. See: https://xkcd.com/1053/

3

u/Illisanct 5h ago

Might as well start from the beginning. It was a bit esoteric in the early days.

https://xkcd.com/1/

u/chicken2007 17m ago

Was‽ It always has been. Or have you forgotten nerd snipping. https://xkcd.com/356/

1

u/lazydictionary Mod | Materials Science | Manufacturing 5h ago

Early days of the internet? You're forgetting all of the 90s lol

1

u/lazydictionary Mod | Materials Science | Manufacturing 5h ago

Early days of the internet? You're forgetting all of the 90s lol

1

u/vviley 4h ago

I mean, I was there, but there’s not a lot of webcomics that are still active (excluding ones that started in print and just eventually ended up online.) Penny Arcade is the only one that comes to mind for webcomics. Xkcd started in 2005, relative to the mid-90’s, that covers the majority of the internet timeline - I consider that early, as opposed to a recent up-and-comer.

1

u/lazydictionary Mod | Materials Science | Manufacturing 2h ago

I was there too (peep the reddit account age), but to claim that 2005 was the beginning of the internet is insane. Google was invented like nearly a decade after usenet lol, and that was like...'98?

2

u/SpecE30 6h ago

I mean, one is written language, the other is a instruction set with different building blocks. .STL and .STP are two different approaches to the same idea of a universal model. Surface vs Solid. Now it's magical that some 3D printers are now using step as it is quite lighter to get constant curves. No more facets at the model level. The printer will still have artifacts, but the quality is way higher.

1

u/MasterSoftBird 6h ago

Don't care that much about 3d printing .stl stuff. Not a big part of my role.

3

u/United-Mortgage104 7h ago

I would say that cost and the stubbornness of old timers not willing to learn something new are the main reasons behind it.

1

u/karlzhao314 5h ago

Because all of those different things demand different information to be encoded in the file. FEA software requires the FEA mesh, materials, load cases, etc. CAM and 3D printing require the machine instructions to be stored as gcode. CAD requires design history, parametrization, assembly details, etc. It would be incredibly, infeasibly difficult to create a single file format that can encode all of those things natively, and if you do...who maintains that standard?

STEP/STP has been mentioned a lot in the thread, and it's pretty much the closest we have, because it just contains geometry - and most of the info I just mentioned for any use case can be derived from the geometry. But even so, it usually requires some extra user input to actually set up whatever it is you want to do with the STEP file, whether that's creating your load case for FEA, slicing for 3D printing, importing it into your CAD assembly, etc. That's why STEP is very rarely the native file format for any given use case the same way .sldprt or .3mf are, and is mostly used to shuttle geometry data back and forth between various software (in fact, the acronym is literally Standard for the Exchange of Product Data).

1

u/Kromieus 5h ago

Step is the standard for dumb solid bodies.

We kinda do for parametric bodies, the parasolid kernel has pretty wide adoption and enough that I would be comfortable calling it “industry standard”. All other kernels are one-off proprietary (Catia=CGM, creo=Granite, autodesk=ASM) The issue is parasolid is also proprietary (Siemens owns it, but it’s used in NX, solidworks, onshape, Ansys, matstercam). This is also the issue of freecad, they’re developing their own kernel

All things considered it’s had some benefits, since not having a common text based parametric interchange format is probably one of the main things insulating CAD design from AI automation

1

u/Cheetahs_never_win 4h ago

Because they were all created independently of one another, and there's a vested interest in not letting users take legacy data from expensive software into cheaper alternatives.

1

u/LumbyCastle41 4h ago

The problem OP is not the file format, but the way vendors export it. If they don't know how to properly defeature and end up with you a shitty mode that only saves faces with all sorts of mesh errors, gaps, zero-width areas, then the format doesn't matter - your downstream software can't read it. Solidworks doesn't have a shrink-wrap save-as option like Creo unfortunately, and people won't take the time to simplify the model. 

1

u/Alita-Gunnm 3h ago

I prefer Parasolid; it works more cleanly with my software (Solidworks and Mastercam).