r3-legacy/src/r3-d3-api-friction-contact-...

65 lines
1.7 KiB
JavaScript

/**
* R3.D3.API.FrictionContactMaterial
* @param apiComponent
* @param materials
* @param friction
* @param restitution
* @param contactEquationStiffness
* @param contactEquationRelaxation
* @param frictionEquationStiffness
* @param frictionEquationRelaxation
* @constructor
*/
R3.D3.API.FrictionContactMaterial = function(
apiComponent,
materials,
friction,
restitution,
contactEquationStiffness,
contactEquationRelaxation,
frictionEquationStiffness,
frictionEquationRelaxation
) {
__API_COMPONENT_MACRO__;
if (R3.Utils.UndefinedOrNull(materials)) {
materials = [];
}
this.materials = materials;
if (R3.Utils.UndefinedOrNull(friction)) {
friction = 0.3;
}
this.friction = friction;
if (R3.Utils.UndefinedOrNull(restitution)) {
restitution = 0.3;
}
this.restitution = restitution;
if (R3.Utils.UndefinedOrNull(contactEquationStiffness)) {
contactEquationStiffness = 1e7;
}
this.contactEquationStiffness = contactEquationStiffness;
if (R3.Utils.UndefinedOrNull(contactEquationRelaxation)) {
contactEquationRelaxation = 3;
}
this.contactEquationRelaxation = contactEquationRelaxation;
if (R3.Utils.UndefinedOrNull(frictionEquationStiffness)) {
frictionEquationStiffness = 1e7;
}
this.frictionEquationStiffness = frictionEquationStiffness;
if (R3.Utils.UndefinedOrNull(frictionEquationRelaxation)) {
frictionEquationRelaxation = 3;
}
this.frictionEquationRelaxation = frictionEquationRelaxation;
};
R3.D3.API.FrictionContactMaterial.prototype = Object.create(R3.API.Component.prototype);
R3.D3.API.FrictionContactMaterial.prototype.constructor = R3.D3.API.FrictionContactMaterial;