Precompute mappings between M <-> D sparse representations.

PiperOrigin-RevId: 670898353
Change-Id: I4b15477b1b6eb4a64cf7d4a0bb5af8fcb95d4e45
This commit is contained in:
Yuval Tassa
2024-09-04 02:56:05 -07:00
committed by Copybara-Service
parent 303e5e7718
commit 42eb669e4e
11 changed files with 156 additions and 79 deletions
+14
View File
@@ -1000,6 +1000,20 @@ void mj_printFormattedData(const mjModel* m, mjData* d, const char* filename,
}
fprintf(fp, "\n\n");
// mapM2D
fprintf(fp, NAME_FORMAT, "mapM2D");
for (int i = 0; i < m->nD; i++) {
fprintf(fp, " %d", d->mapM2D[i]);
}
fprintf(fp, "\n\n");
// mapD2M
fprintf(fp, NAME_FORMAT, "mapD2M");
for (int i = 0; i < m->nM; i++) {
fprintf(fp, " %d", d->mapD2M[i]);
}
fprintf(fp, "\n\n");
// B_rownnz
fprintf(fp, NAME_FORMAT, "B_rownnz");
for (int i = 0; i < m->nbody; i++) {