Genesis-Embodied-AI/genesis-world · error · DeprecationError
This method has been removed. Please consider operating at l
Error message
This method has been removed. Please consider operating at link-level to get the cartesian position in word frame. Alternatively, 'get_anchor_pos' returns the anchor position of the joint in the world frame.
What it means
RigidJoint.get_pos has been removed because a joint is not a cartesion object with a well-defined position; only links carry cartesian poses. Calling it raises DeprecationError pointing to the replacements: link-level positions or joint.get_anchor_pos for the joint anchor in world frame.
Source
Thrown at genesis/engine/entities/rigid_entity/rigid_joint.py:98
("q_idx_local", "qs_idx_local"),
):
if name == name_old:
gs.logger.warning(
f"This property is deprecated and will be removed in future release. Please use '{name_new}' instead."
)
getter = getattr(self, f"_{name_old}")
return getter()
raise AttributeError
# ------------------------------------------------------------------------------------
# -------------------------------- real-time state -----------------------------------
# ------------------------------------------------------------------------------------
def get_pos(self):
"""
Get the position of the joint in the world frame.
"""
raise DeprecationError(
"This method has been removed. Please consider operating at link-level to get the cartesian position in "
"word frame. Alternatively, 'get_anchor_pos' returns the anchor position of the joint in the world frame."
)
def get_quat(self):
"""
Get the quaternion of the joint in the world frame.
"""
raise DeprecationError(
"This method has been removed. Please consider operating at link-level to get the cartesian orientation in "
"word frame. Alternatively, 'get_anchor_axis' returns the anchor axis of the joint in the world frame."
)
@gs.assert_built
def get_anchor_pos(self):
"""
Get the anchor position of the joint in the world frame.
View on GitHub (pinned to 56e4aa5d82)
Solutions
- Use joint.get_anchor_pos() for the joint anchor position in world frame
- Use joint.child_link.get_pos() (or the appropriate link) for a cartesian position
- Grep for 'joint.get_pos' and replace each call with the appropriate link or anchor API
Example fix
# before pos = joint.get_pos() # after pos = joint.get_anchor_pos() # anchor in world frame # or pos = joint.child_link.get_pos()
Defensive patterns
Strategy: validation
Try / catch
try:
p = joint.get_pos()
except DeprecationError:
p = joint.get_anchor_pos()
Prevention
- Use joint.get_anchor_pos() for anchor positions and link.get_pos() for cartesian poses
- Avoid assuming joints are cartesian objects; they are constraints with anchors and axes
When it happens
Trigger: Calling joint.get_pos() on any RigidJoint from entity.get_joints(...), e.g. to place an end-effector target or log a joint location in old scripts.
Common situations: Migrating code from an older Genesis release where joints exposed get_pos/get_quat; writing IK or plotting code that assumed a joint has a frame origin; following outdated tutorials.
Related errors
- This method has been removed. Please consider operating at l
- This property has been removed.
- This property has been removed.
- This property has been removed.
- This method has been removed. Please use 'get_AABB()' instea
AI-assisted analysis of Genesis-Embodied-AI/genesis-world@56e4aa5d82 (2026-08-28).
Data as JSON: /api/errors/6a5e5717d9cca20b.
Report an issue: GitHub.