Use mj_id2name in viewer code where appropriate.

PiperOrigin-RevId: 948945088
Change-Id: I5635c71fd285b128618592699ca64ce8c0f35e31
This commit is contained in:
Yuval Tassa
2026-07-16 06:50:38 -07:00
committed by Copybara-Service
parent a77dff84a4
commit 0ce5e98916
4 changed files with 21 additions and 18 deletions
+6 -6
View File
@@ -642,8 +642,8 @@ std::string GetCameraName(const mjModel* model, const mjvCamera& camera,
return kCameraWasdName;
} else if (index == kTrackingCameraIdx) {
return "Tracking (" + std::to_string(camera.trackbodyid) + ")";
} else if (model->names[model->name_camadr[index]]) {
return std::string(model->names + model->name_camadr[index]);
} else if (const char* cam_name = mj_id2name(model, mjOBJ_CAMERA, index)) {
return cam_name;
} else {
return kCameraUnnamedName;
}
@@ -1262,8 +1262,8 @@ void JointsGui(const mjModel* model, const mjData* data,
continue;
}
const char* jnt_name = model->names + model->name_jntadr[i];
if (*jnt_name) {
const char* jnt_name = mj_id2name(model, mjOBJ_JOINT, i);
if (jnt_name) {
std::snprintf(name, sizeof(name), "%s", jnt_name);
} else {
std::snprintf(name, sizeof(name), "joint %d", i);
@@ -1315,8 +1315,8 @@ void ControlsGui(const mjModel* model, const mjData* data,
continue;
}
const char* ctrl_name = model->names + model->name_actuatoradr[i];
if (*ctrl_name) {
const char* ctrl_name = mj_id2name(model, mjOBJ_ACTUATOR, i);
if (ctrl_name) {
std::snprintf(name, sizeof(name), "%s", ctrl_name);
} else {
std::snprintf(name, sizeof(name), "control %d", i);
+2 -2
View File
@@ -31,8 +31,8 @@ static bool PipGuiImpl(const mjModel* model, mjData* data, float aspect_ratio,
bool result = true;
auto get_camera_name = [model](int i) -> const char* {
if (model->names[model->name_camadr[i]]) {
return model->names + model->name_camadr[i];
if (const char* name = mj_id2name(model, mjOBJ_CAMERA, i)) {
return name;
} else {
return "Unnamed";
}
+2 -3
View File
@@ -1609,9 +1609,8 @@ void App::ModelOptionsGui() {
ImGui::Spacing();
{
char key_fmt[128];
const char* key_name =
model()->names + model()->name_keyadr[ui_.key_idx];
if (key_name[0] != '\0') {
const char* key_name = mj_id2name(model(), mjOBJ_KEY, ui_.key_idx);
if (key_name) {
std::snprintf(key_fmt, sizeof(key_fmt), "%s", key_name);
} else {
std::snprintf(key_fmt, sizeof(key_fmt), "Key %d", ui_.key_idx);