🚀 API 快速参考#

📋 核心模块 - motrixsim#

功能类别

API

说明

模型加载

load_model(path)

加载 MJCF/URDF 模型文件

仿真步进

step(model, data)

执行一个仿真时间步

运动学

forward_kinematic(model, data)

前向运动学计算

🔧 核心对象#

对象

类型

用途描述

SceneModel

模型

静态仿真世界描述,包含机器人几何、关节、传感器定义

SceneData

数据

动态仿真状态,存储位置、速度等实时数据

Options

配置

仿真参数设置,控制积分器、求解器参数


🔍 Named Access - 模型组件访问#

MotrixSim 为模型组件提供便捷的命名访问接口,支持通过名称或索引直接访问和操作各种组件。

🔧 访问方式#

MotrixSim 的 Named Access 支持两种访问方式:

  • 按名称访问model.get_body("my_body")

  • 按索引访问model.get_body(0)

每个组件访问方法都返回对应的组件对象,提供该组件的属性和操作方法。

🎯 模型组件#

组件

访问方法

返回对象功能

索引查询

Body

model.get_body(name/id)

获取刚体位姿、DoF 状态

get_body_index(name)

Link

model.get_link(name/id)

获取连杆位姿、速度

get_link_index(name)

Joint

model.get_joint(name/id)

设置/获取关节位置、速度

get_joint_index(name)

Site

model.get_site(name/id)

获取参考点位置、朝向

get_site_index(name)

Sensor

model.get_sensor_value(id, data)

读取传感器数据

-

Actuator

model.get_actuator(name/id)

设置执行器控制、限制

get_actuator_index(name)

🔢 批量访问#

API

类型

说明

model.get_actuator_ctrls(data)

ndarray

获取所有执行器控制值

model.get_sensor_values(data)

ndarray

获取所有传感器值

model.get_link_poses(data)

ndarray

获取所有连杆的位置和旋转

model.bodies

List[Body]

所有刚体对象列表

model.links

List[Link]

所有连杆对象列表

model.joints

List[Joint]

所有关节对象列表

model.sites

List[Site]

所有参考点对象列表


📊 SceneData - 状态数据#

属性/方法

类型

说明

data.dof_pos

ndarray

DoF 位置数组

data.dof_vel

ndarray

DoF 速度数组

data.actuator_ctrls

ndarray

设置/获取执行器控制值

data.reset(model)

-

重置场景数据状态

data.low

LowData

底层数据对象(接触信息等)


🎨 渲染模块 - motrixsim.render#

对象/类

类别

主要功能

RenderApp

主渲染器

模型加载、场景同步

RenderGizmos

即时绘制

球体、立方体绘制

RenderUI

用户界面

按钮、开关控件

Input

输入处理

键盘、鼠标、射线检测