🔷 几何体(Geometry)#

几何体决定了场景中物体的外观和碰撞属性。几何体可以添加在<body><worldbody>下,或者用于配置 default 的相关属性。 MJCF 几何体标签可配置属性

几何体类型#

目前支持的几何体类型如下:

类型

说明

平面(plane

无限平面,分割整个场景,只能配置在worldbody或者静态的body下,平面本地坐标系下的 Z 轴为法线方向,平面下方(-Z 方向)为发生碰撞的区域。size参数的前两位用于绘制平面的示意,不改变碰撞体积。

高度场(hfield

需要引用对应的hfield标签下的资产,无需配置size属性,具体用例可参考examples/assets/hfield.xml

球体(sphere

size属性只有 1 位,定义球的半径

胶囊体(capsule

胶囊体可以看做由两个半球和一个圆柱体组成,size由半球的半径和圆柱体的半高组成。

圆柱体(cylinder

size由圆形的半径,和圆柱体的半高组成。

立方体(box

size由 X, Y, Z 三个方向上的半长组成。

多面体(mesh

需要引用对应的mesh标签下的资产,无需配置size属性, 用例可参考examples/assets/boston_dynamics_spot/spot.xml中对mesh的配置。

主要接口#

在 MotrixSim 中,您可以通过以下方式访问 Geom 对象:

当您获取到一个 Geom 对象后,可以读取相关的位置,姿态,速度等信息,具体的 API 请参考 Geom API

例子#

您可以通过

uv run examples/geom.py

来运行一个简单的关于 geom api 调用的例子。

源码可以参考 examples/geom.py