lingo3d
Version:
Lingo3D is a React/Vue 3d game development framework that ships with a complete visual editor
43 lines • 1.48 kB
JavaScript
import { sphericalJointDefaults, sphericalJointSchema } from "../../interface/ISphericalJoint";
import JointBase from "../core/JointBase";
import { physxPtr } from "../../pointers/physxPtr";
import { configSphericalJointSystem } from "../../systems/configSystems/configSphericalJointSystem";
const createSpherical = (actor0, pose0, actor1, pose1) => {
const { physics, Px } = physxPtr[0];
return Px.SphericalJointCreate(physics, actor0, pose0, actor1, pose1);
};
class SphericalJoint extends JointBase {
static componentName = "sphericalJoint";
static defaults = sphericalJointDefaults;
static schema = sphericalJointSchema;
$createJoint(fromPxTransform, toPxTransform, fromManager, toManager) {
configSphericalJointSystem.add(this);
return createSpherical(fromManager.$actor, fromPxTransform, toManager.$actor, toPxTransform);
}
_limited;
get limited() {
return this._limited ?? false;
}
set limited(val) {
this._limited = val;
configSphericalJointSystem.add(this);
}
_limitY;
get limitY() {
return this._limitY ?? 360;
}
set limitY(val) {
this._limitY = val;
configSphericalJointSystem.add(this);
}
_limitZ;
get limitZ() {
return this._limitZ ?? 360;
}
set limitZ(val) {
this._limitZ = val;
configSphericalJointSystem.add(this);
}
}
export default SphericalJoint;
//# sourceMappingURL=SphericalJoint.js.map