First, for background, my main use cases for CAD/CAM are:
1) Preparing component CAD models for use in KiCad for PCB layout. Sometimes I make them from scratch, and sometimes I can get them from component manufacturers. Even when I can get them from others, I'll almost always need to do at least some minimal editing to position the model vs. the coordinate origin. Including face colors is critical for this application, and STEP is the necessary interchange format.
2) Designing stuff for 3D printing. I export to STL and slice in Simplify 3D.
3) Designing stuff for CNC milling. I use the CAM features in Fusion 360 to generate my G-code.
My issue here is that when I import a STEP model into FreeCAD, all of the face color details appear to be lost. I'm attaching a STEP model that I downloaded from a component manufacturer. It would need some CAD work to orient it properly for use in KiCad, but I'm showing it here just as I downloaded it after import into each tool.
When I import the STEP model into Fusion 360, I'm pleased to see that the manufacturer applied face colors to mimic the visual appearance of the real component. Model quality from manufacturers varies a lot, and this is one of the better examples. My next step would normally be to rotate and translate the model to be in the right position vs. the coordinate origin, which is also the component placement centroid in the PCB CAD tool.
Here's the same STEP model imported into KiCad. The orientation is all wrong, but that's OK. I'm just showing that KiCad recognizes the face colors.
Now, when I import the exact same file into FreeCAD 0.19, it appears as a plain gray object.
Let's see if it's a display issue vs. the face color information really being lost: I'll export the object from FreeCAD in STEP format and then import that into KiCad.
Indeed, the face color information seems to be gone. Am I doing something wrong (i.e., is this a help request?), or is this a a FreeCAD 0.19 limitation (i.e., is this a bug report or feature request?). I sure hope it's the former, because this would be a show-stopper for me to switch from Fusion 360 to FreeCAD today.
I really do hope to switch to FreeCAD someday when we're ready for each other! While it would be nice to not have to spend $500 per year on Fusion 360, the money isn't my main motivation. The real reasons I'd like to be able to switch are:
1) Remove vendor lock-in, and replace it with an open codebase that I could hypothetically maintain myself if it got orphaned for my use case.
2) No cloud-based shenanigans. I have a bad rural last-mile Internet connectivity problem at home. It's not such a big deal at work, but I've been holed up at home for six months due to the pandemic and my connectivity here is bad!
3) Linux support. I'm currently mostly happy with macOS, but I have reasons to suspect that Apple and I will have to part ways eventually. Fusion 360 currently only supports Windows and macOS, and I hate Windows. I can work happily in Linux if I have to with some minor changes in which specifc things I complain about vs. macOS.
It'll be great if we can start to see FcStd support in more places, and KiCad would naturally be a good candidate to join that club. But the fact remains that today, if I get a CAD model from a manufacturer, it's almost certainly going to have been created in SolidWorks or one of its direct competitors, and the most common cross-platform interchange format is STEP. Good STEP support is necessary today, even with the limitations of it being closer to binary object code than to source code.
Here are the details of the FreeCAD version I'm using:
OS: macOS 10.15
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.22039 (Git)
Build type: Release
Branch: master
Hash: 2bfc6301bc80c0344cbf13dbfe041fbd78cac93d
Python version: 3.8.2
Qt version: 5.12.5
Coin version: 4.0.0
OCC version: 7.4.0
Locale: C/Default (C)