First of all, I will fully admit to being a noob; I have only been using FreeCAD for about two weeks. One thing I have found very powerful so far, though, is the Part Design and Sketch tools; constraint-based geometry is insanely powerful.
In my case, I am creating a pattern that I want, in effect, engraved into a solid object by using a subtractive pipe sweep with a given, relatively complicated, cross section, also provided as a sketch. I have found that this requires a fair bit more manual work than would seem necessary, however.
What I have had to do has been something like:
Creating a copy of the cross-section sketch (sub-binders or links don’t seem to work) for each path (contiguous set of edges);
Attach said copy to the beginning edge of each path;
Create a pipe starting at that copy, using the rounded corner setting.
Ideally, this should have a rounded end, too, similar to using a (virtual) router tool, but that isn’t critical in my particular application.
I am sure (in the literal sense) that this could be automated with a script, but I have not had anywhere enough time to ramp up on FreeCAD to implement that yet.
In doing this I have also run into plenty of problems with intersecting pipes producing poor results, but I understand that that is a problem with Opencascade rather than FreeCAD itself.
It depends, it could even be “poor modelling habits”.
Many blame OpenCascade kernel, but forgot that is a geometric kernel, so as example if your solid has a seam as example a cylinder is defined as made of three faces the top and bottom face and a bend face around the “bases”, where the surface will meet there is a “seam”, the seam is a “delicate” point, where as example some values, like tangents or similar geometric construct will make mathematical definition problematic, so ad example if you want to make some “operation” just in the seam, they will fail.
Usually it suffice to rotate the cylinder around his axis of some “fraction of degree” to have things working as expected.
Same things, for many things around, there are as example problematic and old code in OpenCascade, that are “know to be buggy”, but there are many “different way” of modelling things to circumvents these “limitations”, usually is simply a matter of learning to think in a slightly different way, as sadly there is not yet a “FreeCAD modelling guide” that will list some alternative ways of modelling things.
Well, in this case I’m talking about things like two curved pipes intersecting.
There are a number of bug reports in the Opencascade bug tracker about this, so I’m assuming it is something that will eventually be addressed in that case.
Yes but the speed of OpenCascade developers in fixing bug is not very high, and very often the answer is it has to be rewritten from scratch as it is legacy code. (fillet is a good candidate to find this answer).
Maybe asking tanderson69 for an advice, as he is involved in this sort of things and could make some light about OCCT development process.
The “problem” I’m trying to solve is really a usability problem (I’m trying to provide a template that is as easy for novices to use as at all possible.)
The pipe tool requires a single, contiguous sweep path - which makes total sense at least on the low level. As I have, by necessity, multiple (mutually dependent, so non-separable) paths in the same sketch, separating them into paths manually, and providing each with a copy of the cross section sketch anchored to the beginning of each path (attached normal to the first edge and vertex of each path) is just manual labor.
What I really would like is to automate this task. I am posting here because I think it is something that could be useful in general, and not just in this application.