First pass at mjSpec Explorer and Properties windows.

Displays the list of bodies and joints from the mjSpec and displays
values for the selected element.

Functionality is very limited and a bit non-intuitive. However, we want
to get this into our users hands to start getting feedback.

PiperOrigin-RevId: 842228895
Change-Id: I2491cd5e0acaf622110e0f6b8406919024d3607a
This commit is contained in:
Haroon Qureshi
2025-12-09 07:27:19 -08:00
committed by Copybara-Service
parent c064abc3da
commit 97eb307ce9
4 changed files with 281 additions and 19 deletions
+7 -1
View File
@@ -84,7 +84,7 @@ class App {
// Windows.
bool help = false;
bool info = false;
bool stats = false;
bool chart_cpu_time = false;
bool chart_dimensions = false;
bool chart_solver = false;
@@ -106,6 +106,10 @@ class App {
std::vector<std::string> camera_names;
std::vector<std::string> speed_names;
// Spec Properties.
mjsElement* element = nullptr;
int element_id = -1;
// State.
int state_sig = 0;
std::vector<mjtNum> state;
@@ -152,6 +156,8 @@ class App {
void FileDialogGui();
void ModelOptionsGui();
void DataInspectorGui();
void SpecExplorerGui();
void PropertiesGui();
float GetExpectedLabelWidth();
std::vector<const char*> GetCameraNames();