improving rube doll flipping behaviour and positioning

This commit is contained in:
logsol 2015-05-06 20:15:22 +02:00
parent ec7ce459cb
commit 6d8609b475
11 changed files with 383 additions and 360 deletions

View file

@ -23,17 +23,17 @@
{
"x" :
[
0.04692991077899933,
0.04692991077899933,
-0.04692997038364410,
-0.04692997038364410
0.04692989960312843,
0.04692989960312843,
-0.04693000018596649,
-0.04693000018596649
],
"y" :
[
-0.1895973682403564,
0.1895966529846191,
0.1895966529846191,
-0.1895973682403564
-0.1895969957113266,
0.1895969957113266,
0.1895969957113266,
-0.1895969957113266
]
}
}
@ -43,15 +43,15 @@
"massData-I" : 0.0004525936674326658,
"massData-center" :
{
"x" : -2.980232238769531e-08,
"y" : -3.576278686523438e-07
"x" : -5.029141902923584e-08,
"y" : 0
},
"massData-mass" : 0.03559110686182976,
"name" : "upperLeftArm",
"position" :
{
"x" : -0.1165364086627960,
"y" : 0.9012566804885864
"x" : -0.1165359988808632,
"y" : 0.9012569785118103
},
"type" : 2
},
@ -74,35 +74,35 @@
{
"x" :
[
0.1570899933576584,
0.1570899933576584,
-0.1156369969248772,
-0.1156369969248772
0.1366278976202011,
0.1366278976202011,
-0.1360991001129150,
-0.1360991001129150
],
"y" :
[
-0.3584159910678864,
0.4034900069236755,
0.4034900069236755,
-0.3584159910678864
-0.3788780868053436,
0.3830279111862183,
0.3830279111862183,
-0.3788780868053436
]
}
}
}
],
"linearVelocity" : 0,
"massData-I" : 0.01153474114835262,
"massData-I" : 0.01134084537625313,
"massData-center" :
{
"x" : 0.02072649449110031,
"y" : 0.02253700792789459
"x" : 0.0002643987536430359,
"y" : 0.002074912190437317
},
"massData-mass" : 0.2077923268079758,
"massData-mass" : 0.2077923566102982,
"name" : "chest",
"position" :
{
"x" : -0.02137973159551620,
"y" : 0.7773683071136475
"x" : 0.0007875636219978333,
"y" : 0.7995355725288391
},
"type" : 2
},
@ -216,35 +216,35 @@
{
"x" :
[
0.07039503753185272,
0.07039503753185272,
-0.07039495557546616,
-0.07039495557546616
0.07039500027894974,
0.07039500027894974,
-0.07039500027894974,
-0.07039500027894974
],
"y" :
[
-0.09294363856315613,
0.1277718394994736,
0.1277718394994736,
-0.09294363856315613
-0.09294360131025314,
0.1277720034122467,
0.1277720034122467,
-0.09294360131025314
]
}
}
}
],
"linearVelocity" : 0,
"massData-I" : 0.0001869033440016210,
"massData-I" : 0.0001869037223514169,
"massData-center" :
{
"x" : 4.097818973036738e-08,
"y" : 0.01741409860551357
"x" : 0,
"y" : 0.01741420105099678
},
"massData-mass" : 0.03107452951371670,
"massData-mass" : 0.03107454814016819,
"name" : "lowerLeftLeg",
"position" :
{
"x" : -0.04570891708135605,
"y" : 0.09799571335315704
"x" : -0.03829947486519814,
"y" : 0.09799569845199585
},
"type" : 2
},
@ -320,33 +320,33 @@
[
0.04693000018596649,
0.04693000018596649,
-0.04693005979061127,
-0.04693005979061127
-0.04693010076880455,
-0.04693010076880455
],
"y" :
[
-0.1895973682403564,
0.1895966529846191,
0.1895966529846191,
-0.1895973682403564
-0.1895969957113266,
0.1895969957113266,
0.1895969957113266,
-0.1895969957113266
]
}
}
}
],
"linearVelocity" : 0,
"massData-I" : 0.0004525946278590709,
"massData-I" : 0.0004525947733782232,
"massData-center" :
{
"x" : -2.980232238769531e-08,
"y" : -3.576278686523438e-07
"x" : -5.029141902923584e-08,
"y" : 0
},
"massData-mass" : 0.03559117391705513,
"massData-mass" : 0.03559118881821632,
"name" : "upperRightArm",
"position" :
{
"x" : 0.1183081120252609,
"y" : 0.9012566804885864
"x" : 0.1183080002665520,
"y" : 0.9012569785118103
},
"type" : 2
},
@ -396,8 +396,8 @@
"name" : "upperRightLeg",
"position" :
{
"x" : 0.04785731062293053,
"y" : 0.3325108885765076
"x" : 0.03859551250934601,
"y" : 0.3325110077857971
},
"type" : 2
},
@ -447,8 +447,8 @@
"name" : "upperLeftLeg",
"position" :
{
"x" : -0.04570891708135605,
"y" : 0.3325108885765076
"x" : -0.03829947486519814,
"y" : 0.3325110077857971
},
"type" : 2
},
@ -471,16 +471,16 @@
{
"x" :
[
0.07039496302604675,
0.07039496302604675,
-0.07039486616849899,
-0.07039486616849899
0.07039500027894974,
0.07039500027894974,
-0.07039490342140198,
-0.07039490342140198
],
"y" :
[
-0.09294389933347702,
0.1276105940341949,
0.1276105940341949,
0.1276109963655472,
0.1276109963655472,
-0.09294389933347702
]
}
@ -488,18 +488,18 @@
}
],
"linearVelocity" : 0,
"massData-I" : 0.0001864957448560745,
"massData-I" : 0.0001864968799054623,
"massData-center" :
{
"x" : 4.842877032729120e-08,
"y" : 0.01733334921300411
"y" : 0.01733354665338993
},
"massData-mass" : 0.03105182945728302,
"massData-mass" : 0.03105190023779869,
"name" : "lowerRightLeg",
"position" :
{
"x" : 0.04785731062293053,
"y" : 0.09799571335315704
"x" : 0.03859551250934601,
"y" : 0.09799569845199585
},
"type" : 2
}
@ -554,33 +554,183 @@
{
"anchorA" :
{
"x" : 0.02210754156112671,
"y" : 0.4607425928115845
"x" : 0.0003538504242897034,
"y" : 0.07107692956924438
},
"anchorB" :
{
"x" : -0.02544101513922215,
"y" : -0.2591779232025146
"x" : 0.0003536641597747803,
"y" : -0.1459649801254272
},
"bodyA" : 1,
"bodyB" : 2,
"bodyA" : 3,
"bodyB" : 6,
"enableLimit" : true,
"enableMotor" : false,
"jointSpeed" : 0,
"lowerLimit" : -0.6981316804885864,
"maxMotorTorque" : 0,
"lowerLimit" : 0.01745329238474369,
"maxMotorTorque" : 1,
"motorSpeed" : 0,
"name" : "joint9",
"name" : "joint1",
"refAngle" : 0,
"type" : "revolute",
"upperLimit" : 1.221730470657349
"upperLimit" : 1.919862151145935
},
{
"anchorA" :
{
"x" : -0.0007802955806255341,
"y" : -0.1484909951686859
},
"anchorB" :
{
"x" : -0.0007801018655300140,
"y" : 0.08614099025726318
},
"bodyA" : 8,
"bodyB" : 4,
"enableLimit" : true,
"enableMotor" : false,
"jointSpeed" : 0,
"lowerLimit" : 0.01745329238474369,
"maxMotorTorque" : 1,
"motorSpeed" : 0,
"name" : "joint7",
"refAngle" : 0,
"type" : "revolute",
"upperLimit" : 2.443460941314697
},
{
"anchorA" :
{
"x" : -0.004979588091373444,
"y" : -0.1506859958171844
},
"anchorB" :
{
"x" : -0.005973689258098602,
"y" : 0.08482310175895691
},
"bodyA" : 7,
"bodyB" : 9,
"enableLimit" : true,
"enableMotor" : false,
"jointSpeed" : 0,
"lowerLimit" : 0.01745329238474369,
"maxMotorTorque" : 1,
"motorSpeed" : 0,
"name" : "joint8",
"refAngle" : 0,
"type" : "revolute",
"upperLimit" : 2.443460941314697
},
{
"anchorA" :
{
"x" : -0.06799955666065216,
"y" : -0.3021813035011292
},
"anchorB" :
{
"x" : -0.02891255542635918,
"y" : 0.1648437976837158
},
"bodyA" : 1,
"bodyB" : 8,
"enableLimit" : true,
"enableMotor" : false,
"jointSpeed" : 0,
"lowerLimit" : -0.7853981852531433,
"maxMotorTorque" : 1,
"motorSpeed" : 0,
"name" : "joint6",
"refAngle" : 0,
"type" : "revolute",
"upperLimit" : 1.570796370506287
},
{
"anchorA" :
{
"x" : 0.06260262429714203,
"y" : -0.3029872477054596
},
"anchorB" :
{
"x" : 0.02294230461120605,
"y" : 0.1640380322933197
},
"bodyA" : 1,
"bodyB" : 7,
"enableLimit" : true,
"enableMotor" : false,
"jointSpeed" : 0,
"lowerLimit" : -0.7853981852531433,
"maxMotorTorque" : 1,
"motorSpeed" : 0,
"name" : "joint5",
"refAngle" : 0,
"type" : "revolute",
"upperLimit" : 1.570796370506287
},
{
"anchorA" :
{
"x" : 0.1179294362664223,
"y" : 0.2464744448661804
},
"anchorB" :
{
"x" : 0.0004089996218681335,
"y" : 0.1447530388832092
},
"bodyA" : 1,
"bodyB" : 6,
"enableLimit" : false,
"enableMotor" : false,
"jointSpeed" : 0,
"lowerLimit" : -2.268928050994873,
"maxMotorTorque" : 1,
"motorSpeed" : 0,
"name" : "joint2",
"refAngle" : 0,
"type" : "revolute",
"upperLimit" : 3.141592741012573
},
{
"anchorA" :
{
"x" : -0.1188285648822784,
"y" : 0.2521644234657288
},
"anchorB" :
{
"x" : -0.001505002379417419,
"y" : 0.1504430174827576
},
"bodyA" : 1,
"bodyB" : 0,
"enableLimit" : false,
"enableMotor" : false,
"jointSpeed" : 0,
"lowerLimit" : -2.268928050994873,
"maxMotorTorque" : 1,
"motorSpeed" : 0,
"name" : "joint3",
"refAngle" : 0,
"type" : "revolute",
"upperLimit" : 3.141592741012573
},
{
"anchorA" :
{
"x" : 0.0008554458618164062,
"y" : -0.1461489200592041
"y" : -0.1461489796638489
},
"anchorB" :
{
@ -604,176 +754,26 @@
{
"anchorA" :
{
"x" : -0.09517394006252289,
"y" : 0.2718780040740967
"x" : 0.02210754156112671,
"y" : 0.4607425332069397
},
"anchorB" :
{
"x" : -1.741945743560791e-05,
"y" : 0.1479903459548950
"x" : -0.02544101513922215,
"y" : -0.2591779232025146
},
"bodyA" : 1,
"bodyB" : 0,
"enableLimit" : false,
"enableMotor" : false,
"jointSpeed" : 0,
"lowerLimit" : -2.268928050994873,
"maxMotorTorque" : 1,
"motorSpeed" : 0,
"name" : "joint3",
"refAngle" : 0,
"type" : "revolute",
"upperLimit" : 3.141592741012573
},
{
"anchorA" :
{
"x" : 0.1116365119814873,
"y" : -0.2944114208221436
},
"anchorB" :
{
"x" : 0.04127830639481544,
"y" : 0.1504460573196411
},
"bodyA" : 1,
"bodyB" : 7,
"bodyB" : 2,
"enableLimit" : true,
"enableMotor" : false,
"jointSpeed" : 0,
"lowerLimit" : -0.7853981852531433,
"maxMotorTorque" : 1,
"lowerLimit" : -0.6981316804885864,
"maxMotorTorque" : 0,
"motorSpeed" : 0,
"name" : "joint5",
"name" : "joint9",
"refAngle" : 0,
"type" : "revolute",
"upperLimit" : 1.570796370506287
},
{
"anchorA" :
{
"x" : -0.06799929589033127,
"y" : -0.2890855073928833
},
"anchorB" :
{
"x" : -0.04493143409490585,
"y" : 0.1559127867221832
},
"bodyA" : 1,
"bodyB" : 8,
"enableLimit" : true,
"enableMotor" : false,
"jointSpeed" : 0,
"lowerLimit" : -0.7853981852531433,
"maxMotorTorque" : 1,
"motorSpeed" : 0,
"name" : "joint6",
"refAngle" : 0,
"type" : "revolute",
"upperLimit" : 1.570796370506287
},
{
"anchorA" :
{
"x" : 0.1396137326955795,
"y" : 0.2701327800750732
},
"anchorB" :
{
"x" : -7.455050945281982e-05,
"y" : 0.1462446451187134
},
"bodyA" : 1,
"bodyB" : 6,
"enableLimit" : false,
"enableMotor" : false,
"jointSpeed" : 0,
"lowerLimit" : -2.268928050994873,
"maxMotorTorque" : 1,
"motorSpeed" : 0,
"name" : "joint2",
"refAngle" : 0,
"type" : "revolute",
"upperLimit" : 3.141592741012573
},
{
"anchorA" :
{
"x" : 0.0003538504242897034,
"y" : 0.07107692956924438
},
"anchorB" :
{
"x" : 0.0003536641597747803,
"y" : -0.1459646224975586
},
"bodyA" : 3,
"bodyB" : 6,
"enableLimit" : true,
"enableMotor" : false,
"jointSpeed" : 0,
"lowerLimit" : -1.919862151145935,
"maxMotorTorque" : 1,
"motorSpeed" : 0,
"name" : "joint1",
"refAngle" : 0,
"type" : "revolute",
"upperLimit" : 0
},
{
"anchorA" :
{
"x" : 0.001979876309633255,
"y" : -0.1506856828927994
},
"anchorB" :
{
"x" : 0.001979988068342209,
"y" : 0.08382888138294220
},
"bodyA" : 7,
"bodyB" : 9,
"enableLimit" : true,
"enableMotor" : false,
"jointSpeed" : 0,
"lowerLimit" : 0.01745329238474369,
"maxMotorTorque" : 1,
"motorSpeed" : 0,
"name" : "joint8",
"refAngle" : 0,
"type" : "revolute",
"upperLimit" : 2.268928050994873
},
{
"anchorA" :
{
"x" : -0.0007802955806255341,
"y" : -0.1484908312559128
},
"anchorB" :
{
"x" : -0.0007801018655300140,
"y" : 0.08614097535610199
},
"bodyA" : 8,
"bodyB" : 4,
"enableLimit" : true,
"enableMotor" : false,
"jointSpeed" : 0,
"lowerLimit" : 0.01745329238474369,
"maxMotorTorque" : 1,
"motorSpeed" : 0,
"name" : "joint7",
"refAngle" : 0,
"type" : "revolute",
"upperLimit" : 2.268928050994873
"upperLimit" : 1.221730470657349
}
],
"positionIterations" : 3,

View file

@ -37,21 +37,21 @@ function (Parent, Layer, Settings, Nc) {
};
limbOptions.upperRightLeg = {
width: 4,
height: 9,
width: 5,
height: 8,
x: 2,
y: limbOptions.chest.height / 2
};
limbOptions.lowerLeftLeg = {
width: 4,
width: 5,
height: 4,
x: -2,
y: limbOptions.chest.height / 2 + limbOptions.upperLeftLeg.height
};
limbOptions.lowerRightLeg = {
width: 4,
width: 5,
height: 4,
x: 2,
y: limbOptions.chest.height / 2 + limbOptions.upperRightLeg.height
@ -60,28 +60,28 @@ function (Parent, Layer, Settings, Nc) {
limbOptions.upperLeftArm = {
width: 2,
width: 4,
height: 8,
x: -2,
y: -limbOptions.chest.height / 2
};
limbOptions.upperRightArm = {
width: 3,
width: 4,
height: 8,
x: 2,
y: -limbOptions.chest.height / 2
};
limbOptions.lowerLeftArm = {
width: 2,
width: 4,
height: 5,
x: -2,
y: -limbOptions.chest.height / 2 + limbOptions.upperLeftArm.height
};
limbOptions.lowerRightArm = {
width: 2,
width: 4,
height: 5,
x: 2,
y: -limbOptions.chest.height / 2 + limbOptions.upperRightArm.height
@ -93,7 +93,9 @@ function (Parent, Layer, Settings, Nc) {
this.limbMeshes = {};
this.baseMeshName = "chest";
this.characterName = "Chuck";
this.lastFlipDirection = 1;
this.lastFlipDirection = -options.direction || 1;
console.log(this.lastFlipDirection);
Parent.call(this, physicsEngine, uid, options);
}
@ -187,22 +189,10 @@ function (Parent, Layer, Settings, Nc) {
RubeDoll.prototype.flip = function(direction) {
Parent.prototype.flip.call(this, direction);
if(this.limbs) {
for(var name in this.limbMeshes) {
if(this.limbs[name]) {
Nc.trigger(Nc.ns.client.view.mesh.update,
this.layerId,
this.limbMeshes[name],
{
xScale: direction,
}
);
}
}
}
console.log("last", this.lastFlipDirection, "now", direction);
// flipping depth of right body side arm/leg images with left
if (this.lastFlipDirection != direction) {
if (this.lastFlipDirection != direction) { // FIXME : this is a bit broken.
this.lastFlipDirection = direction;
@ -226,6 +216,28 @@ function (Parent, Layer, Settings, Nc) {
this.limbMeshes["upperRightArm"],
this.limbMeshes["upperLeftArm"]
);
// swap short images
Nc.trigger(Nc.ns.client.view.mesh.swapMeshes,
this.layerId,
this.limbMeshes["upperRightLeg"],
this.limbMeshes["upperLeftLeg"]
);
}
// x flipping has to happen after (see swapMeshes)
if(this.limbs) {
for(var name in this.limbMeshes) {
if(this.limbs[name]) {
Nc.trigger(Nc.ns.client.view.mesh.update,
this.layerId,
this.limbMeshes[name],
{
xScale: direction,
}
);
}
}
}
};

View file

@ -33,7 +33,7 @@ function (Parent, RubeLoader, Box2D, Settings, Assert, Nc, RubeDollJson) {
this.body.SetUserData(this);
this.flip(options.direction);
this.flip(options.direction || 1);
}
RubeDoll.prototype = Object.create(Parent.prototype);
@ -41,6 +41,8 @@ function (Parent, RubeLoader, Box2D, Settings, Assert, Nc, RubeDollJson) {
RubeDoll.prototype.loadRubeDollFromScene = function(options) {
var scene = this.rubeLoader.getScene();
for (var i in scene.bodies) {
var body = scene.bodies[i];
var position = body.GetPosition().Copy();
@ -50,6 +52,15 @@ function (Parent, RubeLoader, Box2D, Settings, Assert, Nc, RubeDollJson) {
));
body.SetPosition(position);
this.limbs[body.name] = body;
// code snipped possibly needed for filtering between doll and rubedoll while holding
//var filterData = new Box2D.Dynamics.b2FilterData();
//filterData.groupIndex = -66;
//if(body.name != "head" && body.name != "chest") {
// for (var fixture = body.GetFixtureList(); fixture; fixture = fixture.GetNext()) {
// fixture.SetFilterData(filterData);
// }
//}
}
this.joints = scene.joints;

Binary file not shown.

Before

Width:  |  Height:  |  Size: 148 B

After

Width:  |  Height:  |  Size: 2.7 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 158 B

After

Width:  |  Height:  |  Size: 2.7 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 148 B

After

Width:  |  Height:  |  Size: 2.7 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 158 B

After

Width:  |  Height:  |  Size: 2.7 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 145 B

After

Width:  |  Height:  |  Size: 2.7 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 170 B

After

Width:  |  Height:  |  Size: 2.7 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 2.8 KiB

Before After
Before After

View file

@ -84,16 +84,16 @@
{
"x" :
[
0.07039496302604675,
0.07039496302604675,
-0.07039486616849899,
-0.07039486616849899
0.07039500027894974,
0.07039500027894974,
-0.07039490342140198,
-0.07039490342140198
],
"y" :
[
-0.09294389933347702,
0.1276105940341949,
0.1276105940341949,
0.1276109963655472,
0.1276109963655472,
-0.09294389933347702
]
}
@ -101,18 +101,18 @@
],
"id" : 1,
"linearVelocity" : 0,
"massData-I" : 0.0001864957448560745,
"massData-I" : 0.0001864968799054623,
"massData-center" :
{
"x" : 4.842877032729120e-08,
"y" : 0.01733334921300411
"y" : 0.01733354665338993
},
"massData-mass" : 0.03105182945728302,
"massData-mass" : 0.03105190023779869,
"name" : "lowerRightLeg",
"position" :
{
"x" : 0.04785731062293053,
"y" : 0.09799571335315704
"x" : 0.03859551250934601,
"y" : 0.09799569845199585
},
"type" : "dynamic"
},
@ -168,8 +168,8 @@
"name" : "upperLeftLeg",
"position" :
{
"x" : -0.04570891708135605,
"y" : 0.3325108885765076
"x" : -0.03829947486519814,
"y" : 0.3325110077857971
},
"type" : "dynamic"
},
@ -225,8 +225,8 @@
"name" : "upperRightLeg",
"position" :
{
"x" : 0.04785731062293053,
"y" : 0.3325108885765076
"x" : 0.03859551250934601,
"y" : 0.3325110077857971
},
"type" : "dynamic"
},
@ -257,33 +257,33 @@
[
0.04693000018596649,
0.04693000018596649,
-0.04693005979061127,
-0.04693005979061127
-0.04693010076880455,
-0.04693010076880455
],
"y" :
[
-0.1895973682403564,
0.1895966529846191,
0.1895966529846191,
-0.1895973682403564
-0.1895969957113266,
0.1895969957113266,
0.1895969957113266,
-0.1895969957113266
]
}
}
],
"id" : 4,
"linearVelocity" : 0,
"massData-I" : 0.0004525946278590709,
"massData-I" : 0.0004525947733782232,
"massData-center" :
{
"x" : -2.980232238769531e-08,
"y" : -3.576278686523438e-07
"x" : -5.029141902923584e-08,
"y" : 0
},
"massData-mass" : 0.03559117391705513,
"massData-mass" : 0.03559118881821632,
"name" : "upperRightArm",
"position" :
{
"x" : 0.1183081120252609,
"y" : 0.9012566804885864
"x" : 0.1183080002665520,
"y" : 0.9012569785118103
},
"type" : "dynamic"
},
@ -369,35 +369,35 @@
{
"x" :
[
0.07039503753185272,
0.07039503753185272,
-0.07039495557546616,
-0.07039495557546616
0.07039500027894974,
0.07039500027894974,
-0.07039500027894974,
-0.07039500027894974
],
"y" :
[
-0.09294363856315613,
0.1277718394994736,
0.1277718394994736,
-0.09294363856315613
-0.09294360131025314,
0.1277720034122467,
0.1277720034122467,
-0.09294360131025314
]
}
}
],
"id" : 6,
"linearVelocity" : 0,
"massData-I" : 0.0001869033440016210,
"massData-I" : 0.0001869037223514169,
"massData-center" :
{
"x" : 4.097818973036738e-08,
"y" : 0.01741409860551357
"x" : 0,
"y" : 0.01741420105099678
},
"massData-mass" : 0.03107452951371670,
"massData-mass" : 0.03107454814016819,
"name" : "lowerLeftLeg",
"position" :
{
"x" : -0.04570891708135605,
"y" : 0.09799571335315704
"x" : -0.03829947486519814,
"y" : 0.09799569845199585
},
"type" : "dynamic"
},
@ -529,35 +529,35 @@
{
"x" :
[
-0.1156369969248772,
0.1570899933576584,
0.1570899933576584,
-0.1156369969248772
-0.1360991001129150,
0.1366278976202011,
0.1366278976202011,
-0.1360991001129150
],
"y" :
[
-0.3584159910678864,
-0.3584159910678864,
0.4034900069236755,
0.4034900069236755
-0.3788780868053436,
-0.3788780868053436,
0.3830279111862183,
0.3830279111862183
]
}
}
],
"id" : 9,
"linearVelocity" : 0,
"massData-I" : 0.01153474114835262,
"massData-I" : 0.01134084537625313,
"massData-center" :
{
"x" : 0.02072649449110031,
"y" : 0.02253700792789459
"x" : 0.0002643987536430359,
"y" : 0.002074912190437317
},
"massData-mass" : 0.2077923268079758,
"massData-mass" : 0.2077923566102982,
"name" : "chest",
"position" :
{
"x" : -0.02137973159551620,
"y" : 0.7773683071136475
"x" : 0.0007875636219978333,
"y" : 0.7995355725288391
},
"type" : "dynamic"
},
@ -586,17 +586,17 @@
{
"x" :
[
0.04692991077899933,
0.04692991077899933,
-0.04692997038364410,
-0.04692997038364410
0.04692989960312843,
0.04692989960312843,
-0.04693000018596649,
-0.04693000018596649
],
"y" :
[
-0.1895973682403564,
0.1895966529846191,
0.1895966529846191,
-0.1895973682403564
-0.1895969957113266,
0.1895969957113266,
0.1895969957113266,
-0.1895969957113266
]
}
}
@ -606,15 +606,15 @@
"massData-I" : 0.0004525936674326658,
"massData-center" :
{
"x" : -2.980232238769531e-08,
"y" : -3.576278686523438e-07
"x" : -5.029141902923584e-08,
"y" : 0
},
"massData-mass" : 0.03559110686182976,
"name" : "upperLeftArm",
"position" :
{
"x" : -0.1165364086627960,
"y" : 0.9012566804885864
"x" : -0.1165359988808632,
"y" : 0.9012569785118103
},
"type" : "dynamic"
}
@ -625,13 +625,13 @@
{
"anchorA" :
{
"x" : -0.0007802955806255341,
"y" : -0.1484908312559128
"x" : -0.0007802959880791605,
"y" : -0.1484909951686859
},
"anchorB" :
{
"x" : -0.0007801018655300140,
"y" : 0.08614096790552139
"x" : -0.0007801019819453359,
"y" : 0.08614099770784378
},
"bodyA" : 2,
"bodyB" : 6,
@ -645,19 +645,19 @@
"name" : "joint7",
"referenceAngle" : 0,
"type" : "revolute",
"upperLimit" : 2.268928050994873
"upperLimit" : 2.443460941314697
},
{
"anchorA" :
{
"x" : 0.001979876309633255,
"y" : -0.1506856828927994
"x" : -0.004979589954018593,
"y" : -0.1506859958171844
},
"anchorB" :
{
"x" : 0.001979988068342209,
"y" : 0.08382887393236160
"x" : -0.005973690189421177,
"y" : 0.08482310175895691
},
"bodyA" : 3,
"bodyB" : 1,
@ -671,7 +671,7 @@
"name" : "joint8",
"referenceAngle" : 0,
"type" : "revolute",
"upperLimit" : 2.268928050994873
"upperLimit" : 2.443460941314697
},
{
@ -682,8 +682,8 @@
},
"anchorB" :
{
"x" : 0.0003536641597747803,
"y" : -0.1459646224975586
"x" : 0.0003536640142556280,
"y" : -0.1459649950265884
},
"bodyA" : 7,
"bodyB" : 4,
@ -691,25 +691,25 @@
"enableLimit" : true,
"enableMotor" : false,
"id" : 3,
"lowerLimit" : -1.919862151145935,
"lowerLimit" : 0.01745329238474369,
"maxMotorTorque" : 1,
"motorSpeed" : 0,
"name" : "joint1",
"referenceAngle" : 0,
"type" : "revolute",
"upperLimit" : 0
"upperLimit" : 1.919862151145935
},
{
"anchorA" :
{
"x" : 0.1396137326955795,
"y" : 0.2701327204704285
"x" : 0.1179294362664223,
"y" : 0.2464744448661804
},
"anchorB" :
{
"x" : -7.455050945281982e-05,
"y" : 0.1462445855140686
"x" : 0.0004089996218681335,
"y" : 0.1447530388832092
},
"bodyA" : 9,
"bodyB" : 4,
@ -729,13 +729,13 @@
{
"anchorA" :
{
"x" : -0.06799929589033127,
"y" : -0.2890855073928833
"x" : -0.06799955666065216,
"y" : -0.3021813035011292
},
"anchorB" :
{
"x" : -0.04493143782019615,
"y" : 0.1559127867221832
"x" : -0.02891255542635918,
"y" : 0.1648437976837158
},
"bodyA" : 9,
"bodyB" : 2,
@ -755,13 +755,13 @@
{
"anchorA" :
{
"x" : 0.1116365119814873,
"y" : -0.2944114208221436
"x" : 0.06260262429714203,
"y" : -0.3029872477054596
},
"anchorB" :
{
"x" : 0.04127831012010574,
"y" : 0.1504460573196411
"x" : 0.02294230461120605,
"y" : 0.1640380322933197
},
"bodyA" : 9,
"bodyB" : 3,
@ -781,13 +781,13 @@
{
"anchorA" :
{
"x" : -0.09517394006252289,
"y" : 0.2718779444694519
"x" : -0.1188285648822784,
"y" : 0.2521644234657288
},
"anchorB" :
{
"x" : -1.741945743560791e-05,
"y" : 0.1479902863502502
"x" : -0.001505002379417419,
"y" : 0.1504430174827576
},
"bodyA" : 9,
"bodyB" : 10,
@ -807,8 +807,8 @@
{
"anchorA" :
{
"x" : 0.0008554458618164062,
"y" : -0.1461489200592041
"x" : 0.0008554459782317281,
"y" : -0.1461489945650101
},
"anchorB" :
{