@@ -4,6 +4,20 @@ import { Vec2 } from '../../../math/vec2.js';
4
4
5
5
import { Component } from '../component.js' ;
6
6
7
+ const properties = [
8
+ 'angularDampingX' , 'angularDampingY' , 'angularDampingZ' ,
9
+ 'angularEquilibriumX' , 'angularEquilibriumY' , 'angularEquilibriumZ' ,
10
+ 'angularLimitsX' , 'angularLimitsY' , 'angularLimitsZ' ,
11
+ 'angularSpringX' , 'angularSpringY' , 'angularSpringZ' ,
12
+ 'angularStiffnessX' , 'angularStiffnessY' , 'angularStiffnessZ' ,
13
+ 'breakForce' , 'enableCollision' , 'enabled' , 'entityA' , 'entityB' ,
14
+ 'linearDampingX' , 'linearDampingY' , 'linearDampingZ' ,
15
+ 'linearEquilibriumX' , 'linearEquilibriumY' , 'linearEquilibriumZ' ,
16
+ 'linearLimitsX' , 'linearLimitsY' , 'linearLimitsZ' ,
17
+ 'linearSpringX' , 'linearSpringY' , 'linearSpringZ' ,
18
+ 'linearStiffnessX' , 'linearStiffnessY' , 'linearStiffnessZ'
19
+ ] ;
20
+
7
21
/**
8
22
* @private
9
23
* @component
@@ -293,21 +307,7 @@ class JointComponent extends Component {
293
307
}
294
308
295
309
initFromData ( data ) {
296
- const props = [
297
- 'angularDampingX' , 'angularDampingY' , 'angularDampingZ' ,
298
- 'angularEquilibriumX' , 'angularEquilibriumY' , 'angularEquilibriumZ' ,
299
- 'angularLimitsX' , 'angularLimitsY' , 'angularLimitsZ' ,
300
- 'angularSpringX' , 'angularSpringY' , 'angularSpringZ' ,
301
- 'angularStiffnessX' , 'angularStiffnessY' , 'angularStiffnessZ' ,
302
- 'breakForce' , 'enableCollision' , 'enabled' , 'entityA' , 'entityB' ,
303
- 'linearDampingX' , 'linearDampingY' , 'linearDampingZ' ,
304
- 'linearEquilibriumX' , 'linearEquilibriumY' , 'linearEquilibriumZ' ,
305
- 'linearLimitsX' , 'linearLimitsY' , 'linearLimitsZ' ,
306
- 'linearSpringX' , 'linearSpringY' , 'linearSpringZ' ,
307
- 'linearStiffnessX' , 'linearStiffnessY' , 'linearStiffnessZ'
308
- ] ;
309
-
310
- for ( const prop of props ) {
310
+ for ( const prop of properties ) {
311
311
if ( data . hasOwnProperty ( prop ) ) {
312
312
if ( data [ prop ] instanceof Vec2 ) {
313
313
this [ '_' + prop ] . copy ( data [ prop ] ) ;
@@ -343,6 +343,7 @@ const functionMap = {
343
343
Stiffness : 'setStiffness'
344
344
} ;
345
345
346
+ // Define additional properties for each degree of freedom
346
347
[ 'linear' , 'angular' ] . forEach ( type => {
347
348
[ 'Damping' , 'Equilibrium' , 'Spring' , 'Stiffness' ] . forEach ( name => {
348
349
[ 'X' , 'Y' , 'Z' ] . forEach ( axis => {
0 commit comments