7fd2061f5c
PiperOrigin-RevId: 960218397 Change-Id: I58f211f5a275f8f19254424facd02c14eaa8c668
543 lines
34 KiB
SourcePawn
543 lines
34 KiB
SourcePawn
// Copyright 2026 DeepMind Technologies Limited
|
|
//
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
//
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
|
|
// GENERATED FILE, DO NOT EDIT. Generated from src/xml/mjcf.schema by
|
|
// doc/generate/generate_default_table.py; test/doc/doc_test.py checks
|
|
// freshness.
|
|
//
|
|
// One row per bound numeric schema attribute -- total coverage, whether or
|
|
// not a default is declared. SchemaDefaultsTest compares every row against a
|
|
// freshly-constructed spec: declared values must match the C
|
|
// default-constructors, values beyond ndecl must be zero, and rows marked
|
|
// unset must hold the mjNAN sentinel. A nonzero constructor default with no
|
|
// schema declaration is therefore a test failure: the schema cannot silently
|
|
// under-declare. Rows are {attr, offset, kind, len, ndecl, unset, values};
|
|
// kind: 0=double 1=float 2=int 3=byte 4=mjtNum.
|
|
|
|
// clang-format off
|
|
struct mjXDefaultEntry {
|
|
const char* attr;
|
|
int offset;
|
|
int kind;
|
|
int len;
|
|
int ndecl;
|
|
int unset;
|
|
double value[8];
|
|
};
|
|
|
|
struct mjXDefaultTable {
|
|
const char* structname;
|
|
const mjXDefaultEntry* entries;
|
|
int n;
|
|
};
|
|
|
|
|
|
static const mjXDefaultEntry kDefaults_mjLROpt[] = {
|
|
{"mode", (int)offsetof(mjLROpt, mode), 2, 1, 1, 0, {(double)mjLRMODE_MUSCLE}},
|
|
{"useexisting", (int)offsetof(mjLROpt, useexisting), 2, 1, 1, 0, {1}},
|
|
{"uselimit", (int)offsetof(mjLROpt, uselimit), 2, 1, 0, 0, {0}},
|
|
{"accel", (int)offsetof(mjLROpt, accel), 4, 1, 1, 0, {20.0}},
|
|
{"maxforce", (int)offsetof(mjLROpt, maxforce), 4, 1, 0, 0, {0}},
|
|
{"timeconst", (int)offsetof(mjLROpt, timeconst), 4, 1, 1, 0, {1.0}},
|
|
{"timestep", (int)offsetof(mjLROpt, timestep), 4, 1, 1, 0, {0.01}},
|
|
{"inttotal", (int)offsetof(mjLROpt, inttotal), 4, 1, 1, 0, {10.0}},
|
|
{"interval", (int)offsetof(mjLROpt, interval), 4, 1, 1, 0, {2.0}},
|
|
{"tolrange", (int)offsetof(mjLROpt, tolrange), 4, 1, 1, 0, {0.05}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjOption[] = {
|
|
{"timestep", (int)offsetof(mjOption, timestep), 4, 1, 1, 0, {0.002}},
|
|
{"impratio", (int)offsetof(mjOption, impratio), 4, 1, 1, 0, {1.0}},
|
|
{"tolerance", (int)offsetof(mjOption, tolerance), 4, 1, 1, 0, {1e-08}},
|
|
{"ls_tolerance", (int)offsetof(mjOption, ls_tolerance), 4, 1, 1, 0, {0.01}},
|
|
{"noslip_tolerance", (int)offsetof(mjOption, noslip_tolerance), 4, 1, 1, 0, {1e-06}},
|
|
{"ccd_tolerance", (int)offsetof(mjOption, ccd_tolerance), 4, 1, 1, 0, {1e-06}},
|
|
{"sleep_tolerance", (int)offsetof(mjOption, sleep_tolerance), 4, 1, 1, 0, {0.001}},
|
|
{"gravity", (int)offsetof(mjOption, gravity), 4, 3, 3, 0, {0.0, 0.0, -9.81}},
|
|
{"wind", (int)offsetof(mjOption, wind), 4, 3, 3, 0, {0.0, 0.0, 0.0}},
|
|
{"magnetic", (int)offsetof(mjOption, magnetic), 4, 3, 3, 0, {0.0, -0.5, 0.0}},
|
|
{"density", (int)offsetof(mjOption, density), 4, 1, 0, 0, {0}},
|
|
{"viscosity", (int)offsetof(mjOption, viscosity), 4, 1, 0, 0, {0}},
|
|
{"o_margin", (int)offsetof(mjOption, o_margin), 4, 1, 0, 0, {0}},
|
|
{"o_solref", (int)offsetof(mjOption, o_solref), 4, mjNREF, 2, 0, {0.02, 1.0}},
|
|
{"o_solimp", (int)offsetof(mjOption, o_solimp), 4, mjNIMP, 5, 0, {0.9, 0.95, 0.001, 0.5, 2.0}},
|
|
{"o_friction", (int)offsetof(mjOption, o_friction), 4, 5, 5, 0, {1.0, 1.0, 0.005, 0.0001, 0.0001}},
|
|
{"integrator", (int)offsetof(mjOption, integrator), 2, 1, 1, 0, {(double)mjINT_EULER}},
|
|
{"cone", (int)offsetof(mjOption, cone), 2, 1, 1, 0, {(double)mjCONE_PYRAMIDAL}},
|
|
{"jacobian", (int)offsetof(mjOption, jacobian), 2, 1, 1, 0, {(double)mjJAC_AUTO}},
|
|
{"solver", (int)offsetof(mjOption, solver), 2, 1, 1, 0, {(double)mjSOL_NEWTON}},
|
|
{"iterations", (int)offsetof(mjOption, iterations), 2, 1, 1, 0, {100.0}},
|
|
{"ls_iterations", (int)offsetof(mjOption, ls_iterations), 2, 1, 1, 0, {50.0}},
|
|
{"noslip_iterations", (int)offsetof(mjOption, noslip_iterations), 2, 1, 0, 0, {0}},
|
|
{"ccd_iterations", (int)offsetof(mjOption, ccd_iterations), 2, 1, 1, 0, {35.0}},
|
|
{"sdf_iterations", (int)offsetof(mjOption, sdf_iterations), 2, 1, 1, 0, {10.0}},
|
|
{"sdf_initpoints", (int)offsetof(mjOption, sdf_initpoints), 2, 1, 1, 0, {40.0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjSpec[] = {
|
|
{"njmax", (int)offsetof(mjSpec, njmax), 2, 1, 1, 0, {-1.0}},
|
|
{"nconmax", (int)offsetof(mjSpec, nconmax), 2, 1, 1, 0, {-1.0}},
|
|
{"nstack", (int)offsetof(mjSpec, nstack), 2, 1, 1, 0, {-1.0}},
|
|
{"nuserdata", (int)offsetof(mjSpec, nuserdata), 2, 1, 0, 0, {0}},
|
|
{"nkey", (int)offsetof(mjSpec, nkey), 2, 1, 0, 0, {0}},
|
|
{"nuser_body", (int)offsetof(mjSpec, nuser_body), 2, 1, 1, 0, {-1.0}},
|
|
{"nuser_jnt", (int)offsetof(mjSpec, nuser_jnt), 2, 1, 1, 0, {-1.0}},
|
|
{"nuser_geom", (int)offsetof(mjSpec, nuser_geom), 2, 1, 1, 0, {-1.0}},
|
|
{"nuser_site", (int)offsetof(mjSpec, nuser_site), 2, 1, 1, 0, {-1.0}},
|
|
{"nuser_cam", (int)offsetof(mjSpec, nuser_cam), 2, 1, 1, 0, {-1.0}},
|
|
{"nuser_tendon", (int)offsetof(mjSpec, nuser_tendon), 2, 1, 1, 0, {-1.0}},
|
|
{"nuser_actuator", (int)offsetof(mjSpec, nuser_actuator), 2, 1, 1, 0, {-1.0}},
|
|
{"nuser_sensor", (int)offsetof(mjSpec, nuser_sensor), 2, 1, 1, 0, {-1.0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjStatistic[] = {
|
|
{"meaninertia", (int)offsetof(mjStatistic, meaninertia), 4, 1, 0, 1, {0}},
|
|
{"meanmass", (int)offsetof(mjStatistic, meanmass), 4, 1, 0, 1, {0}},
|
|
{"meansize", (int)offsetof(mjStatistic, meansize), 4, 1, 0, 1, {0}},
|
|
{"extent", (int)offsetof(mjStatistic, extent), 4, 1, 0, 1, {0}},
|
|
{"center", (int)offsetof(mjStatistic, center), 4, 3, 0, 1, {0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjVisual_global[] = {
|
|
{"cameraid", (int)offsetof(mjVisual, global.cameraid), 2, 1, 1, 0, {-1.0}},
|
|
{"orthographic", (int)offsetof(mjVisual, global.orthographic), 2, 1, 1, 0, {0}},
|
|
{"fovy", (int)offsetof(mjVisual, global.fovy), 1, 1, 1, 0, {45.0}},
|
|
{"ipd", (int)offsetof(mjVisual, global.ipd), 1, 1, 1, 0, {0.068}},
|
|
{"azimuth", (int)offsetof(mjVisual, global.azimuth), 1, 1, 1, 0, {90.0}},
|
|
{"elevation", (int)offsetof(mjVisual, global.elevation), 1, 1, 1, 0, {-45.0}},
|
|
{"linewidth", (int)offsetof(mjVisual, global.linewidth), 1, 1, 1, 0, {1.0}},
|
|
{"glow", (int)offsetof(mjVisual, global.glow), 1, 1, 1, 0, {0.3}},
|
|
{"offwidth", (int)offsetof(mjVisual, global.offwidth), 2, 1, 1, 0, {640.0}},
|
|
{"offheight", (int)offsetof(mjVisual, global.offheight), 2, 1, 1, 0, {480.0}},
|
|
{"realtime", (int)offsetof(mjVisual, global.realtime), 1, 1, 1, 0, {1.0}},
|
|
{"ellipsoidinertia", (int)offsetof(mjVisual, global.ellipsoidinertia), 2, 1, 1, 0, {0}},
|
|
{"bvactive", (int)offsetof(mjVisual, global.bvactive), 2, 1, 1, 0, {0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjVisual_headlight[] = {
|
|
{"ambient", (int)offsetof(mjVisual, headlight.ambient), 1, 3, 3, 0, {0.1, 0.1, 0.1}},
|
|
{"diffuse", (int)offsetof(mjVisual, headlight.diffuse), 1, 3, 3, 0, {0.4, 0.4, 0.4}},
|
|
{"specular", (int)offsetof(mjVisual, headlight.specular), 1, 3, 3, 0, {0.5, 0.5, 0.5}},
|
|
{"active", (int)offsetof(mjVisual, headlight.active), 2, 1, 1, 0, {1.0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjVisual_map[] = {
|
|
{"stiffness", (int)offsetof(mjVisual, map.stiffness), 1, 1, 1, 0, {100.0}},
|
|
{"stiffnessrot", (int)offsetof(mjVisual, map.stiffnessrot), 1, 1, 1, 0, {500.0}},
|
|
{"force", (int)offsetof(mjVisual, map.force), 1, 1, 1, 0, {0.005}},
|
|
{"torque", (int)offsetof(mjVisual, map.torque), 1, 1, 1, 0, {0.1}},
|
|
{"alpha", (int)offsetof(mjVisual, map.alpha), 1, 1, 1, 0, {0.3}},
|
|
{"fogstart", (int)offsetof(mjVisual, map.fogstart), 1, 1, 1, 0, {3.0}},
|
|
{"fogend", (int)offsetof(mjVisual, map.fogend), 1, 1, 1, 0, {10.0}},
|
|
{"znear", (int)offsetof(mjVisual, map.znear), 1, 1, 1, 0, {0.01}},
|
|
{"zfar", (int)offsetof(mjVisual, map.zfar), 1, 1, 1, 0, {50.0}},
|
|
{"haze", (int)offsetof(mjVisual, map.haze), 1, 1, 1, 0, {0.3}},
|
|
{"shadowclip", (int)offsetof(mjVisual, map.shadowclip), 1, 1, 1, 0, {1.0}},
|
|
{"shadowscale", (int)offsetof(mjVisual, map.shadowscale), 1, 1, 1, 0, {0.6}},
|
|
{"actuatortendon", (int)offsetof(mjVisual, map.actuatortendon), 1, 1, 1, 0, {2.0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjVisual_quality[] = {
|
|
{"shadowsize", (int)offsetof(mjVisual, quality.shadowsize), 2, 1, 1, 0, {4096.0}},
|
|
{"offsamples", (int)offsetof(mjVisual, quality.offsamples), 2, 1, 1, 0, {4.0}},
|
|
{"numslices", (int)offsetof(mjVisual, quality.numslices), 2, 1, 1, 0, {28.0}},
|
|
{"numstacks", (int)offsetof(mjVisual, quality.numstacks), 2, 1, 1, 0, {16.0}},
|
|
{"numquads", (int)offsetof(mjVisual, quality.numquads), 2, 1, 1, 0, {4.0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjVisual_rgba[] = {
|
|
{"fog", (int)offsetof(mjVisual, rgba.fog), 1, 4, 4, 0, {0.0, 0.0, 0.0, 1.0}},
|
|
{"haze", (int)offsetof(mjVisual, rgba.haze), 1, 4, 4, 0, {1.0, 1.0, 1.0, 1.0}},
|
|
{"force", (int)offsetof(mjVisual, rgba.force), 1, 4, 4, 0, {1.0, 0.5, 0.5, 1.0}},
|
|
{"inertia", (int)offsetof(mjVisual, rgba.inertia), 1, 4, 4, 0, {0.8, 0.2, 0.2, 0.6}},
|
|
{"joint", (int)offsetof(mjVisual, rgba.joint), 1, 4, 4, 0, {0.2, 0.6, 0.8, 1.0}},
|
|
{"actuator", (int)offsetof(mjVisual, rgba.actuator), 1, 4, 4, 0, {0.2, 0.25, 0.2, 1.0}},
|
|
{"actuatornegative", (int)offsetof(mjVisual, rgba.actuatornegative), 1, 4, 4, 0, {0.2, 0.6, 0.9, 1.0}},
|
|
{"actuatorpositive", (int)offsetof(mjVisual, rgba.actuatorpositive), 1, 4, 4, 0, {0.9, 0.4, 0.2, 1.0}},
|
|
{"com", (int)offsetof(mjVisual, rgba.com), 1, 4, 4, 0, {0.9, 0.9, 0.9, 1.0}},
|
|
{"camera", (int)offsetof(mjVisual, rgba.camera), 1, 4, 4, 0, {0.6, 0.9, 0.6, 1.0}},
|
|
{"light", (int)offsetof(mjVisual, rgba.light), 1, 4, 4, 0, {0.6, 0.6, 0.9, 1.0}},
|
|
{"selectpoint", (int)offsetof(mjVisual, rgba.selectpoint), 1, 4, 4, 0, {0.9, 0.9, 0.1, 1.0}},
|
|
{"connect", (int)offsetof(mjVisual, rgba.connect), 1, 4, 4, 0, {0.2, 0.2, 0.8, 1.0}},
|
|
{"contactpoint", (int)offsetof(mjVisual, rgba.contactpoint), 1, 4, 4, 0, {0.9, 0.6, 0.2, 1.0}},
|
|
{"contactforce", (int)offsetof(mjVisual, rgba.contactforce), 1, 4, 4, 0, {0.7, 0.9, 0.9, 1.0}},
|
|
{"contactfriction", (int)offsetof(mjVisual, rgba.contactfriction), 1, 4, 4, 0, {0.9, 0.8, 0.4, 1.0}},
|
|
{"contacttorque", (int)offsetof(mjVisual, rgba.contacttorque), 1, 4, 4, 0, {0.9, 0.7, 0.9, 1.0}},
|
|
{"contactgap", (int)offsetof(mjVisual, rgba.contactgap), 1, 4, 4, 0, {0.5, 0.8, 0.9, 1.0}},
|
|
{"rangefinder", (int)offsetof(mjVisual, rgba.rangefinder), 1, 4, 4, 0, {1.0, 1.0, 0.1, 1.0}},
|
|
{"constraint", (int)offsetof(mjVisual, rgba.constraint), 1, 4, 4, 0, {0.9, 0.0, 0.0, 1.0}},
|
|
{"slidercrank", (int)offsetof(mjVisual, rgba.slidercrank), 1, 4, 4, 0, {0.5, 0.3, 0.8, 1.0}},
|
|
{"crankbroken", (int)offsetof(mjVisual, rgba.crankbroken), 1, 4, 4, 0, {0.9, 0.0, 0.0, 1.0}},
|
|
{"frustum", (int)offsetof(mjVisual, rgba.frustum), 1, 4, 4, 0, {1.0, 1.0, 0.0, 0.2}},
|
|
{"bv", (int)offsetof(mjVisual, rgba.bv), 1, 4, 4, 0, {0.0, 1.0, 0.0, 0.5}},
|
|
{"bvactive", (int)offsetof(mjVisual, rgba.bvactive), 1, 4, 4, 0, {1.0, 0.0, 0.0, 0.5}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjVisual_scale[] = {
|
|
{"forcewidth", (int)offsetof(mjVisual, scale.forcewidth), 1, 1, 1, 0, {0.1}},
|
|
{"contactwidth", (int)offsetof(mjVisual, scale.contactwidth), 1, 1, 1, 0, {0.3}},
|
|
{"contactheight", (int)offsetof(mjVisual, scale.contactheight), 1, 1, 1, 0, {0.1}},
|
|
{"connect", (int)offsetof(mjVisual, scale.connect), 1, 1, 1, 0, {0.2}},
|
|
{"com", (int)offsetof(mjVisual, scale.com), 1, 1, 1, 0, {0.4}},
|
|
{"camera", (int)offsetof(mjVisual, scale.camera), 1, 1, 1, 0, {0.3}},
|
|
{"light", (int)offsetof(mjVisual, scale.light), 1, 1, 1, 0, {0.3}},
|
|
{"selectpoint", (int)offsetof(mjVisual, scale.selectpoint), 1, 1, 1, 0, {0.2}},
|
|
{"jointlength", (int)offsetof(mjVisual, scale.jointlength), 1, 1, 1, 0, {1.0}},
|
|
{"jointwidth", (int)offsetof(mjVisual, scale.jointwidth), 1, 1, 1, 0, {0.1}},
|
|
{"actuatorlength", (int)offsetof(mjVisual, scale.actuatorlength), 1, 1, 1, 0, {0.7}},
|
|
{"actuatorwidth", (int)offsetof(mjVisual, scale.actuatorwidth), 1, 1, 1, 0, {0.2}},
|
|
{"framelength", (int)offsetof(mjVisual, scale.framelength), 1, 1, 1, 0, {1.0}},
|
|
{"framewidth", (int)offsetof(mjVisual, scale.framewidth), 1, 1, 1, 0, {0.1}},
|
|
{"constraint", (int)offsetof(mjVisual, scale.constraint), 1, 1, 1, 0, {0.1}},
|
|
{"slidercrank", (int)offsetof(mjVisual, scale.slidercrank), 1, 1, 1, 0, {0.2}},
|
|
{"frustum", (int)offsetof(mjVisual, scale.frustum), 1, 1, 1, 0, {10.0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjsActuator[] = {
|
|
{"group", (int)offsetof(mjsActuator, group), 2, 1, 0, 0, {0}},
|
|
{"nsample", (int)offsetof(mjsActuator, nsample), 2, 1, 0, 0, {0}},
|
|
{"interp", (int)offsetof(mjsActuator, interp), 2, 1, 0, 0, {0}},
|
|
{"delay", (int)offsetof(mjsActuator, delay), 0, 1, 0, 0, {0}},
|
|
{"ctrlrange", (int)offsetof(mjsActuator, ctrlrange), 0, 2, 0, 0, {0}},
|
|
{"ctrllimited", (int)offsetof(mjsActuator, ctrllimited), 2, 1, 1, 0, {(double)2}},
|
|
{"forcelimited", (int)offsetof(mjsActuator, forcelimited), 2, 1, 1, 0, {(double)2}},
|
|
{"actlimited", (int)offsetof(mjsActuator, actlimited), 2, 1, 1, 0, {(double)2}},
|
|
{"forcerange", (int)offsetof(mjsActuator, forcerange), 0, 2, 0, 0, {0}},
|
|
{"actrange", (int)offsetof(mjsActuator, actrange), 0, 2, 0, 0, {0}},
|
|
{"lengthrange", (int)offsetof(mjsActuator, lengthrange), 0, 2, 0, 0, {0}},
|
|
{"gear", (int)offsetof(mjsActuator, gear), 0, 6, 6, 0, {1.0, 0.0, 0.0, 0.0, 0.0, 0.0}},
|
|
{"damping", (int)offsetof(mjsActuator, damping), 0, mjNPOLY+1, 0, 0, {0}},
|
|
{"armature", (int)offsetof(mjsActuator, armature), 0, 1, 0, 0, {0}},
|
|
{"cranklength", (int)offsetof(mjsActuator, cranklength), 0, 1, 0, 0, {0}},
|
|
{"actdim", (int)offsetof(mjsActuator, actdim), 2, 1, 1, 0, {-1.0}},
|
|
{"velrange", (int)offsetof(mjsActuator, velrange), 0, 2, 0, 0, {0}},
|
|
{"ffrange", (int)offsetof(mjsActuator, ffrange), 0, 2, 0, 0, {0}},
|
|
{"dyntype", (int)offsetof(mjsActuator, dyntype), 2, 1, 1, 0, {(double)mjDYN_NONE}},
|
|
{"gaintype", (int)offsetof(mjsActuator, gaintype), 2, 1, 1, 0, {(double)mjGAIN_FIXED}},
|
|
{"biastype", (int)offsetof(mjsActuator, biastype), 2, 1, 1, 0, {(double)mjBIAS_NONE}},
|
|
{"dynprm", (int)offsetof(mjsActuator, dynprm), 0, mjNDYN, 1, 0, {1.0}},
|
|
{"gainprm", (int)offsetof(mjsActuator, gainprm), 0, mjNGAIN, 1, 0, {1.0}},
|
|
{"biasprm", (int)offsetof(mjsActuator, biasprm), 0, mjNBIAS, 0, 0, {0}},
|
|
{"actearly", (int)offsetof(mjsActuator, actearly), 3, 1, 0, 0, {0}},
|
|
{"inheritrange", (int)offsetof(mjsActuator, inheritrange), 0, 1, 0, 0, {0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjsBody[] = {
|
|
{"pos", (int)offsetof(mjsBody, pos), 0, 3, 3, 0, {0.0, 0.0, 0.0}},
|
|
{"quat", (int)offsetof(mjsBody, quat), 0, 4, 4, 0, {1.0, 0.0, 0.0, 0.0}},
|
|
{"mocap", (int)offsetof(mjsBody, mocap), 3, 1, 0, 0, {0}},
|
|
{"gravcomp", (int)offsetof(mjsBody, gravcomp), 0, 1, 0, 0, {0}},
|
|
{"sleep", (int)offsetof(mjsBody, sleep), 2, 1, 0, 0, {0}},
|
|
{"simple", (int)offsetof(mjsBody, simple), 3, 1, 1, 0, {(double)1}},
|
|
{"pos", (int)offsetof(mjsBody, ipos), 0, 3, 0, 1, {0}},
|
|
{"quat", (int)offsetof(mjsBody, iquat), 0, 4, 4, 0, {1.0, 0.0, 0.0, 0.0}},
|
|
{"mass", (int)offsetof(mjsBody, mass), 0, 1, 0, 0, {0}},
|
|
{"diaginertia", (int)offsetof(mjsBody, inertia), 0, 3, 0, 0, {0}},
|
|
{"fullinertia", (int)offsetof(mjsBody, fullinertia), 0, 6, 0, 1, {0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjsCamera[] = {
|
|
{"projection", (int)offsetof(mjsCamera, proj), 2, 1, 0, 0, {0}},
|
|
{"fovy", (int)offsetof(mjsCamera, fovy), 0, 1, 1, 0, {45.0}},
|
|
{"ipd", (int)offsetof(mjsCamera, ipd), 0, 1, 1, 0, {0.068}},
|
|
{"resolution", (int)offsetof(mjsCamera, resolution), 2, 2, 2, 0, {1.0, 1.0}},
|
|
{"pos", (int)offsetof(mjsCamera, pos), 0, 3, 3, 0, {0.0, 0.0, 0.0}},
|
|
{"quat", (int)offsetof(mjsCamera, quat), 0, 4, 4, 0, {1.0, 0.0, 0.0, 0.0}},
|
|
{"mode", (int)offsetof(mjsCamera, mode), 2, 1, 1, 0, {(double)mjCAMLIGHT_FIXED}},
|
|
{"focal", (int)offsetof(mjsCamera, focal_length), 1, 2, 0, 0, {0}},
|
|
{"focalpixel", (int)offsetof(mjsCamera, focal_pixel), 1, 2, 0, 0, {0}},
|
|
{"principal", (int)offsetof(mjsCamera, principal_length), 1, 2, 0, 0, {0}},
|
|
{"principalpixel", (int)offsetof(mjsCamera, principal_pixel), 1, 2, 0, 0, {0}},
|
|
{"sensorsize", (int)offsetof(mjsCamera, sensor_size), 1, 2, 0, 0, {0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjsCompiler[] = {
|
|
{"autolimits", (int)offsetof(mjsCompiler, autolimits), 3, 1, 1, 0, {1}},
|
|
{"boundmass", (int)offsetof(mjsCompiler, boundmass), 0, 1, 0, 0, {0}},
|
|
{"boundinertia", (int)offsetof(mjsCompiler, boundinertia), 0, 1, 0, 0, {0}},
|
|
{"settotalmass", (int)offsetof(mjsCompiler, settotalmass), 0, 1, 1, 0, {-1.0}},
|
|
{"balanceinertia", (int)offsetof(mjsCompiler, balanceinertia), 3, 1, 0, 0, {0}},
|
|
{"angle", (int)offsetof(mjsCompiler, degree), 3, 1, 1, 0, {(double)1}},
|
|
{"fitaabb", (int)offsetof(mjsCompiler, fitaabb), 3, 1, 0, 0, {0}},
|
|
{"discardvisual", (int)offsetof(mjsCompiler, discardvisual), 3, 1, 0, 0, {0}},
|
|
{"usethread", (int)offsetof(mjsCompiler, usethread), 3, 1, 1, 0, {1}},
|
|
{"fusestatic", (int)offsetof(mjsCompiler, fusestatic), 3, 1, 0, 0, {0}},
|
|
{"inertiafromgeom", (int)offsetof(mjsCompiler, inertiafromgeom), 2, 1, 1, 0, {(double)2}},
|
|
{"inertiagrouprange", (int)offsetof(mjsCompiler, inertiagrouprange), 2, 2, 2, 0, {0.0, 5.0}},
|
|
{"saveinertial", (int)offsetof(mjsCompiler, saveinertial), 3, 1, 0, 0, {0}},
|
|
{"alignfree", (int)offsetof(mjsCompiler, alignfree), 3, 1, 0, 0, {0}},
|
|
{"conflict", (int)offsetof(mjsCompiler, conflict), 2, 1, 0, 0, {0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjsEquality[] = {
|
|
{"active", (int)offsetof(mjsEquality, active), 3, 1, 1, 0, {1}},
|
|
{"solref", (int)offsetof(mjsEquality, solref), 4, mjNREF, 2, 0, {0.02, 1.0}},
|
|
{"solimp", (int)offsetof(mjsEquality, solimp), 4, mjNIMP, 5, 0, {0.9, 0.95, 0.001, 0.5, 2.0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjsFlex[] = {
|
|
{"young", (int)offsetof(mjsFlex, young), 0, 1, 0, 0, {0}},
|
|
{"poisson", (int)offsetof(mjsFlex, poisson), 0, 1, 0, 0, {0}},
|
|
{"damping", (int)offsetof(mjsFlex, damping), 0, 1, 0, 0, {0}},
|
|
{"thickness", (int)offsetof(mjsFlex, thickness), 0, 1, 1, 0, {-1.0}},
|
|
{"elastic2d", (int)offsetof(mjsFlex, elastic2d), 2, 1, 0, 0, {0}},
|
|
{"contype", (int)offsetof(mjsFlex, contype), 2, 1, 1, 0, {1.0}},
|
|
{"conaffinity", (int)offsetof(mjsFlex, conaffinity), 2, 1, 1, 0, {1.0}},
|
|
{"condim", (int)offsetof(mjsFlex, condim), 2, 1, 1, 0, {3.0}},
|
|
{"priority", (int)offsetof(mjsFlex, priority), 2, 1, 0, 0, {0}},
|
|
{"friction", (int)offsetof(mjsFlex, friction), 0, 3, 3, 0, {1.0, 0.005, 0.0001}},
|
|
{"solmix", (int)offsetof(mjsFlex, solmix), 0, 1, 1, 0, {1.0}},
|
|
{"solref", (int)offsetof(mjsFlex, solref), 4, mjNREF, 2, 0, {0.02, 1.0}},
|
|
{"solimp", (int)offsetof(mjsFlex, solimp), 4, mjNIMP, 5, 0, {0.9, 0.95, 0.001, 0.5, 2.0}},
|
|
{"margin", (int)offsetof(mjsFlex, margin), 0, 1, 0, 0, {0}},
|
|
{"gap", (int)offsetof(mjsFlex, gap), 0, 1, 0, 0, {0}},
|
|
{"internal", (int)offsetof(mjsFlex, internal), 3, 1, 0, 0, {0}},
|
|
{"selfcollide", (int)offsetof(mjsFlex, selfcollide), 2, 1, 1, 0, {(double)mjFLEXSELF_AUTO}},
|
|
{"activelayers", (int)offsetof(mjsFlex, activelayers), 2, 1, 1, 0, {1.0}},
|
|
{"passive", (int)offsetof(mjsFlex, passive), 2, 1, 0, 0, {0}},
|
|
{"group", (int)offsetof(mjsFlex, group), 2, 1, 0, 0, {0}},
|
|
{"dim", (int)offsetof(mjsFlex, dim), 2, 1, 1, 0, {2.0}},
|
|
{"radius", (int)offsetof(mjsFlex, radius), 0, 1, 1, 0, {0.005}},
|
|
{"rgba", (int)offsetof(mjsFlex, rgba), 1, 4, 4, 0, {0.5, 0.5, 0.5, 1.0}},
|
|
{"flatskin", (int)offsetof(mjsFlex, flatskin), 3, 1, 0, 0, {0}},
|
|
{"cellcount", (int)offsetof(mjsFlex, cellcount), 2, 3, 3, 0, {1.0, 1.0, 1.0}},
|
|
{"stiffness", (int)offsetof(mjsFlex, edgestiffness), 0, 1, 0, 0, {0}},
|
|
{"damping", (int)offsetof(mjsFlex, edgedamping), 0, 1, 0, 0, {0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjsFrame[] = {
|
|
{"pos", (int)offsetof(mjsFrame, pos), 0, 3, 0, 0, {0}},
|
|
{"quat", (int)offsetof(mjsFrame, quat), 0, 4, 4, 0, {1.0, 0.0, 0.0, 0.0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjsGeom[] = {
|
|
{"type", (int)offsetof(mjsGeom, type), 2, 1, 1, 0, {(double)mjGEOM_SPHERE}},
|
|
{"contype", (int)offsetof(mjsGeom, contype), 2, 1, 1, 0, {1.0}},
|
|
{"conaffinity", (int)offsetof(mjsGeom, conaffinity), 2, 1, 1, 0, {1.0}},
|
|
{"condim", (int)offsetof(mjsGeom, condim), 2, 1, 1, 0, {3.0}},
|
|
{"group", (int)offsetof(mjsGeom, group), 2, 1, 0, 0, {0}},
|
|
{"priority", (int)offsetof(mjsGeom, priority), 2, 1, 0, 0, {0}},
|
|
{"size", (int)offsetof(mjsGeom, size), 0, 3, 0, 0, {0}},
|
|
{"friction", (int)offsetof(mjsGeom, friction), 0, 3, 3, 0, {1.0, 0.005, 0.0001}},
|
|
{"mass", (int)offsetof(mjsGeom, mass), 0, 1, 0, 1, {0}},
|
|
{"density", (int)offsetof(mjsGeom, density), 0, 1, 1, 0, {1000.0}},
|
|
{"shellinertia", (int)offsetof(mjsGeom, typeinertia), 2, 1, 0, 0, {0}},
|
|
{"solmix", (int)offsetof(mjsGeom, solmix), 0, 1, 1, 0, {1.0}},
|
|
{"solref", (int)offsetof(mjsGeom, solref), 4, mjNREF, 2, 0, {0.02, 1.0}},
|
|
{"solimp", (int)offsetof(mjsGeom, solimp), 4, mjNIMP, 5, 0, {0.9, 0.95, 0.001, 0.5, 2.0}},
|
|
{"margin", (int)offsetof(mjsGeom, margin), 0, 1, 0, 0, {0}},
|
|
{"gap", (int)offsetof(mjsGeom, gap), 0, 1, 0, 0, {0}},
|
|
{"surfacevel", (int)offsetof(mjsGeom, surfacevel), 0, 6, 0, 0, {0}},
|
|
{"adhesion", (int)offsetof(mjsGeom, adhesion), 0, 1, 0, 0, {0}},
|
|
{"fromto", (int)offsetof(mjsGeom, fromto), 0, 6, 0, 1, {0}},
|
|
{"pos", (int)offsetof(mjsGeom, pos), 0, 3, 3, 0, {0.0, 0.0, 0.0}},
|
|
{"quat", (int)offsetof(mjsGeom, quat), 0, 4, 4, 0, {1.0, 0.0, 0.0, 0.0}},
|
|
{"fitscale", (int)offsetof(mjsGeom, fitscale), 0, 1, 1, 0, {1.0}},
|
|
{"rgba", (int)offsetof(mjsGeom, rgba), 1, 4, 4, 0, {0.5, 0.5, 0.5, 1.0}},
|
|
{"fluidshape", (int)offsetof(mjsGeom, fluid_ellipsoid), 4, 1, 0, 0, {0}},
|
|
{"fluidcoef", (int)offsetof(mjsGeom, fluid_coefs), 4, 5, 5, 0, {0.5, 0.25, 1.5, 1.0, 1.0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjsHField[] = {
|
|
{"nrow", (int)offsetof(mjsHField, nrow), 2, 1, 0, 0, {0}},
|
|
{"ncol", (int)offsetof(mjsHField, ncol), 2, 1, 0, 0, {0}},
|
|
{"size", (int)offsetof(mjsHField, size), 0, 4, 0, 0, {0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjsJoint[] = {
|
|
{"type", (int)offsetof(mjsJoint, type), 2, 1, 1, 0, {(double)mjJNT_HINGE}},
|
|
{"group", (int)offsetof(mjsJoint, group), 2, 1, 0, 0, {0}},
|
|
{"pos", (int)offsetof(mjsJoint, pos), 0, 3, 0, 0, {0}},
|
|
{"axis", (int)offsetof(mjsJoint, axis), 0, 3, 3, 0, {0.0, 0.0, 1.0}},
|
|
{"springdamper", (int)offsetof(mjsJoint, springdamper), 0, 2, 0, 0, {0}},
|
|
{"limited", (int)offsetof(mjsJoint, limited), 2, 1, 1, 0, {(double)2}},
|
|
{"actuatorfrclimited", (int)offsetof(mjsJoint, actfrclimited), 2, 1, 1, 0, {(double)2}},
|
|
{"solreflimit", (int)offsetof(mjsJoint, solref_limit), 4, mjNREF, 2, 0, {0.02, 1.0}},
|
|
{"solimplimit", (int)offsetof(mjsJoint, solimp_limit), 4, mjNIMP, 5, 0, {0.9, 0.95, 0.001, 0.5, 2.0}},
|
|
{"solreffriction", (int)offsetof(mjsJoint, solref_friction), 4, mjNREF, 2, 0, {0.02, 1.0}},
|
|
{"solimpfriction", (int)offsetof(mjsJoint, solimp_friction), 4, mjNIMP, 5, 0, {0.9, 0.95, 0.001, 0.5, 2.0}},
|
|
{"stiffness", (int)offsetof(mjsJoint, stiffness), 0, mjNPOLY+1, 0, 0, {0}},
|
|
{"range", (int)offsetof(mjsJoint, range), 0, 2, 0, 0, {0}},
|
|
{"actuatorfrcrange", (int)offsetof(mjsJoint, actfrcrange), 0, 2, 0, 0, {0}},
|
|
{"actuatorgravcomp", (int)offsetof(mjsJoint, actgravcomp), 3, 1, 0, 0, {0}},
|
|
{"margin", (int)offsetof(mjsJoint, margin), 0, 1, 0, 0, {0}},
|
|
{"ref", (int)offsetof(mjsJoint, ref), 0, 1, 0, 0, {0}},
|
|
{"springref", (int)offsetof(mjsJoint, springref), 0, 1, 0, 0, {0}},
|
|
{"armature", (int)offsetof(mjsJoint, armature), 0, 1, 0, 0, {0}},
|
|
{"damping", (int)offsetof(mjsJoint, damping), 0, mjNPOLY+1, 0, 0, {0}},
|
|
{"frictionloss", (int)offsetof(mjsJoint, frictionloss), 0, 1, 0, 0, {0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjsKey[] = {
|
|
{"time", (int)offsetof(mjsKey, time), 0, 1, 0, 0, {0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjsLight[] = {
|
|
{"type", (int)offsetof(mjsLight, type), 2, 1, 0, 0, {0}},
|
|
{"castshadow", (int)offsetof(mjsLight, castshadow), 3, 1, 1, 0, {1}},
|
|
{"active", (int)offsetof(mjsLight, active), 3, 1, 1, 0, {1}},
|
|
{"pos", (int)offsetof(mjsLight, pos), 0, 3, 3, 0, {0.0, 0.0, 0.0}},
|
|
{"dir", (int)offsetof(mjsLight, dir), 0, 3, 3, 0, {0.0, 0.0, -1.0}},
|
|
{"bulbradius", (int)offsetof(mjsLight, bulbradius), 1, 1, 1, 0, {0.02}},
|
|
{"intensity", (int)offsetof(mjsLight, intensity), 1, 1, 0, 0, {0}},
|
|
{"range", (int)offsetof(mjsLight, range), 1, 1, 1, 0, {10.0}},
|
|
{"attenuation", (int)offsetof(mjsLight, attenuation), 1, 3, 3, 0, {1.0, 0.0, 0.0}},
|
|
{"cutoff", (int)offsetof(mjsLight, cutoff), 1, 1, 1, 0, {45.0}},
|
|
{"softness", (int)offsetof(mjsLight, softness), 1, 1, 1, 0, {0.2}},
|
|
{"exponent", (int)offsetof(mjsLight, exponent), 1, 1, 1, 0, {10.0}},
|
|
{"ambient", (int)offsetof(mjsLight, ambient), 1, 3, 0, 0, {0}},
|
|
{"diffuse", (int)offsetof(mjsLight, diffuse), 1, 3, 3, 0, {0.7, 0.7, 0.7}},
|
|
{"specular", (int)offsetof(mjsLight, specular), 1, 3, 3, 0, {0.3, 0.3, 0.3}},
|
|
{"mode", (int)offsetof(mjsLight, mode), 2, 1, 1, 0, {(double)mjCAMLIGHT_FIXED}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjsMaterial[] = {
|
|
{"texrepeat", (int)offsetof(mjsMaterial, texrepeat), 1, 2, 2, 0, {1.0, 1.0}},
|
|
{"texuniform", (int)offsetof(mjsMaterial, texuniform), 3, 1, 0, 0, {0}},
|
|
{"emission", (int)offsetof(mjsMaterial, emission), 1, 1, 0, 0, {0}},
|
|
{"specular", (int)offsetof(mjsMaterial, specular), 1, 1, 1, 0, {0.5}},
|
|
{"shininess", (int)offsetof(mjsMaterial, shininess), 1, 1, 1, 0, {0.5}},
|
|
{"reflectance", (int)offsetof(mjsMaterial, reflectance), 1, 1, 0, 0, {0}},
|
|
{"metallic", (int)offsetof(mjsMaterial, metallic), 1, 1, 1, 0, {-1.0}},
|
|
{"roughness", (int)offsetof(mjsMaterial, roughness), 1, 1, 1, 0, {-1.0}},
|
|
{"rgba", (int)offsetof(mjsMaterial, rgba), 1, 4, 4, 0, {1.0, 1.0, 1.0, 1.0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjsMesh[] = {
|
|
{"refpos", (int)offsetof(mjsMesh, refpos), 0, 3, 0, 0, {0}},
|
|
{"refquat", (int)offsetof(mjsMesh, refquat), 0, 4, 4, 0, {1.0, 0.0, 0.0, 0.0}},
|
|
{"scale", (int)offsetof(mjsMesh, scale), 0, 3, 3, 0, {1.0, 1.0, 1.0}},
|
|
{"smoothnormal", (int)offsetof(mjsMesh, smoothnormal), 3, 1, 0, 0, {0}},
|
|
{"maxhullvert", (int)offsetof(mjsMesh, maxhullvert), 2, 1, 1, 0, {-1.0}},
|
|
{"inertia", (int)offsetof(mjsMesh, inertia), 2, 1, 1, 0, {(double)mjMESH_INERTIA_LEGACY}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjsNumeric[] = {
|
|
{"size", (int)offsetof(mjsNumeric, size), 2, 1, 0, 0, {0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjsPair[] = {
|
|
{"condim", (int)offsetof(mjsPair, condim), 2, 1, 1, 0, {3.0}},
|
|
{"friction", (int)offsetof(mjsPair, friction), 0, 5, 5, 0, {1.0, 1.0, 0.005, 0.0001, 0.0001}},
|
|
{"solref", (int)offsetof(mjsPair, solref), 4, mjNREF, 2, 0, {0.02, 1.0}},
|
|
{"solreffriction", (int)offsetof(mjsPair, solreffriction), 4, mjNREF, 0, 0, {0}},
|
|
{"solimp", (int)offsetof(mjsPair, solimp), 4, mjNIMP, 5, 0, {0.9, 0.95, 0.001, 0.5, 2.0}},
|
|
{"gap", (int)offsetof(mjsPair, gap), 0, 1, 0, 0, {0}},
|
|
{"margin", (int)offsetof(mjsPair, margin), 0, 1, 0, 0, {0}},
|
|
{"adhesion", (int)offsetof(mjsPair, adhesion), 0, 1, 0, 0, {0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjsSensor[] = {
|
|
{"nsample", (int)offsetof(mjsSensor, nsample), 2, 1, 0, 0, {0}},
|
|
{"interp", (int)offsetof(mjsSensor, interp), 2, 1, 0, 0, {0}},
|
|
{"delay", (int)offsetof(mjsSensor, delay), 0, 1, 0, 0, {0}},
|
|
{"interval", (int)offsetof(mjsSensor, interval), 0, 2, 0, 0, {0}},
|
|
{"cutoff", (int)offsetof(mjsSensor, cutoff), 0, 1, 0, 0, {0}},
|
|
{"noise", (int)offsetof(mjsSensor, noise), 0, 1, 0, 0, {0}},
|
|
{"objtype", (int)offsetof(mjsSensor, objtype), 2, 1, 0, 0, {0}},
|
|
{"reftype", (int)offsetof(mjsSensor, reftype), 2, 1, 0, 0, {0}},
|
|
{"datatype", (int)offsetof(mjsSensor, datatype), 2, 1, 1, 0, {(double)mjDATATYPE_REAL}},
|
|
{"needstage", (int)offsetof(mjsSensor, needstage), 2, 1, 1, 0, {(double)mjSTAGE_ACC}},
|
|
{"dim", (int)offsetof(mjsSensor, dim), 2, 1, 0, 0, {0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjsSite[] = {
|
|
{"type", (int)offsetof(mjsSite, type), 2, 1, 1, 0, {(double)mjGEOM_SPHERE}},
|
|
{"group", (int)offsetof(mjsSite, group), 2, 1, 0, 0, {0}},
|
|
{"pos", (int)offsetof(mjsSite, pos), 0, 3, 3, 0, {0.0, 0.0, 0.0}},
|
|
{"quat", (int)offsetof(mjsSite, quat), 0, 4, 4, 0, {1.0, 0.0, 0.0, 0.0}},
|
|
{"size", (int)offsetof(mjsSite, size), 0, 3, 3, 0, {0.005, 0.005, 0.005}},
|
|
{"fromto", (int)offsetof(mjsSite, fromto), 0, 6, 0, 1, {0}},
|
|
{"rgba", (int)offsetof(mjsSite, rgba), 1, 4, 4, 0, {0.5, 0.5, 0.5, 1.0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjsSkin[] = {
|
|
{"rgba", (int)offsetof(mjsSkin, rgba), 1, 4, 4, 0, {0.5, 0.5, 0.5, 1.0}},
|
|
{"inflate", (int)offsetof(mjsSkin, inflate), 1, 1, 0, 0, {0}},
|
|
{"group", (int)offsetof(mjsSkin, group), 2, 1, 0, 0, {0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjsTendon[] = {
|
|
{"group", (int)offsetof(mjsTendon, group), 2, 1, 0, 0, {0}},
|
|
{"limited", (int)offsetof(mjsTendon, limited), 2, 1, 1, 0, {(double)2}},
|
|
{"actuatorfrclimited", (int)offsetof(mjsTendon, actfrclimited), 2, 1, 0, 0, {0}},
|
|
{"range", (int)offsetof(mjsTendon, range), 0, 2, 0, 0, {0}},
|
|
{"actuatorfrcrange", (int)offsetof(mjsTendon, actfrcrange), 0, 2, 0, 0, {0}},
|
|
{"solreflimit", (int)offsetof(mjsTendon, solref_limit), 4, mjNREF, 2, 0, {0.02, 1.0}},
|
|
{"solimplimit", (int)offsetof(mjsTendon, solimp_limit), 4, mjNIMP, 5, 0, {0.9, 0.95, 0.001, 0.5, 2.0}},
|
|
{"solreffriction", (int)offsetof(mjsTendon, solref_friction), 4, mjNREF, 2, 0, {0.02, 1.0}},
|
|
{"solimpfriction", (int)offsetof(mjsTendon, solimp_friction), 4, mjNIMP, 5, 0, {0.9, 0.95, 0.001, 0.5, 2.0}},
|
|
{"frictionloss", (int)offsetof(mjsTendon, frictionloss), 0, 1, 0, 0, {0}},
|
|
{"springlength", (int)offsetof(mjsTendon, springlength), 0, 2, 2, 0, {-1.0, -1.0}},
|
|
{"width", (int)offsetof(mjsTendon, width), 0, 1, 1, 0, {0.003}},
|
|
{"margin", (int)offsetof(mjsTendon, margin), 0, 1, 0, 0, {0}},
|
|
{"stiffness", (int)offsetof(mjsTendon, stiffness), 0, mjNPOLY+1, 0, 0, {0}},
|
|
{"damping", (int)offsetof(mjsTendon, damping), 0, mjNPOLY+1, 0, 0, {0}},
|
|
{"armature", (int)offsetof(mjsTendon, armature), 0, 1, 0, 0, {0}},
|
|
{"rgba", (int)offsetof(mjsTendon, rgba), 1, 4, 4, 0, {0.5, 0.5, 0.5, 1.0}},
|
|
};
|
|
|
|
static const mjXDefaultEntry kDefaults_mjsTexture[] = {
|
|
{"type", (int)offsetof(mjsTexture, type), 2, 1, 1, 0, {(double)mjTEXTURE_CUBE}},
|
|
{"colorspace", (int)offsetof(mjsTexture, colorspace), 2, 1, 1, 0, {(double)mjCOLORSPACE_AUTO}},
|
|
{"gridsize", (int)offsetof(mjsTexture, gridsize), 2, 2, 2, 0, {1.0, 1.0}},
|
|
{"builtin", (int)offsetof(mjsTexture, builtin), 2, 1, 0, 0, {0}},
|
|
{"rgb1", (int)offsetof(mjsTexture, rgb1), 0, 3, 3, 0, {0.8, 0.8, 0.8}},
|
|
{"rgb2", (int)offsetof(mjsTexture, rgb2), 0, 3, 3, 0, {0.5, 0.5, 0.5}},
|
|
{"mark", (int)offsetof(mjsTexture, mark), 2, 1, 0, 0, {0}},
|
|
{"markrgb", (int)offsetof(mjsTexture, markrgb), 0, 3, 0, 0, {0}},
|
|
{"random", (int)offsetof(mjsTexture, random), 0, 1, 1, 0, {0.01}},
|
|
{"width", (int)offsetof(mjsTexture, width), 2, 1, 0, 0, {0}},
|
|
{"height", (int)offsetof(mjsTexture, height), 2, 1, 0, 0, {0}},
|
|
{"hflip", (int)offsetof(mjsTexture, hflip), 3, 1, 0, 0, {0}},
|
|
{"vflip", (int)offsetof(mjsTexture, vflip), 3, 1, 0, 0, {0}},
|
|
{"nchannel", (int)offsetof(mjsTexture, nchannel), 2, 1, 1, 0, {3.0}},
|
|
};
|
|
|
|
static const mjXDefaultTable kDefaultTables[] = {
|
|
{"mjLROpt", kDefaults_mjLROpt, (int)(sizeof(kDefaults_mjLROpt) / sizeof(kDefaults_mjLROpt[0]))},
|
|
{"mjOption", kDefaults_mjOption, (int)(sizeof(kDefaults_mjOption) / sizeof(kDefaults_mjOption[0]))},
|
|
{"mjSpec", kDefaults_mjSpec, (int)(sizeof(kDefaults_mjSpec) / sizeof(kDefaults_mjSpec[0]))},
|
|
{"mjStatistic", kDefaults_mjStatistic, (int)(sizeof(kDefaults_mjStatistic) / sizeof(kDefaults_mjStatistic[0]))},
|
|
{"mjVisual", kDefaults_mjVisual_global, (int)(sizeof(kDefaults_mjVisual_global) / sizeof(kDefaults_mjVisual_global[0]))},
|
|
{"mjVisual", kDefaults_mjVisual_headlight, (int)(sizeof(kDefaults_mjVisual_headlight) / sizeof(kDefaults_mjVisual_headlight[0]))},
|
|
{"mjVisual", kDefaults_mjVisual_map, (int)(sizeof(kDefaults_mjVisual_map) / sizeof(kDefaults_mjVisual_map[0]))},
|
|
{"mjVisual", kDefaults_mjVisual_quality, (int)(sizeof(kDefaults_mjVisual_quality) / sizeof(kDefaults_mjVisual_quality[0]))},
|
|
{"mjVisual", kDefaults_mjVisual_rgba, (int)(sizeof(kDefaults_mjVisual_rgba) / sizeof(kDefaults_mjVisual_rgba[0]))},
|
|
{"mjVisual", kDefaults_mjVisual_scale, (int)(sizeof(kDefaults_mjVisual_scale) / sizeof(kDefaults_mjVisual_scale[0]))},
|
|
{"mjsActuator", kDefaults_mjsActuator, (int)(sizeof(kDefaults_mjsActuator) / sizeof(kDefaults_mjsActuator[0]))},
|
|
{"mjsBody", kDefaults_mjsBody, (int)(sizeof(kDefaults_mjsBody) / sizeof(kDefaults_mjsBody[0]))},
|
|
{"mjsCamera", kDefaults_mjsCamera, (int)(sizeof(kDefaults_mjsCamera) / sizeof(kDefaults_mjsCamera[0]))},
|
|
{"mjsCompiler", kDefaults_mjsCompiler, (int)(sizeof(kDefaults_mjsCompiler) / sizeof(kDefaults_mjsCompiler[0]))},
|
|
{"mjsEquality", kDefaults_mjsEquality, (int)(sizeof(kDefaults_mjsEquality) / sizeof(kDefaults_mjsEquality[0]))},
|
|
{"mjsFlex", kDefaults_mjsFlex, (int)(sizeof(kDefaults_mjsFlex) / sizeof(kDefaults_mjsFlex[0]))},
|
|
{"mjsFrame", kDefaults_mjsFrame, (int)(sizeof(kDefaults_mjsFrame) / sizeof(kDefaults_mjsFrame[0]))},
|
|
{"mjsGeom", kDefaults_mjsGeom, (int)(sizeof(kDefaults_mjsGeom) / sizeof(kDefaults_mjsGeom[0]))},
|
|
{"mjsHField", kDefaults_mjsHField, (int)(sizeof(kDefaults_mjsHField) / sizeof(kDefaults_mjsHField[0]))},
|
|
{"mjsJoint", kDefaults_mjsJoint, (int)(sizeof(kDefaults_mjsJoint) / sizeof(kDefaults_mjsJoint[0]))},
|
|
{"mjsKey", kDefaults_mjsKey, (int)(sizeof(kDefaults_mjsKey) / sizeof(kDefaults_mjsKey[0]))},
|
|
{"mjsLight", kDefaults_mjsLight, (int)(sizeof(kDefaults_mjsLight) / sizeof(kDefaults_mjsLight[0]))},
|
|
{"mjsMaterial", kDefaults_mjsMaterial, (int)(sizeof(kDefaults_mjsMaterial) / sizeof(kDefaults_mjsMaterial[0]))},
|
|
{"mjsMesh", kDefaults_mjsMesh, (int)(sizeof(kDefaults_mjsMesh) / sizeof(kDefaults_mjsMesh[0]))},
|
|
{"mjsNumeric", kDefaults_mjsNumeric, (int)(sizeof(kDefaults_mjsNumeric) / sizeof(kDefaults_mjsNumeric[0]))},
|
|
{"mjsPair", kDefaults_mjsPair, (int)(sizeof(kDefaults_mjsPair) / sizeof(kDefaults_mjsPair[0]))},
|
|
{"mjsSensor", kDefaults_mjsSensor, (int)(sizeof(kDefaults_mjsSensor) / sizeof(kDefaults_mjsSensor[0]))},
|
|
{"mjsSite", kDefaults_mjsSite, (int)(sizeof(kDefaults_mjsSite) / sizeof(kDefaults_mjsSite[0]))},
|
|
{"mjsSkin", kDefaults_mjsSkin, (int)(sizeof(kDefaults_mjsSkin) / sizeof(kDefaults_mjsSkin[0]))},
|
|
{"mjsTendon", kDefaults_mjsTendon, (int)(sizeof(kDefaults_mjsTendon) / sizeof(kDefaults_mjsTendon[0]))},
|
|
{"mjsTexture", kDefaults_mjsTexture, (int)(sizeof(kDefaults_mjsTexture) / sizeof(kDefaults_mjsTexture[0]))},
|
|
};
|
|
static const int kDefaultTablesN = (int)(sizeof(kDefaultTables) / sizeof(kDefaultTables[0]));
|
|
// clang-format on
|