Skip to content

Fix ParameterTransform Python constructor missing activeJointParams#1228

Open
nickyhe-gemini wants to merge 1 commit intomainfrom
export-D98361877
Open

Fix ParameterTransform Python constructor missing activeJointParams#1228
nickyhe-gemini wants to merge 1 commit intomainfrom
export-D98361877

Conversation

@nickyhe-gemini
Copy link
Copy Markdown
Contributor

Summary:
The ParameterTransform pybind11 constructor (both sparse and dense
variants) did not initialize activeJointParams. This field was left as
an empty VectorX (size 0), causing an Eigen assertion failure
(index >= 0 && index < size()) whenever the character was used with any
solver error function that indexes activeJointParams_.

The fix adds computeActiveJointParams() after setting the transform,
matching the pattern used by D98022741 (removeJoints fix) and the C++
ParameterTransform::identity() factory.

This was discovered while building rigid body characters programmatically
from Python for marker tracking — any character constructed via
ParameterTransform(names, skeleton, transform) would crash in
process_markers, calibrate_markers, or any solver path.

Differential Revision: D98361877

Summary:
The ParameterTransform pybind11 constructor (both sparse and dense
variants) did not initialize `activeJointParams`. This field was left as
an empty VectorX<bool> (size 0), causing an Eigen assertion failure
(`index >= 0 && index < size()`) whenever the character was used with any
solver error function that indexes `activeJointParams_`.

The fix adds `computeActiveJointParams()` after setting the transform,
matching the pattern used by D98022741 (removeJoints fix) and the C++
`ParameterTransform::identity()` factory.

This was discovered while building rigid body characters programmatically
from Python for marker tracking — any character constructed via
`ParameterTransform(names, skeleton, transform)` would crash in
`process_markers`, `calibrate_markers`, or any solver path.

Differential Revision: D98361877
@meta-cla meta-cla bot added the CLA Signed This label is managed by the Meta Open Source bot. label Mar 28, 2026
@meta-codesync
Copy link
Copy Markdown
Contributor

meta-codesync bot commented Mar 28, 2026

@nickyhe-gemini has exported this pull request. If you are a Meta employee, you can view the originating Diff in D98361877.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Meta Open Source bot. fb-exported meta-exported

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant