Add elasticity parameters to the schema.

PiperOrigin-RevId: 675115200
Change-Id: Ic6608ce61cbb857dca71b3d9cbdac057e8f1ac7a
This commit is contained in:
Alessio Quaglino
2024-09-16 05:55:40 -07:00
committed by Copybara-Service
parent 015bdeb756
commit b15de2c951
17 changed files with 146 additions and 52 deletions
+1
View File
@@ -236,6 +236,7 @@ void mjs_defaultFlex(mjsFlex* flex) {
flex->activelayers = 1;
flex->rgba[0] = flex->rgba[1] = flex->rgba[2] = 0.5f;
flex->rgba[3] = 1.0f;
flex->thickness = -1;
}
+12
View File
@@ -2675,6 +2675,18 @@ void mjCFlex::Compile(const mjVFS* vfs) {
if (model->Bodies()[vbodyid]->plugin.instance) {
mjCPlugin* plugin_instance =
static_cast<mjCPlugin*>(model->Bodies()[vbodyid]->plugin.instance);
if (young > 0) {
plugin_instance->config_attribs["young"] = std::to_string(young);
}
if (poisson > 0) {
plugin_instance->config_attribs["poisson"] = std::to_string(poisson);
}
if (thickness > 0) {
plugin_instance->config_attribs["thickness"] = std::to_string(thickness);
}
if (damping > 0) {
plugin_instance->config_attribs["damping"] = std::to_string(damping);
}
plugin_instance->config_attribs["face"] = userface;
plugin_instance->config_attribs["edge"] = useredge;
}