this post was submitted on 30 Jan 2024
371 points (96.5% liked)

Open Source

31385 readers
199 users here now

All about open source! Feel free to ask questions, and share news, and interesting stuff!

Useful Links

Rules

Related Communities

Community icon from opensource.org, but we are not affiliated with them.

founded 5 years ago
MODERATORS
 

I thought I would knock some dust off my drafting skills after a small chat with @captain_aggravated@sh.itjust.works

Seeing this image on the tutorial made me realize, FreeCAD seems to be a Technical Geometry Super-Suite. It makes sense that CAD would grow to include all of these things. But I thought sharing the initial perspective of some one who hasn't looked at this stuff in about 18 years might be interesting.

Granted I'm not actually familiar with most of this stuff, and none of it from the POV of FreeCAD. If this can deliver 10% of what I'm looking at, I'm in for a treat.

you are viewing a single comment's thread
view the rest of the comments
[–] TCB13@lemmy.world 3 points 10 months ago* (last edited 10 months ago) (1 children)

STL is a total abnormally and a piece of shit of a format that doesn't actually represent 3D objects very well and has a ton of issues when it comes to sharing. Unfortunately we're stuck with this shit format and Autodesk with their Tinkercad seems to want to keep pushing it because as long as we use this crappy format we're forced into sharing and collaborating inside their platform - that at some point might require a subscription.

[–] okamiueru@lemmy.world 4 points 10 months ago* (last edited 10 months ago) (1 children)

Completely agree about STL, however, I cannot for the life of me understand why 3MF isn't a binary format.

It has all these big tech companies behind it, and they landed on incredibly short sighted mistake of making the format human readable, instead of providing good tools for reading and modifying the binary format.

Compressing the human readable content is fine for reducing storage size. But de/serializing the XML is going to be at least 3 orders of magnitude slower. Given a sufficiently large file, the difference would be waiting 30 seconds, vs a barely noticeable 0.3 seconds.

[–] TCB13@lemmy.world 0 points 10 months ago (1 children)

What isn’t variant of XML these days? I know, it’s bad but it’s what it is.

[–] okamiueru@lemmy.world 1 points 10 months ago* (last edited 9 months ago)

XML isn't as common as one would think. It's been steadily decreasing in popularity and use. It's a very verbose format that is suited to enrich a larger set of data, such as HTML documents. For data heavy documents where, it's a particularly bad match, as you end up using as much text for annotation as the data itself.

Using XML for 3MF is IMHO a technical cop-out, where you don't really want to solve it "correctly", so you go with something that is "good enough". With XML, you know it'll be able to encode anything, be human readable, and have existing parsing libraries in pretty much any programming language and standard libraries. So, it makes sense. However, if you're creating such a format, the least one should do, is write a sibling standard for how to directly binary encode the data. This isn't a hard thing to do. It just need a standard for how to do it, so everyone agrees. Here is an example online on how a rudimentary implementation could be done for OBJ files, but the principle is the same. That way you could chose to export either as 3MF or 3MFB (for binary), and as long as your slicer, and what not, can decode it, you're good.

The hard part of 3MF was all the great work in standardizing what, and how that is represented.