Skip to content

Implement WeldJoint merge#2242

Merged
jslee02 merged 26 commits intomainfrom
feature/weld-joint-merge
Nov 24, 2025
Merged

Implement WeldJoint merge#2242
jslee02 merged 26 commits intomainfrom
feature/weld-joint-merge

Conversation

@jslee02
Copy link
Member

@jslee02 jslee02 commented Nov 23, 2025

  • add WeldJoint::merge() to flatten a welded child into its parent while combining inertia, preserving external forces, cloning attached nodes, and reparenting descendants without disturbing world transforms
  • expose BodyNode::getNodes()/const variant so WeldJoint can clone attached nodes, and allow WeldJoint to clone nodes via friendship

Before creating a pull request

  • Run pixi run test-all to lint, build, and test your changes
  • Add unit tests for new functionality
  • Document new methods and classes
  • Add Python bindings (dartpy) if applicable

@jslee02 jslee02 added this to the DART 7.0 milestone Nov 23, 2025
@codecov
Copy link

codecov bot commented Nov 23, 2025

Codecov Report

❌ Patch coverage is 80.00000% with 11 lines in your changes missing coverage. Please review.
✅ Project coverage is 60.87%. Comparing base (5237903) to head (04e5eb7).
⚠️ Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
dart/dynamics/WeldJoint.cpp 86.66% 6 Missing ⚠️
dart/dynamics/BodyNode.cpp 50.00% 5 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2242      +/-   ##
==========================================
+ Coverage   60.82%   60.87%   +0.04%     
==========================================
  Files         353      353              
  Lines       31880    31935      +55     
  Branches     4128     4137       +9     
==========================================
+ Hits        19392    19440      +48     
- Misses      12488    12495       +7     
Flag Coverage Δ
unittests 60.87% <80.00%> (+0.04%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
dart/dynamics/BodyNode.hpp 0.00% <ø> (ø)
dart/dynamics/Node.hpp 100.00% <ø> (ø)
dart/dynamics/WeldJoint.hpp 100.00% <ø> (ø)
dart/dynamics/BodyNode.cpp 84.33% <50.00%> (+0.05%) ⬆️
dart/dynamics/WeldJoint.cpp 86.30% <86.66%> (+0.58%) ⬆️
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@jslee02 jslee02 changed the title Implement WeldJoint merge and harden pixi CI tooling Implement WeldJoint merge and stabilize CI parallelism Nov 23, 2025
@jslee02 jslee02 changed the title Implement WeldJoint merge and stabilize CI parallelism Implement WeldJoint merge Nov 23, 2025
@jslee02 jslee02 merged commit 7d621f6 into main Nov 24, 2025
0 of 30 checks passed
@jslee02 jslee02 deleted the feature/weld-joint-merge branch November 24, 2025 06:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant