The problem didn't involve any assembly constraints to begin with, no?
Sure, doing that with assembly constraints won't work, it won't in any case.
No, initially the problem did not involve them, but the issues of all provided approaches come up when considering assembly constraints. Everything proposed up to now would break them, and hence I don't see the proposals as a real solution for the initial use case. It may be my personal prioritisation, but assembly constraints are imho too fundamental to drop, and hence exclude all proposed workarounds..The problem didn't involve any assembly constraints to begin with, no?
Sure, doing that with assembly constraints won't work, it won't in any case.
I think you are wrong on this. The placement of a part is not dependent on it's shape. The placement in an assembly constraint is defined by a reference point/edge/face of the part itself - and an anchor point/edge/face of some other part. I can change the shape of the part all day long and it's placement wouldn't change one bit.ickby wrote: ↑Tue Jul 04, 2017 6:17 pm No, initially the problem did not involve them, but the issues of all provided approaches come up when considering assembly constraints. Everything proposed up to now would break them, and hence I don't see the proposals as a real solution for the initial use case. It may be my personal prioritisation, but assembly constraints are imho too fundamental to drop, and hence exclude all proposed workarounds.
From how I understand (and my understanding of all this does have limits ), if we look at OnShape, that has a similar "joint" feature available from its FeatureScript examples, it seems like they also work in a similar way as ickby describes / suggests above. That is, if we take for example the "Box Joint" example from https://www.onshape.com/featurescript and if we see our "Part" as onshapes "Part Studio" and our "Body" as onshape "Part" then we can see in this example several "parts" inside the "part studio" and the "box joint" features in the corners between the "parts" but also under the same "part studio" (in our case and as described by ickby that would be several "bodies" inside a "part" and "joint" features in the corners between the "bodies" but also under the same "part"). And, as I understand, they also don't have this on the assembly level.
And the point/edge/face anchors or references are what when not user selections on the shapes of the Parts childs (or body childs)? And if you change those child shapes your anchors change. And hence the assembly would need recalculation. And this was now the 4th time I explained this.The placement in an assembly constraint is defined by a reference point/edge/face of the part itself - and an anchor point/edge/face of some other part. I can change the shape of the part all day long and it's placement wouldn't change one bit.
I'm definitely not wrong on this, as this is how I designed it and how I envsioned it to work. This is what I go for. Maybe there are other options to implement assembly constraints, but than you need to put in more effort and a more detailed design layout how you like it to have. A simple "No" is just not enough.I think you are wrong on this. The placement of a part is not dependent on it's shape.
The whole discussion has nothing to do with the constraint solver itself.If you enter conflicting constraints then obviously an automatic placement algorithm won't converge and we will bring up a red flag and not accept that constraint, same as the sketcher does.