So I debugged and observed a couple of differences between using part and part design features (refer to the example files attached):
- When placement is changed for a PD body (there is no placement option in the feature itself), Fem::Constraint::execute() is not called. This is called in [Part].
- Even after a forced recompute (with PD), the TopoShape that is being used does not have any transformation applied. For part this transformation is applied.
This suggests that the following is happening: any placement changes are stored in the body, but the FEM constraint stores references from the feature (the box in the examples) and uses the feature's transformation.
So our task is to make sure these transformations can be accessed from each other: on the one side pd feature should be "touched" when the body's placement is changed, and on the other side when we use the feature's geometric data, the body's placement is taken in account.