newton.utils.parse_mjcf#
- class newton.utils.parse_mjcf(mjcf_filename, builder, xform=None, floating=None, base_joint=None, armature_scale=1.0, scale=1.0, hide_visuals=False, parse_visuals_as_colliders=False, parse_meshes=True, up_axis=Axis.Z, ignore_names=(), ignore_classes=(), visual_classes=('visual',), collider_classes=('collision',), no_class_as_colliders=True, force_show_colliders=False, enable_self_collisions=False, ignore_inertial_definitions=True, ensure_nonstatic_links=True, static_link_mass=1e-2, collapse_fixed_joints=False, verbose=False)#
Parses MuJoCo XML (MJCF) file and adds the bodies and joints to the given ModelBuilder.
- Parameters:
mjcf_filename (str) β The filename of the MuJoCo file to parse.
builder (ModelBuilder) β The
ModelBuilder
to add the bodies and joints to.xform (Transform) β The transform to apply to the imported mechanism.
floating (bool) β If True, the articulation is treated as a floating base. If False, the articulation is treated as a fixed base. If None, the articulation is treated as a floating base if a free joint is found in the MJCF, otherwise it is treated as a fixed base.
base_joint (Union[str, dict]) β The joint by which the root body is connected to the world. This can be either a string defining the joint axes of a D6 joint with comma-separated positional and angular axis names (e.g. βpx,py,rzβ for a D6 joint with linear axes in x, y and an angular axis in z) or a dict with joint parameters (see
ModelBuilder.add_joint()
).armature_scale (float) β Scaling factor to apply to the MJCF-defined joint armature values.
scale (float) β The scaling factor to apply to the imported mechanism.
hide_visuals (bool) β If True, hide visual shapes.
parse_visuals_as_colliders (bool) β If True, the geometry defined under the visual_classes tags is used for collision handling instead of the collider_classes geometries.
parse_meshes (bool) β Whether geometries of type βmeshβ should be parsed. If False, geometries of type βmeshβ are ignored.
up_axis (AxisType) β The up axis of the MuJoCo scene. The default is Z up.
ignore_names (Sequence[str]) β A list of regular expressions. Bodies and joints with a name matching one of the regular expressions will be ignored.
ignore_classes (Sequence[str]) β A list of regular expressions. Bodies and joints with a class matching one of the regular expressions will be ignored.
visual_classes (Sequence[str]) β A list of regular expressions. Visual geometries with a class matching one of the regular expressions will be parsed.
collider_classes (Sequence[str]) β A list of regular expressions. Collision geometries with a class matching one of the regular expressions will be parsed.
no_class_as_colliders (bool) β If True, geometries without a class are parsed as collision geometries. If False, geometries without a class are parsed as visual geometries.
force_show_colliders (bool) β If True, the collision shapes are always shown, even if there are visual shapes.
enable_self_collisions (bool) β If True, self-collisions are enabled.
ignore_inertial_definitions (bool) β If True, the inertial parameters defined in the MJCF are ignored and the inertia is calculated from the shape geometry.
ensure_nonstatic_links (bool) β If True, links with zero mass are given a small mass (see static_link_mass) to ensure they are dynamic.
static_link_mass (float) β The mass to assign to links with zero mass (if ensure_nonstatic_links is set to True).
collapse_fixed_joints (bool) β If True, fixed joints are removed and the respective bodies are merged.
verbose (bool) β If True, print additional information about parsing the MJCF.
- __init__(**kwargs)#