Hi Jurgen, thanks for the reply
i understand what you're saying about having one approach fully implemented before branching. and as i don't write c++ myself, i am definitely grateful for whatever you guys contribute to us.
i was just curious because it seemed to me that implementing those restrictions was additional work as it is, and i was afraid it would introduce roadblocks for later.
I don't want to mix up creation and positioning of parts
to me, the value in that hinge plates and pin example is not the positioning but that it is an easy way to share common parameters between a few parts.
next questions you guys ask is: Why can I not position a two solid pad with assembly methods differently?
oh. that would be bad....no one should never ever actually try to use a part with disjoint bodies for anything
they should all be turned off except for the one that represent the actual part. kinda the same thing as suppressing the components of a boolean and showing the result. inserting parts with more than one body into an assembly file is.....i don't know, i had never actually considered it
here is a hypothetical question. it's not at all a demand for freecad, and i can do it in python anyways. i am just curious how you think freecad's gui workflow should deal with this:
say i have a solid cylinder and i want cut a 'pocket' out of it's rounded side (no object plane to sketch on), but it cuts into the piece at a slight angle (so a new sketch on standard planes to make a cut object won't work)?
the goal here is not create disjointed bodies, but they are needed them as temporary tools. unless i can 'pocket' from a sketch on arbitrary plane, or make a new object to cut with on an arbitrary plane, i don't know what to do. i can do it in python and just make the solids directly, but then i don't have access to the sketcher. so i end up solving matrices in the script just to find silly things like line intersection points and it slows me down quite a bit.
actually i know a way to do it using the sketcher, pads and only a little bit of python, but it is very silly and i know you don't want anybody to do such a stupid thing with your program, so i won't say how i do it!