865for(
int rotationiter = 0; rotationiter < 1; ++rotationiter) {
869IkReal x73=((1.0)*
sj0);
874IkReal x78=(x75+(((-1.0)*x74)));
875IkReal x79=(x74+(((-1.0)*x75)));
889IkReal j4array[2], cj4array[2], sj4array[2];
890bool j4valid[2]={
false};
895 j4valid[0] = j4valid[1] =
true;
896 j4array[0] =
IKacos(cj4array[0]);
897 sj4array[0] =
IKsin(j4array[0]);
898 cj4array[1] = cj4array[0];
899 j4array[1] = -j4array[0];
900 sj4array[1] = -sj4array[0];
902else if( isnan(cj4array[0]) )
906 cj4array[0] = 1; sj4array[0] = 0; j4array[0] = 0;
908for(
int ij4 = 0; ij4 < 2; ++ij4)
915for(
int iij4 = ij4+1; iij4 < 2; ++iij4)
919 j4valid[iij4]=
false;
_ij4[1] = iij4;
break;
922j4 = j4array[ij4];
cj4 = cj4array[ij4];
sj4 = sj4array[ij4];
929if(
IKabs(j5eval[0]) < 0.0000010000000000 ||
IKabs(j5eval[1]) < 0.0000010000000000 ||
IKabs(j5eval[2]) < 0.0000010000000000 )
936if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
942if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 )
946bool bgotonextstatement =
true;
949evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(
j4))), 6.28318530717959)));
954if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 &&
IKabs(evalcond[2]) < 0.0000050000000000 &&
IKabs(evalcond[3]) < 0.0000050000000000 &&
IKabs(evalcond[4]) < 0.0000050000000000 )
956bgotonextstatement=
false;
964std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
965vinfos[0].jointtype = 1;
966vinfos[0].foffset =
j0;
967vinfos[0].indices[0] =
_ij0[0];
968vinfos[0].indices[1] =
_ij0[1];
969vinfos[0].maxsolutions =
_nj0;
970vinfos[1].jointtype = 1;
971vinfos[1].foffset =
j1;
972vinfos[1].indices[0] =
_ij1[0];
973vinfos[1].indices[1] =
_ij1[1];
974vinfos[1].maxsolutions =
_nj1;
975vinfos[2].jointtype = 1;
976vinfos[2].foffset =
j2;
977vinfos[2].indices[0] =
_ij2[0];
978vinfos[2].indices[1] =
_ij2[1];
979vinfos[2].maxsolutions =
_nj2;
980vinfos[3].jointtype = 1;
981vinfos[3].foffset =
j3;
982vinfos[3].fmul =
j3mul;
983vinfos[3].freeind = 0;
984vinfos[3].maxsolutions = 0;
985vinfos[4].jointtype = 1;
986vinfos[4].foffset =
j4;
987vinfos[4].indices[0] =
_ij4[0];
988vinfos[4].indices[1] =
_ij4[1];
989vinfos[4].maxsolutions =
_nj4;
990vinfos[5].jointtype = 1;
991vinfos[5].foffset =
j5;
992vinfos[5].fmul =
j5mul;
993vinfos[5].freeind = 0;
994vinfos[5].maxsolutions = 0;
995std::vector<int> vfree(1);
1002if( bgotonextstatement )
1004bool bgotonextstatement =
true;
1007evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-3.14159265358979)+
j4)))), 6.28318530717959)));
1012if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 &&
IKabs(evalcond[2]) < 0.0000050000000000 &&
IKabs(evalcond[3]) < 0.0000050000000000 &&
IKabs(evalcond[4]) < 0.0000050000000000 )
1014bgotonextstatement=
false;
1022std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
1023vinfos[0].jointtype = 1;
1024vinfos[0].foffset =
j0;
1025vinfos[0].indices[0] =
_ij0[0];
1026vinfos[0].indices[1] =
_ij0[1];
1027vinfos[0].maxsolutions =
_nj0;
1028vinfos[1].jointtype = 1;
1029vinfos[1].foffset =
j1;
1030vinfos[1].indices[0] =
_ij1[0];
1031vinfos[1].indices[1] =
_ij1[1];
1032vinfos[1].maxsolutions =
_nj1;
1033vinfos[2].jointtype = 1;
1034vinfos[2].foffset =
j2;
1035vinfos[2].indices[0] =
_ij2[0];
1036vinfos[2].indices[1] =
_ij2[1];
1037vinfos[2].maxsolutions =
_nj2;
1038vinfos[3].jointtype = 1;
1039vinfos[3].foffset =
j3;
1040vinfos[3].fmul =
j3mul;
1041vinfos[3].freeind = 0;
1042vinfos[3].maxsolutions = 0;
1043vinfos[4].jointtype = 1;
1044vinfos[4].foffset =
j4;
1045vinfos[4].indices[0] =
_ij4[0];
1046vinfos[4].indices[1] =
_ij4[1];
1047vinfos[4].maxsolutions =
_nj4;
1048vinfos[5].jointtype = 1;
1049vinfos[5].foffset =
j5;
1050vinfos[5].fmul =
j5mul;
1051vinfos[5].freeind = 0;
1052vinfos[5].maxsolutions = 0;
1053std::vector<int> vfree(1);
1060if( bgotonextstatement )
1062bool bgotonextstatement =
true;
1066if(
IKabs(evalcond[0]) < 0.0000050000000000 )
1068bgotonextstatement=
false;
1081IkReal x89=(x83*x84);
1082IkReal x90=(x83*x85);
1084if(
IKabs(j3eval[0]) < 0.0000000100000000 )
1090IkReal op[4+1], zeror[4];
1092IkReal j3evalpoly[1];
1096IkReal x94=(x91*x92);
1097IkReal x95=((((8.0)*x93))+(((-8.0)*
new_r00)));
1099op[1]=(x92+(((-1.0)*x94)));
1100op[2]=((((16.0)*x93))+(((16.0)*
new_r00))+(((-32.0)*
new_r00*x91)));
1101op[3]=(x94+(((-1.0)*x92)));
1104IkReal j3array[4], cj3array[4], sj3array[4], tempj3array[1];
1105int numsolutions = 0;
1106for(
int ij3 = 0; ij3 < numroots; ++ij3)
1108IkReal
htj3 = zeror[ij3];
1109tempj3array[0]=((2.0)*(atan(
htj3)));
1110for(
int kj3 = 0; kj3 < 1; ++kj3)
1112j3array[numsolutions] = tempj3array[kj3];
1113if( j3array[numsolutions] >
IKPI )
1115 j3array[numsolutions]-=
IK2PI;
1117else if( j3array[numsolutions] < -
IKPI )
1119 j3array[numsolutions]+=
IK2PI;
1121sj3array[numsolutions] =
IKsin(j3array[numsolutions]);
1122cj3array[numsolutions] =
IKcos(j3array[numsolutions]);
1126bool j3valid[4]={
true,
true,
true,
true};
1128for(
int ij3 = 0; ij3 < numsolutions; ++ij3)
1134 j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
1140IkReal x99=((8.0)*x98);
1142IkReal x101=(x96*x97);
1143IkReal x102=((8.0)*x100);
1144j3evalpoly[0]=((((-1.0)*x102))+(((
htj3*
htj3*
htj3)*(((((-1.0)*x101))+x96))))+(((
htj3*
htj3*
htj3*
htj3)*(((((-1.0)*x102))+x99))))+((
htj3*((x101+(((-1.0)*x96))))))+(((
htj3*
htj3)*(((((16.0)*x98))+(((16.0)*x100))+(((-32.0)*
new_r11))))))+x99);
1145if(
IKabs(j3evalpoly[0]) > 0.0000001000000000 )
1150for(
int iij3 = ij3+1; iij3 < numsolutions; ++iij3)
1154 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
1169if(
IKabs(j5eval[0]) < 0.0000010000000000 ||
IKabs(j5eval[1]) < 0.0000010000000000 ||
IKabs(j5eval[2]) < 0.0000010000000000 )
1178if(
IKabs(j5eval[0]) < 0.0000010000000000 )
1187if(
IKabs(j5eval[0]) < 0.0000010000000000 )
1191bool bgotonextstatement =
true;
1194evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(
j3))), 6.28318530717959)));
1195if(
IKabs(evalcond[0]) < 0.0000050000000000 )
1197bgotonextstatement=
false;
1199IkReal j5array[1], cj5array[1], sj5array[1];
1200bool j5valid[1]={
false};
1205sj5array[0]=
IKsin(j5array[0]);
1206cj5array[0]=
IKcos(j5array[0]);
1207if( j5array[0] >
IKPI )
1211else if( j5array[0] < -
IKPI )
1215for(
int ij5 = 0; ij5 < 1; ++ij5)
1222for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
1226 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
1229j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
1235evalcond[1]=((-1.0)*x106);
1236evalcond[2]=(x106+(((-1.0)*
new_r10)));
1237evalcond[3]=(x107+(((-1.0)*
new_r11)));
1245std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
1246vinfos[0].jointtype = 1;
1247vinfos[0].foffset =
j0;
1248vinfos[0].indices[0] =
_ij0[0];
1249vinfos[0].indices[1] =
_ij0[1];
1250vinfos[0].maxsolutions =
_nj0;
1251vinfos[1].jointtype = 1;
1252vinfos[1].foffset =
j1;
1253vinfos[1].indices[0] =
_ij1[0];
1254vinfos[1].indices[1] =
_ij1[1];
1255vinfos[1].maxsolutions =
_nj1;
1256vinfos[2].jointtype = 1;
1257vinfos[2].foffset =
j2;
1258vinfos[2].indices[0] =
_ij2[0];
1259vinfos[2].indices[1] =
_ij2[1];
1260vinfos[2].maxsolutions =
_nj2;
1261vinfos[3].jointtype = 1;
1262vinfos[3].foffset =
j3;
1263vinfos[3].indices[0] =
_ij3[0];
1264vinfos[3].indices[1] =
_ij3[1];
1265vinfos[3].maxsolutions =
_nj3;
1266vinfos[4].jointtype = 1;
1267vinfos[4].foffset =
j4;
1268vinfos[4].indices[0] =
_ij4[0];
1269vinfos[4].indices[1] =
_ij4[1];
1270vinfos[4].maxsolutions =
_nj4;
1271vinfos[5].jointtype = 1;
1272vinfos[5].foffset =
j5;
1273vinfos[5].indices[0] =
_ij5[0];
1274vinfos[5].indices[1] =
_ij5[1];
1275vinfos[5].maxsolutions =
_nj5;
1276std::vector<int> vfree(0);
1284if( bgotonextstatement )
1286bool bgotonextstatement =
true;
1289evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-3.14159265358979)+
j3)))), 6.28318530717959)));
1290if(
IKabs(evalcond[0]) < 0.0000050000000000 )
1292bgotonextstatement=
false;
1294IkReal j5array[1], cj5array[1], sj5array[1];
1295bool j5valid[1]={
false};
1300sj5array[0]=
IKsin(j5array[0]);
1301cj5array[0]=
IKcos(j5array[0]);
1302if( j5array[0] >
IKPI )
1306else if( j5array[0] < -
IKPI )
1310for(
int ij5 = 0; ij5 < 1; ++ij5)
1317for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
1321 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
1324j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
1332evalcond[3]=((-1.0)*x109);
1340std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
1341vinfos[0].jointtype = 1;
1342vinfos[0].foffset =
j0;
1343vinfos[0].indices[0] =
_ij0[0];
1344vinfos[0].indices[1] =
_ij0[1];
1345vinfos[0].maxsolutions =
_nj0;
1346vinfos[1].jointtype = 1;
1347vinfos[1].foffset =
j1;
1348vinfos[1].indices[0] =
_ij1[0];
1349vinfos[1].indices[1] =
_ij1[1];
1350vinfos[1].maxsolutions =
_nj1;
1351vinfos[2].jointtype = 1;
1352vinfos[2].foffset =
j2;
1353vinfos[2].indices[0] =
_ij2[0];
1354vinfos[2].indices[1] =
_ij2[1];
1355vinfos[2].maxsolutions =
_nj2;
1356vinfos[3].jointtype = 1;
1357vinfos[3].foffset =
j3;
1358vinfos[3].indices[0] =
_ij3[0];
1359vinfos[3].indices[1] =
_ij3[1];
1360vinfos[3].maxsolutions =
_nj3;
1361vinfos[4].jointtype = 1;
1362vinfos[4].foffset =
j4;
1363vinfos[4].indices[0] =
_ij4[0];
1364vinfos[4].indices[1] =
_ij4[1];
1365vinfos[4].maxsolutions =
_nj4;
1366vinfos[5].jointtype = 1;
1367vinfos[5].foffset =
j5;
1368vinfos[5].indices[0] =
_ij5[0];
1369vinfos[5].indices[1] =
_ij5[1];
1370vinfos[5].maxsolutions =
_nj5;
1371std::vector<int> vfree(0);
1379if( bgotonextstatement )
1381bool bgotonextstatement =
true;
1388if((x110.
value) < -0.00001)
1391evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-1.0)+(
IKsign(
sj3)))))+(
IKabs((
cj3+(((-1.0)*gconst18)))))), 6.28318530717959)));
1392if(
IKabs(evalcond[0]) < 0.0000050000000000 )
1394bgotonextstatement=
false;
1401if((((1.0)+(((-1.0)*(gconst18*gconst18))))) < -0.00001)
1403sj3=
IKsqrt(((1.0)+(((-1.0)*(gconst18*gconst18)))));
1412if((x111.
value) < -0.00001)
1416if(
IKabs(j5eval[0]) < 0.0000010000000000 )
1419IkReal j5array[1], cj5array[1], sj5array[1];
1420bool j5valid[1]={
false};
1422if((((1.0)+(((-1.0)*(gconst18*gconst18))))) < -0.00001)
1431sj5array[0]=
IKsin(j5array[0]);
1432cj5array[0]=
IKcos(j5array[0]);
1433if( j5array[0] >
IKPI )
1437else if( j5array[0] < -
IKPI )
1441for(
int ij5 = 0; ij5 < 1; ++ij5)
1448for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
1452 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
1455j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
1460IkReal x115=((1.0)*gconst18);
1461if((((1.0)+(((-1.0)*gconst18*x115)))) < -0.00001)
1463IkReal x116=
IKsqrt(((1.0)+(((-1.0)*gconst18*x115))));
1465evalcond[1]=((-1.0)*x114);
1466evalcond[2]=((((-1.0)*x113*x115))+
new_r11);
1467evalcond[3]=((((-1.0)*x114*x115))+
new_r10);
1468evalcond[4]=(((x113*x116))+
new_r01);
1469evalcond[5]=(((x114*x116))+
new_r00);
1479std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
1480vinfos[0].jointtype = 1;
1481vinfos[0].foffset =
j0;
1482vinfos[0].indices[0] =
_ij0[0];
1483vinfos[0].indices[1] =
_ij0[1];
1484vinfos[0].maxsolutions =
_nj0;
1485vinfos[1].jointtype = 1;
1486vinfos[1].foffset =
j1;
1487vinfos[1].indices[0] =
_ij1[0];
1488vinfos[1].indices[1] =
_ij1[1];
1489vinfos[1].maxsolutions =
_nj1;
1490vinfos[2].jointtype = 1;
1491vinfos[2].foffset =
j2;
1492vinfos[2].indices[0] =
_ij2[0];
1493vinfos[2].indices[1] =
_ij2[1];
1494vinfos[2].maxsolutions =
_nj2;
1495vinfos[3].jointtype = 1;
1496vinfos[3].foffset =
j3;
1497vinfos[3].indices[0] =
_ij3[0];
1498vinfos[3].indices[1] =
_ij3[1];
1499vinfos[3].maxsolutions =
_nj3;
1500vinfos[4].jointtype = 1;
1501vinfos[4].foffset =
j4;
1502vinfos[4].indices[0] =
_ij4[0];
1503vinfos[4].indices[1] =
_ij4[1];
1504vinfos[4].maxsolutions =
_nj4;
1505vinfos[5].jointtype = 1;
1506vinfos[5].foffset =
j5;
1507vinfos[5].indices[0] =
_ij5[0];
1508vinfos[5].indices[1] =
_ij5[1];
1509vinfos[5].maxsolutions =
_nj5;
1510std::vector<int> vfree(0);
1519IkReal j5array[1], cj5array[1], sj5array[1];
1520bool j5valid[1]={
false};
1530j5array[0]=((-1.5707963267949)+(((1.5707963267949)*(x117.
value)))+(x118.
value));
1531sj5array[0]=
IKsin(j5array[0]);
1532cj5array[0]=
IKcos(j5array[0]);
1533if( j5array[0] >
IKPI )
1537else if( j5array[0] < -
IKPI )
1541for(
int ij5 = 0; ij5 < 1; ++ij5)
1548for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
1552 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
1555j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
1560IkReal x121=((1.0)*gconst18);
1561if((((1.0)+(((-1.0)*gconst18*x121)))) < -0.00001)
1563IkReal x122=
IKsqrt(((1.0)+(((-1.0)*gconst18*x121))));
1565evalcond[1]=((-1.0)*x120);
1566evalcond[2]=((((-1.0)*x119*x121))+
new_r11);
1567evalcond[3]=((((-1.0)*x120*x121))+
new_r10);
1568evalcond[4]=(
new_r01+((x119*x122)));
1569evalcond[5]=(((x120*x122))+
new_r00);
1579std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
1580vinfos[0].jointtype = 1;
1581vinfos[0].foffset =
j0;
1582vinfos[0].indices[0] =
_ij0[0];
1583vinfos[0].indices[1] =
_ij0[1];
1584vinfos[0].maxsolutions =
_nj0;
1585vinfos[1].jointtype = 1;
1586vinfos[1].foffset =
j1;
1587vinfos[1].indices[0] =
_ij1[0];
1588vinfos[1].indices[1] =
_ij1[1];
1589vinfos[1].maxsolutions =
_nj1;
1590vinfos[2].jointtype = 1;
1591vinfos[2].foffset =
j2;
1592vinfos[2].indices[0] =
_ij2[0];
1593vinfos[2].indices[1] =
_ij2[1];
1594vinfos[2].maxsolutions =
_nj2;
1595vinfos[3].jointtype = 1;
1596vinfos[3].foffset =
j3;
1597vinfos[3].indices[0] =
_ij3[0];
1598vinfos[3].indices[1] =
_ij3[1];
1599vinfos[3].maxsolutions =
_nj3;
1600vinfos[4].jointtype = 1;
1601vinfos[4].foffset =
j4;
1602vinfos[4].indices[0] =
_ij4[0];
1603vinfos[4].indices[1] =
_ij4[1];
1604vinfos[4].maxsolutions =
_nj4;
1605vinfos[5].jointtype = 1;
1606vinfos[5].foffset =
j5;
1607vinfos[5].indices[0] =
_ij5[0];
1608vinfos[5].indices[1] =
_ij5[1];
1609vinfos[5].maxsolutions =
_nj5;
1610std::vector<int> vfree(0);
1622if( bgotonextstatement )
1624bool bgotonextstatement =
true;
1631if((x123.
value) < -0.00001)
1634evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((1.0)+(
IKsign(
sj3)))))+(
IKabs((
cj3+(((-1.0)*gconst18)))))), 6.28318530717959)));
1635if(
IKabs(evalcond[0]) < 0.0000050000000000 )
1637bgotonextstatement=
false;
1644if((((1.0)+(((-1.0)*(gconst18*gconst18))))) < -0.00001)
1646sj3=((-1.0)*(
IKsqrt(((1.0)+(((-1.0)*(gconst18*gconst18)))))));
1655if((x124.
value) < -0.00001)
1659if(
IKabs(j5eval[0]) < 0.0000010000000000 )
1662IkReal j5array[1], cj5array[1], sj5array[1];
1663bool j5valid[1]={
false};
1665if((((1.0)+(((-1.0)*(gconst18*gconst18))))) < -0.00001)
1674sj5array[0]=
IKsin(j5array[0]);
1675cj5array[0]=
IKcos(j5array[0]);
1676if( j5array[0] >
IKPI )
1680else if( j5array[0] < -
IKPI )
1684for(
int ij5 = 0; ij5 < 1; ++ij5)
1691for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
1695 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
1698j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
1703IkReal x128=((1.0)*gconst18);
1704if((((1.0)+(((-1.0)*gconst18*x128)))) < -0.00001)
1706IkReal x129=
IKsqrt(((1.0)+(((-1.0)*gconst18*x128))));
1707IkReal x130=((1.0)*x129);
1709evalcond[1]=((-1.0)*x127);
1710evalcond[2]=((((-1.0)*x126*x128))+
new_r11);
1711evalcond[3]=(
new_r10+(((-1.0)*x127*x128)));
1712evalcond[4]=((((-1.0)*x126*x130))+
new_r01);
1713evalcond[5]=(
new_r00+(((-1.0)*x127*x130)));
1714evalcond[6]=((((-1.0)*
new_r10*x128))+(((-1.0)*
new_r00*x130))+x127);
1715evalcond[7]=((((-1.0)*
new_r01*x130))+x126+(((-1.0)*
new_r11*x128)));
1723std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
1724vinfos[0].jointtype = 1;
1725vinfos[0].foffset =
j0;
1726vinfos[0].indices[0] =
_ij0[0];
1727vinfos[0].indices[1] =
_ij0[1];
1728vinfos[0].maxsolutions =
_nj0;
1729vinfos[1].jointtype = 1;
1730vinfos[1].foffset =
j1;
1731vinfos[1].indices[0] =
_ij1[0];
1732vinfos[1].indices[1] =
_ij1[1];
1733vinfos[1].maxsolutions =
_nj1;
1734vinfos[2].jointtype = 1;
1735vinfos[2].foffset =
j2;
1736vinfos[2].indices[0] =
_ij2[0];
1737vinfos[2].indices[1] =
_ij2[1];
1738vinfos[2].maxsolutions =
_nj2;
1739vinfos[3].jointtype = 1;
1740vinfos[3].foffset =
j3;
1741vinfos[3].indices[0] =
_ij3[0];
1742vinfos[3].indices[1] =
_ij3[1];
1743vinfos[3].maxsolutions =
_nj3;
1744vinfos[4].jointtype = 1;
1745vinfos[4].foffset =
j4;
1746vinfos[4].indices[0] =
_ij4[0];
1747vinfos[4].indices[1] =
_ij4[1];
1748vinfos[4].maxsolutions =
_nj4;
1749vinfos[5].jointtype = 1;
1750vinfos[5].foffset =
j5;
1751vinfos[5].indices[0] =
_ij5[0];
1752vinfos[5].indices[1] =
_ij5[1];
1753vinfos[5].maxsolutions =
_nj5;
1754std::vector<int> vfree(0);
1763IkReal j5array[1], cj5array[1], sj5array[1];
1764bool j5valid[1]={
false};
1774j5array[0]=((-1.5707963267949)+(((1.5707963267949)*(x131.
value)))+(x132.
value));
1775sj5array[0]=
IKsin(j5array[0]);
1776cj5array[0]=
IKcos(j5array[0]);
1777if( j5array[0] >
IKPI )
1781else if( j5array[0] < -
IKPI )
1785for(
int ij5 = 0; ij5 < 1; ++ij5)
1792for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
1796 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
1799j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
1804IkReal x135=((1.0)*gconst18);
1805if((((1.0)+(((-1.0)*gconst18*x135)))) < -0.00001)
1807IkReal x136=
IKsqrt(((1.0)+(((-1.0)*gconst18*x135))));
1808IkReal x137=((1.0)*x136);
1810evalcond[1]=((-1.0)*x134);
1811evalcond[2]=((((-1.0)*x133*x135))+
new_r11);
1812evalcond[3]=((((-1.0)*x134*x135))+
new_r10);
1813evalcond[4]=((((-1.0)*x133*x137))+
new_r01);
1814evalcond[5]=((((-1.0)*x134*x137))+
new_r00);
1815evalcond[6]=((((-1.0)*
new_r10*x135))+(((-1.0)*
new_r00*x137))+x134);
1816evalcond[7]=((((-1.0)*
new_r11*x135))+(((-1.0)*
new_r01*x137))+x133);
1824std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
1825vinfos[0].jointtype = 1;
1826vinfos[0].foffset =
j0;
1827vinfos[0].indices[0] =
_ij0[0];
1828vinfos[0].indices[1] =
_ij0[1];
1829vinfos[0].maxsolutions =
_nj0;
1830vinfos[1].jointtype = 1;
1831vinfos[1].foffset =
j1;
1832vinfos[1].indices[0] =
_ij1[0];
1833vinfos[1].indices[1] =
_ij1[1];
1834vinfos[1].maxsolutions =
_nj1;
1835vinfos[2].jointtype = 1;
1836vinfos[2].foffset =
j2;
1837vinfos[2].indices[0] =
_ij2[0];
1838vinfos[2].indices[1] =
_ij2[1];
1839vinfos[2].maxsolutions =
_nj2;
1840vinfos[3].jointtype = 1;
1841vinfos[3].foffset =
j3;
1842vinfos[3].indices[0] =
_ij3[0];
1843vinfos[3].indices[1] =
_ij3[1];
1844vinfos[3].maxsolutions =
_nj3;
1845vinfos[4].jointtype = 1;
1846vinfos[4].foffset =
j4;
1847vinfos[4].indices[0] =
_ij4[0];
1848vinfos[4].indices[1] =
_ij4[1];
1849vinfos[4].maxsolutions =
_nj4;
1850vinfos[5].jointtype = 1;
1851vinfos[5].foffset =
j5;
1852vinfos[5].indices[0] =
_ij5[0];
1853vinfos[5].indices[1] =
_ij5[1];
1854vinfos[5].maxsolutions =
_nj5;
1855std::vector<int> vfree(0);
1867if( bgotonextstatement )
1869bool bgotonextstatement =
true;
1876if((x138.
value) < -0.00001)
1879evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-1.0)+(
IKsign(
sj3)))))+(
IKabs((
cj3+(((-1.0)*gconst19)))))), 6.28318530717959)));
1880if(
IKabs(evalcond[0]) < 0.0000050000000000 )
1882bgotonextstatement=
false;
1889if((((1.0)+(((-1.0)*(gconst19*gconst19))))) < -0.00001)
1891sj3=
IKsqrt(((1.0)+(((-1.0)*(gconst19*gconst19)))));
1900if((x139.
value) < -0.00001)
1904if(
IKabs(j5eval[0]) < 0.0000010000000000 )
1907IkReal j5array[1], cj5array[1], sj5array[1];
1908bool j5valid[1]={
false};
1910if((((1.0)+(((-1.0)*(gconst19*gconst19))))) < -0.00001)
1919sj5array[0]=
IKsin(j5array[0]);
1920cj5array[0]=
IKcos(j5array[0]);
1921if( j5array[0] >
IKPI )
1925else if( j5array[0] < -
IKPI )
1929for(
int ij5 = 0; ij5 < 1; ++ij5)
1936for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
1940 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
1943j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
1948IkReal x143=((1.0)*gconst19);
1949if((((1.0)+(((-1.0)*gconst19*x143)))) < -0.00001)
1951IkReal x144=
IKsqrt(((1.0)+(((-1.0)*gconst19*x143))));
1953evalcond[1]=((-1.0)*x142);
1954evalcond[2]=((((-1.0)*x141*x143))+
new_r11);
1955evalcond[3]=((((-1.0)*x142*x143))+
new_r10);
1956evalcond[4]=(((x141*x144))+
new_r01);
1957evalcond[5]=(((x142*x144))+
new_r00);
1967std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
1968vinfos[0].jointtype = 1;
1969vinfos[0].foffset =
j0;
1970vinfos[0].indices[0] =
_ij0[0];
1971vinfos[0].indices[1] =
_ij0[1];
1972vinfos[0].maxsolutions =
_nj0;
1973vinfos[1].jointtype = 1;
1974vinfos[1].foffset =
j1;
1975vinfos[1].indices[0] =
_ij1[0];
1976vinfos[1].indices[1] =
_ij1[1];
1977vinfos[1].maxsolutions =
_nj1;
1978vinfos[2].jointtype = 1;
1979vinfos[2].foffset =
j2;
1980vinfos[2].indices[0] =
_ij2[0];
1981vinfos[2].indices[1] =
_ij2[1];
1982vinfos[2].maxsolutions =
_nj2;
1983vinfos[3].jointtype = 1;
1984vinfos[3].foffset =
j3;
1985vinfos[3].indices[0] =
_ij3[0];
1986vinfos[3].indices[1] =
_ij3[1];
1987vinfos[3].maxsolutions =
_nj3;
1988vinfos[4].jointtype = 1;
1989vinfos[4].foffset =
j4;
1990vinfos[4].indices[0] =
_ij4[0];
1991vinfos[4].indices[1] =
_ij4[1];
1992vinfos[4].maxsolutions =
_nj4;
1993vinfos[5].jointtype = 1;
1994vinfos[5].foffset =
j5;
1995vinfos[5].indices[0] =
_ij5[0];
1996vinfos[5].indices[1] =
_ij5[1];
1997vinfos[5].maxsolutions =
_nj5;
1998std::vector<int> vfree(0);
2007IkReal j5array[1], cj5array[1], sj5array[1];
2008bool j5valid[1]={
false};
2018j5array[0]=((-1.5707963267949)+(((1.5707963267949)*(x145.
value)))+(x146.
value));
2019sj5array[0]=
IKsin(j5array[0]);
2020cj5array[0]=
IKcos(j5array[0]);
2021if( j5array[0] >
IKPI )
2025else if( j5array[0] < -
IKPI )
2029for(
int ij5 = 0; ij5 < 1; ++ij5)
2036for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
2040 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
2043j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
2048IkReal x149=((1.0)*gconst19);
2049if((((1.0)+(((-1.0)*gconst19*x149)))) < -0.00001)
2051IkReal x150=
IKsqrt(((1.0)+(((-1.0)*gconst19*x149))));
2053evalcond[1]=((-1.0)*x148);
2054evalcond[2]=((((-1.0)*x147*x149))+
new_r11);
2055evalcond[3]=((((-1.0)*x148*x149))+
new_r10);
2056evalcond[4]=(((x147*x150))+
new_r01);
2057evalcond[5]=(((x148*x150))+
new_r00);
2067std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
2068vinfos[0].jointtype = 1;
2069vinfos[0].foffset =
j0;
2070vinfos[0].indices[0] =
_ij0[0];
2071vinfos[0].indices[1] =
_ij0[1];
2072vinfos[0].maxsolutions =
_nj0;
2073vinfos[1].jointtype = 1;
2074vinfos[1].foffset =
j1;
2075vinfos[1].indices[0] =
_ij1[0];
2076vinfos[1].indices[1] =
_ij1[1];
2077vinfos[1].maxsolutions =
_nj1;
2078vinfos[2].jointtype = 1;
2079vinfos[2].foffset =
j2;
2080vinfos[2].indices[0] =
_ij2[0];
2081vinfos[2].indices[1] =
_ij2[1];
2082vinfos[2].maxsolutions =
_nj2;
2083vinfos[3].jointtype = 1;
2084vinfos[3].foffset =
j3;
2085vinfos[3].indices[0] =
_ij3[0];
2086vinfos[3].indices[1] =
_ij3[1];
2087vinfos[3].maxsolutions =
_nj3;
2088vinfos[4].jointtype = 1;
2089vinfos[4].foffset =
j4;
2090vinfos[4].indices[0] =
_ij4[0];
2091vinfos[4].indices[1] =
_ij4[1];
2092vinfos[4].maxsolutions =
_nj4;
2093vinfos[5].jointtype = 1;
2094vinfos[5].foffset =
j5;
2095vinfos[5].indices[0] =
_ij5[0];
2096vinfos[5].indices[1] =
_ij5[1];
2097vinfos[5].maxsolutions =
_nj5;
2098std::vector<int> vfree(0);
2110if( bgotonextstatement )
2112bool bgotonextstatement =
true;
2119if((x151.
value) < -0.00001)
2122evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((1.0)+(
IKsign(
sj3)))))+(
IKabs((
cj3+(((-1.0)*gconst19)))))), 6.28318530717959)));
2123if(
IKabs(evalcond[0]) < 0.0000050000000000 )
2125bgotonextstatement=
false;
2132if((((1.0)+(((-1.0)*(gconst19*gconst19))))) < -0.00001)
2134sj3=((-1.0)*(
IKsqrt(((1.0)+(((-1.0)*(gconst19*gconst19)))))));
2143if((x152.
value) < -0.00001)
2147if(
IKabs(j5eval[0]) < 0.0000010000000000 )
2150IkReal j5array[1], cj5array[1], sj5array[1];
2151bool j5valid[1]={
false};
2153if((((1.0)+(((-1.0)*(gconst19*gconst19))))) < -0.00001)
2162sj5array[0]=
IKsin(j5array[0]);
2163cj5array[0]=
IKcos(j5array[0]);
2164if( j5array[0] >
IKPI )
2168else if( j5array[0] < -
IKPI )
2172for(
int ij5 = 0; ij5 < 1; ++ij5)
2179for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
2183 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
2186j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
2191IkReal x156=((1.0)*gconst19);
2192if((((1.0)+(((-1.0)*gconst19*x156)))) < -0.00001)
2194IkReal x157=
IKsqrt(((1.0)+(((-1.0)*gconst19*x156))));
2195IkReal x158=((1.0)*x157);
2197evalcond[1]=((-1.0)*x155);
2198evalcond[2]=((((-1.0)*x154*x156))+
new_r11);
2199evalcond[3]=((((-1.0)*x155*x156))+
new_r10);
2200evalcond[4]=((((-1.0)*x154*x158))+
new_r01);
2201evalcond[5]=((((-1.0)*x155*x158))+
new_r00);
2202evalcond[6]=(x155+(((-1.0)*
new_r10*x156))+(((-1.0)*
new_r00*x158)));
2203evalcond[7]=(x154+(((-1.0)*
new_r11*x156))+(((-1.0)*
new_r01*x158)));
2211std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
2212vinfos[0].jointtype = 1;
2213vinfos[0].foffset =
j0;
2214vinfos[0].indices[0] =
_ij0[0];
2215vinfos[0].indices[1] =
_ij0[1];
2216vinfos[0].maxsolutions =
_nj0;
2217vinfos[1].jointtype = 1;
2218vinfos[1].foffset =
j1;
2219vinfos[1].indices[0] =
_ij1[0];
2220vinfos[1].indices[1] =
_ij1[1];
2221vinfos[1].maxsolutions =
_nj1;
2222vinfos[2].jointtype = 1;
2223vinfos[2].foffset =
j2;
2224vinfos[2].indices[0] =
_ij2[0];
2225vinfos[2].indices[1] =
_ij2[1];
2226vinfos[2].maxsolutions =
_nj2;
2227vinfos[3].jointtype = 1;
2228vinfos[3].foffset =
j3;
2229vinfos[3].indices[0] =
_ij3[0];
2230vinfos[3].indices[1] =
_ij3[1];
2231vinfos[3].maxsolutions =
_nj3;
2232vinfos[4].jointtype = 1;
2233vinfos[4].foffset =
j4;
2234vinfos[4].indices[0] =
_ij4[0];
2235vinfos[4].indices[1] =
_ij4[1];
2236vinfos[4].maxsolutions =
_nj4;
2237vinfos[5].jointtype = 1;
2238vinfos[5].foffset =
j5;
2239vinfos[5].indices[0] =
_ij5[0];
2240vinfos[5].indices[1] =
_ij5[1];
2241vinfos[5].maxsolutions =
_nj5;
2242std::vector<int> vfree(0);
2251IkReal j5array[1], cj5array[1], sj5array[1];
2252bool j5valid[1]={
false};
2262j5array[0]=((-1.5707963267949)+(((1.5707963267949)*(x159.
value)))+(x160.
value));
2263sj5array[0]=
IKsin(j5array[0]);
2264cj5array[0]=
IKcos(j5array[0]);
2265if( j5array[0] >
IKPI )
2269else if( j5array[0] < -
IKPI )
2273for(
int ij5 = 0; ij5 < 1; ++ij5)
2280for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
2284 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
2287j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
2292IkReal x163=((1.0)*gconst19);
2293if((((1.0)+(((-1.0)*gconst19*x163)))) < -0.00001)
2295IkReal x164=
IKsqrt(((1.0)+(((-1.0)*gconst19*x163))));
2296IkReal x165=((1.0)*x164);
2298evalcond[1]=((-1.0)*x162);
2299evalcond[2]=((((-1.0)*x161*x163))+
new_r11);
2300evalcond[3]=((((-1.0)*x162*x163))+
new_r10);
2301evalcond[4]=((((-1.0)*x161*x165))+
new_r01);
2302evalcond[5]=((((-1.0)*x162*x165))+
new_r00);
2303evalcond[6]=((((-1.0)*
new_r00*x165))+(((-1.0)*
new_r10*x163))+x162);
2304evalcond[7]=((((-1.0)*
new_r11*x163))+x161+(((-1.0)*
new_r01*x165)));
2312std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
2313vinfos[0].jointtype = 1;
2314vinfos[0].foffset =
j0;
2315vinfos[0].indices[0] =
_ij0[0];
2316vinfos[0].indices[1] =
_ij0[1];
2317vinfos[0].maxsolutions =
_nj0;
2318vinfos[1].jointtype = 1;
2319vinfos[1].foffset =
j1;
2320vinfos[1].indices[0] =
_ij1[0];
2321vinfos[1].indices[1] =
_ij1[1];
2322vinfos[1].maxsolutions =
_nj1;
2323vinfos[2].jointtype = 1;
2324vinfos[2].foffset =
j2;
2325vinfos[2].indices[0] =
_ij2[0];
2326vinfos[2].indices[1] =
_ij2[1];
2327vinfos[2].maxsolutions =
_nj2;
2328vinfos[3].jointtype = 1;
2329vinfos[3].foffset =
j3;
2330vinfos[3].indices[0] =
_ij3[0];
2331vinfos[3].indices[1] =
_ij3[1];
2332vinfos[3].maxsolutions =
_nj3;
2333vinfos[4].jointtype = 1;
2334vinfos[4].foffset =
j4;
2335vinfos[4].indices[0] =
_ij4[0];
2336vinfos[4].indices[1] =
_ij4[1];
2337vinfos[4].maxsolutions =
_nj4;
2338vinfos[5].jointtype = 1;
2339vinfos[5].foffset =
j5;
2340vinfos[5].indices[0] =
_ij5[0];
2341vinfos[5].indices[1] =
_ij5[1];
2342vinfos[5].maxsolutions =
_nj5;
2343std::vector<int> vfree(0);
2355if( bgotonextstatement )
2357bool bgotonextstatement =
true;
2362bgotonextstatement=
false;
2367if( bgotonextstatement )
2381IkReal j5array[1], cj5array[1], sj5array[1];
2382bool j5valid[1]={
false};
2392sj5array[0]=
IKsin(j5array[0]);
2393cj5array[0]=
IKcos(j5array[0]);
2394if( j5array[0] >
IKPI )
2398else if( j5array[0] < -
IKPI )
2402for(
int ij5 = 0; ij5 < 1; ++ij5)
2409for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
2413 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
2416j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
2425IkReal x174=(
sj3*x168);
2427IkReal x176=((1.0)*x169);
2428IkReal x177=((1.0)*x168);
2434evalcond[5]=(x174+
new_r00+(((-1.0)*x169*x173)));
2435evalcond[6]=(((x168*x171))+(((-1.0)*
cj3*x176))+
new_r11);
2436evalcond[7]=(x169+(((-1.0)*x171*x172))+(((-1.0)*
new_r00*x173)));
2437evalcond[8]=((((-1.0)*
cj3*x177))+(((-1.0)*x171*x176))+
new_r10);
2438evalcond[9]=((((-1.0)*x177))+(((-1.0)*x170*x171))+(((-1.0)*
new_r01*x173)));
2446std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
2447vinfos[0].jointtype = 1;
2448vinfos[0].foffset =
j0;
2449vinfos[0].indices[0] =
_ij0[0];
2450vinfos[0].indices[1] =
_ij0[1];
2451vinfos[0].maxsolutions =
_nj0;
2452vinfos[1].jointtype = 1;
2453vinfos[1].foffset =
j1;
2454vinfos[1].indices[0] =
_ij1[0];
2455vinfos[1].indices[1] =
_ij1[1];
2456vinfos[1].maxsolutions =
_nj1;
2457vinfos[2].jointtype = 1;
2458vinfos[2].foffset =
j2;
2459vinfos[2].indices[0] =
_ij2[0];
2460vinfos[2].indices[1] =
_ij2[1];
2461vinfos[2].maxsolutions =
_nj2;
2462vinfos[3].jointtype = 1;
2463vinfos[3].foffset =
j3;
2464vinfos[3].indices[0] =
_ij3[0];
2465vinfos[3].indices[1] =
_ij3[1];
2466vinfos[3].maxsolutions =
_nj3;
2467vinfos[4].jointtype = 1;
2468vinfos[4].foffset =
j4;
2469vinfos[4].indices[0] =
_ij4[0];
2470vinfos[4].indices[1] =
_ij4[1];
2471vinfos[4].maxsolutions =
_nj4;
2472vinfos[5].jointtype = 1;
2473vinfos[5].foffset =
j5;
2474vinfos[5].indices[0] =
_ij5[0];
2475vinfos[5].indices[1] =
_ij5[1];
2476vinfos[5].maxsolutions =
_nj5;
2477std::vector<int> vfree(0);
2490IkReal j5array[1], cj5array[1], sj5array[1];
2491bool j5valid[1]={
false};
2501sj5array[0]=
IKsin(j5array[0]);
2502cj5array[0]=
IKcos(j5array[0]);
2503if( j5array[0] >
IKPI )
2507else if( j5array[0] < -
IKPI )
2511for(
int ij5 = 0; ij5 < 1; ++ij5)
2518for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
2522 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
2525j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
2534IkReal x186=(
sj3*x180);
2536IkReal x188=((1.0)*x181);
2537IkReal x189=((1.0)*x180);
2543evalcond[5]=(x186+
new_r00+(((-1.0)*x181*x185)));
2544evalcond[6]=(((x180*x183))+
new_r11+(((-1.0)*
cj3*x188)));
2545evalcond[7]=(x181+(((-1.0)*
new_r00*x185))+(((-1.0)*x183*x184)));
2546evalcond[8]=(
new_r10+(((-1.0)*x183*x188))+(((-1.0)*
cj3*x189)));
2547evalcond[9]=((((-1.0)*x189))+(((-1.0)*
new_r01*x185))+(((-1.0)*x182*x183)));
2555std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
2556vinfos[0].jointtype = 1;
2557vinfos[0].foffset =
j0;
2558vinfos[0].indices[0] =
_ij0[0];
2559vinfos[0].indices[1] =
_ij0[1];
2560vinfos[0].maxsolutions =
_nj0;
2561vinfos[1].jointtype = 1;
2562vinfos[1].foffset =
j1;
2563vinfos[1].indices[0] =
_ij1[0];
2564vinfos[1].indices[1] =
_ij1[1];
2565vinfos[1].maxsolutions =
_nj1;
2566vinfos[2].jointtype = 1;
2567vinfos[2].foffset =
j2;
2568vinfos[2].indices[0] =
_ij2[0];
2569vinfos[2].indices[1] =
_ij2[1];
2570vinfos[2].maxsolutions =
_nj2;
2571vinfos[3].jointtype = 1;
2572vinfos[3].foffset =
j3;
2573vinfos[3].indices[0] =
_ij3[0];
2574vinfos[3].indices[1] =
_ij3[1];
2575vinfos[3].maxsolutions =
_nj3;
2576vinfos[4].jointtype = 1;
2577vinfos[4].foffset =
j4;
2578vinfos[4].indices[0] =
_ij4[0];
2579vinfos[4].indices[1] =
_ij4[1];
2580vinfos[4].maxsolutions =
_nj4;
2581vinfos[5].jointtype = 1;
2582vinfos[5].foffset =
j5;
2583vinfos[5].indices[0] =
_ij5[0];
2584vinfos[5].indices[1] =
_ij5[1];
2585vinfos[5].maxsolutions =
_nj5;
2586std::vector<int> vfree(0);
2599IkReal j5array[1], cj5array[1], sj5array[1];
2600bool j5valid[1]={
false};
2612j5array[0]=((-1.5707963267949)+(((1.5707963267949)*(x192.
value)))+(x193.
value));
2613sj5array[0]=
IKsin(j5array[0]);
2614cj5array[0]=
IKcos(j5array[0]);
2615if( j5array[0] >
IKPI )
2619else if( j5array[0] < -
IKPI )
2623for(
int ij5 = 0; ij5 < 1; ++ij5)
2630for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
2634 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
2637j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
2646IkReal x200=(
sj3*x194);
2648IkReal x202=((1.0)*x195);
2649IkReal x203=((1.0)*x194);
2655evalcond[5]=((((-1.0)*x195*x199))+x200+
new_r00);
2656evalcond[6]=(((x194*x197))+
new_r11+(((-1.0)*
cj3*x202)));
2657evalcond[7]=((((-1.0)*x197*x198))+x195+(((-1.0)*
new_r00*x199)));
2658evalcond[8]=((((-1.0)*x197*x202))+
new_r10+(((-1.0)*
cj3*x203)));
2659evalcond[9]=((((-1.0)*x196*x197))+(((-1.0)*x203))+(((-1.0)*
new_r01*x199)));
2667std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
2668vinfos[0].jointtype = 1;
2669vinfos[0].foffset =
j0;
2670vinfos[0].indices[0] =
_ij0[0];
2671vinfos[0].indices[1] =
_ij0[1];
2672vinfos[0].maxsolutions =
_nj0;
2673vinfos[1].jointtype = 1;
2674vinfos[1].foffset =
j1;
2675vinfos[1].indices[0] =
_ij1[0];
2676vinfos[1].indices[1] =
_ij1[1];
2677vinfos[1].maxsolutions =
_nj1;
2678vinfos[2].jointtype = 1;
2679vinfos[2].foffset =
j2;
2680vinfos[2].indices[0] =
_ij2[0];
2681vinfos[2].indices[1] =
_ij2[1];
2682vinfos[2].maxsolutions =
_nj2;
2683vinfos[3].jointtype = 1;
2684vinfos[3].foffset =
j3;
2685vinfos[3].indices[0] =
_ij3[0];
2686vinfos[3].indices[1] =
_ij3[1];
2687vinfos[3].maxsolutions =
_nj3;
2688vinfos[4].jointtype = 1;
2689vinfos[4].foffset =
j4;
2690vinfos[4].indices[0] =
_ij4[0];
2691vinfos[4].indices[1] =
_ij4[1];
2692vinfos[4].maxsolutions =
_nj4;
2693vinfos[5].jointtype = 1;
2694vinfos[5].foffset =
j5;
2695vinfos[5].indices[0] =
_ij5[0];
2696vinfos[5].indices[1] =
_ij5[1];
2697vinfos[5].maxsolutions =
_nj5;
2698std::vector<int> vfree(0);
2715if( bgotonextstatement )
2717bool bgotonextstatement =
true;
2722bgotonextstatement=
false;
2727if( bgotonextstatement )
2738IkReal j3array[1], cj3array[1], sj3array[1];
2739bool j3valid[1]={
false};
2745IkReal x204=x205.
value;
2753sj3array[0]=
IKsin(j3array[0]);
2754cj3array[0]=
IKcos(j3array[0]);
2755if( j3array[0] >
IKPI )
2759else if( j3array[0] < -
IKPI )
2763for(
int ij3 = 0; ij3 < 1; ++ij3)
2770for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
2774 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
2777j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
2782IkReal x209=((1.0)*
cj4);
2783IkReal x210=(
sj4*x208);
2785IkReal x212=(
sj4*x207);
2790evalcond[3]=(
sj4+x211+x213);
2794evalcond[7]=((((-1.0)*
new_r22*
sj4))+(((-1.0)*x209*x213))+(((-1.0)*x209*x211)));
2806if(
IKabs(j5eval[0]) < 0.0000010000000000 ||
IKabs(j5eval[1]) < 0.0000010000000000 ||
IKabs(j5eval[2]) < 0.0000010000000000 )
2812if(
IKabs(j5eval[0]) < 0.0000010000000000 ||
IKabs(j5eval[1]) < 0.0000010000000000 )
2818if(
IKabs(j5eval[0]) < 0.0000010000000000 ||
IKabs(j5eval[1]) < 0.0000010000000000 )
2822bool bgotonextstatement =
true;
2825evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(
j4))), 6.28318530717959)));
2830if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 &&
IKabs(evalcond[2]) < 0.0000050000000000 &&
IKabs(evalcond[3]) < 0.0000050000000000 &&
IKabs(evalcond[4]) < 0.0000050000000000 )
2832bgotonextstatement=
false;
2834IkReal j5array[1], cj5array[1], sj5array[1];
2835bool j5valid[1]={
false};
2841sj5array[0]=
IKsin(j5array[0]);
2842cj5array[0]=
IKcos(j5array[0]);
2843if( j5array[0] >
IKPI )
2847else if( j5array[0] < -
IKPI )
2851for(
int ij5 = 0; ij5 < 1; ++ij5)
2858for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
2862 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
2865j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
2870IkReal x217=((1.0)*
cj3);
2871IkReal x218=(
sj3*x215);
2872IkReal x219=((1.0)*x216);
2873IkReal x220=(x216*x217);
2879evalcond[5]=(x218+
new_r00+(((-1.0)*x220)));
2880evalcond[6]=(x218+
new_r11+(((-1.0)*x220)));
2881evalcond[7]=((((-1.0)*
sj3*x219))+
new_r10+(((-1.0)*x215*x217)));
2889std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
2890vinfos[0].jointtype = 1;
2891vinfos[0].foffset =
j0;
2892vinfos[0].indices[0] =
_ij0[0];
2893vinfos[0].indices[1] =
_ij0[1];
2894vinfos[0].maxsolutions =
_nj0;
2895vinfos[1].jointtype = 1;
2896vinfos[1].foffset =
j1;
2897vinfos[1].indices[0] =
_ij1[0];
2898vinfos[1].indices[1] =
_ij1[1];
2899vinfos[1].maxsolutions =
_nj1;
2900vinfos[2].jointtype = 1;
2901vinfos[2].foffset =
j2;
2902vinfos[2].indices[0] =
_ij2[0];
2903vinfos[2].indices[1] =
_ij2[1];
2904vinfos[2].maxsolutions =
_nj2;
2905vinfos[3].jointtype = 1;
2906vinfos[3].foffset =
j3;
2907vinfos[3].indices[0] =
_ij3[0];
2908vinfos[3].indices[1] =
_ij3[1];
2909vinfos[3].maxsolutions =
_nj3;
2910vinfos[4].jointtype = 1;
2911vinfos[4].foffset =
j4;
2912vinfos[4].indices[0] =
_ij4[0];
2913vinfos[4].indices[1] =
_ij4[1];
2914vinfos[4].maxsolutions =
_nj4;
2915vinfos[5].jointtype = 1;
2916vinfos[5].foffset =
j5;
2917vinfos[5].indices[0] =
_ij5[0];
2918vinfos[5].indices[1] =
_ij5[1];
2919vinfos[5].maxsolutions =
_nj5;
2920std::vector<int> vfree(0);
2928if( bgotonextstatement )
2930bool bgotonextstatement =
true;
2933evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-3.14159265358979)+
j4)))), 6.28318530717959)));
2938if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 &&
IKabs(evalcond[2]) < 0.0000050000000000 &&
IKabs(evalcond[3]) < 0.0000050000000000 &&
IKabs(evalcond[4]) < 0.0000050000000000 )
2940bgotonextstatement=
false;
2942IkReal j5array[1], cj5array[1], sj5array[1];
2943bool j5valid[1]={
false};
2945IkReal x221=((1.0)*
sj3);
2949sj5array[0]=
IKsin(j5array[0]);
2950cj5array[0]=
IKcos(j5array[0]);
2951if( j5array[0] >
IKPI )
2955else if( j5array[0] < -
IKPI )
2959for(
int ij5 = 0; ij5 < 1; ++ij5)
2966for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
2970 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
2973j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
2978IkReal x224=((1.0)*
cj3);
2979IkReal x225=(
sj3*x222);
2980IkReal x226=((1.0)*x223);
2981IkReal x227=(x223*x224);
2987evalcond[5]=(x225+
new_r01+(((-1.0)*x227)));
2988evalcond[6]=(x225+
new_r10+(((-1.0)*x227)));
2989evalcond[7]=((((-1.0)*x222*x224))+(((-1.0)*
sj3*x226))+
new_r11);
2997std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
2998vinfos[0].jointtype = 1;
2999vinfos[0].foffset =
j0;
3000vinfos[0].indices[0] =
_ij0[0];
3001vinfos[0].indices[1] =
_ij0[1];
3002vinfos[0].maxsolutions =
_nj0;
3003vinfos[1].jointtype = 1;
3004vinfos[1].foffset =
j1;
3005vinfos[1].indices[0] =
_ij1[0];
3006vinfos[1].indices[1] =
_ij1[1];
3007vinfos[1].maxsolutions =
_nj1;
3008vinfos[2].jointtype = 1;
3009vinfos[2].foffset =
j2;
3010vinfos[2].indices[0] =
_ij2[0];
3011vinfos[2].indices[1] =
_ij2[1];
3012vinfos[2].maxsolutions =
_nj2;
3013vinfos[3].jointtype = 1;
3014vinfos[3].foffset =
j3;
3015vinfos[3].indices[0] =
_ij3[0];
3016vinfos[3].indices[1] =
_ij3[1];
3017vinfos[3].maxsolutions =
_nj3;
3018vinfos[4].jointtype = 1;
3019vinfos[4].foffset =
j4;
3020vinfos[4].indices[0] =
_ij4[0];
3021vinfos[4].indices[1] =
_ij4[1];
3022vinfos[4].maxsolutions =
_nj4;
3023vinfos[5].jointtype = 1;
3024vinfos[5].foffset =
j5;
3025vinfos[5].indices[0] =
_ij5[0];
3026vinfos[5].indices[1] =
_ij5[1];
3027vinfos[5].maxsolutions =
_nj5;
3028std::vector<int> vfree(0);
3036if( bgotonextstatement )
3038bool bgotonextstatement =
true;
3041evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-1.5707963267949)+
j3)))), 6.28318530717959)));
3043if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 )
3045bgotonextstatement=
false;
3047IkReal j5array[1], cj5array[1], sj5array[1];
3048bool j5valid[1]={
false};
3053sj5array[0]=
IKsin(j5array[0]);
3054cj5array[0]=
IKcos(j5array[0]);
3055if( j5array[0] >
IKPI )
3059else if( j5array[0] < -
IKPI )
3063for(
int ij5 = 0; ij5 < 1; ++ij5)
3070for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
3074 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
3077j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
3082IkReal x230=((1.0)*
cj4);
3083IkReal x231=((1.0)*
sj4);
3088evalcond[4]=(
new_r20+(((-1.0)*x229*x231)));
3089evalcond[5]=(
new_r10+(((-1.0)*x229*x230)));
3090evalcond[6]=((((-1.0)*
new_r20*x231))+x229+(((-1.0)*
new_r10*x230)));
3091evalcond[7]=((((-1.0)*
new_r21*x231))+(((-1.0)*
new_r11*x230))+(((-1.0)*x228)));
3099std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
3100vinfos[0].jointtype = 1;
3101vinfos[0].foffset =
j0;
3102vinfos[0].indices[0] =
_ij0[0];
3103vinfos[0].indices[1] =
_ij0[1];
3104vinfos[0].maxsolutions =
_nj0;
3105vinfos[1].jointtype = 1;
3106vinfos[1].foffset =
j1;
3107vinfos[1].indices[0] =
_ij1[0];
3108vinfos[1].indices[1] =
_ij1[1];
3109vinfos[1].maxsolutions =
_nj1;
3110vinfos[2].jointtype = 1;
3111vinfos[2].foffset =
j2;
3112vinfos[2].indices[0] =
_ij2[0];
3113vinfos[2].indices[1] =
_ij2[1];
3114vinfos[2].maxsolutions =
_nj2;
3115vinfos[3].jointtype = 1;
3116vinfos[3].foffset =
j3;
3117vinfos[3].indices[0] =
_ij3[0];
3118vinfos[3].indices[1] =
_ij3[1];
3119vinfos[3].maxsolutions =
_nj3;
3120vinfos[4].jointtype = 1;
3121vinfos[4].foffset =
j4;
3122vinfos[4].indices[0] =
_ij4[0];
3123vinfos[4].indices[1] =
_ij4[1];
3124vinfos[4].maxsolutions =
_nj4;
3125vinfos[5].jointtype = 1;
3126vinfos[5].foffset =
j5;
3127vinfos[5].indices[0] =
_ij5[0];
3128vinfos[5].indices[1] =
_ij5[1];
3129vinfos[5].maxsolutions =
_nj5;
3130std::vector<int> vfree(0);
3138if( bgotonextstatement )
3140bool bgotonextstatement =
true;
3143evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((1.5707963267949)+
j3)))), 6.28318530717959)));
3145if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 )
3147bgotonextstatement=
false;
3149IkReal j5array[1], cj5array[1], sj5array[1];
3150bool j5valid[1]={
false};
3155sj5array[0]=
IKsin(j5array[0]);
3156cj5array[0]=
IKcos(j5array[0]);
3157if( j5array[0] >
IKPI )
3161else if( j5array[0] < -
IKPI )
3165for(
int ij5 = 0; ij5 < 1; ++ij5)
3172for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
3176 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
3179j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
3184IkReal x234=((1.0)*
sj4);
3185IkReal x235=((1.0)*x233);
3187evalcond[1]=(x232+(((-1.0)*
new_r00)));
3188evalcond[2]=(x233+(((-1.0)*
new_r01)));
3189evalcond[3]=((((-1.0)*x233*x234))+
new_r20);
3190evalcond[4]=(((
cj4*x232))+(((-1.0)*
new_r11)));
3191evalcond[5]=((((-1.0)*
cj4*x235))+(((-1.0)*
new_r10)));
3201std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
3202vinfos[0].jointtype = 1;
3203vinfos[0].foffset =
j0;
3204vinfos[0].indices[0] =
_ij0[0];
3205vinfos[0].indices[1] =
_ij0[1];
3206vinfos[0].maxsolutions =
_nj0;
3207vinfos[1].jointtype = 1;
3208vinfos[1].foffset =
j1;
3209vinfos[1].indices[0] =
_ij1[0];
3210vinfos[1].indices[1] =
_ij1[1];
3211vinfos[1].maxsolutions =
_nj1;
3212vinfos[2].jointtype = 1;
3213vinfos[2].foffset =
j2;
3214vinfos[2].indices[0] =
_ij2[0];
3215vinfos[2].indices[1] =
_ij2[1];
3216vinfos[2].maxsolutions =
_nj2;
3217vinfos[3].jointtype = 1;
3218vinfos[3].foffset =
j3;
3219vinfos[3].indices[0] =
_ij3[0];
3220vinfos[3].indices[1] =
_ij3[1];
3221vinfos[3].maxsolutions =
_nj3;
3222vinfos[4].jointtype = 1;
3223vinfos[4].foffset =
j4;
3224vinfos[4].indices[0] =
_ij4[0];
3225vinfos[4].indices[1] =
_ij4[1];
3226vinfos[4].maxsolutions =
_nj4;
3227vinfos[5].jointtype = 1;
3228vinfos[5].foffset =
j5;
3229vinfos[5].indices[0] =
_ij5[0];
3230vinfos[5].indices[1] =
_ij5[1];
3231vinfos[5].maxsolutions =
_nj5;
3232std::vector<int> vfree(0);
3240if( bgotonextstatement )
3242bool bgotonextstatement =
true;
3245evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(
j3))), 6.28318530717959)));
3247if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 )
3249bgotonextstatement=
false;
3251IkReal j5array[1], cj5array[1], sj5array[1];
3252bool j5valid[1]={
false};
3257sj5array[0]=
IKsin(j5array[0]);
3258cj5array[0]=
IKcos(j5array[0]);
3259if( j5array[0] >
IKPI )
3263else if( j5array[0] < -
IKPI )
3267for(
int ij5 = 0; ij5 < 1; ++ij5)
3274for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
3278 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
3281j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
3286IkReal x238=((1.0)*
cj4);
3287IkReal x239=((1.0)*
sj4);
3288IkReal x240=((1.0)*x237);
3290evalcond[1]=(x237+(((-1.0)*
new_r10)));
3291evalcond[2]=(x236+(((-1.0)*
new_r11)));
3294evalcond[5]=((((-1.0)*x236*x238))+
new_r00);
3295evalcond[6]=((((-1.0)*
new_r20*x239))+x236+(((-1.0)*
new_r00*x238)));
3296evalcond[7]=((((-1.0)*
new_r21*x239))+(((-1.0)*x240))+(((-1.0)*
new_r01*x238)));
3304std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
3305vinfos[0].jointtype = 1;
3306vinfos[0].foffset =
j0;
3307vinfos[0].indices[0] =
_ij0[0];
3308vinfos[0].indices[1] =
_ij0[1];
3309vinfos[0].maxsolutions =
_nj0;
3310vinfos[1].jointtype = 1;
3311vinfos[1].foffset =
j1;
3312vinfos[1].indices[0] =
_ij1[0];
3313vinfos[1].indices[1] =
_ij1[1];
3314vinfos[1].maxsolutions =
_nj1;
3315vinfos[2].jointtype = 1;
3316vinfos[2].foffset =
j2;
3317vinfos[2].indices[0] =
_ij2[0];
3318vinfos[2].indices[1] =
_ij2[1];
3319vinfos[2].maxsolutions =
_nj2;
3320vinfos[3].jointtype = 1;
3321vinfos[3].foffset =
j3;
3322vinfos[3].indices[0] =
_ij3[0];
3323vinfos[3].indices[1] =
_ij3[1];
3324vinfos[3].maxsolutions =
_nj3;
3325vinfos[4].jointtype = 1;
3326vinfos[4].foffset =
j4;
3327vinfos[4].indices[0] =
_ij4[0];
3328vinfos[4].indices[1] =
_ij4[1];
3329vinfos[4].maxsolutions =
_nj4;
3330vinfos[5].jointtype = 1;
3331vinfos[5].foffset =
j5;
3332vinfos[5].indices[0] =
_ij5[0];
3333vinfos[5].indices[1] =
_ij5[1];
3334vinfos[5].maxsolutions =
_nj5;
3335std::vector<int> vfree(0);
3343if( bgotonextstatement )
3345bool bgotonextstatement =
true;
3348evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-3.14159265358979)+
j3)))), 6.28318530717959)));
3350if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 )
3352bgotonextstatement=
false;
3354IkReal j5array[1], cj5array[1], sj5array[1];
3355bool j5valid[1]={
false};
3360sj5array[0]=
IKsin(j5array[0]);
3361cj5array[0]=
IKcos(j5array[0]);
3362if( j5array[0] >
IKPI )
3366else if( j5array[0] < -
IKPI )
3370for(
int ij5 = 0; ij5 < 1; ++ij5)
3377for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
3381 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
3384j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
3389IkReal x243=((1.0)*
sj4);
3390IkReal x244=((1.0)*x242);
3395evalcond[4]=(((
cj4*x241))+(((-1.0)*
new_r01)));
3396evalcond[5]=((((-1.0)*
cj4*x244))+(((-1.0)*
new_r00)));
3406std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
3407vinfos[0].jointtype = 1;
3408vinfos[0].foffset =
j0;
3409vinfos[0].indices[0] =
_ij0[0];
3410vinfos[0].indices[1] =
_ij0[1];
3411vinfos[0].maxsolutions =
_nj0;
3412vinfos[1].jointtype = 1;
3413vinfos[1].foffset =
j1;
3414vinfos[1].indices[0] =
_ij1[0];
3415vinfos[1].indices[1] =
_ij1[1];
3416vinfos[1].maxsolutions =
_nj1;
3417vinfos[2].jointtype = 1;
3418vinfos[2].foffset =
j2;
3419vinfos[2].indices[0] =
_ij2[0];
3420vinfos[2].indices[1] =
_ij2[1];
3421vinfos[2].maxsolutions =
_nj2;
3422vinfos[3].jointtype = 1;
3423vinfos[3].foffset =
j3;
3424vinfos[3].indices[0] =
_ij3[0];
3425vinfos[3].indices[1] =
_ij3[1];
3426vinfos[3].maxsolutions =
_nj3;
3427vinfos[4].jointtype = 1;
3428vinfos[4].foffset =
j4;
3429vinfos[4].indices[0] =
_ij4[0];
3430vinfos[4].indices[1] =
_ij4[1];
3431vinfos[4].maxsolutions =
_nj4;
3432vinfos[5].jointtype = 1;
3433vinfos[5].foffset =
j5;
3434vinfos[5].indices[0] =
_ij5[0];
3435vinfos[5].indices[1] =
_ij5[1];
3436vinfos[5].maxsolutions =
_nj5;
3437std::vector<int> vfree(0);
3445if( bgotonextstatement )
3447bool bgotonextstatement =
true;
3451if(
IKabs(evalcond[0]) < 0.0000050000000000 )
3453bgotonextstatement=
false;
3461if(
IKabs(j5eval[0]) < 0.0000000100000000 )
3467IkReal op[2+1], zeror[2];
3473IkReal j5array[2], cj5array[2], sj5array[2], tempj5array[1];
3474int numsolutions = 0;
3475for(
int ij5 = 0; ij5 < numroots; ++ij5)
3477IkReal
htj5 = zeror[ij5];
3478tempj5array[0]=((2.0)*(atan(
htj5)));
3479for(
int kj5 = 0; kj5 < 1; ++kj5)
3481j5array[numsolutions] = tempj5array[kj5];
3482if( j5array[numsolutions] >
IKPI )
3484 j5array[numsolutions]-=
IK2PI;
3486else if( j5array[numsolutions] < -
IKPI )
3488 j5array[numsolutions]+=
IK2PI;
3490sj5array[numsolutions] =
IKsin(j5array[numsolutions]);
3491cj5array[numsolutions] =
IKcos(j5array[numsolutions]);
3495bool j5valid[2]={
true,
true};
3497for(
int ij5 = 0; ij5 < numsolutions; ++ij5)
3503 j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
3507for(
int iij5 = ij5+1; iij5 < numsolutions; ++iij5)
3511 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
3515std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
3516vinfos[0].jointtype = 1;
3517vinfos[0].foffset =
j0;
3518vinfos[0].indices[0] =
_ij0[0];
3519vinfos[0].indices[1] =
_ij0[1];
3520vinfos[0].maxsolutions =
_nj0;
3521vinfos[1].jointtype = 1;
3522vinfos[1].foffset =
j1;
3523vinfos[1].indices[0] =
_ij1[0];
3524vinfos[1].indices[1] =
_ij1[1];
3525vinfos[1].maxsolutions =
_nj1;
3526vinfos[2].jointtype = 1;
3527vinfos[2].foffset =
j2;
3528vinfos[2].indices[0] =
_ij2[0];
3529vinfos[2].indices[1] =
_ij2[1];
3530vinfos[2].maxsolutions =
_nj2;
3531vinfos[3].jointtype = 1;
3532vinfos[3].foffset =
j3;
3533vinfos[3].indices[0] =
_ij3[0];
3534vinfos[3].indices[1] =
_ij3[1];
3535vinfos[3].maxsolutions =
_nj3;
3536vinfos[4].jointtype = 1;
3537vinfos[4].foffset =
j4;
3538vinfos[4].indices[0] =
_ij4[0];
3539vinfos[4].indices[1] =
_ij4[1];
3540vinfos[4].maxsolutions =
_nj4;
3541vinfos[5].jointtype = 1;
3542vinfos[5].foffset =
j5;
3543vinfos[5].indices[0] =
_ij5[0];
3544vinfos[5].indices[1] =
_ij5[1];
3545vinfos[5].maxsolutions =
_nj5;
3546std::vector<int> vfree(0);
3557if( bgotonextstatement )
3559bool bgotonextstatement =
true;
3564bgotonextstatement=
false;
3569if( bgotonextstatement )
3584IkReal j5array[1], cj5array[1], sj5array[1];
3585bool j5valid[1]={
false};
3591IkReal x245=x246.
value;
3599sj5array[0]=
IKsin(j5array[0]);
3600cj5array[0]=
IKcos(j5array[0]);
3601if( j5array[0] >
IKPI )
3605else if( j5array[0] < -
IKPI )
3609for(
int ij5 = 0; ij5 < 1; ++ij5)
3616for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
3620 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
3623j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
3630IkReal x252=((1.0)*
cj3);
3632IkReal x254=((1.0)*
cj4);
3634IkReal x256=((1.0)*
sj4);
3635IkReal x257=(
sj3*x248);
3636IkReal x258=((1.0)*x249);
3637IkReal x259=(
sj3*x249);
3639evalcond[1]=((((-1.0)*x249*x256))+
new_r20);
3643evalcond[5]=(((x248*x251))+x259+
new_r01);
3644evalcond[6]=(x255+x250+(((-1.0)*x249*x254)));
3645evalcond[7]=((((-1.0)*x251*x258))+x257+
new_r00);
3646evalcond[8]=((((-1.0)*x249*x252))+
new_r11+((
cj4*x257)));
3647evalcond[9]=((((-1.0)*x254*x259))+(((-1.0)*x248*x252))+
new_r10);
3648evalcond[10]=((((-1.0)*x250*x254))+(((-1.0)*x254*x255))+x249+(((-1.0)*
new_r20*x256)));
3649evalcond[11]=((((-1.0)*
new_r21*x256))+(((-1.0)*x248))+(((-1.0)*x253*x254))+(((-1.0)*
new_r01*x251)));
3657std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
3658vinfos[0].jointtype = 1;
3659vinfos[0].foffset =
j0;
3660vinfos[0].indices[0] =
_ij0[0];
3661vinfos[0].indices[1] =
_ij0[1];
3662vinfos[0].maxsolutions =
_nj0;
3663vinfos[1].jointtype = 1;
3664vinfos[1].foffset =
j1;
3665vinfos[1].indices[0] =
_ij1[0];
3666vinfos[1].indices[1] =
_ij1[1];
3667vinfos[1].maxsolutions =
_nj1;
3668vinfos[2].jointtype = 1;
3669vinfos[2].foffset =
j2;
3670vinfos[2].indices[0] =
_ij2[0];
3671vinfos[2].indices[1] =
_ij2[1];
3672vinfos[2].maxsolutions =
_nj2;
3673vinfos[3].jointtype = 1;
3674vinfos[3].foffset =
j3;
3675vinfos[3].indices[0] =
_ij3[0];
3676vinfos[3].indices[1] =
_ij3[1];
3677vinfos[3].maxsolutions =
_nj3;
3678vinfos[4].jointtype = 1;
3679vinfos[4].foffset =
j4;
3680vinfos[4].indices[0] =
_ij4[0];
3681vinfos[4].indices[1] =
_ij4[1];
3682vinfos[4].maxsolutions =
_nj4;
3683vinfos[5].jointtype = 1;
3684vinfos[5].foffset =
j5;
3685vinfos[5].indices[0] =
_ij5[0];
3686vinfos[5].indices[1] =
_ij5[1];
3687vinfos[5].maxsolutions =
_nj5;
3688std::vector<int> vfree(0);
3701IkReal j5array[1], cj5array[1], sj5array[1];
3702bool j5valid[1]={
false};
3708IkReal x260=x261.
value;
3716sj5array[0]=
IKsin(j5array[0]);
3717cj5array[0]=
IKcos(j5array[0]);
3718if( j5array[0] >
IKPI )
3722else if( j5array[0] < -
IKPI )
3726for(
int ij5 = 0; ij5 < 1; ++ij5)
3733for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
3737 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
3740j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
3747IkReal x267=((1.0)*
cj3);
3749IkReal x269=((1.0)*
cj4);
3751IkReal x271=((1.0)*
sj4);
3752IkReal x272=(
sj3*x263);
3753IkReal x273=((1.0)*x264);
3754IkReal x274=(
sj3*x264);
3756evalcond[1]=(
new_r20+(((-1.0)*x264*x271)));
3760evalcond[5]=(((x263*x266))+x274+
new_r01);
3761evalcond[6]=(x265+x270+(((-1.0)*x264*x269)));
3762evalcond[7]=(x272+(((-1.0)*x266*x273))+
new_r00);
3763evalcond[8]=(((
cj4*x272))+
new_r11+(((-1.0)*x264*x267)));
3764evalcond[9]=((((-1.0)*x263*x267))+(((-1.0)*x269*x274))+
new_r10);
3765evalcond[10]=((((-1.0)*x269*x270))+x264+(((-1.0)*
new_r20*x271))+(((-1.0)*x265*x269)));
3766evalcond[11]=((((-1.0)*x263))+(((-1.0)*
new_r01*x266))+(((-1.0)*
new_r21*x271))+(((-1.0)*x268*x269)));
3774std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
3775vinfos[0].jointtype = 1;
3776vinfos[0].foffset =
j0;
3777vinfos[0].indices[0] =
_ij0[0];
3778vinfos[0].indices[1] =
_ij0[1];
3779vinfos[0].maxsolutions =
_nj0;
3780vinfos[1].jointtype = 1;
3781vinfos[1].foffset =
j1;
3782vinfos[1].indices[0] =
_ij1[0];
3783vinfos[1].indices[1] =
_ij1[1];
3784vinfos[1].maxsolutions =
_nj1;
3785vinfos[2].jointtype = 1;
3786vinfos[2].foffset =
j2;
3787vinfos[2].indices[0] =
_ij2[0];
3788vinfos[2].indices[1] =
_ij2[1];
3789vinfos[2].maxsolutions =
_nj2;
3790vinfos[3].jointtype = 1;
3791vinfos[3].foffset =
j3;
3792vinfos[3].indices[0] =
_ij3[0];
3793vinfos[3].indices[1] =
_ij3[1];
3794vinfos[3].maxsolutions =
_nj3;
3795vinfos[4].jointtype = 1;
3796vinfos[4].foffset =
j4;
3797vinfos[4].indices[0] =
_ij4[0];
3798vinfos[4].indices[1] =
_ij4[1];
3799vinfos[4].maxsolutions =
_nj4;
3800vinfos[5].jointtype = 1;
3801vinfos[5].foffset =
j5;
3802vinfos[5].indices[0] =
_ij5[0];
3803vinfos[5].indices[1] =
_ij5[1];
3804vinfos[5].maxsolutions =
_nj5;
3805std::vector<int> vfree(0);
3818IkReal j5array[1], cj5array[1], sj5array[1];
3819bool j5valid[1]={
false};
3829j5array[0]=((-1.5707963267949)+(x275.
value)+(((1.5707963267949)*(x276.
value))));
3830sj5array[0]=
IKsin(j5array[0]);
3831cj5array[0]=
IKcos(j5array[0]);
3832if( j5array[0] >
IKPI )
3836else if( j5array[0] < -
IKPI )
3840for(
int ij5 = 0; ij5 < 1; ++ij5)
3847for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
3851 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
3854j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
3861IkReal x281=((1.0)*
cj3);
3863IkReal x283=((1.0)*
cj4);
3865IkReal x285=((1.0)*
sj4);
3866IkReal x286=(
sj3*x277);
3867IkReal x287=((1.0)*x278);
3868IkReal x288=(
sj3*x278);
3870evalcond[1]=(
new_r20+(((-1.0)*x278*x285)));
3874evalcond[5]=(x288+
new_r01+((x277*x280)));
3875evalcond[6]=(x279+x284+(((-1.0)*x278*x283)));
3876evalcond[7]=((((-1.0)*x280*x287))+x286+
new_r00);
3877evalcond[8]=(
new_r11+((
cj4*x286))+(((-1.0)*x278*x281)));
3878evalcond[9]=((((-1.0)*x277*x281))+
new_r10+(((-1.0)*x283*x288)));
3879evalcond[10]=(x278+(((-1.0)*
new_r20*x285))+(((-1.0)*x279*x283))+(((-1.0)*x283*x284)));
3880evalcond[11]=((((-1.0)*x277))+(((-1.0)*x282*x283))+(((-1.0)*
new_r01*x280))+(((-1.0)*
new_r21*x285)));
3888std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
3889vinfos[0].jointtype = 1;
3890vinfos[0].foffset =
j0;
3891vinfos[0].indices[0] =
_ij0[0];
3892vinfos[0].indices[1] =
_ij0[1];
3893vinfos[0].maxsolutions =
_nj0;
3894vinfos[1].jointtype = 1;
3895vinfos[1].foffset =
j1;
3896vinfos[1].indices[0] =
_ij1[0];
3897vinfos[1].indices[1] =
_ij1[1];
3898vinfos[1].maxsolutions =
_nj1;
3899vinfos[2].jointtype = 1;
3900vinfos[2].foffset =
j2;
3901vinfos[2].indices[0] =
_ij2[0];
3902vinfos[2].indices[1] =
_ij2[1];
3903vinfos[2].maxsolutions =
_nj2;
3904vinfos[3].jointtype = 1;
3905vinfos[3].foffset =
j3;
3906vinfos[3].indices[0] =
_ij3[0];
3907vinfos[3].indices[1] =
_ij3[1];
3908vinfos[3].maxsolutions =
_nj3;
3909vinfos[4].jointtype = 1;
3910vinfos[4].foffset =
j4;
3911vinfos[4].indices[0] =
_ij4[0];
3912vinfos[4].indices[1] =
_ij4[1];
3913vinfos[4].maxsolutions =
_nj4;
3914vinfos[5].jointtype = 1;
3915vinfos[5].foffset =
j5;
3916vinfos[5].indices[0] =
_ij5[0];
3917vinfos[5].indices[1] =
_ij5[1];
3918vinfos[5].maxsolutions =
_nj5;
3919std::vector<int> vfree(0);
3938IkReal j3array[1], cj3array[1], sj3array[1];
3939bool j3valid[1]={
false};
3949j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x289.
value)))+(x290.
value));
3950sj3array[0]=
IKsin(j3array[0]);
3951cj3array[0]=
IKcos(j3array[0]);
3952if( j3array[0] >
IKPI )
3956else if( j3array[0] < -
IKPI )
3960for(
int ij3 = 0; ij3 < 1; ++ij3)
3967for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
3971 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
3974j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
3979IkReal x293=((1.0)*
cj4);
3980IkReal x294=(
sj4*x292);
3982IkReal x296=(
sj4*x291);
3987evalcond[3]=(
sj4+x295+x297);
3991evalcond[7]=((((-1.0)*x293*x297))+(((-1.0)*x293*x295))+(((-1.0)*
new_r22*
sj4)));
4003if(
IKabs(j5eval[0]) < 0.0000010000000000 ||
IKabs(j5eval[1]) < 0.0000010000000000 ||
IKabs(j5eval[2]) < 0.0000010000000000 )
4009if(
IKabs(j5eval[0]) < 0.0000010000000000 ||
IKabs(j5eval[1]) < 0.0000010000000000 )
4015if(
IKabs(j5eval[0]) < 0.0000010000000000 ||
IKabs(j5eval[1]) < 0.0000010000000000 )
4019bool bgotonextstatement =
true;
4022evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(
j4))), 6.28318530717959)));
4027if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 &&
IKabs(evalcond[2]) < 0.0000050000000000 &&
IKabs(evalcond[3]) < 0.0000050000000000 &&
IKabs(evalcond[4]) < 0.0000050000000000 )
4029bgotonextstatement=
false;
4031IkReal j5array[1], cj5array[1], sj5array[1];
4032bool j5valid[1]={
false};
4038sj5array[0]=
IKsin(j5array[0]);
4039cj5array[0]=
IKcos(j5array[0]);
4040if( j5array[0] >
IKPI )
4044else if( j5array[0] < -
IKPI )
4048for(
int ij5 = 0; ij5 < 1; ++ij5)
4055for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
4059 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
4062j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
4067IkReal x301=((1.0)*
cj3);
4068IkReal x302=(
sj3*x299);
4069IkReal x303=((1.0)*x300);
4070IkReal x304=(x300*x301);
4076evalcond[5]=(x302+
new_r00+(((-1.0)*x304)));
4077evalcond[6]=(x302+
new_r11+(((-1.0)*x304)));
4078evalcond[7]=((((-1.0)*
sj3*x303))+(((-1.0)*x299*x301))+
new_r10);
4086std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
4087vinfos[0].jointtype = 1;
4088vinfos[0].foffset =
j0;
4089vinfos[0].indices[0] =
_ij0[0];
4090vinfos[0].indices[1] =
_ij0[1];
4091vinfos[0].maxsolutions =
_nj0;
4092vinfos[1].jointtype = 1;
4093vinfos[1].foffset =
j1;
4094vinfos[1].indices[0] =
_ij1[0];
4095vinfos[1].indices[1] =
_ij1[1];
4096vinfos[1].maxsolutions =
_nj1;
4097vinfos[2].jointtype = 1;
4098vinfos[2].foffset =
j2;
4099vinfos[2].indices[0] =
_ij2[0];
4100vinfos[2].indices[1] =
_ij2[1];
4101vinfos[2].maxsolutions =
_nj2;
4102vinfos[3].jointtype = 1;
4103vinfos[3].foffset =
j3;
4104vinfos[3].indices[0] =
_ij3[0];
4105vinfos[3].indices[1] =
_ij3[1];
4106vinfos[3].maxsolutions =
_nj3;
4107vinfos[4].jointtype = 1;
4108vinfos[4].foffset =
j4;
4109vinfos[4].indices[0] =
_ij4[0];
4110vinfos[4].indices[1] =
_ij4[1];
4111vinfos[4].maxsolutions =
_nj4;
4112vinfos[5].jointtype = 1;
4113vinfos[5].foffset =
j5;
4114vinfos[5].indices[0] =
_ij5[0];
4115vinfos[5].indices[1] =
_ij5[1];
4116vinfos[5].maxsolutions =
_nj5;
4117std::vector<int> vfree(0);
4125if( bgotonextstatement )
4127bool bgotonextstatement =
true;
4130evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-3.14159265358979)+
j4)))), 6.28318530717959)));
4135if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 &&
IKabs(evalcond[2]) < 0.0000050000000000 &&
IKabs(evalcond[3]) < 0.0000050000000000 &&
IKabs(evalcond[4]) < 0.0000050000000000 )
4137bgotonextstatement=
false;
4139IkReal j5array[1], cj5array[1], sj5array[1];
4140bool j5valid[1]={
false};
4142IkReal x305=((1.0)*
sj3);
4146sj5array[0]=
IKsin(j5array[0]);
4147cj5array[0]=
IKcos(j5array[0]);
4148if( j5array[0] >
IKPI )
4152else if( j5array[0] < -
IKPI )
4156for(
int ij5 = 0; ij5 < 1; ++ij5)
4163for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
4167 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
4170j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
4175IkReal x308=((1.0)*
cj3);
4176IkReal x309=(
sj3*x306);
4177IkReal x310=((1.0)*x307);
4178IkReal x311=(x307*x308);
4184evalcond[5]=(x309+(((-1.0)*x311))+
new_r01);
4185evalcond[6]=(x309+(((-1.0)*x311))+
new_r10);
4186evalcond[7]=((((-1.0)*
sj3*x310))+(((-1.0)*x306*x308))+
new_r11);
4194std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
4195vinfos[0].jointtype = 1;
4196vinfos[0].foffset =
j0;
4197vinfos[0].indices[0] =
_ij0[0];
4198vinfos[0].indices[1] =
_ij0[1];
4199vinfos[0].maxsolutions =
_nj0;
4200vinfos[1].jointtype = 1;
4201vinfos[1].foffset =
j1;
4202vinfos[1].indices[0] =
_ij1[0];
4203vinfos[1].indices[1] =
_ij1[1];
4204vinfos[1].maxsolutions =
_nj1;
4205vinfos[2].jointtype = 1;
4206vinfos[2].foffset =
j2;
4207vinfos[2].indices[0] =
_ij2[0];
4208vinfos[2].indices[1] =
_ij2[1];
4209vinfos[2].maxsolutions =
_nj2;
4210vinfos[3].jointtype = 1;
4211vinfos[3].foffset =
j3;
4212vinfos[3].indices[0] =
_ij3[0];
4213vinfos[3].indices[1] =
_ij3[1];
4214vinfos[3].maxsolutions =
_nj3;
4215vinfos[4].jointtype = 1;
4216vinfos[4].foffset =
j4;
4217vinfos[4].indices[0] =
_ij4[0];
4218vinfos[4].indices[1] =
_ij4[1];
4219vinfos[4].maxsolutions =
_nj4;
4220vinfos[5].jointtype = 1;
4221vinfos[5].foffset =
j5;
4222vinfos[5].indices[0] =
_ij5[0];
4223vinfos[5].indices[1] =
_ij5[1];
4224vinfos[5].maxsolutions =
_nj5;
4225std::vector<int> vfree(0);
4233if( bgotonextstatement )
4235bool bgotonextstatement =
true;
4238evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-1.5707963267949)+
j3)))), 6.28318530717959)));
4240if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 )
4242bgotonextstatement=
false;
4244IkReal j5array[1], cj5array[1], sj5array[1];
4245bool j5valid[1]={
false};
4250sj5array[0]=
IKsin(j5array[0]);
4251cj5array[0]=
IKcos(j5array[0]);
4252if( j5array[0] >
IKPI )
4256else if( j5array[0] < -
IKPI )
4260for(
int ij5 = 0; ij5 < 1; ++ij5)
4267for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
4271 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
4274j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
4279IkReal x314=((1.0)*
cj4);
4280IkReal x315=((1.0)*
sj4);
4285evalcond[4]=((((-1.0)*x313*x315))+
new_r20);
4286evalcond[5]=((((-1.0)*x313*x314))+
new_r10);
4287evalcond[6]=((((-1.0)*
new_r20*x315))+x313+(((-1.0)*
new_r10*x314)));
4288evalcond[7]=((((-1.0)*
new_r21*x315))+(((-1.0)*
new_r11*x314))+(((-1.0)*x312)));
4296std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
4297vinfos[0].jointtype = 1;
4298vinfos[0].foffset =
j0;
4299vinfos[0].indices[0] =
_ij0[0];
4300vinfos[0].indices[1] =
_ij0[1];
4301vinfos[0].maxsolutions =
_nj0;
4302vinfos[1].jointtype = 1;
4303vinfos[1].foffset =
j1;
4304vinfos[1].indices[0] =
_ij1[0];
4305vinfos[1].indices[1] =
_ij1[1];
4306vinfos[1].maxsolutions =
_nj1;
4307vinfos[2].jointtype = 1;
4308vinfos[2].foffset =
j2;
4309vinfos[2].indices[0] =
_ij2[0];
4310vinfos[2].indices[1] =
_ij2[1];
4311vinfos[2].maxsolutions =
_nj2;
4312vinfos[3].jointtype = 1;
4313vinfos[3].foffset =
j3;
4314vinfos[3].indices[0] =
_ij3[0];
4315vinfos[3].indices[1] =
_ij3[1];
4316vinfos[3].maxsolutions =
_nj3;
4317vinfos[4].jointtype = 1;
4318vinfos[4].foffset =
j4;
4319vinfos[4].indices[0] =
_ij4[0];
4320vinfos[4].indices[1] =
_ij4[1];
4321vinfos[4].maxsolutions =
_nj4;
4322vinfos[5].jointtype = 1;
4323vinfos[5].foffset =
j5;
4324vinfos[5].indices[0] =
_ij5[0];
4325vinfos[5].indices[1] =
_ij5[1];
4326vinfos[5].maxsolutions =
_nj5;
4327std::vector<int> vfree(0);
4335if( bgotonextstatement )
4337bool bgotonextstatement =
true;
4340evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((1.5707963267949)+
j3)))), 6.28318530717959)));
4342if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 )
4344bgotonextstatement=
false;
4346IkReal j5array[1], cj5array[1], sj5array[1];
4347bool j5valid[1]={
false};
4352sj5array[0]=
IKsin(j5array[0]);
4353cj5array[0]=
IKcos(j5array[0]);
4354if( j5array[0] >
IKPI )
4358else if( j5array[0] < -
IKPI )
4362for(
int ij5 = 0; ij5 < 1; ++ij5)
4369for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
4373 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
4376j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
4381IkReal x318=((1.0)*
sj4);
4382IkReal x319=((1.0)*x317);
4384evalcond[1]=(x316+(((-1.0)*
new_r00)));
4385evalcond[2]=(x317+(((-1.0)*
new_r01)));
4386evalcond[3]=(
new_r20+(((-1.0)*x317*x318)));
4387evalcond[4]=(((
cj4*x316))+(((-1.0)*
new_r11)));
4388evalcond[5]=((((-1.0)*
cj4*x319))+(((-1.0)*
new_r10)));
4398std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
4399vinfos[0].jointtype = 1;
4400vinfos[0].foffset =
j0;
4401vinfos[0].indices[0] =
_ij0[0];
4402vinfos[0].indices[1] =
_ij0[1];
4403vinfos[0].maxsolutions =
_nj0;
4404vinfos[1].jointtype = 1;
4405vinfos[1].foffset =
j1;
4406vinfos[1].indices[0] =
_ij1[0];
4407vinfos[1].indices[1] =
_ij1[1];
4408vinfos[1].maxsolutions =
_nj1;
4409vinfos[2].jointtype = 1;
4410vinfos[2].foffset =
j2;
4411vinfos[2].indices[0] =
_ij2[0];
4412vinfos[2].indices[1] =
_ij2[1];
4413vinfos[2].maxsolutions =
_nj2;
4414vinfos[3].jointtype = 1;
4415vinfos[3].foffset =
j3;
4416vinfos[3].indices[0] =
_ij3[0];
4417vinfos[3].indices[1] =
_ij3[1];
4418vinfos[3].maxsolutions =
_nj3;
4419vinfos[4].jointtype = 1;
4420vinfos[4].foffset =
j4;
4421vinfos[4].indices[0] =
_ij4[0];
4422vinfos[4].indices[1] =
_ij4[1];
4423vinfos[4].maxsolutions =
_nj4;
4424vinfos[5].jointtype = 1;
4425vinfos[5].foffset =
j5;
4426vinfos[5].indices[0] =
_ij5[0];
4427vinfos[5].indices[1] =
_ij5[1];
4428vinfos[5].maxsolutions =
_nj5;
4429std::vector<int> vfree(0);
4437if( bgotonextstatement )
4439bool bgotonextstatement =
true;
4442evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(
j3))), 6.28318530717959)));
4444if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 )
4446bgotonextstatement=
false;
4448IkReal j5array[1], cj5array[1], sj5array[1];
4449bool j5valid[1]={
false};
4454sj5array[0]=
IKsin(j5array[0]);
4455cj5array[0]=
IKcos(j5array[0]);
4456if( j5array[0] >
IKPI )
4460else if( j5array[0] < -
IKPI )
4464for(
int ij5 = 0; ij5 < 1; ++ij5)
4471for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
4475 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
4478j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
4483IkReal x322=((1.0)*
cj4);
4484IkReal x323=((1.0)*
sj4);
4485IkReal x324=((1.0)*x321);
4487evalcond[1]=(x321+(((-1.0)*
new_r10)));
4488evalcond[2]=(x320+(((-1.0)*
new_r11)));
4491evalcond[5]=((((-1.0)*x320*x322))+
new_r00);
4492evalcond[6]=(x320+(((-1.0)*
new_r00*x322))+(((-1.0)*
new_r20*x323)));
4493evalcond[7]=((((-1.0)*x324))+(((-1.0)*
new_r01*x322))+(((-1.0)*
new_r21*x323)));
4501std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
4502vinfos[0].jointtype = 1;
4503vinfos[0].foffset =
j0;
4504vinfos[0].indices[0] =
_ij0[0];
4505vinfos[0].indices[1] =
_ij0[1];
4506vinfos[0].maxsolutions =
_nj0;
4507vinfos[1].jointtype = 1;
4508vinfos[1].foffset =
j1;
4509vinfos[1].indices[0] =
_ij1[0];
4510vinfos[1].indices[1] =
_ij1[1];
4511vinfos[1].maxsolutions =
_nj1;
4512vinfos[2].jointtype = 1;
4513vinfos[2].foffset =
j2;
4514vinfos[2].indices[0] =
_ij2[0];
4515vinfos[2].indices[1] =
_ij2[1];
4516vinfos[2].maxsolutions =
_nj2;
4517vinfos[3].jointtype = 1;
4518vinfos[3].foffset =
j3;
4519vinfos[3].indices[0] =
_ij3[0];
4520vinfos[3].indices[1] =
_ij3[1];
4521vinfos[3].maxsolutions =
_nj3;
4522vinfos[4].jointtype = 1;
4523vinfos[4].foffset =
j4;
4524vinfos[4].indices[0] =
_ij4[0];
4525vinfos[4].indices[1] =
_ij4[1];
4526vinfos[4].maxsolutions =
_nj4;
4527vinfos[5].jointtype = 1;
4528vinfos[5].foffset =
j5;
4529vinfos[5].indices[0] =
_ij5[0];
4530vinfos[5].indices[1] =
_ij5[1];
4531vinfos[5].maxsolutions =
_nj5;
4532std::vector<int> vfree(0);
4540if( bgotonextstatement )
4542bool bgotonextstatement =
true;
4545evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-3.14159265358979)+
j3)))), 6.28318530717959)));
4547if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 )
4549bgotonextstatement=
false;
4551IkReal j5array[1], cj5array[1], sj5array[1];
4552bool j5valid[1]={
false};
4557sj5array[0]=
IKsin(j5array[0]);
4558cj5array[0]=
IKcos(j5array[0]);
4559if( j5array[0] >
IKPI )
4563else if( j5array[0] < -
IKPI )
4567for(
int ij5 = 0; ij5 < 1; ++ij5)
4574for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
4578 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
4581j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
4586IkReal x327=((1.0)*
sj4);
4587IkReal x328=((1.0)*x326);
4592evalcond[4]=(((
cj4*x325))+(((-1.0)*
new_r01)));
4593evalcond[5]=((((-1.0)*
new_r00))+(((-1.0)*
cj4*x328)));
4603std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
4604vinfos[0].jointtype = 1;
4605vinfos[0].foffset =
j0;
4606vinfos[0].indices[0] =
_ij0[0];
4607vinfos[0].indices[1] =
_ij0[1];
4608vinfos[0].maxsolutions =
_nj0;
4609vinfos[1].jointtype = 1;
4610vinfos[1].foffset =
j1;
4611vinfos[1].indices[0] =
_ij1[0];
4612vinfos[1].indices[1] =
_ij1[1];
4613vinfos[1].maxsolutions =
_nj1;
4614vinfos[2].jointtype = 1;
4615vinfos[2].foffset =
j2;
4616vinfos[2].indices[0] =
_ij2[0];
4617vinfos[2].indices[1] =
_ij2[1];
4618vinfos[2].maxsolutions =
_nj2;
4619vinfos[3].jointtype = 1;
4620vinfos[3].foffset =
j3;
4621vinfos[3].indices[0] =
_ij3[0];
4622vinfos[3].indices[1] =
_ij3[1];
4623vinfos[3].maxsolutions =
_nj3;
4624vinfos[4].jointtype = 1;
4625vinfos[4].foffset =
j4;
4626vinfos[4].indices[0] =
_ij4[0];
4627vinfos[4].indices[1] =
_ij4[1];
4628vinfos[4].maxsolutions =
_nj4;
4629vinfos[5].jointtype = 1;
4630vinfos[5].foffset =
j5;
4631vinfos[5].indices[0] =
_ij5[0];
4632vinfos[5].indices[1] =
_ij5[1];
4633vinfos[5].maxsolutions =
_nj5;
4634std::vector<int> vfree(0);
4642if( bgotonextstatement )
4644bool bgotonextstatement =
true;
4648if(
IKabs(evalcond[0]) < 0.0000050000000000 )
4650bgotonextstatement=
false;
4658if(
IKabs(j5eval[0]) < 0.0000000100000000 )
4664IkReal op[2+1], zeror[2];
4670IkReal j5array[2], cj5array[2], sj5array[2], tempj5array[1];
4671int numsolutions = 0;
4672for(
int ij5 = 0; ij5 < numroots; ++ij5)
4674IkReal
htj5 = zeror[ij5];
4675tempj5array[0]=((2.0)*(atan(
htj5)));
4676for(
int kj5 = 0; kj5 < 1; ++kj5)
4678j5array[numsolutions] = tempj5array[kj5];
4679if( j5array[numsolutions] >
IKPI )
4681 j5array[numsolutions]-=
IK2PI;
4683else if( j5array[numsolutions] < -
IKPI )
4685 j5array[numsolutions]+=
IK2PI;
4687sj5array[numsolutions] =
IKsin(j5array[numsolutions]);
4688cj5array[numsolutions] =
IKcos(j5array[numsolutions]);
4692bool j5valid[2]={
true,
true};
4694for(
int ij5 = 0; ij5 < numsolutions; ++ij5)
4700 j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
4704for(
int iij5 = ij5+1; iij5 < numsolutions; ++iij5)
4708 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
4712std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
4713vinfos[0].jointtype = 1;
4714vinfos[0].foffset =
j0;
4715vinfos[0].indices[0] =
_ij0[0];
4716vinfos[0].indices[1] =
_ij0[1];
4717vinfos[0].maxsolutions =
_nj0;
4718vinfos[1].jointtype = 1;
4719vinfos[1].foffset =
j1;
4720vinfos[1].indices[0] =
_ij1[0];
4721vinfos[1].indices[1] =
_ij1[1];
4722vinfos[1].maxsolutions =
_nj1;
4723vinfos[2].jointtype = 1;
4724vinfos[2].foffset =
j2;
4725vinfos[2].indices[0] =
_ij2[0];
4726vinfos[2].indices[1] =
_ij2[1];
4727vinfos[2].maxsolutions =
_nj2;
4728vinfos[3].jointtype = 1;
4729vinfos[3].foffset =
j3;
4730vinfos[3].indices[0] =
_ij3[0];
4731vinfos[3].indices[1] =
_ij3[1];
4732vinfos[3].maxsolutions =
_nj3;
4733vinfos[4].jointtype = 1;
4734vinfos[4].foffset =
j4;
4735vinfos[4].indices[0] =
_ij4[0];
4736vinfos[4].indices[1] =
_ij4[1];
4737vinfos[4].maxsolutions =
_nj4;
4738vinfos[5].jointtype = 1;
4739vinfos[5].foffset =
j5;
4740vinfos[5].indices[0] =
_ij5[0];
4741vinfos[5].indices[1] =
_ij5[1];
4742vinfos[5].maxsolutions =
_nj5;
4743std::vector<int> vfree(0);
4754if( bgotonextstatement )
4756bool bgotonextstatement =
true;
4761bgotonextstatement=
false;
4766if( bgotonextstatement )
4781IkReal j5array[1], cj5array[1], sj5array[1];
4782bool j5valid[1]={
false};
4788IkReal x329=x330.
value;
4796sj5array[0]=
IKsin(j5array[0]);
4797cj5array[0]=
IKcos(j5array[0]);
4798if( j5array[0] >
IKPI )
4802else if( j5array[0] < -
IKPI )
4806for(
int ij5 = 0; ij5 < 1; ++ij5)
4813for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
4817 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
4820j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
4827IkReal x336=((1.0)*
cj3);
4829IkReal x338=((1.0)*
cj4);
4831IkReal x340=((1.0)*
sj4);
4832IkReal x341=(
sj3*x332);
4833IkReal x342=((1.0)*x333);
4834IkReal x343=(
sj3*x333);
4836evalcond[1]=(
new_r20+(((-1.0)*x333*x340)));
4840evalcond[5]=(((x332*x335))+x343+
new_r01);
4841evalcond[6]=((((-1.0)*x333*x338))+x339+x334);
4842evalcond[7]=((((-1.0)*x335*x342))+x341+
new_r00);
4843evalcond[8]=((((-1.0)*x333*x336))+((
cj4*x341))+
new_r11);
4844evalcond[9]=((((-1.0)*x332*x336))+
new_r10+(((-1.0)*x338*x343)));
4845evalcond[10]=((((-1.0)*x338*x339))+x333+(((-1.0)*
new_r20*x340))+(((-1.0)*x334*x338)));
4846evalcond[11]=((((-1.0)*x337*x338))+(((-1.0)*
new_r01*x335))+(((-1.0)*x332))+(((-1.0)*
new_r21*x340)));
4854std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
4855vinfos[0].jointtype = 1;
4856vinfos[0].foffset =
j0;
4857vinfos[0].indices[0] =
_ij0[0];
4858vinfos[0].indices[1] =
_ij0[1];
4859vinfos[0].maxsolutions =
_nj0;
4860vinfos[1].jointtype = 1;
4861vinfos[1].foffset =
j1;
4862vinfos[1].indices[0] =
_ij1[0];
4863vinfos[1].indices[1] =
_ij1[1];
4864vinfos[1].maxsolutions =
_nj1;
4865vinfos[2].jointtype = 1;
4866vinfos[2].foffset =
j2;
4867vinfos[2].indices[0] =
_ij2[0];
4868vinfos[2].indices[1] =
_ij2[1];
4869vinfos[2].maxsolutions =
_nj2;
4870vinfos[3].jointtype = 1;
4871vinfos[3].foffset =
j3;
4872vinfos[3].indices[0] =
_ij3[0];
4873vinfos[3].indices[1] =
_ij3[1];
4874vinfos[3].maxsolutions =
_nj3;
4875vinfos[4].jointtype = 1;
4876vinfos[4].foffset =
j4;
4877vinfos[4].indices[0] =
_ij4[0];
4878vinfos[4].indices[1] =
_ij4[1];
4879vinfos[4].maxsolutions =
_nj4;
4880vinfos[5].jointtype = 1;
4881vinfos[5].foffset =
j5;
4882vinfos[5].indices[0] =
_ij5[0];
4883vinfos[5].indices[1] =
_ij5[1];
4884vinfos[5].maxsolutions =
_nj5;
4885std::vector<int> vfree(0);
4898IkReal j5array[1], cj5array[1], sj5array[1];
4899bool j5valid[1]={
false};
4905IkReal x344=x345.
value;
4913sj5array[0]=
IKsin(j5array[0]);
4914cj5array[0]=
IKcos(j5array[0]);
4915if( j5array[0] >
IKPI )
4919else if( j5array[0] < -
IKPI )
4923for(
int ij5 = 0; ij5 < 1; ++ij5)
4930for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
4934 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
4937j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
4944IkReal x351=((1.0)*
cj3);
4946IkReal x353=((1.0)*
cj4);
4948IkReal x355=((1.0)*
sj4);
4949IkReal x356=(
sj3*x347);
4950IkReal x357=((1.0)*x348);
4951IkReal x358=(
sj3*x348);
4953evalcond[1]=((((-1.0)*x348*x355))+
new_r20);
4957evalcond[5]=(x358+((x347*x350))+
new_r01);
4958evalcond[6]=((((-1.0)*x348*x353))+x354+x349);
4959evalcond[7]=(x356+
new_r00+(((-1.0)*x350*x357)));
4960evalcond[8]=((((-1.0)*x348*x351))+((
cj4*x356))+
new_r11);
4961evalcond[9]=((((-1.0)*x347*x351))+(((-1.0)*x353*x358))+
new_r10);
4962evalcond[10]=((((-1.0)*x349*x353))+x348+(((-1.0)*x353*x354))+(((-1.0)*
new_r20*x355)));
4963evalcond[11]=((((-1.0)*
new_r01*x350))+(((-1.0)*
new_r21*x355))+(((-1.0)*x352*x353))+(((-1.0)*x347)));
4971std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
4972vinfos[0].jointtype = 1;
4973vinfos[0].foffset =
j0;
4974vinfos[0].indices[0] =
_ij0[0];
4975vinfos[0].indices[1] =
_ij0[1];
4976vinfos[0].maxsolutions =
_nj0;
4977vinfos[1].jointtype = 1;
4978vinfos[1].foffset =
j1;
4979vinfos[1].indices[0] =
_ij1[0];
4980vinfos[1].indices[1] =
_ij1[1];
4981vinfos[1].maxsolutions =
_nj1;
4982vinfos[2].jointtype = 1;
4983vinfos[2].foffset =
j2;
4984vinfos[2].indices[0] =
_ij2[0];
4985vinfos[2].indices[1] =
_ij2[1];
4986vinfos[2].maxsolutions =
_nj2;
4987vinfos[3].jointtype = 1;
4988vinfos[3].foffset =
j3;
4989vinfos[3].indices[0] =
_ij3[0];
4990vinfos[3].indices[1] =
_ij3[1];
4991vinfos[3].maxsolutions =
_nj3;
4992vinfos[4].jointtype = 1;
4993vinfos[4].foffset =
j4;
4994vinfos[4].indices[0] =
_ij4[0];
4995vinfos[4].indices[1] =
_ij4[1];
4996vinfos[4].maxsolutions =
_nj4;
4997vinfos[5].jointtype = 1;
4998vinfos[5].foffset =
j5;
4999vinfos[5].indices[0] =
_ij5[0];
5000vinfos[5].indices[1] =
_ij5[1];
5001vinfos[5].maxsolutions =
_nj5;
5002std::vector<int> vfree(0);
5015IkReal j5array[1], cj5array[1], sj5array[1];
5016bool j5valid[1]={
false};
5026j5array[0]=((-1.5707963267949)+(x359.
value)+(((1.5707963267949)*(x360.
value))));
5027sj5array[0]=
IKsin(j5array[0]);
5028cj5array[0]=
IKcos(j5array[0]);
5029if( j5array[0] >
IKPI )
5033else if( j5array[0] < -
IKPI )
5037for(
int ij5 = 0; ij5 < 1; ++ij5)
5044for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
5048 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
5051j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
5058IkReal x365=((1.0)*
cj3);
5060IkReal x367=((1.0)*
cj4);
5062IkReal x369=((1.0)*
sj4);
5063IkReal x370=(
sj3*x361);
5064IkReal x371=((1.0)*x362);
5065IkReal x372=(
sj3*x362);
5067evalcond[1]=((((-1.0)*x362*x369))+
new_r20);
5071evalcond[5]=(((x361*x364))+x372+
new_r01);
5072evalcond[6]=((((-1.0)*x362*x367))+x368+x363);
5073evalcond[7]=(x370+
new_r00+(((-1.0)*x364*x371)));
5074evalcond[8]=((((-1.0)*x362*x365))+((
cj4*x370))+
new_r11);
5075evalcond[9]=((((-1.0)*x361*x365))+(((-1.0)*x367*x372))+
new_r10);
5076evalcond[10]=((((-1.0)*x363*x367))+(((-1.0)*
new_r20*x369))+(((-1.0)*x367*x368))+x362);
5077evalcond[11]=((((-1.0)*x361))+(((-1.0)*x366*x367))+(((-1.0)*
new_r01*x364))+(((-1.0)*
new_r21*x369)));
5085std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
5086vinfos[0].jointtype = 1;
5087vinfos[0].foffset =
j0;
5088vinfos[0].indices[0] =
_ij0[0];
5089vinfos[0].indices[1] =
_ij0[1];
5090vinfos[0].maxsolutions =
_nj0;
5091vinfos[1].jointtype = 1;
5092vinfos[1].foffset =
j1;
5093vinfos[1].indices[0] =
_ij1[0];
5094vinfos[1].indices[1] =
_ij1[1];
5095vinfos[1].maxsolutions =
_nj1;
5096vinfos[2].jointtype = 1;
5097vinfos[2].foffset =
j2;
5098vinfos[2].indices[0] =
_ij2[0];
5099vinfos[2].indices[1] =
_ij2[1];
5100vinfos[2].maxsolutions =
_nj2;
5101vinfos[3].jointtype = 1;
5102vinfos[3].foffset =
j3;
5103vinfos[3].indices[0] =
_ij3[0];
5104vinfos[3].indices[1] =
_ij3[1];
5105vinfos[3].maxsolutions =
_nj3;
5106vinfos[4].jointtype = 1;
5107vinfos[4].foffset =
j4;
5108vinfos[4].indices[0] =
_ij4[0];
5109vinfos[4].indices[1] =
_ij4[1];
5110vinfos[4].maxsolutions =
_nj4;
5111vinfos[5].jointtype = 1;
5112vinfos[5].foffset =
j5;
5113vinfos[5].indices[0] =
_ij5[0];
5114vinfos[5].indices[1] =
_ij5[1];
5115vinfos[5].maxsolutions =
_nj5;
5116std::vector<int> vfree(0);
5135IkReal j5array[1], cj5array[1], sj5array[1];
5136bool j5valid[1]={
false};
5146j5array[0]=((-1.5707963267949)+(x373.
value)+(((1.5707963267949)*(x374.
value))));
5147sj5array[0]=
IKsin(j5array[0]);
5148cj5array[0]=
IKcos(j5array[0]);
5149if( j5array[0] >
IKPI )
5153else if( j5array[0] < -
IKPI )
5157for(
int ij5 = 0; ij5 < 1; ++ij5)
5164for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
5168 j5valid[iij5]=
false;
_ij5[1] = iij5;
break;
5171j5 = j5array[ij5];
cj5 = cj5array[ij5];
sj5 = sj5array[ij5];
5187if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
5193if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 )
5197bool bgotonextstatement =
true;
5200evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(
j4))), 6.28318530717959)));
5205if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 &&
IKabs(evalcond[2]) < 0.0000050000000000 &&
IKabs(evalcond[3]) < 0.0000050000000000 &&
IKabs(evalcond[4]) < 0.0000050000000000 )
5207bgotonextstatement=
false;
5218if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
5229if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
5241if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
5245bool bgotonextstatement =
true;
5253IkReal x381=pow(x382,-0.5);
5258IkReal gconst0=((-1.0)*(x383.
value));
5260IkReal gconst2=(x380*x381);
5265evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((x384.
value)+
j5)))), 6.28318530717959)));
5266if(
IKabs(evalcond[0]) < 0.0000050000000000 )
5268bgotonextstatement=
false;
5276IkReal x386=((-1.0)*(x388.
value));
5286IkReal gconst2=(x385*x387);
5295if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
5304IkReal x395=((-1.0)*(x397.
value));
5314IkReal gconst2=(x394*x396);
5320IkReal x399=x401.
value;
5321IkReal x400=(x398*x399);
5323if(
IKabs(j3eval[0]) < 0.0000010000000000 )
5332IkReal x403=((-1.0)*(x405.
value));
5342IkReal gconst2=(x402*x404);
5349IkReal x408=x414.
value;
5350IkReal x409=(x407*x408);
5355IkReal x410=x415.
value;
5356IkReal x411=((1.0)*x410);
5360if(
IKabs(j3eval[0]) < 0.0000010000000000 )
5364bool bgotonextstatement =
true;
5368if(
IKabs(evalcond[0]) < 0.0000050000000000 )
5370bgotonextstatement=
false;
5372IkReal j3array[2], cj3array[2], sj3array[2];
5373bool j3valid[2]={
false};
5382 j3valid[0] = j3valid[1] =
true;
5383 j3array[0] =
IKasin(sj3array[0]);
5384 cj3array[0] =
IKcos(j3array[0]);
5385 sj3array[1] = sj3array[0];
5386 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
5387 cj3array[1] = -cj3array[0];
5389else if( isnan(sj3array[0]) )
5393 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
5395for(
int ij3 = 0; ij3 < 2; ++ij3)
5402for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
5406 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
5409j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
5414IkReal x419=((-1.0)*x417);
5417evalcond[2]=(gconst2*x419);
5418evalcond[3]=(gconst2+((
new_r01*x418)));
5419evalcond[4]=(((gconst2*x418))+
new_r01);
5420evalcond[5]=((((-1.0)*gconst2))+((
new_r10*x418)));
5428std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
5429vinfos[0].jointtype = 1;
5430vinfos[0].foffset =
j0;
5431vinfos[0].indices[0] =
_ij0[0];
5432vinfos[0].indices[1] =
_ij0[1];
5433vinfos[0].maxsolutions =
_nj0;
5434vinfos[1].jointtype = 1;
5435vinfos[1].foffset =
j1;
5436vinfos[1].indices[0] =
_ij1[0];
5437vinfos[1].indices[1] =
_ij1[1];
5438vinfos[1].maxsolutions =
_nj1;
5439vinfos[2].jointtype = 1;
5440vinfos[2].foffset =
j2;
5441vinfos[2].indices[0] =
_ij2[0];
5442vinfos[2].indices[1] =
_ij2[1];
5443vinfos[2].maxsolutions =
_nj2;
5444vinfos[3].jointtype = 1;
5445vinfos[3].foffset =
j3;
5446vinfos[3].indices[0] =
_ij3[0];
5447vinfos[3].indices[1] =
_ij3[1];
5448vinfos[3].maxsolutions =
_nj3;
5449vinfos[4].jointtype = 1;
5450vinfos[4].foffset =
j4;
5451vinfos[4].indices[0] =
_ij4[0];
5452vinfos[4].indices[1] =
_ij4[1];
5453vinfos[4].maxsolutions =
_nj4;
5454vinfos[5].jointtype = 1;
5455vinfos[5].foffset =
j5;
5456vinfos[5].indices[0] =
_ij5[0];
5457vinfos[5].indices[1] =
_ij5[1];
5458vinfos[5].maxsolutions =
_nj5;
5459std::vector<int> vfree(0);
5467if( bgotonextstatement )
5469bool bgotonextstatement =
true;
5475if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 &&
IKabs(evalcond[2]) < 0.0000050000000000 )
5477bgotonextstatement=
false;
5485IkReal x421=((-1.0)*(x422.
value));
5502if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
5511IkReal x424=((-1.0)*(x425.
value));
5528if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
5537IkReal x427=((-1.0)*(x428.
value));
5554if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
5561IkReal j3array[1], cj3array[1], sj3array[1];
5562bool j3valid[1]={
false};
5573j3array[0]=((-1.5707963267949)+(x430.
value)+(((1.5707963267949)*(x431.
value))));
5574sj3array[0]=
IKsin(j3array[0]);
5575cj3array[0]=
IKcos(j3array[0]);
5576if( j3array[0] >
IKPI )
5580else if( j3array[0] < -
IKPI )
5584for(
int ij3 = 0; ij3 < 1; ++ij3)
5591for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
5595 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
5598j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
5603IkReal x434=(gconst1*x433);
5604IkReal x435=(gconst2*x433);
5605IkReal x436=((1.0)*x432);
5606IkReal x437=(gconst2*x436);
5608evalcond[1]=(((gconst1*x432))+x435+
new_r01);
5609evalcond[2]=((((-1.0)*x437))+x434);
5611evalcond[4]=((((-1.0)*x437))+x434+
new_r11);
5612evalcond[5]=((((-1.0)*x435))+(((-1.0)*gconst1*x436)));
5620std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
5621vinfos[0].jointtype = 1;
5622vinfos[0].foffset =
j0;
5623vinfos[0].indices[0] =
_ij0[0];
5624vinfos[0].indices[1] =
_ij0[1];
5625vinfos[0].maxsolutions =
_nj0;
5626vinfos[1].jointtype = 1;
5627vinfos[1].foffset =
j1;
5628vinfos[1].indices[0] =
_ij1[0];
5629vinfos[1].indices[1] =
_ij1[1];
5630vinfos[1].maxsolutions =
_nj1;
5631vinfos[2].jointtype = 1;
5632vinfos[2].foffset =
j2;
5633vinfos[2].indices[0] =
_ij2[0];
5634vinfos[2].indices[1] =
_ij2[1];
5635vinfos[2].maxsolutions =
_nj2;
5636vinfos[3].jointtype = 1;
5637vinfos[3].foffset =
j3;
5638vinfos[3].indices[0] =
_ij3[0];
5639vinfos[3].indices[1] =
_ij3[1];
5640vinfos[3].maxsolutions =
_nj3;
5641vinfos[4].jointtype = 1;
5642vinfos[4].foffset =
j4;
5643vinfos[4].indices[0] =
_ij4[0];
5644vinfos[4].indices[1] =
_ij4[1];
5645vinfos[4].maxsolutions =
_nj4;
5646vinfos[5].jointtype = 1;
5647vinfos[5].foffset =
j5;
5648vinfos[5].indices[0] =
_ij5[0];
5649vinfos[5].indices[1] =
_ij5[1];
5650vinfos[5].maxsolutions =
_nj5;
5651std::vector<int> vfree(0);
5664IkReal j3array[1], cj3array[1], sj3array[1];
5665bool j3valid[1]={
false};
5675j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x438.
value)))+(x439.
value));
5676sj3array[0]=
IKsin(j3array[0]);
5677cj3array[0]=
IKcos(j3array[0]);
5678if( j3array[0] >
IKPI )
5682else if( j3array[0] < -
IKPI )
5686for(
int ij3 = 0; ij3 < 1; ++ij3)
5693for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
5697 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
5700j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
5705IkReal x442=(gconst1*x441);
5706IkReal x443=(gconst2*x441);
5707IkReal x444=((1.0)*x440);
5708IkReal x445=(gconst2*x444);
5710evalcond[1]=(((gconst1*x440))+x443+
new_r01);
5711evalcond[2]=((((-1.0)*x445))+x442);
5713evalcond[4]=((((-1.0)*x445))+x442+
new_r11);
5714evalcond[5]=((((-1.0)*x443))+(((-1.0)*gconst1*x444)));
5722std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
5723vinfos[0].jointtype = 1;
5724vinfos[0].foffset =
j0;
5725vinfos[0].indices[0] =
_ij0[0];
5726vinfos[0].indices[1] =
_ij0[1];
5727vinfos[0].maxsolutions =
_nj0;
5728vinfos[1].jointtype = 1;
5729vinfos[1].foffset =
j1;
5730vinfos[1].indices[0] =
_ij1[0];
5731vinfos[1].indices[1] =
_ij1[1];
5732vinfos[1].maxsolutions =
_nj1;
5733vinfos[2].jointtype = 1;
5734vinfos[2].foffset =
j2;
5735vinfos[2].indices[0] =
_ij2[0];
5736vinfos[2].indices[1] =
_ij2[1];
5737vinfos[2].maxsolutions =
_nj2;
5738vinfos[3].jointtype = 1;
5739vinfos[3].foffset =
j3;
5740vinfos[3].indices[0] =
_ij3[0];
5741vinfos[3].indices[1] =
_ij3[1];
5742vinfos[3].maxsolutions =
_nj3;
5743vinfos[4].jointtype = 1;
5744vinfos[4].foffset =
j4;
5745vinfos[4].indices[0] =
_ij4[0];
5746vinfos[4].indices[1] =
_ij4[1];
5747vinfos[4].maxsolutions =
_nj4;
5748vinfos[5].jointtype = 1;
5749vinfos[5].foffset =
j5;
5750vinfos[5].indices[0] =
_ij5[0];
5751vinfos[5].indices[1] =
_ij5[1];
5752vinfos[5].maxsolutions =
_nj5;
5753std::vector<int> vfree(0);
5766IkReal j3array[1], cj3array[1], sj3array[1];
5767bool j3valid[1]={
false};
5777j3array[0]=((-1.5707963267949)+(x446.
value)+(((1.5707963267949)*(x447.
value))));
5778sj3array[0]=
IKsin(j3array[0]);
5779cj3array[0]=
IKcos(j3array[0]);
5780if( j3array[0] >
IKPI )
5784else if( j3array[0] < -
IKPI )
5788for(
int ij3 = 0; ij3 < 1; ++ij3)
5795for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
5799 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
5802j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
5807IkReal x450=(gconst1*x449);
5808IkReal x451=(gconst2*x449);
5809IkReal x452=((1.0)*x448);
5810IkReal x453=(gconst2*x452);
5812evalcond[1]=(((gconst1*x448))+x451+
new_r01);
5813evalcond[2]=((((-1.0)*x453))+x450);
5815evalcond[4]=((((-1.0)*x453))+x450+
new_r11);
5816evalcond[5]=((((-1.0)*x451))+(((-1.0)*gconst1*x452)));
5824std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
5825vinfos[0].jointtype = 1;
5826vinfos[0].foffset =
j0;
5827vinfos[0].indices[0] =
_ij0[0];
5828vinfos[0].indices[1] =
_ij0[1];
5829vinfos[0].maxsolutions =
_nj0;
5830vinfos[1].jointtype = 1;
5831vinfos[1].foffset =
j1;
5832vinfos[1].indices[0] =
_ij1[0];
5833vinfos[1].indices[1] =
_ij1[1];
5834vinfos[1].maxsolutions =
_nj1;
5835vinfos[2].jointtype = 1;
5836vinfos[2].foffset =
j2;
5837vinfos[2].indices[0] =
_ij2[0];
5838vinfos[2].indices[1] =
_ij2[1];
5839vinfos[2].maxsolutions =
_nj2;
5840vinfos[3].jointtype = 1;
5841vinfos[3].foffset =
j3;
5842vinfos[3].indices[0] =
_ij3[0];
5843vinfos[3].indices[1] =
_ij3[1];
5844vinfos[3].maxsolutions =
_nj3;
5845vinfos[4].jointtype = 1;
5846vinfos[4].foffset =
j4;
5847vinfos[4].indices[0] =
_ij4[0];
5848vinfos[4].indices[1] =
_ij4[1];
5849vinfos[4].maxsolutions =
_nj4;
5850vinfos[5].jointtype = 1;
5851vinfos[5].foffset =
j5;
5852vinfos[5].indices[0] =
_ij5[0];
5853vinfos[5].indices[1] =
_ij5[1];
5854vinfos[5].maxsolutions =
_nj5;
5855std::vector<int> vfree(0);
5867if( bgotonextstatement )
5869bool bgotonextstatement =
true;
5873if(
IKabs(evalcond[0]) < 0.0000050000000000 )
5875bgotonextstatement=
false;
5882IkReal x454=((-1.0)*(x455.
value));
5896IkReal gconst1=(
new_r11*(pow(x456,-0.5)));
5899if(
IKabs(j3eval[0]) < 0.0000010000000000 )
5907IkReal x457=((-1.0)*(x458.
value));
5921IkReal gconst1=(
new_r11*(pow(x459,-0.5)));
5924if(
IKabs(j3eval[0]) < 0.0000010000000000 )
5927IkReal j3array[2], cj3array[2], sj3array[2];
5928bool j3valid[2]={
false};
5937 j3valid[0] = j3valid[1] =
true;
5938 j3array[0] =
IKasin(sj3array[0]);
5939 cj3array[0] =
IKcos(j3array[0]);
5940 sj3array[1] = sj3array[0];
5941 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
5942 cj3array[1] = -cj3array[0];
5944else if( isnan(sj3array[0]) )
5948 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
5950for(
int ij3 = 0; ij3 < 2; ++ij3)
5957for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
5961 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
5964j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
5969evalcond[0]=(gconst1*x461);
5971evalcond[2]=((-1.0)*
new_r11*x461);
5972evalcond[3]=(((
new_r00*x462))+gconst1);
5973evalcond[4]=(((
new_r11*x462))+gconst1);
5974evalcond[5]=(((gconst1*x462))+
new_r11);
5982std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
5983vinfos[0].jointtype = 1;
5984vinfos[0].foffset =
j0;
5985vinfos[0].indices[0] =
_ij0[0];
5986vinfos[0].indices[1] =
_ij0[1];
5987vinfos[0].maxsolutions =
_nj0;
5988vinfos[1].jointtype = 1;
5989vinfos[1].foffset =
j1;
5990vinfos[1].indices[0] =
_ij1[0];
5991vinfos[1].indices[1] =
_ij1[1];
5992vinfos[1].maxsolutions =
_nj1;
5993vinfos[2].jointtype = 1;
5994vinfos[2].foffset =
j2;
5995vinfos[2].indices[0] =
_ij2[0];
5996vinfos[2].indices[1] =
_ij2[1];
5997vinfos[2].maxsolutions =
_nj2;
5998vinfos[3].jointtype = 1;
5999vinfos[3].foffset =
j3;
6000vinfos[3].indices[0] =
_ij3[0];
6001vinfos[3].indices[1] =
_ij3[1];
6002vinfos[3].maxsolutions =
_nj3;
6003vinfos[4].jointtype = 1;
6004vinfos[4].foffset =
j4;
6005vinfos[4].indices[0] =
_ij4[0];
6006vinfos[4].indices[1] =
_ij4[1];
6007vinfos[4].maxsolutions =
_nj4;
6008vinfos[5].jointtype = 1;
6009vinfos[5].foffset =
j5;
6010vinfos[5].indices[0] =
_ij5[0];
6011vinfos[5].indices[1] =
_ij5[1];
6012vinfos[5].maxsolutions =
_nj5;
6013std::vector<int> vfree(0);
6022IkReal j3array[2], cj3array[2], sj3array[2];
6023bool j3valid[2]={
false};
6029sj3array[0]=((-1.0)*gconst1*(x463.
value));
6032 j3valid[0] = j3valid[1] =
true;
6033 j3array[0] =
IKasin(sj3array[0]);
6034 cj3array[0] =
IKcos(j3array[0]);
6035 sj3array[1] = sj3array[0];
6036 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
6037 cj3array[1] = -cj3array[0];
6039else if( isnan(sj3array[0]) )
6043 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
6045for(
int ij3 = 0; ij3 < 2; ++ij3)
6052for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
6056 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
6059j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
6064IkReal x466=(gconst1*x465);
6065evalcond[0]=(gconst1*x464);
6067evalcond[2]=((-1.0)*
new_r11*x464);
6068evalcond[3]=(((
new_r00*x465))+gconst1);
6078std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
6079vinfos[0].jointtype = 1;
6080vinfos[0].foffset =
j0;
6081vinfos[0].indices[0] =
_ij0[0];
6082vinfos[0].indices[1] =
_ij0[1];
6083vinfos[0].maxsolutions =
_nj0;
6084vinfos[1].jointtype = 1;
6085vinfos[1].foffset =
j1;
6086vinfos[1].indices[0] =
_ij1[0];
6087vinfos[1].indices[1] =
_ij1[1];
6088vinfos[1].maxsolutions =
_nj1;
6089vinfos[2].jointtype = 1;
6090vinfos[2].foffset =
j2;
6091vinfos[2].indices[0] =
_ij2[0];
6092vinfos[2].indices[1] =
_ij2[1];
6093vinfos[2].maxsolutions =
_nj2;
6094vinfos[3].jointtype = 1;
6095vinfos[3].foffset =
j3;
6096vinfos[3].indices[0] =
_ij3[0];
6097vinfos[3].indices[1] =
_ij3[1];
6098vinfos[3].maxsolutions =
_nj3;
6099vinfos[4].jointtype = 1;
6100vinfos[4].foffset =
j4;
6101vinfos[4].indices[0] =
_ij4[0];
6102vinfos[4].indices[1] =
_ij4[1];
6103vinfos[4].maxsolutions =
_nj4;
6104vinfos[5].jointtype = 1;
6105vinfos[5].foffset =
j5;
6106vinfos[5].indices[0] =
_ij5[0];
6107vinfos[5].indices[1] =
_ij5[1];
6108vinfos[5].maxsolutions =
_nj5;
6109std::vector<int> vfree(0);
6122IkReal j3array[2], cj3array[2], sj3array[2];
6123bool j3valid[2]={
false};
6129sj3array[0]=((-1.0)*gconst1*(x467.
value));
6132 j3valid[0] = j3valid[1] =
true;
6133 j3array[0] =
IKasin(sj3array[0]);
6134 cj3array[0] =
IKcos(j3array[0]);
6135 sj3array[1] = sj3array[0];
6136 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
6137 cj3array[1] = -cj3array[0];
6139else if( isnan(sj3array[0]) )
6143 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
6145for(
int ij3 = 0; ij3 < 2; ++ij3)
6152for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
6156 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
6159j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
6164IkReal x470=(gconst1*x469);
6165evalcond[0]=(gconst1*x468);
6167evalcond[2]=((-1.0)*
new_r11*x468);
6168evalcond[3]=(((
new_r11*x469))+gconst1);
6178std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
6179vinfos[0].jointtype = 1;
6180vinfos[0].foffset =
j0;
6181vinfos[0].indices[0] =
_ij0[0];
6182vinfos[0].indices[1] =
_ij0[1];
6183vinfos[0].maxsolutions =
_nj0;
6184vinfos[1].jointtype = 1;
6185vinfos[1].foffset =
j1;
6186vinfos[1].indices[0] =
_ij1[0];
6187vinfos[1].indices[1] =
_ij1[1];
6188vinfos[1].maxsolutions =
_nj1;
6189vinfos[2].jointtype = 1;
6190vinfos[2].foffset =
j2;
6191vinfos[2].indices[0] =
_ij2[0];
6192vinfos[2].indices[1] =
_ij2[1];
6193vinfos[2].maxsolutions =
_nj2;
6194vinfos[3].jointtype = 1;
6195vinfos[3].foffset =
j3;
6196vinfos[3].indices[0] =
_ij3[0];
6197vinfos[3].indices[1] =
_ij3[1];
6198vinfos[3].maxsolutions =
_nj3;
6199vinfos[4].jointtype = 1;
6200vinfos[4].foffset =
j4;
6201vinfos[4].indices[0] =
_ij4[0];
6202vinfos[4].indices[1] =
_ij4[1];
6203vinfos[4].maxsolutions =
_nj4;
6204vinfos[5].jointtype = 1;
6205vinfos[5].foffset =
j5;
6206vinfos[5].indices[0] =
_ij5[0];
6207vinfos[5].indices[1] =
_ij5[1];
6208vinfos[5].maxsolutions =
_nj5;
6209std::vector<int> vfree(0);
6221if( bgotonextstatement )
6223bool bgotonextstatement =
true;
6227if(
IKabs(evalcond[0]) < 0.0000050000000000 )
6229bgotonextstatement=
false;
6237IkReal x472=((-1.0)*(x473.
value));
6251IkReal gconst2=(x471*(pow(x474,-0.5)));
6253if(
IKabs(j3eval[0]) < 0.0000010000000000 )
6262IkReal x476=((-1.0)*(x477.
value));
6276IkReal gconst2=(x475*(pow(x478,-0.5)));
6278if(
IKabs(j3eval[0]) < 0.0000010000000000 )
6287IkReal x480=((-1.0)*(x481.
value));
6301IkReal gconst2=(x479*(pow(x482,-0.5)));
6303if(
IKabs(j3eval[0]) < 0.0000010000000000 )
6310IkReal j3array[1], cj3array[1], sj3array[1];
6311bool j3valid[1]={
false};
6324sj3array[0]=
IKsin(j3array[0]);
6325cj3array[0]=
IKcos(j3array[0]);
6326if( j3array[0] >
IKPI )
6330else if( j3array[0] < -
IKPI )
6334for(
int ij3 = 0; ij3 < 1; ++ij3)
6341for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
6345 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
6348j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
6353IkReal x487=((1.0)*gconst2);
6354IkReal x488=(gconst2*x486);
6356evalcond[1]=((-1.0)*gconst2*x485);
6357evalcond[2]=(gconst2+((
new_r01*x486)));
6359evalcond[4]=(
new_r00+(((-1.0)*x485*x487)));
6360evalcond[5]=((((-1.0)*x486*x487))+
new_r10);
6370std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
6371vinfos[0].jointtype = 1;
6372vinfos[0].foffset =
j0;
6373vinfos[0].indices[0] =
_ij0[0];
6374vinfos[0].indices[1] =
_ij0[1];
6375vinfos[0].maxsolutions =
_nj0;
6376vinfos[1].jointtype = 1;
6377vinfos[1].foffset =
j1;
6378vinfos[1].indices[0] =
_ij1[0];
6379vinfos[1].indices[1] =
_ij1[1];
6380vinfos[1].maxsolutions =
_nj1;
6381vinfos[2].jointtype = 1;
6382vinfos[2].foffset =
j2;
6383vinfos[2].indices[0] =
_ij2[0];
6384vinfos[2].indices[1] =
_ij2[1];
6385vinfos[2].maxsolutions =
_nj2;
6386vinfos[3].jointtype = 1;
6387vinfos[3].foffset =
j3;
6388vinfos[3].indices[0] =
_ij3[0];
6389vinfos[3].indices[1] =
_ij3[1];
6390vinfos[3].maxsolutions =
_nj3;
6391vinfos[4].jointtype = 1;
6392vinfos[4].foffset =
j4;
6393vinfos[4].indices[0] =
_ij4[0];
6394vinfos[4].indices[1] =
_ij4[1];
6395vinfos[4].maxsolutions =
_nj4;
6396vinfos[5].jointtype = 1;
6397vinfos[5].foffset =
j5;
6398vinfos[5].indices[0] =
_ij5[0];
6399vinfos[5].indices[1] =
_ij5[1];
6400vinfos[5].maxsolutions =
_nj5;
6401std::vector<int> vfree(0);
6414IkReal j3array[1], cj3array[1], sj3array[1];
6415bool j3valid[1]={
false};
6425j3array[0]=((-1.5707963267949)+(x489.
value)+(((1.5707963267949)*(x490.
value))));
6426sj3array[0]=
IKsin(j3array[0]);
6427cj3array[0]=
IKcos(j3array[0]);
6428if( j3array[0] >
IKPI )
6432else if( j3array[0] < -
IKPI )
6436for(
int ij3 = 0; ij3 < 1; ++ij3)
6443for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
6447 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
6450j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
6455IkReal x493=((1.0)*gconst2);
6456IkReal x494=(gconst2*x492);
6458evalcond[1]=((-1.0)*gconst2*x491);
6459evalcond[2]=(gconst2+((
new_r01*x492)));
6461evalcond[4]=((((-1.0)*x491*x493))+
new_r00);
6462evalcond[5]=(
new_r10+(((-1.0)*x492*x493)));
6472std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
6473vinfos[0].jointtype = 1;
6474vinfos[0].foffset =
j0;
6475vinfos[0].indices[0] =
_ij0[0];
6476vinfos[0].indices[1] =
_ij0[1];
6477vinfos[0].maxsolutions =
_nj0;
6478vinfos[1].jointtype = 1;
6479vinfos[1].foffset =
j1;
6480vinfos[1].indices[0] =
_ij1[0];
6481vinfos[1].indices[1] =
_ij1[1];
6482vinfos[1].maxsolutions =
_nj1;
6483vinfos[2].jointtype = 1;
6484vinfos[2].foffset =
j2;
6485vinfos[2].indices[0] =
_ij2[0];
6486vinfos[2].indices[1] =
_ij2[1];
6487vinfos[2].maxsolutions =
_nj2;
6488vinfos[3].jointtype = 1;
6489vinfos[3].foffset =
j3;
6490vinfos[3].indices[0] =
_ij3[0];
6491vinfos[3].indices[1] =
_ij3[1];
6492vinfos[3].maxsolutions =
_nj3;
6493vinfos[4].jointtype = 1;
6494vinfos[4].foffset =
j4;
6495vinfos[4].indices[0] =
_ij4[0];
6496vinfos[4].indices[1] =
_ij4[1];
6497vinfos[4].maxsolutions =
_nj4;
6498vinfos[5].jointtype = 1;
6499vinfos[5].foffset =
j5;
6500vinfos[5].indices[0] =
_ij5[0];
6501vinfos[5].indices[1] =
_ij5[1];
6502vinfos[5].maxsolutions =
_nj5;
6503std::vector<int> vfree(0);
6516IkReal j3array[1], cj3array[1], sj3array[1];
6517bool j3valid[1]={
false};
6527j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x495.
value)))+(x496.
value));
6528sj3array[0]=
IKsin(j3array[0]);
6529cj3array[0]=
IKcos(j3array[0]);
6530if( j3array[0] >
IKPI )
6534else if( j3array[0] < -
IKPI )
6538for(
int ij3 = 0; ij3 < 1; ++ij3)
6545for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
6549 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
6552j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
6557IkReal x499=((1.0)*gconst2);
6558IkReal x500=(gconst2*x498);
6560evalcond[1]=((-1.0)*gconst2*x497);
6561evalcond[2]=(gconst2+((
new_r01*x498)));
6563evalcond[4]=((((-1.0)*x497*x499))+
new_r00);
6564evalcond[5]=((((-1.0)*x498*x499))+
new_r10);
6574std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
6575vinfos[0].jointtype = 1;
6576vinfos[0].foffset =
j0;
6577vinfos[0].indices[0] =
_ij0[0];
6578vinfos[0].indices[1] =
_ij0[1];
6579vinfos[0].maxsolutions =
_nj0;
6580vinfos[1].jointtype = 1;
6581vinfos[1].foffset =
j1;
6582vinfos[1].indices[0] =
_ij1[0];
6583vinfos[1].indices[1] =
_ij1[1];
6584vinfos[1].maxsolutions =
_nj1;
6585vinfos[2].jointtype = 1;
6586vinfos[2].foffset =
j2;
6587vinfos[2].indices[0] =
_ij2[0];
6588vinfos[2].indices[1] =
_ij2[1];
6589vinfos[2].maxsolutions =
_nj2;
6590vinfos[3].jointtype = 1;
6591vinfos[3].foffset =
j3;
6592vinfos[3].indices[0] =
_ij3[0];
6593vinfos[3].indices[1] =
_ij3[1];
6594vinfos[3].maxsolutions =
_nj3;
6595vinfos[4].jointtype = 1;
6596vinfos[4].foffset =
j4;
6597vinfos[4].indices[0] =
_ij4[0];
6598vinfos[4].indices[1] =
_ij4[1];
6599vinfos[4].maxsolutions =
_nj4;
6600vinfos[5].jointtype = 1;
6601vinfos[5].foffset =
j5;
6602vinfos[5].indices[0] =
_ij5[0];
6603vinfos[5].indices[1] =
_ij5[1];
6604vinfos[5].maxsolutions =
_nj5;
6605std::vector<int> vfree(0);
6617if( bgotonextstatement )
6619bool bgotonextstatement =
true;
6624bgotonextstatement=
false;
6629if( bgotonextstatement )
6641IkReal j3array[1], cj3array[1], sj3array[1];
6642bool j3valid[1]={
false};
6653j3array[0]=((-1.5707963267949)+(x502.
value)+(((1.5707963267949)*(x503.
value))));
6654sj3array[0]=
IKsin(j3array[0]);
6655cj3array[0]=
IKcos(j3array[0]);
6656if( j3array[0] >
IKPI )
6660else if( j3array[0] < -
IKPI )
6664for(
int ij3 = 0; ij3 < 1; ++ij3)
6671for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
6675 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
6678j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
6683IkReal x506=((1.0)*gconst2);
6684IkReal x507=(gconst1*x505);
6685IkReal x508=(gconst2*x505);
6686IkReal x509=(gconst1*x504);
6687IkReal x510=((1.0)*x504);
6688IkReal x511=(x504*x506);
6690evalcond[1]=(x508+x509+
new_r01);
6693evalcond[4]=(x507+
new_r00+(((-1.0)*x511)));
6694evalcond[5]=(x507+
new_r11+(((-1.0)*x511)));
6696evalcond[7]=((((-1.0)*x505*x506))+
new_r10+(((-1.0)*x509)));
6704std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
6705vinfos[0].jointtype = 1;
6706vinfos[0].foffset =
j0;
6707vinfos[0].indices[0] =
_ij0[0];
6708vinfos[0].indices[1] =
_ij0[1];
6709vinfos[0].maxsolutions =
_nj0;
6710vinfos[1].jointtype = 1;
6711vinfos[1].foffset =
j1;
6712vinfos[1].indices[0] =
_ij1[0];
6713vinfos[1].indices[1] =
_ij1[1];
6714vinfos[1].maxsolutions =
_nj1;
6715vinfos[2].jointtype = 1;
6716vinfos[2].foffset =
j2;
6717vinfos[2].indices[0] =
_ij2[0];
6718vinfos[2].indices[1] =
_ij2[1];
6719vinfos[2].maxsolutions =
_nj2;
6720vinfos[3].jointtype = 1;
6721vinfos[3].foffset =
j3;
6722vinfos[3].indices[0] =
_ij3[0];
6723vinfos[3].indices[1] =
_ij3[1];
6724vinfos[3].maxsolutions =
_nj3;
6725vinfos[4].jointtype = 1;
6726vinfos[4].foffset =
j4;
6727vinfos[4].indices[0] =
_ij4[0];
6728vinfos[4].indices[1] =
_ij4[1];
6729vinfos[4].maxsolutions =
_nj4;
6730vinfos[5].jointtype = 1;
6731vinfos[5].foffset =
j5;
6732vinfos[5].indices[0] =
_ij5[0];
6733vinfos[5].indices[1] =
_ij5[1];
6734vinfos[5].maxsolutions =
_nj5;
6735std::vector<int> vfree(0);
6748IkReal j3array[1], cj3array[1], sj3array[1];
6749bool j3valid[1]={
false};
6751IkReal x512=((1.0)*gconst2);
6760j3array[0]=((-1.5707963267949)+(x513.
value)+(((1.5707963267949)*(x514.
value))));
6761sj3array[0]=
IKsin(j3array[0]);
6762cj3array[0]=
IKcos(j3array[0]);
6763if( j3array[0] >
IKPI )
6767else if( j3array[0] < -
IKPI )
6771for(
int ij3 = 0; ij3 < 1; ++ij3)
6778for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
6782 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
6785j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
6790IkReal x517=((1.0)*gconst2);
6791IkReal x518=(gconst1*x516);
6792IkReal x519=(gconst2*x516);
6793IkReal x520=(gconst1*x515);
6794IkReal x521=((1.0)*x515);
6795IkReal x522=(x515*x517);
6797evalcond[1]=(x520+x519+
new_r01);
6800evalcond[4]=((((-1.0)*x522))+x518+
new_r00);
6801evalcond[5]=((((-1.0)*x522))+x518+
new_r11);
6803evalcond[7]=((((-1.0)*x520))+(((-1.0)*x516*x517))+
new_r10);
6811std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
6812vinfos[0].jointtype = 1;
6813vinfos[0].foffset =
j0;
6814vinfos[0].indices[0] =
_ij0[0];
6815vinfos[0].indices[1] =
_ij0[1];
6816vinfos[0].maxsolutions =
_nj0;
6817vinfos[1].jointtype = 1;
6818vinfos[1].foffset =
j1;
6819vinfos[1].indices[0] =
_ij1[0];
6820vinfos[1].indices[1] =
_ij1[1];
6821vinfos[1].maxsolutions =
_nj1;
6822vinfos[2].jointtype = 1;
6823vinfos[2].foffset =
j2;
6824vinfos[2].indices[0] =
_ij2[0];
6825vinfos[2].indices[1] =
_ij2[1];
6826vinfos[2].maxsolutions =
_nj2;
6827vinfos[3].jointtype = 1;
6828vinfos[3].foffset =
j3;
6829vinfos[3].indices[0] =
_ij3[0];
6830vinfos[3].indices[1] =
_ij3[1];
6831vinfos[3].maxsolutions =
_nj3;
6832vinfos[4].jointtype = 1;
6833vinfos[4].foffset =
j4;
6834vinfos[4].indices[0] =
_ij4[0];
6835vinfos[4].indices[1] =
_ij4[1];
6836vinfos[4].maxsolutions =
_nj4;
6837vinfos[5].jointtype = 1;
6838vinfos[5].foffset =
j5;
6839vinfos[5].indices[0] =
_ij5[0];
6840vinfos[5].indices[1] =
_ij5[1];
6841vinfos[5].maxsolutions =
_nj5;
6842std::vector<int> vfree(0);
6855IkReal j3array[1], cj3array[1], sj3array[1];
6856bool j3valid[1]={
false};
6867j3array[0]=((-1.5707963267949)+(x524.
value)+(((1.5707963267949)*(x525.
value))));
6868sj3array[0]=
IKsin(j3array[0]);
6869cj3array[0]=
IKcos(j3array[0]);
6870if( j3array[0] >
IKPI )
6874else if( j3array[0] < -
IKPI )
6878for(
int ij3 = 0; ij3 < 1; ++ij3)
6885for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
6889 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
6892j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
6897IkReal x528=((1.0)*gconst2);
6898IkReal x529=(gconst1*x527);
6899IkReal x530=(gconst2*x527);
6900IkReal x531=(gconst1*x526);
6901IkReal x532=((1.0)*x526);
6902IkReal x533=(x526*x528);
6904evalcond[1]=(x531+x530+
new_r01);
6907evalcond[4]=((((-1.0)*x533))+x529+
new_r00);
6908evalcond[5]=((((-1.0)*x533))+x529+
new_r11);
6910evalcond[7]=((((-1.0)*x527*x528))+(((-1.0)*x531))+
new_r10);
6918std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
6919vinfos[0].jointtype = 1;
6920vinfos[0].foffset =
j0;
6921vinfos[0].indices[0] =
_ij0[0];
6922vinfos[0].indices[1] =
_ij0[1];
6923vinfos[0].maxsolutions =
_nj0;
6924vinfos[1].jointtype = 1;
6925vinfos[1].foffset =
j1;
6926vinfos[1].indices[0] =
_ij1[0];
6927vinfos[1].indices[1] =
_ij1[1];
6928vinfos[1].maxsolutions =
_nj1;
6929vinfos[2].jointtype = 1;
6930vinfos[2].foffset =
j2;
6931vinfos[2].indices[0] =
_ij2[0];
6932vinfos[2].indices[1] =
_ij2[1];
6933vinfos[2].maxsolutions =
_nj2;
6934vinfos[3].jointtype = 1;
6935vinfos[3].foffset =
j3;
6936vinfos[3].indices[0] =
_ij3[0];
6937vinfos[3].indices[1] =
_ij3[1];
6938vinfos[3].maxsolutions =
_nj3;
6939vinfos[4].jointtype = 1;
6940vinfos[4].foffset =
j4;
6941vinfos[4].indices[0] =
_ij4[0];
6942vinfos[4].indices[1] =
_ij4[1];
6943vinfos[4].maxsolutions =
_nj4;
6944vinfos[5].jointtype = 1;
6945vinfos[5].foffset =
j5;
6946vinfos[5].indices[0] =
_ij5[0];
6947vinfos[5].indices[1] =
_ij5[1];
6948vinfos[5].maxsolutions =
_nj5;
6949std::vector<int> vfree(0);
6961if( bgotonextstatement )
6963bool bgotonextstatement =
true;
6971IkReal x535=pow(x536,-0.5);
6976IkReal gconst3=((3.14159265358979)+(((-1.0)*(x537.
value))));
6977IkReal gconst4=(x534*x535);
6978IkReal gconst5=((1.0)*
new_r01*x535);
6983evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-3.14159265358979)+(x538.
value)+
j5)))), 6.28318530717959)));
6984if(
IKabs(evalcond[0]) < 0.0000050000000000 )
6986bgotonextstatement=
false;
6994IkReal x540=((1.0)*(x542.
value));
7001j5=((3.14159265)+(((-1.0)*x540)));
7002IkReal gconst3=((3.14159265358979)+(((-1.0)*x540)));
7003IkReal gconst4=(x539*x541);
7004IkReal gconst5=((1.0)*
new_r01*x541);
7012j3eval[1]=((
IKabs((((x543*x547))+(((-1.0)*
new_r00*x548)))))+(
IKabs(((((-1.0)*x544*x548))+(((-1.0)*x545*x548))))));
7014if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
7023IkReal x550=((1.0)*(x552.
value));
7030j5=((3.14159265)+(((-1.0)*x550)));
7031IkReal gconst3=((3.14159265358979)+(((-1.0)*x550)));
7032IkReal gconst4=(x549*x551);
7033IkReal gconst5=((1.0)*
new_r01*x551);
7040IkReal x555=x558.
value;
7041IkReal x556=(x553*x555);
7042IkReal x557=(x554*x555);
7044if(
IKabs(j3eval[0]) < 0.0000010000000000 )
7053IkReal x560=((1.0)*(x562.
value));
7060j5=((3.14159265)+(((-1.0)*x560)));
7061IkReal gconst3=((3.14159265358979)+(((-1.0)*x560)));
7062IkReal gconst4=(x559*x561);
7063IkReal gconst5=((1.0)*
new_r01*x561);
7070IkReal x565=x571.
value;
7071IkReal x566=(x564*x565);
7076IkReal x567=x572.
value;
7077IkReal x568=((1.0)*x567);
7081if(
IKabs(j3eval[0]) < 0.0000010000000000 )
7085bool bgotonextstatement =
true;
7089if(
IKabs(evalcond[0]) < 0.0000050000000000 )
7091bgotonextstatement=
false;
7093IkReal j3array[2], cj3array[2], sj3array[2];
7094bool j3valid[2]={
false};
7103 j3valid[0] = j3valid[1] =
true;
7104 j3array[0] =
IKasin(sj3array[0]);
7105 cj3array[0] =
IKcos(j3array[0]);
7106 sj3array[1] = sj3array[0];
7107 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
7108 cj3array[1] = -cj3array[0];
7110else if( isnan(sj3array[0]) )
7114 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
7116for(
int ij3 = 0; ij3 < 2; ++ij3)
7123for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
7127 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
7130j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
7135IkReal x576=((-1.0)*x574);
7138evalcond[2]=(gconst5*x576);
7139evalcond[3]=(((
new_r01*x575))+gconst5);
7140evalcond[4]=(((gconst5*x575))+
new_r01);
7141evalcond[5]=(((
new_r10*x575))+(((-1.0)*gconst5)));
7149std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
7150vinfos[0].jointtype = 1;
7151vinfos[0].foffset =
j0;
7152vinfos[0].indices[0] =
_ij0[0];
7153vinfos[0].indices[1] =
_ij0[1];
7154vinfos[0].maxsolutions =
_nj0;
7155vinfos[1].jointtype = 1;
7156vinfos[1].foffset =
j1;
7157vinfos[1].indices[0] =
_ij1[0];
7158vinfos[1].indices[1] =
_ij1[1];
7159vinfos[1].maxsolutions =
_nj1;
7160vinfos[2].jointtype = 1;
7161vinfos[2].foffset =
j2;
7162vinfos[2].indices[0] =
_ij2[0];
7163vinfos[2].indices[1] =
_ij2[1];
7164vinfos[2].maxsolutions =
_nj2;
7165vinfos[3].jointtype = 1;
7166vinfos[3].foffset =
j3;
7167vinfos[3].indices[0] =
_ij3[0];
7168vinfos[3].indices[1] =
_ij3[1];
7169vinfos[3].maxsolutions =
_nj3;
7170vinfos[4].jointtype = 1;
7171vinfos[4].foffset =
j4;
7172vinfos[4].indices[0] =
_ij4[0];
7173vinfos[4].indices[1] =
_ij4[1];
7174vinfos[4].maxsolutions =
_nj4;
7175vinfos[5].jointtype = 1;
7176vinfos[5].foffset =
j5;
7177vinfos[5].indices[0] =
_ij5[0];
7178vinfos[5].indices[1] =
_ij5[1];
7179vinfos[5].maxsolutions =
_nj5;
7180std::vector<int> vfree(0);
7188if( bgotonextstatement )
7190bool bgotonextstatement =
true;
7196if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 &&
IKabs(evalcond[2]) < 0.0000050000000000 )
7198bgotonextstatement=
false;
7206IkReal x578=((1.0)*(x579.
value));
7212j5=((3.14159265)+(((-1.0)*x578)));
7217IkReal gconst3=((3.14159265358979)+(((-1.0)*x578)));
7219IkReal gconst5=((1.0)*
new_r01);
7223if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
7232IkReal x581=((1.0)*(x582.
value));
7238j5=((3.14159265)+(((-1.0)*x581)));
7243IkReal gconst3=((3.14159265358979)+(((-1.0)*x581)));
7245IkReal gconst5=((1.0)*
new_r01);
7250if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 ||
IKabs(j3eval[3]) < 0.0000010000000000 )
7259IkReal x584=((1.0)*(x585.
value));
7265j5=((3.14159265)+(((-1.0)*x584)));
7270IkReal gconst3=((3.14159265358979)+(((-1.0)*x584)));
7272IkReal gconst5=((1.0)*
new_r01);
7276if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
7283IkReal j3array[1], cj3array[1], sj3array[1];
7284bool j3valid[1]={
false};
7295j3array[0]=((-1.5707963267949)+(x587.
value)+(((1.5707963267949)*(x588.
value))));
7296sj3array[0]=
IKsin(j3array[0]);
7297cj3array[0]=
IKcos(j3array[0]);
7298if( j3array[0] >
IKPI )
7302else if( j3array[0] < -
IKPI )
7306for(
int ij3 = 0; ij3 < 1; ++ij3)
7313for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
7317 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
7320j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
7325IkReal x591=(gconst4*x589);
7326IkReal x592=(gconst4*x590);
7327IkReal x593=((1.0)*x590);
7328IkReal x594=(gconst5*x589);
7329IkReal x595=(gconst5*x593);
7331evalcond[1]=(x594+x592+
new_r01);
7332evalcond[2]=((((-1.0)*x595))+x591);
7334evalcond[4]=((((-1.0)*x595))+x591+
new_r11);
7335evalcond[5]=((((-1.0)*x594))+(((-1.0)*x592)));
7343std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
7344vinfos[0].jointtype = 1;
7345vinfos[0].foffset =
j0;
7346vinfos[0].indices[0] =
_ij0[0];
7347vinfos[0].indices[1] =
_ij0[1];
7348vinfos[0].maxsolutions =
_nj0;
7349vinfos[1].jointtype = 1;
7350vinfos[1].foffset =
j1;
7351vinfos[1].indices[0] =
_ij1[0];
7352vinfos[1].indices[1] =
_ij1[1];
7353vinfos[1].maxsolutions =
_nj1;
7354vinfos[2].jointtype = 1;
7355vinfos[2].foffset =
j2;
7356vinfos[2].indices[0] =
_ij2[0];
7357vinfos[2].indices[1] =
_ij2[1];
7358vinfos[2].maxsolutions =
_nj2;
7359vinfos[3].jointtype = 1;
7360vinfos[3].foffset =
j3;
7361vinfos[3].indices[0] =
_ij3[0];
7362vinfos[3].indices[1] =
_ij3[1];
7363vinfos[3].maxsolutions =
_nj3;
7364vinfos[4].jointtype = 1;
7365vinfos[4].foffset =
j4;
7366vinfos[4].indices[0] =
_ij4[0];
7367vinfos[4].indices[1] =
_ij4[1];
7368vinfos[4].maxsolutions =
_nj4;
7369vinfos[5].jointtype = 1;
7370vinfos[5].foffset =
j5;
7371vinfos[5].indices[0] =
_ij5[0];
7372vinfos[5].indices[1] =
_ij5[1];
7373vinfos[5].maxsolutions =
_nj5;
7374std::vector<int> vfree(0);
7387IkReal j3array[1], cj3array[1], sj3array[1];
7388bool j3valid[1]={
false};
7398j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x596.
value)))+(x597.
value));
7399sj3array[0]=
IKsin(j3array[0]);
7400cj3array[0]=
IKcos(j3array[0]);
7401if( j3array[0] >
IKPI )
7405else if( j3array[0] < -
IKPI )
7409for(
int ij3 = 0; ij3 < 1; ++ij3)
7416for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
7420 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
7423j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
7428IkReal x600=(gconst4*x598);
7429IkReal x601=(gconst4*x599);
7430IkReal x602=((1.0)*x599);
7431IkReal x603=(gconst5*x598);
7432IkReal x604=(gconst5*x602);
7434evalcond[1]=(x603+x601+
new_r01);
7435evalcond[2]=(x600+(((-1.0)*x604)));
7437evalcond[4]=(x600+(((-1.0)*x604))+
new_r11);
7438evalcond[5]=((((-1.0)*x601))+(((-1.0)*x603)));
7446std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
7447vinfos[0].jointtype = 1;
7448vinfos[0].foffset =
j0;
7449vinfos[0].indices[0] =
_ij0[0];
7450vinfos[0].indices[1] =
_ij0[1];
7451vinfos[0].maxsolutions =
_nj0;
7452vinfos[1].jointtype = 1;
7453vinfos[1].foffset =
j1;
7454vinfos[1].indices[0] =
_ij1[0];
7455vinfos[1].indices[1] =
_ij1[1];
7456vinfos[1].maxsolutions =
_nj1;
7457vinfos[2].jointtype = 1;
7458vinfos[2].foffset =
j2;
7459vinfos[2].indices[0] =
_ij2[0];
7460vinfos[2].indices[1] =
_ij2[1];
7461vinfos[2].maxsolutions =
_nj2;
7462vinfos[3].jointtype = 1;
7463vinfos[3].foffset =
j3;
7464vinfos[3].indices[0] =
_ij3[0];
7465vinfos[3].indices[1] =
_ij3[1];
7466vinfos[3].maxsolutions =
_nj3;
7467vinfos[4].jointtype = 1;
7468vinfos[4].foffset =
j4;
7469vinfos[4].indices[0] =
_ij4[0];
7470vinfos[4].indices[1] =
_ij4[1];
7471vinfos[4].maxsolutions =
_nj4;
7472vinfos[5].jointtype = 1;
7473vinfos[5].foffset =
j5;
7474vinfos[5].indices[0] =
_ij5[0];
7475vinfos[5].indices[1] =
_ij5[1];
7476vinfos[5].maxsolutions =
_nj5;
7477std::vector<int> vfree(0);
7490IkReal j3array[1], cj3array[1], sj3array[1];
7491bool j3valid[1]={
false};
7501j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x605.
value)))+(x606.
value));
7502sj3array[0]=
IKsin(j3array[0]);
7503cj3array[0]=
IKcos(j3array[0]);
7504if( j3array[0] >
IKPI )
7508else if( j3array[0] < -
IKPI )
7512for(
int ij3 = 0; ij3 < 1; ++ij3)
7519for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
7523 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
7526j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
7531IkReal x609=(gconst4*x607);
7532IkReal x610=(gconst4*x608);
7533IkReal x611=((1.0)*x608);
7534IkReal x612=(gconst5*x607);
7535IkReal x613=(gconst5*x611);
7537evalcond[1]=(x610+x612+
new_r01);
7538evalcond[2]=((((-1.0)*x613))+x609);
7540evalcond[4]=((((-1.0)*x613))+x609+
new_r11);
7541evalcond[5]=((((-1.0)*x610))+(((-1.0)*x612)));
7549std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
7550vinfos[0].jointtype = 1;
7551vinfos[0].foffset =
j0;
7552vinfos[0].indices[0] =
_ij0[0];
7553vinfos[0].indices[1] =
_ij0[1];
7554vinfos[0].maxsolutions =
_nj0;
7555vinfos[1].jointtype = 1;
7556vinfos[1].foffset =
j1;
7557vinfos[1].indices[0] =
_ij1[0];
7558vinfos[1].indices[1] =
_ij1[1];
7559vinfos[1].maxsolutions =
_nj1;
7560vinfos[2].jointtype = 1;
7561vinfos[2].foffset =
j2;
7562vinfos[2].indices[0] =
_ij2[0];
7563vinfos[2].indices[1] =
_ij2[1];
7564vinfos[2].maxsolutions =
_nj2;
7565vinfos[3].jointtype = 1;
7566vinfos[3].foffset =
j3;
7567vinfos[3].indices[0] =
_ij3[0];
7568vinfos[3].indices[1] =
_ij3[1];
7569vinfos[3].maxsolutions =
_nj3;
7570vinfos[4].jointtype = 1;
7571vinfos[4].foffset =
j4;
7572vinfos[4].indices[0] =
_ij4[0];
7573vinfos[4].indices[1] =
_ij4[1];
7574vinfos[4].maxsolutions =
_nj4;
7575vinfos[5].jointtype = 1;
7576vinfos[5].foffset =
j5;
7577vinfos[5].indices[0] =
_ij5[0];
7578vinfos[5].indices[1] =
_ij5[1];
7579vinfos[5].maxsolutions =
_nj5;
7580std::vector<int> vfree(0);
7592if( bgotonextstatement )
7594bool bgotonextstatement =
true;
7598if(
IKabs(evalcond[0]) < 0.0000050000000000 )
7600bgotonextstatement=
false;
7608IkReal x615=((1.0)*(x616.
value));
7614j5=((3.14159265)+(((-1.0)*x615)));
7617IkReal gconst3=((3.14159265358979)+(((-1.0)*x615)));
7622IkReal gconst4=(x614*(pow(x617,-0.5)));
7625if(
IKabs(j3eval[0]) < 0.0000010000000000 )
7634IkReal x619=((1.0)*(x620.
value));
7640j5=((3.14159265)+(((-1.0)*x619)));
7643IkReal gconst3=((3.14159265358979)+(((-1.0)*x619)));
7648IkReal gconst4=(x618*(pow(x621,-0.5)));
7651if(
IKabs(j3eval[0]) < 0.0000010000000000 )
7654IkReal j3array[2], cj3array[2], sj3array[2];
7655bool j3valid[2]={
false};
7664 j3valid[0] = j3valid[1] =
true;
7665 j3array[0] =
IKasin(sj3array[0]);
7666 cj3array[0] =
IKcos(j3array[0]);
7667 sj3array[1] = sj3array[0];
7668 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
7669 cj3array[1] = -cj3array[0];
7671else if( isnan(sj3array[0]) )
7675 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
7677for(
int ij3 = 0; ij3 < 2; ++ij3)
7684for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
7688 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
7691j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
7696evalcond[0]=(gconst4*x623);
7698evalcond[2]=((-1.0)*
new_r11*x623);
7699evalcond[3]=(gconst4+((
new_r00*x624)));
7700evalcond[4]=(gconst4+((
new_r11*x624)));
7701evalcond[5]=(((gconst4*x624))+
new_r11);
7709std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
7710vinfos[0].jointtype = 1;
7711vinfos[0].foffset =
j0;
7712vinfos[0].indices[0] =
_ij0[0];
7713vinfos[0].indices[1] =
_ij0[1];
7714vinfos[0].maxsolutions =
_nj0;
7715vinfos[1].jointtype = 1;
7716vinfos[1].foffset =
j1;
7717vinfos[1].indices[0] =
_ij1[0];
7718vinfos[1].indices[1] =
_ij1[1];
7719vinfos[1].maxsolutions =
_nj1;
7720vinfos[2].jointtype = 1;
7721vinfos[2].foffset =
j2;
7722vinfos[2].indices[0] =
_ij2[0];
7723vinfos[2].indices[1] =
_ij2[1];
7724vinfos[2].maxsolutions =
_nj2;
7725vinfos[3].jointtype = 1;
7726vinfos[3].foffset =
j3;
7727vinfos[3].indices[0] =
_ij3[0];
7728vinfos[3].indices[1] =
_ij3[1];
7729vinfos[3].maxsolutions =
_nj3;
7730vinfos[4].jointtype = 1;
7731vinfos[4].foffset =
j4;
7732vinfos[4].indices[0] =
_ij4[0];
7733vinfos[4].indices[1] =
_ij4[1];
7734vinfos[4].maxsolutions =
_nj4;
7735vinfos[5].jointtype = 1;
7736vinfos[5].foffset =
j5;
7737vinfos[5].indices[0] =
_ij5[0];
7738vinfos[5].indices[1] =
_ij5[1];
7739vinfos[5].maxsolutions =
_nj5;
7740std::vector<int> vfree(0);
7749IkReal j3array[2], cj3array[2], sj3array[2];
7750bool j3valid[2]={
false};
7756sj3array[0]=((-1.0)*gconst4*(x625.
value));
7759 j3valid[0] = j3valid[1] =
true;
7760 j3array[0] =
IKasin(sj3array[0]);
7761 cj3array[0] =
IKcos(j3array[0]);
7762 sj3array[1] = sj3array[0];
7763 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
7764 cj3array[1] = -cj3array[0];
7766else if( isnan(sj3array[0]) )
7770 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
7772for(
int ij3 = 0; ij3 < 2; ++ij3)
7779for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
7783 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
7786j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
7791IkReal x628=(gconst4*x627);
7792evalcond[0]=(gconst4*x626);
7794evalcond[2]=((-1.0)*
new_r11*x626);
7795evalcond[3]=(gconst4+((
new_r00*x627)));
7805std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
7806vinfos[0].jointtype = 1;
7807vinfos[0].foffset =
j0;
7808vinfos[0].indices[0] =
_ij0[0];
7809vinfos[0].indices[1] =
_ij0[1];
7810vinfos[0].maxsolutions =
_nj0;
7811vinfos[1].jointtype = 1;
7812vinfos[1].foffset =
j1;
7813vinfos[1].indices[0] =
_ij1[0];
7814vinfos[1].indices[1] =
_ij1[1];
7815vinfos[1].maxsolutions =
_nj1;
7816vinfos[2].jointtype = 1;
7817vinfos[2].foffset =
j2;
7818vinfos[2].indices[0] =
_ij2[0];
7819vinfos[2].indices[1] =
_ij2[1];
7820vinfos[2].maxsolutions =
_nj2;
7821vinfos[3].jointtype = 1;
7822vinfos[3].foffset =
j3;
7823vinfos[3].indices[0] =
_ij3[0];
7824vinfos[3].indices[1] =
_ij3[1];
7825vinfos[3].maxsolutions =
_nj3;
7826vinfos[4].jointtype = 1;
7827vinfos[4].foffset =
j4;
7828vinfos[4].indices[0] =
_ij4[0];
7829vinfos[4].indices[1] =
_ij4[1];
7830vinfos[4].maxsolutions =
_nj4;
7831vinfos[5].jointtype = 1;
7832vinfos[5].foffset =
j5;
7833vinfos[5].indices[0] =
_ij5[0];
7834vinfos[5].indices[1] =
_ij5[1];
7835vinfos[5].maxsolutions =
_nj5;
7836std::vector<int> vfree(0);
7849IkReal j3array[2], cj3array[2], sj3array[2];
7850bool j3valid[2]={
false};
7856sj3array[0]=((-1.0)*gconst4*(x629.
value));
7859 j3valid[0] = j3valid[1] =
true;
7860 j3array[0] =
IKasin(sj3array[0]);
7861 cj3array[0] =
IKcos(j3array[0]);
7862 sj3array[1] = sj3array[0];
7863 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
7864 cj3array[1] = -cj3array[0];
7866else if( isnan(sj3array[0]) )
7870 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
7872for(
int ij3 = 0; ij3 < 2; ++ij3)
7879for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
7883 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
7886j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
7891IkReal x632=(gconst4*x631);
7892evalcond[0]=(gconst4*x630);
7894evalcond[2]=((-1.0)*
new_r11*x630);
7895evalcond[3]=(gconst4+((
new_r11*x631)));
7905std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
7906vinfos[0].jointtype = 1;
7907vinfos[0].foffset =
j0;
7908vinfos[0].indices[0] =
_ij0[0];
7909vinfos[0].indices[1] =
_ij0[1];
7910vinfos[0].maxsolutions =
_nj0;
7911vinfos[1].jointtype = 1;
7912vinfos[1].foffset =
j1;
7913vinfos[1].indices[0] =
_ij1[0];
7914vinfos[1].indices[1] =
_ij1[1];
7915vinfos[1].maxsolutions =
_nj1;
7916vinfos[2].jointtype = 1;
7917vinfos[2].foffset =
j2;
7918vinfos[2].indices[0] =
_ij2[0];
7919vinfos[2].indices[1] =
_ij2[1];
7920vinfos[2].maxsolutions =
_nj2;
7921vinfos[3].jointtype = 1;
7922vinfos[3].foffset =
j3;
7923vinfos[3].indices[0] =
_ij3[0];
7924vinfos[3].indices[1] =
_ij3[1];
7925vinfos[3].maxsolutions =
_nj3;
7926vinfos[4].jointtype = 1;
7927vinfos[4].foffset =
j4;
7928vinfos[4].indices[0] =
_ij4[0];
7929vinfos[4].indices[1] =
_ij4[1];
7930vinfos[4].maxsolutions =
_nj4;
7931vinfos[5].jointtype = 1;
7932vinfos[5].foffset =
j5;
7933vinfos[5].indices[0] =
_ij5[0];
7934vinfos[5].indices[1] =
_ij5[1];
7935vinfos[5].maxsolutions =
_nj5;
7936std::vector<int> vfree(0);
7948if( bgotonextstatement )
7950bool bgotonextstatement =
true;
7954if(
IKabs(evalcond[0]) < 0.0000050000000000 )
7956bgotonextstatement=
false;
7963IkReal x633=((1.0)*(x634.
value));
7969j5=((3.14159265)+(((-1.0)*x633)));
7971IkReal gconst3=((3.14159265358979)+(((-1.0)*x633)));
7977IkReal gconst5=((1.0)*
new_r01*(pow(x635,-0.5)));
7979if(
IKabs(j3eval[0]) < 0.0000010000000000 )
7987IkReal x636=((1.0)*(x637.
value));
7993j5=((3.14159265)+(((-1.0)*x636)));
7995IkReal gconst3=((3.14159265358979)+(((-1.0)*x636)));
8001IkReal gconst5=((1.0)*
new_r01*(pow(x638,-0.5)));
8003if(
IKabs(j3eval[0]) < 0.0000010000000000 )
8011IkReal x639=((1.0)*(x640.
value));
8017j5=((3.14159265)+(((-1.0)*x639)));
8019IkReal gconst3=((3.14159265358979)+(((-1.0)*x639)));
8025IkReal gconst5=((1.0)*
new_r01*(pow(x641,-0.5)));
8027if(
IKabs(j3eval[0]) < 0.0000010000000000 )
8034IkReal j3array[1], cj3array[1], sj3array[1];
8035bool j3valid[1]={
false};
8048sj3array[0]=
IKsin(j3array[0]);
8049cj3array[0]=
IKcos(j3array[0]);
8050if( j3array[0] >
IKPI )
8054else if( j3array[0] < -
IKPI )
8058for(
int ij3 = 0; ij3 < 1; ++ij3)
8065for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
8069 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
8072j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
8077IkReal x646=((1.0)*gconst5);
8079evalcond[1]=((-1.0)*gconst5*x644);
8080evalcond[2]=(gconst5+((
new_r01*x645)));
8081evalcond[3]=(
new_r01+((gconst5*x645)));
8082evalcond[4]=((((-1.0)*x644*x646))+
new_r00);
8083evalcond[5]=((((-1.0)*x645*x646))+
new_r10);
8093std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
8094vinfos[0].jointtype = 1;
8095vinfos[0].foffset =
j0;
8096vinfos[0].indices[0] =
_ij0[0];
8097vinfos[0].indices[1] =
_ij0[1];
8098vinfos[0].maxsolutions =
_nj0;
8099vinfos[1].jointtype = 1;
8100vinfos[1].foffset =
j1;
8101vinfos[1].indices[0] =
_ij1[0];
8102vinfos[1].indices[1] =
_ij1[1];
8103vinfos[1].maxsolutions =
_nj1;
8104vinfos[2].jointtype = 1;
8105vinfos[2].foffset =
j2;
8106vinfos[2].indices[0] =
_ij2[0];
8107vinfos[2].indices[1] =
_ij2[1];
8108vinfos[2].maxsolutions =
_nj2;
8109vinfos[3].jointtype = 1;
8110vinfos[3].foffset =
j3;
8111vinfos[3].indices[0] =
_ij3[0];
8112vinfos[3].indices[1] =
_ij3[1];
8113vinfos[3].maxsolutions =
_nj3;
8114vinfos[4].jointtype = 1;
8115vinfos[4].foffset =
j4;
8116vinfos[4].indices[0] =
_ij4[0];
8117vinfos[4].indices[1] =
_ij4[1];
8118vinfos[4].maxsolutions =
_nj4;
8119vinfos[5].jointtype = 1;
8120vinfos[5].foffset =
j5;
8121vinfos[5].indices[0] =
_ij5[0];
8122vinfos[5].indices[1] =
_ij5[1];
8123vinfos[5].maxsolutions =
_nj5;
8124std::vector<int> vfree(0);
8137IkReal j3array[1], cj3array[1], sj3array[1];
8138bool j3valid[1]={
false};
8148j3array[0]=((-1.5707963267949)+(x647.
value)+(((1.5707963267949)*(x648.
value))));
8149sj3array[0]=
IKsin(j3array[0]);
8150cj3array[0]=
IKcos(j3array[0]);
8151if( j3array[0] >
IKPI )
8155else if( j3array[0] < -
IKPI )
8159for(
int ij3 = 0; ij3 < 1; ++ij3)
8166for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
8170 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
8173j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
8178IkReal x651=((1.0)*gconst5);
8180evalcond[1]=((-1.0)*gconst5*x649);
8181evalcond[2]=(gconst5+((
new_r01*x650)));
8182evalcond[3]=(
new_r01+((gconst5*x650)));
8183evalcond[4]=((((-1.0)*x649*x651))+
new_r00);
8184evalcond[5]=((((-1.0)*x650*x651))+
new_r10);
8194std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
8195vinfos[0].jointtype = 1;
8196vinfos[0].foffset =
j0;
8197vinfos[0].indices[0] =
_ij0[0];
8198vinfos[0].indices[1] =
_ij0[1];
8199vinfos[0].maxsolutions =
_nj0;
8200vinfos[1].jointtype = 1;
8201vinfos[1].foffset =
j1;
8202vinfos[1].indices[0] =
_ij1[0];
8203vinfos[1].indices[1] =
_ij1[1];
8204vinfos[1].maxsolutions =
_nj1;
8205vinfos[2].jointtype = 1;
8206vinfos[2].foffset =
j2;
8207vinfos[2].indices[0] =
_ij2[0];
8208vinfos[2].indices[1] =
_ij2[1];
8209vinfos[2].maxsolutions =
_nj2;
8210vinfos[3].jointtype = 1;
8211vinfos[3].foffset =
j3;
8212vinfos[3].indices[0] =
_ij3[0];
8213vinfos[3].indices[1] =
_ij3[1];
8214vinfos[3].maxsolutions =
_nj3;
8215vinfos[4].jointtype = 1;
8216vinfos[4].foffset =
j4;
8217vinfos[4].indices[0] =
_ij4[0];
8218vinfos[4].indices[1] =
_ij4[1];
8219vinfos[4].maxsolutions =
_nj4;
8220vinfos[5].jointtype = 1;
8221vinfos[5].foffset =
j5;
8222vinfos[5].indices[0] =
_ij5[0];
8223vinfos[5].indices[1] =
_ij5[1];
8224vinfos[5].maxsolutions =
_nj5;
8225std::vector<int> vfree(0);
8238IkReal j3array[1], cj3array[1], sj3array[1];
8239bool j3valid[1]={
false};
8249j3array[0]=((-1.5707963267949)+(x652.
value)+(((1.5707963267949)*(x653.
value))));
8250sj3array[0]=
IKsin(j3array[0]);
8251cj3array[0]=
IKcos(j3array[0]);
8252if( j3array[0] >
IKPI )
8256else if( j3array[0] < -
IKPI )
8260for(
int ij3 = 0; ij3 < 1; ++ij3)
8267for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
8271 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
8274j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
8279IkReal x656=((1.0)*gconst5);
8281evalcond[1]=((-1.0)*gconst5*x654);
8282evalcond[2]=(gconst5+((
new_r01*x655)));
8283evalcond[3]=(
new_r01+((gconst5*x655)));
8284evalcond[4]=(
new_r00+(((-1.0)*x654*x656)));
8285evalcond[5]=((((-1.0)*x655*x656))+
new_r10);
8295std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
8296vinfos[0].jointtype = 1;
8297vinfos[0].foffset =
j0;
8298vinfos[0].indices[0] =
_ij0[0];
8299vinfos[0].indices[1] =
_ij0[1];
8300vinfos[0].maxsolutions =
_nj0;
8301vinfos[1].jointtype = 1;
8302vinfos[1].foffset =
j1;
8303vinfos[1].indices[0] =
_ij1[0];
8304vinfos[1].indices[1] =
_ij1[1];
8305vinfos[1].maxsolutions =
_nj1;
8306vinfos[2].jointtype = 1;
8307vinfos[2].foffset =
j2;
8308vinfos[2].indices[0] =
_ij2[0];
8309vinfos[2].indices[1] =
_ij2[1];
8310vinfos[2].maxsolutions =
_nj2;
8311vinfos[3].jointtype = 1;
8312vinfos[3].foffset =
j3;
8313vinfos[3].indices[0] =
_ij3[0];
8314vinfos[3].indices[1] =
_ij3[1];
8315vinfos[3].maxsolutions =
_nj3;
8316vinfos[4].jointtype = 1;
8317vinfos[4].foffset =
j4;
8318vinfos[4].indices[0] =
_ij4[0];
8319vinfos[4].indices[1] =
_ij4[1];
8320vinfos[4].maxsolutions =
_nj4;
8321vinfos[5].jointtype = 1;
8322vinfos[5].foffset =
j5;
8323vinfos[5].indices[0] =
_ij5[0];
8324vinfos[5].indices[1] =
_ij5[1];
8325vinfos[5].maxsolutions =
_nj5;
8326std::vector<int> vfree(0);
8338if( bgotonextstatement )
8340bool bgotonextstatement =
true;
8345bgotonextstatement=
false;
8350if( bgotonextstatement )
8362IkReal j3array[1], cj3array[1], sj3array[1];
8363bool j3valid[1]={
false};
8374j3array[0]=((-1.5707963267949)+(x658.
value)+(((1.5707963267949)*(x659.
value))));
8375sj3array[0]=
IKsin(j3array[0]);
8376cj3array[0]=
IKcos(j3array[0]);
8377if( j3array[0] >
IKPI )
8381else if( j3array[0] < -
IKPI )
8385for(
int ij3 = 0; ij3 < 1; ++ij3)
8392for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
8396 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
8399j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
8404IkReal x662=((1.0)*gconst5);
8405IkReal x663=(gconst4*x660);
8406IkReal x664=(gconst4*x661);
8407IkReal x665=((1.0)*x661);
8408IkReal x666=(x661*x662);
8410evalcond[1]=(((gconst5*x660))+x664+
new_r01);
8413evalcond[4]=((((-1.0)*x666))+x663+
new_r00);
8414evalcond[5]=((((-1.0)*x666))+x663+
new_r11);
8416evalcond[7]=((((-1.0)*x660*x662))+(((-1.0)*x664))+
new_r10);
8424std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
8425vinfos[0].jointtype = 1;
8426vinfos[0].foffset =
j0;
8427vinfos[0].indices[0] =
_ij0[0];
8428vinfos[0].indices[1] =
_ij0[1];
8429vinfos[0].maxsolutions =
_nj0;
8430vinfos[1].jointtype = 1;
8431vinfos[1].foffset =
j1;
8432vinfos[1].indices[0] =
_ij1[0];
8433vinfos[1].indices[1] =
_ij1[1];
8434vinfos[1].maxsolutions =
_nj1;
8435vinfos[2].jointtype = 1;
8436vinfos[2].foffset =
j2;
8437vinfos[2].indices[0] =
_ij2[0];
8438vinfos[2].indices[1] =
_ij2[1];
8439vinfos[2].maxsolutions =
_nj2;
8440vinfos[3].jointtype = 1;
8441vinfos[3].foffset =
j3;
8442vinfos[3].indices[0] =
_ij3[0];
8443vinfos[3].indices[1] =
_ij3[1];
8444vinfos[3].maxsolutions =
_nj3;
8445vinfos[4].jointtype = 1;
8446vinfos[4].foffset =
j4;
8447vinfos[4].indices[0] =
_ij4[0];
8448vinfos[4].indices[1] =
_ij4[1];
8449vinfos[4].maxsolutions =
_nj4;
8450vinfos[5].jointtype = 1;
8451vinfos[5].foffset =
j5;
8452vinfos[5].indices[0] =
_ij5[0];
8453vinfos[5].indices[1] =
_ij5[1];
8454vinfos[5].maxsolutions =
_nj5;
8455std::vector<int> vfree(0);
8468IkReal j3array[1], cj3array[1], sj3array[1];
8469bool j3valid[1]={
false};
8471IkReal x667=((1.0)*gconst4);
8480j3array[0]=((-1.5707963267949)+(x668.
value)+(((1.5707963267949)*(x669.
value))));
8481sj3array[0]=
IKsin(j3array[0]);
8482cj3array[0]=
IKcos(j3array[0]);
8483if( j3array[0] >
IKPI )
8487else if( j3array[0] < -
IKPI )
8491for(
int ij3 = 0; ij3 < 1; ++ij3)
8498for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
8502 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
8505j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
8510IkReal x672=((1.0)*gconst5);
8511IkReal x673=(gconst4*x670);
8512IkReal x674=(gconst4*x671);
8513IkReal x675=((1.0)*x671);
8514IkReal x676=(x671*x672);
8516evalcond[1]=(((gconst5*x670))+x674+
new_r01);
8519evalcond[4]=(x673+
new_r00+(((-1.0)*x676)));
8520evalcond[5]=(x673+
new_r11+(((-1.0)*x676)));
8522evalcond[7]=((((-1.0)*x670*x672))+(((-1.0)*x674))+
new_r10);
8530std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
8531vinfos[0].jointtype = 1;
8532vinfos[0].foffset =
j0;
8533vinfos[0].indices[0] =
_ij0[0];
8534vinfos[0].indices[1] =
_ij0[1];
8535vinfos[0].maxsolutions =
_nj0;
8536vinfos[1].jointtype = 1;
8537vinfos[1].foffset =
j1;
8538vinfos[1].indices[0] =
_ij1[0];
8539vinfos[1].indices[1] =
_ij1[1];
8540vinfos[1].maxsolutions =
_nj1;
8541vinfos[2].jointtype = 1;
8542vinfos[2].foffset =
j2;
8543vinfos[2].indices[0] =
_ij2[0];
8544vinfos[2].indices[1] =
_ij2[1];
8545vinfos[2].maxsolutions =
_nj2;
8546vinfos[3].jointtype = 1;
8547vinfos[3].foffset =
j3;
8548vinfos[3].indices[0] =
_ij3[0];
8549vinfos[3].indices[1] =
_ij3[1];
8550vinfos[3].maxsolutions =
_nj3;
8551vinfos[4].jointtype = 1;
8552vinfos[4].foffset =
j4;
8553vinfos[4].indices[0] =
_ij4[0];
8554vinfos[4].indices[1] =
_ij4[1];
8555vinfos[4].maxsolutions =
_nj4;
8556vinfos[5].jointtype = 1;
8557vinfos[5].foffset =
j5;
8558vinfos[5].indices[0] =
_ij5[0];
8559vinfos[5].indices[1] =
_ij5[1];
8560vinfos[5].maxsolutions =
_nj5;
8561std::vector<int> vfree(0);
8574IkReal j3array[1], cj3array[1], sj3array[1];
8575bool j3valid[1]={
false};
8586j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x678.
value)))+(x679.
value));
8587sj3array[0]=
IKsin(j3array[0]);
8588cj3array[0]=
IKcos(j3array[0]);
8589if( j3array[0] >
IKPI )
8593else if( j3array[0] < -
IKPI )
8597for(
int ij3 = 0; ij3 < 1; ++ij3)
8604for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
8608 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
8611j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
8616IkReal x682=((1.0)*gconst5);
8617IkReal x683=(gconst4*x680);
8618IkReal x684=(gconst4*x681);
8619IkReal x685=((1.0)*x681);
8620IkReal x686=(x681*x682);
8622evalcond[1]=(((gconst5*x680))+x684+
new_r01);
8625evalcond[4]=((((-1.0)*x686))+x683+
new_r00);
8626evalcond[5]=((((-1.0)*x686))+x683+
new_r11);
8628evalcond[7]=((((-1.0)*x680*x682))+
new_r10+(((-1.0)*x684)));
8636std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
8637vinfos[0].jointtype = 1;
8638vinfos[0].foffset =
j0;
8639vinfos[0].indices[0] =
_ij0[0];
8640vinfos[0].indices[1] =
_ij0[1];
8641vinfos[0].maxsolutions =
_nj0;
8642vinfos[1].jointtype = 1;
8643vinfos[1].foffset =
j1;
8644vinfos[1].indices[0] =
_ij1[0];
8645vinfos[1].indices[1] =
_ij1[1];
8646vinfos[1].maxsolutions =
_nj1;
8647vinfos[2].jointtype = 1;
8648vinfos[2].foffset =
j2;
8649vinfos[2].indices[0] =
_ij2[0];
8650vinfos[2].indices[1] =
_ij2[1];
8651vinfos[2].maxsolutions =
_nj2;
8652vinfos[3].jointtype = 1;
8653vinfos[3].foffset =
j3;
8654vinfos[3].indices[0] =
_ij3[0];
8655vinfos[3].indices[1] =
_ij3[1];
8656vinfos[3].maxsolutions =
_nj3;
8657vinfos[4].jointtype = 1;
8658vinfos[4].foffset =
j4;
8659vinfos[4].indices[0] =
_ij4[0];
8660vinfos[4].indices[1] =
_ij4[1];
8661vinfos[4].maxsolutions =
_nj4;
8662vinfos[5].jointtype = 1;
8663vinfos[5].foffset =
j5;
8664vinfos[5].indices[0] =
_ij5[0];
8665vinfos[5].indices[1] =
_ij5[1];
8666vinfos[5].maxsolutions =
_nj5;
8667std::vector<int> vfree(0);
8679if( bgotonextstatement )
8681bool bgotonextstatement =
true;
8684evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(
j5))), 6.28318530717959)));
8685if(
IKabs(evalcond[0]) < 0.0000050000000000 )
8687bgotonextstatement=
false;
8689IkReal j3array[1], cj3array[1], sj3array[1];
8690bool j3valid[1]={
false};
8695sj3array[0]=
IKsin(j3array[0]);
8696cj3array[0]=
IKcos(j3array[0]);
8697if( j3array[0] >
IKPI )
8701else if( j3array[0] < -
IKPI )
8705for(
int ij3 = 0; ij3 < 1; ++ij3)
8712for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
8716 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
8719j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
8724IkReal x689=((1.0)*x688);
8726evalcond[1]=((((-1.0)*x689))+
new_r00);
8727evalcond[2]=((((-1.0)*x689))+
new_r11);
8728evalcond[3]=(
new_r10+(((-1.0)*x687)));
8740std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
8741vinfos[0].jointtype = 1;
8742vinfos[0].foffset =
j0;
8743vinfos[0].indices[0] =
_ij0[0];
8744vinfos[0].indices[1] =
_ij0[1];
8745vinfos[0].maxsolutions =
_nj0;
8746vinfos[1].jointtype = 1;
8747vinfos[1].foffset =
j1;
8748vinfos[1].indices[0] =
_ij1[0];
8749vinfos[1].indices[1] =
_ij1[1];
8750vinfos[1].maxsolutions =
_nj1;
8751vinfos[2].jointtype = 1;
8752vinfos[2].foffset =
j2;
8753vinfos[2].indices[0] =
_ij2[0];
8754vinfos[2].indices[1] =
_ij2[1];
8755vinfos[2].maxsolutions =
_nj2;
8756vinfos[3].jointtype = 1;
8757vinfos[3].foffset =
j3;
8758vinfos[3].indices[0] =
_ij3[0];
8759vinfos[3].indices[1] =
_ij3[1];
8760vinfos[3].maxsolutions =
_nj3;
8761vinfos[4].jointtype = 1;
8762vinfos[4].foffset =
j4;
8763vinfos[4].indices[0] =
_ij4[0];
8764vinfos[4].indices[1] =
_ij4[1];
8765vinfos[4].maxsolutions =
_nj4;
8766vinfos[5].jointtype = 1;
8767vinfos[5].foffset =
j5;
8768vinfos[5].indices[0] =
_ij5[0];
8769vinfos[5].indices[1] =
_ij5[1];
8770vinfos[5].maxsolutions =
_nj5;
8771std::vector<int> vfree(0);
8779if( bgotonextstatement )
8781bool bgotonextstatement =
true;
8784evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-3.14159265358979)+
j5)))), 6.28318530717959)));
8785if(
IKabs(evalcond[0]) < 0.0000050000000000 )
8787bgotonextstatement=
false;
8789IkReal j3array[1], cj3array[1], sj3array[1];
8790bool j3valid[1]={
false};
8795sj3array[0]=
IKsin(j3array[0]);
8796cj3array[0]=
IKcos(j3array[0]);
8797if( j3array[0] >
IKPI )
8801else if( j3array[0] < -
IKPI )
8805for(
int ij3 = 0; ij3 < 1; ++ij3)
8812for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
8816 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
8819j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
8824IkReal x692=((1.0)*x690);
8828evalcond[3]=(
new_r01+(((-1.0)*x691)));
8840std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
8841vinfos[0].jointtype = 1;
8842vinfos[0].foffset =
j0;
8843vinfos[0].indices[0] =
_ij0[0];
8844vinfos[0].indices[1] =
_ij0[1];
8845vinfos[0].maxsolutions =
_nj0;
8846vinfos[1].jointtype = 1;
8847vinfos[1].foffset =
j1;
8848vinfos[1].indices[0] =
_ij1[0];
8849vinfos[1].indices[1] =
_ij1[1];
8850vinfos[1].maxsolutions =
_nj1;
8851vinfos[2].jointtype = 1;
8852vinfos[2].foffset =
j2;
8853vinfos[2].indices[0] =
_ij2[0];
8854vinfos[2].indices[1] =
_ij2[1];
8855vinfos[2].maxsolutions =
_nj2;
8856vinfos[3].jointtype = 1;
8857vinfos[3].foffset =
j3;
8858vinfos[3].indices[0] =
_ij3[0];
8859vinfos[3].indices[1] =
_ij3[1];
8860vinfos[3].maxsolutions =
_nj3;
8861vinfos[4].jointtype = 1;
8862vinfos[4].foffset =
j4;
8863vinfos[4].indices[0] =
_ij4[0];
8864vinfos[4].indices[1] =
_ij4[1];
8865vinfos[4].maxsolutions =
_nj4;
8866vinfos[5].jointtype = 1;
8867vinfos[5].foffset =
j5;
8868vinfos[5].indices[0] =
_ij5[0];
8869vinfos[5].indices[1] =
_ij5[1];
8870vinfos[5].maxsolutions =
_nj5;
8871std::vector<int> vfree(0);
8879if( bgotonextstatement )
8881bool bgotonextstatement =
true;
8885if(
IKabs(evalcond[0]) < 0.0000050000000000 )
8887bgotonextstatement=
false;
8898if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
8909if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 )
8920if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 )
8924bool bgotonextstatement =
true;
8927evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(
j5))), 6.28318530717959)));
8928if(
IKabs(evalcond[0]) < 0.0000050000000000 )
8930bgotonextstatement=
false;
8932IkReal j3array[2], cj3array[2], sj3array[2];
8933bool j3valid[2]={
false};
8938 j3valid[0] = j3valid[1] =
true;
8939 j3array[0] =
IKasin(sj3array[0]);
8940 cj3array[0] =
IKcos(j3array[0]);
8941 sj3array[1] = sj3array[0];
8942 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
8943 cj3array[1] = -cj3array[0];
8945else if( isnan(sj3array[0]) )
8949 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
8951for(
int ij3 = 0; ij3 < 2; ++ij3)
8958for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
8962 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
8965j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
8970IkReal x695=((-1.0)*x693);
8975evalcond[4]=((1.0)+((
new_r01*x694)));
8976evalcond[5]=((-1.0)+((
new_r10*x694)));
8984std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
8985vinfos[0].jointtype = 1;
8986vinfos[0].foffset =
j0;
8987vinfos[0].indices[0] =
_ij0[0];
8988vinfos[0].indices[1] =
_ij0[1];
8989vinfos[0].maxsolutions =
_nj0;
8990vinfos[1].jointtype = 1;
8991vinfos[1].foffset =
j1;
8992vinfos[1].indices[0] =
_ij1[0];
8993vinfos[1].indices[1] =
_ij1[1];
8994vinfos[1].maxsolutions =
_nj1;
8995vinfos[2].jointtype = 1;
8996vinfos[2].foffset =
j2;
8997vinfos[2].indices[0] =
_ij2[0];
8998vinfos[2].indices[1] =
_ij2[1];
8999vinfos[2].maxsolutions =
_nj2;
9000vinfos[3].jointtype = 1;
9001vinfos[3].foffset =
j3;
9002vinfos[3].indices[0] =
_ij3[0];
9003vinfos[3].indices[1] =
_ij3[1];
9004vinfos[3].maxsolutions =
_nj3;
9005vinfos[4].jointtype = 1;
9006vinfos[4].foffset =
j4;
9007vinfos[4].indices[0] =
_ij4[0];
9008vinfos[4].indices[1] =
_ij4[1];
9009vinfos[4].maxsolutions =
_nj4;
9010vinfos[5].jointtype = 1;
9011vinfos[5].foffset =
j5;
9012vinfos[5].indices[0] =
_ij5[0];
9013vinfos[5].indices[1] =
_ij5[1];
9014vinfos[5].maxsolutions =
_nj5;
9015std::vector<int> vfree(0);
9023if( bgotonextstatement )
9025bool bgotonextstatement =
true;
9028evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-3.14159265358979)+
j5)))), 6.28318530717959)));
9029if(
IKabs(evalcond[0]) < 0.0000050000000000 )
9031bgotonextstatement=
false;
9033IkReal j3array[2], cj3array[2], sj3array[2];
9034bool j3valid[2]={
false};
9039 j3valid[0] = j3valid[1] =
true;
9040 j3array[0] =
IKasin(sj3array[0]);
9041 cj3array[0] =
IKcos(j3array[0]);
9042 sj3array[1] = sj3array[0];
9043 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
9044 cj3array[1] = -cj3array[0];
9046else if( isnan(sj3array[0]) )
9050 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
9052for(
int ij3 = 0; ij3 < 2; ++ij3)
9059for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
9063 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
9066j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
9074evalcond[3]=((-1.0)*
new_r10*x696);
9075evalcond[4]=((-1.0)+((
new_r01*x697)));
9076evalcond[5]=((1.0)+((
new_r10*x697)));
9084std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
9085vinfos[0].jointtype = 1;
9086vinfos[0].foffset =
j0;
9087vinfos[0].indices[0] =
_ij0[0];
9088vinfos[0].indices[1] =
_ij0[1];
9089vinfos[0].maxsolutions =
_nj0;
9090vinfos[1].jointtype = 1;
9091vinfos[1].foffset =
j1;
9092vinfos[1].indices[0] =
_ij1[0];
9093vinfos[1].indices[1] =
_ij1[1];
9094vinfos[1].maxsolutions =
_nj1;
9095vinfos[2].jointtype = 1;
9096vinfos[2].foffset =
j2;
9097vinfos[2].indices[0] =
_ij2[0];
9098vinfos[2].indices[1] =
_ij2[1];
9099vinfos[2].maxsolutions =
_nj2;
9100vinfos[3].jointtype = 1;
9101vinfos[3].foffset =
j3;
9102vinfos[3].indices[0] =
_ij3[0];
9103vinfos[3].indices[1] =
_ij3[1];
9104vinfos[3].maxsolutions =
_nj3;
9105vinfos[4].jointtype = 1;
9106vinfos[4].foffset =
j4;
9107vinfos[4].indices[0] =
_ij4[0];
9108vinfos[4].indices[1] =
_ij4[1];
9109vinfos[4].maxsolutions =
_nj4;
9110vinfos[5].jointtype = 1;
9111vinfos[5].foffset =
j5;
9112vinfos[5].indices[0] =
_ij5[0];
9113vinfos[5].indices[1] =
_ij5[1];
9114vinfos[5].maxsolutions =
_nj5;
9115std::vector<int> vfree(0);
9123if( bgotonextstatement )
9125bool bgotonextstatement =
true;
9130bgotonextstatement=
false;
9135if( bgotonextstatement )
9145IkReal j3array[1], cj3array[1], sj3array[1];
9146bool j3valid[1]={
false};
9152IkReal x698=x699.
value;
9164sj3array[0]=
IKsin(j3array[0]);
9165cj3array[0]=
IKcos(j3array[0]);
9166if( j3array[0] >
IKPI )
9170else if( j3array[0] < -
IKPI )
9174for(
int ij3 = 0; ij3 < 1; ++ij3)
9181for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
9185 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
9188j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
9193IkReal x704=((1.0)*
cj5);
9194IkReal x705=(
sj5*x702);
9198evalcond[3]=((((-1.0)*x704))+((
new_r10*x703)));
9200evalcond[5]=((((-1.0)*x702*x704))+((
sj5*x703)));
9201evalcond[6]=((((-1.0)*x705))+(((-1.0)*x703*x704))+
new_r10);
9209std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
9210vinfos[0].jointtype = 1;
9211vinfos[0].foffset =
j0;
9212vinfos[0].indices[0] =
_ij0[0];
9213vinfos[0].indices[1] =
_ij0[1];
9214vinfos[0].maxsolutions =
_nj0;
9215vinfos[1].jointtype = 1;
9216vinfos[1].foffset =
j1;
9217vinfos[1].indices[0] =
_ij1[0];
9218vinfos[1].indices[1] =
_ij1[1];
9219vinfos[1].maxsolutions =
_nj1;
9220vinfos[2].jointtype = 1;
9221vinfos[2].foffset =
j2;
9222vinfos[2].indices[0] =
_ij2[0];
9223vinfos[2].indices[1] =
_ij2[1];
9224vinfos[2].maxsolutions =
_nj2;
9225vinfos[3].jointtype = 1;
9226vinfos[3].foffset =
j3;
9227vinfos[3].indices[0] =
_ij3[0];
9228vinfos[3].indices[1] =
_ij3[1];
9229vinfos[3].maxsolutions =
_nj3;
9230vinfos[4].jointtype = 1;
9231vinfos[4].foffset =
j4;
9232vinfos[4].indices[0] =
_ij4[0];
9233vinfos[4].indices[1] =
_ij4[1];
9234vinfos[4].maxsolutions =
_nj4;
9235vinfos[5].jointtype = 1;
9236vinfos[5].foffset =
j5;
9237vinfos[5].indices[0] =
_ij5[0];
9238vinfos[5].indices[1] =
_ij5[1];
9239vinfos[5].maxsolutions =
_nj5;
9240std::vector<int> vfree(0);
9253IkReal j3array[1], cj3array[1], sj3array[1];
9254bool j3valid[1]={
false};
9267sj3array[0]=
IKsin(j3array[0]);
9268cj3array[0]=
IKcos(j3array[0]);
9269if( j3array[0] >
IKPI )
9273else if( j3array[0] < -
IKPI )
9277for(
int ij3 = 0; ij3 < 1; ++ij3)
9284for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
9288 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
9291j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
9296IkReal x710=((1.0)*
cj5);
9297IkReal x711=(
sj5*x708);
9301evalcond[3]=((((-1.0)*x710))+((
new_r10*x709)));
9303evalcond[5]=(((
sj5*x709))+(((-1.0)*x708*x710)));
9304evalcond[6]=((((-1.0)*x709*x710))+(((-1.0)*x711))+
new_r10);
9312std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
9313vinfos[0].jointtype = 1;
9314vinfos[0].foffset =
j0;
9315vinfos[0].indices[0] =
_ij0[0];
9316vinfos[0].indices[1] =
_ij0[1];
9317vinfos[0].maxsolutions =
_nj0;
9318vinfos[1].jointtype = 1;
9319vinfos[1].foffset =
j1;
9320vinfos[1].indices[0] =
_ij1[0];
9321vinfos[1].indices[1] =
_ij1[1];
9322vinfos[1].maxsolutions =
_nj1;
9323vinfos[2].jointtype = 1;
9324vinfos[2].foffset =
j2;
9325vinfos[2].indices[0] =
_ij2[0];
9326vinfos[2].indices[1] =
_ij2[1];
9327vinfos[2].maxsolutions =
_nj2;
9328vinfos[3].jointtype = 1;
9329vinfos[3].foffset =
j3;
9330vinfos[3].indices[0] =
_ij3[0];
9331vinfos[3].indices[1] =
_ij3[1];
9332vinfos[3].maxsolutions =
_nj3;
9333vinfos[4].jointtype = 1;
9334vinfos[4].foffset =
j4;
9335vinfos[4].indices[0] =
_ij4[0];
9336vinfos[4].indices[1] =
_ij4[1];
9337vinfos[4].maxsolutions =
_nj4;
9338vinfos[5].jointtype = 1;
9339vinfos[5].foffset =
j5;
9340vinfos[5].indices[0] =
_ij5[0];
9341vinfos[5].indices[1] =
_ij5[1];
9342vinfos[5].maxsolutions =
_nj5;
9343std::vector<int> vfree(0);
9356IkReal j3array[1], cj3array[1], sj3array[1];
9357bool j3valid[1]={
false};
9367j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x712.
value)))+(x713.
value));
9368sj3array[0]=
IKsin(j3array[0]);
9369cj3array[0]=
IKcos(j3array[0]);
9370if( j3array[0] >
IKPI )
9374else if( j3array[0] < -
IKPI )
9378for(
int ij3 = 0; ij3 < 1; ++ij3)
9385for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
9389 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
9392j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
9397IkReal x716=((1.0)*
cj5);
9398IkReal x717=(
sj5*x714);
9402evalcond[3]=((((-1.0)*x716))+((
new_r10*x715)));
9404evalcond[5]=((((-1.0)*x714*x716))+((
sj5*x715)));
9405evalcond[6]=((((-1.0)*x717))+
new_r10+(((-1.0)*x715*x716)));
9413std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
9414vinfos[0].jointtype = 1;
9415vinfos[0].foffset =
j0;
9416vinfos[0].indices[0] =
_ij0[0];
9417vinfos[0].indices[1] =
_ij0[1];
9418vinfos[0].maxsolutions =
_nj0;
9419vinfos[1].jointtype = 1;
9420vinfos[1].foffset =
j1;
9421vinfos[1].indices[0] =
_ij1[0];
9422vinfos[1].indices[1] =
_ij1[1];
9423vinfos[1].maxsolutions =
_nj1;
9424vinfos[2].jointtype = 1;
9425vinfos[2].foffset =
j2;
9426vinfos[2].indices[0] =
_ij2[0];
9427vinfos[2].indices[1] =
_ij2[1];
9428vinfos[2].maxsolutions =
_nj2;
9429vinfos[3].jointtype = 1;
9430vinfos[3].foffset =
j3;
9431vinfos[3].indices[0] =
_ij3[0];
9432vinfos[3].indices[1] =
_ij3[1];
9433vinfos[3].maxsolutions =
_nj3;
9434vinfos[4].jointtype = 1;
9435vinfos[4].foffset =
j4;
9436vinfos[4].indices[0] =
_ij4[0];
9437vinfos[4].indices[1] =
_ij4[1];
9438vinfos[4].maxsolutions =
_nj4;
9439vinfos[5].jointtype = 1;
9440vinfos[5].foffset =
j5;
9441vinfos[5].indices[0] =
_ij5[0];
9442vinfos[5].indices[1] =
_ij5[1];
9443vinfos[5].maxsolutions =
_nj5;
9444std::vector<int> vfree(0);
9456if( bgotonextstatement )
9458bool bgotonextstatement =
true;
9462if(
IKabs(evalcond[0]) < 0.0000050000000000 )
9464bgotonextstatement=
false;
9475if(
IKabs(j3eval[0]) < 0.0000010000000000 )
9482IkReal j3array[2], cj3array[2], sj3array[2];
9483bool j3valid[2]={
false};
9489IkReal x718=x719.
value;
9490j3array[0]=((-1.0)*x718);
9491sj3array[0]=
IKsin(j3array[0]);
9492cj3array[0]=
IKcos(j3array[0]);
9493j3array[1]=((3.14159265358979)+(((-1.0)*x718)));
9494sj3array[1]=
IKsin(j3array[1]);
9495cj3array[1]=
IKcos(j3array[1]);
9496if( j3array[0] >
IKPI )
9500else if( j3array[0] < -
IKPI )
9504if( j3array[1] >
IKPI )
9508else if( j3array[1] < -
IKPI )
9512for(
int ij3 = 0; ij3 < 2; ++ij3)
9519for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
9523 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
9526j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
9537std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
9538vinfos[0].jointtype = 1;
9539vinfos[0].foffset =
j0;
9540vinfos[0].indices[0] =
_ij0[0];
9541vinfos[0].indices[1] =
_ij0[1];
9542vinfos[0].maxsolutions =
_nj0;
9543vinfos[1].jointtype = 1;
9544vinfos[1].foffset =
j1;
9545vinfos[1].indices[0] =
_ij1[0];
9546vinfos[1].indices[1] =
_ij1[1];
9547vinfos[1].maxsolutions =
_nj1;
9548vinfos[2].jointtype = 1;
9549vinfos[2].foffset =
j2;
9550vinfos[2].indices[0] =
_ij2[0];
9551vinfos[2].indices[1] =
_ij2[1];
9552vinfos[2].maxsolutions =
_nj2;
9553vinfos[3].jointtype = 1;
9554vinfos[3].foffset =
j3;
9555vinfos[3].indices[0] =
_ij3[0];
9556vinfos[3].indices[1] =
_ij3[1];
9557vinfos[3].maxsolutions =
_nj3;
9558vinfos[4].jointtype = 1;
9559vinfos[4].foffset =
j4;
9560vinfos[4].indices[0] =
_ij4[0];
9561vinfos[4].indices[1] =
_ij4[1];
9562vinfos[4].maxsolutions =
_nj4;
9563vinfos[5].jointtype = 1;
9564vinfos[5].foffset =
j5;
9565vinfos[5].indices[0] =
_ij5[0];
9566vinfos[5].indices[1] =
_ij5[1];
9567vinfos[5].maxsolutions =
_nj5;
9568std::vector<int> vfree(0);
9580if( bgotonextstatement )
9582bool bgotonextstatement =
true;
9586if(
IKabs(evalcond[0]) < 0.0000050000000000 )
9588bgotonextstatement=
false;
9599if(
IKabs(j3eval[0]) < 0.0000010000000000 )
9606IkReal j3array[2], cj3array[2], sj3array[2];
9607bool j3valid[2]={
false};
9613IkReal x720=x721.
value;
9614j3array[0]=((-1.0)*x720);
9615sj3array[0]=
IKsin(j3array[0]);
9616cj3array[0]=
IKcos(j3array[0]);
9617j3array[1]=((3.14159265358979)+(((-1.0)*x720)));
9618sj3array[1]=
IKsin(j3array[1]);
9619cj3array[1]=
IKcos(j3array[1]);
9620if( j3array[0] >
IKPI )
9624else if( j3array[0] < -
IKPI )
9628if( j3array[1] >
IKPI )
9632else if( j3array[1] < -
IKPI )
9636for(
int ij3 = 0; ij3 < 2; ++ij3)
9643for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
9647 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
9650j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
9661std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
9662vinfos[0].jointtype = 1;
9663vinfos[0].foffset =
j0;
9664vinfos[0].indices[0] =
_ij0[0];
9665vinfos[0].indices[1] =
_ij0[1];
9666vinfos[0].maxsolutions =
_nj0;
9667vinfos[1].jointtype = 1;
9668vinfos[1].foffset =
j1;
9669vinfos[1].indices[0] =
_ij1[0];
9670vinfos[1].indices[1] =
_ij1[1];
9671vinfos[1].maxsolutions =
_nj1;
9672vinfos[2].jointtype = 1;
9673vinfos[2].foffset =
j2;
9674vinfos[2].indices[0] =
_ij2[0];
9675vinfos[2].indices[1] =
_ij2[1];
9676vinfos[2].maxsolutions =
_nj2;
9677vinfos[3].jointtype = 1;
9678vinfos[3].foffset =
j3;
9679vinfos[3].indices[0] =
_ij3[0];
9680vinfos[3].indices[1] =
_ij3[1];
9681vinfos[3].maxsolutions =
_nj3;
9682vinfos[4].jointtype = 1;
9683vinfos[4].foffset =
j4;
9684vinfos[4].indices[0] =
_ij4[0];
9685vinfos[4].indices[1] =
_ij4[1];
9686vinfos[4].maxsolutions =
_nj4;
9687vinfos[5].jointtype = 1;
9688vinfos[5].foffset =
j5;
9689vinfos[5].indices[0] =
_ij5[0];
9690vinfos[5].indices[1] =
_ij5[1];
9691vinfos[5].maxsolutions =
_nj5;
9692std::vector<int> vfree(0);
9704if( bgotonextstatement )
9706bool bgotonextstatement =
true;
9710if(
IKabs(evalcond[0]) < 0.0000050000000000 )
9712bgotonextstatement=
false;
9723if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
9735if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
9746if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 )
9753IkReal j3array[1], cj3array[1], sj3array[1];
9754bool j3valid[1]={
false};
9767sj3array[0]=
IKsin(j3array[0]);
9768cj3array[0]=
IKcos(j3array[0]);
9769if( j3array[0] >
IKPI )
9773else if( j3array[0] < -
IKPI )
9777for(
int ij3 = 0; ij3 < 1; ++ij3)
9784for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
9788 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
9791j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
9796IkReal x726=(
sj5*x724);
9797IkReal x727=((1.0)*x725);
9798IkReal x728=(
cj5*x727);
9802evalcond[3]=(((
new_r00*x725))+(((-1.0)*
cj5)));
9803evalcond[4]=(((
cj5*x724))+((
sj5*x725)));
9804evalcond[5]=((((-1.0)*x728))+x726+
new_r00);
9805evalcond[6]=((((-1.0)*x728))+x726+
new_r11);
9813std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
9814vinfos[0].jointtype = 1;
9815vinfos[0].foffset =
j0;
9816vinfos[0].indices[0] =
_ij0[0];
9817vinfos[0].indices[1] =
_ij0[1];
9818vinfos[0].maxsolutions =
_nj0;
9819vinfos[1].jointtype = 1;
9820vinfos[1].foffset =
j1;
9821vinfos[1].indices[0] =
_ij1[0];
9822vinfos[1].indices[1] =
_ij1[1];
9823vinfos[1].maxsolutions =
_nj1;
9824vinfos[2].jointtype = 1;
9825vinfos[2].foffset =
j2;
9826vinfos[2].indices[0] =
_ij2[0];
9827vinfos[2].indices[1] =
_ij2[1];
9828vinfos[2].maxsolutions =
_nj2;
9829vinfos[3].jointtype = 1;
9830vinfos[3].foffset =
j3;
9831vinfos[3].indices[0] =
_ij3[0];
9832vinfos[3].indices[1] =
_ij3[1];
9833vinfos[3].maxsolutions =
_nj3;
9834vinfos[4].jointtype = 1;
9835vinfos[4].foffset =
j4;
9836vinfos[4].indices[0] =
_ij4[0];
9837vinfos[4].indices[1] =
_ij4[1];
9838vinfos[4].maxsolutions =
_nj4;
9839vinfos[5].jointtype = 1;
9840vinfos[5].foffset =
j5;
9841vinfos[5].indices[0] =
_ij5[0];
9842vinfos[5].indices[1] =
_ij5[1];
9843vinfos[5].maxsolutions =
_nj5;
9844std::vector<int> vfree(0);
9857IkReal j3array[1], cj3array[1], sj3array[1];
9858bool j3valid[1]={
false};
9868j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x729.
value)))+(x730.
value));
9869sj3array[0]=
IKsin(j3array[0]);
9870cj3array[0]=
IKcos(j3array[0]);
9871if( j3array[0] >
IKPI )
9875else if( j3array[0] < -
IKPI )
9879for(
int ij3 = 0; ij3 < 1; ++ij3)
9886for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
9890 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
9893j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
9898IkReal x733=(
sj5*x731);
9899IkReal x734=((1.0)*x732);
9900IkReal x735=(
cj5*x734);
9904evalcond[3]=(((
new_r00*x732))+(((-1.0)*
cj5)));
9905evalcond[4]=(((
cj5*x731))+((
sj5*x732)));
9906evalcond[5]=((((-1.0)*x735))+x733+
new_r00);
9907evalcond[6]=((((-1.0)*x735))+x733+
new_r11);
9915std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
9916vinfos[0].jointtype = 1;
9917vinfos[0].foffset =
j0;
9918vinfos[0].indices[0] =
_ij0[0];
9919vinfos[0].indices[1] =
_ij0[1];
9920vinfos[0].maxsolutions =
_nj0;
9921vinfos[1].jointtype = 1;
9922vinfos[1].foffset =
j1;
9923vinfos[1].indices[0] =
_ij1[0];
9924vinfos[1].indices[1] =
_ij1[1];
9925vinfos[1].maxsolutions =
_nj1;
9926vinfos[2].jointtype = 1;
9927vinfos[2].foffset =
j2;
9928vinfos[2].indices[0] =
_ij2[0];
9929vinfos[2].indices[1] =
_ij2[1];
9930vinfos[2].maxsolutions =
_nj2;
9931vinfos[3].jointtype = 1;
9932vinfos[3].foffset =
j3;
9933vinfos[3].indices[0] =
_ij3[0];
9934vinfos[3].indices[1] =
_ij3[1];
9935vinfos[3].maxsolutions =
_nj3;
9936vinfos[4].jointtype = 1;
9937vinfos[4].foffset =
j4;
9938vinfos[4].indices[0] =
_ij4[0];
9939vinfos[4].indices[1] =
_ij4[1];
9940vinfos[4].maxsolutions =
_nj4;
9941vinfos[5].jointtype = 1;
9942vinfos[5].foffset =
j5;
9943vinfos[5].indices[0] =
_ij5[0];
9944vinfos[5].indices[1] =
_ij5[1];
9945vinfos[5].maxsolutions =
_nj5;
9946std::vector<int> vfree(0);
9959IkReal j3array[1], cj3array[1], sj3array[1];
9960bool j3valid[1]={
false};
9970j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x736.
value)))+(x737.
value));
9971sj3array[0]=
IKsin(j3array[0]);
9972cj3array[0]=
IKcos(j3array[0]);
9973if( j3array[0] >
IKPI )
9977else if( j3array[0] < -
IKPI )
9981for(
int ij3 = 0; ij3 < 1; ++ij3)
9988for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
9992 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
9995j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
10000IkReal x740=(
sj5*x738);
10001IkReal x741=((1.0)*x739);
10002IkReal x742=(
cj5*x741);
10006evalcond[3]=(((
new_r00*x739))+(((-1.0)*
cj5)));
10007evalcond[4]=(((
cj5*x738))+((
sj5*x739)));
10008evalcond[5]=(x740+
new_r00+(((-1.0)*x742)));
10009evalcond[6]=(x740+
new_r11+(((-1.0)*x742)));
10017std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
10018vinfos[0].jointtype = 1;
10019vinfos[0].foffset =
j0;
10020vinfos[0].indices[0] =
_ij0[0];
10021vinfos[0].indices[1] =
_ij0[1];
10022vinfos[0].maxsolutions =
_nj0;
10023vinfos[1].jointtype = 1;
10024vinfos[1].foffset =
j1;
10025vinfos[1].indices[0] =
_ij1[0];
10026vinfos[1].indices[1] =
_ij1[1];
10027vinfos[1].maxsolutions =
_nj1;
10028vinfos[2].jointtype = 1;
10029vinfos[2].foffset =
j2;
10030vinfos[2].indices[0] =
_ij2[0];
10031vinfos[2].indices[1] =
_ij2[1];
10032vinfos[2].maxsolutions =
_nj2;
10033vinfos[3].jointtype = 1;
10034vinfos[3].foffset =
j3;
10035vinfos[3].indices[0] =
_ij3[0];
10036vinfos[3].indices[1] =
_ij3[1];
10037vinfos[3].maxsolutions =
_nj3;
10038vinfos[4].jointtype = 1;
10039vinfos[4].foffset =
j4;
10040vinfos[4].indices[0] =
_ij4[0];
10041vinfos[4].indices[1] =
_ij4[1];
10042vinfos[4].maxsolutions =
_nj4;
10043vinfos[5].jointtype = 1;
10044vinfos[5].foffset =
j5;
10045vinfos[5].indices[0] =
_ij5[0];
10046vinfos[5].indices[1] =
_ij5[1];
10047vinfos[5].maxsolutions =
_nj5;
10048std::vector<int> vfree(0);
10060if( bgotonextstatement )
10062bool bgotonextstatement =
true;
10067bgotonextstatement=
false;
10072if( bgotonextstatement )
10088IkReal j3array[1], cj3array[1], sj3array[1];
10089bool j3valid[1]={
false};
10100j3array[0]=((-1.5707963267949)+(x744.
value)+(((1.5707963267949)*(x745.
value))));
10101sj3array[0]=
IKsin(j3array[0]);
10102cj3array[0]=
IKcos(j3array[0]);
10103if( j3array[0] >
IKPI )
10107else if( j3array[0] < -
IKPI )
10108{ j3array[0]+=
IK2PI;
10111for(
int ij3 = 0; ij3 < 1; ++ij3)
10118for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
10122 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
10125j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
10130IkReal x748=(
sj5*x747);
10131IkReal x749=(
cj5*x747);
10132IkReal x750=(
sj5*x746);
10133IkReal x751=((1.0)*x746);
10134IkReal x752=(
cj5*x751);
10136evalcond[1]=(x750+x749+
new_r01);
10139evalcond[4]=(x748+
new_r00+(((-1.0)*x752)));
10140evalcond[5]=(x748+
new_r11+(((-1.0)*x752)));
10142evalcond[7]=((((-1.0)*x750))+(((-1.0)*x749))+
new_r10);
10150std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
10151vinfos[0].jointtype = 1;
10152vinfos[0].foffset =
j0;
10153vinfos[0].indices[0] =
_ij0[0];
10154vinfos[0].indices[1] =
_ij0[1];
10155vinfos[0].maxsolutions =
_nj0;
10156vinfos[1].jointtype = 1;
10157vinfos[1].foffset =
j1;
10158vinfos[1].indices[0] =
_ij1[0];
10159vinfos[1].indices[1] =
_ij1[1];
10160vinfos[1].maxsolutions =
_nj1;
10161vinfos[2].jointtype = 1;
10162vinfos[2].foffset =
j2;
10163vinfos[2].indices[0] =
_ij2[0];
10164vinfos[2].indices[1] =
_ij2[1];
10165vinfos[2].maxsolutions =
_nj2;
10166vinfos[3].jointtype = 1;
10167vinfos[3].foffset =
j3;
10168vinfos[3].indices[0] =
_ij3[0];
10169vinfos[3].indices[1] =
_ij3[1];
10170vinfos[3].maxsolutions =
_nj3;
10171vinfos[4].jointtype = 1;
10172vinfos[4].foffset =
j4;
10173vinfos[4].indices[0] =
_ij4[0];
10174vinfos[4].indices[1] =
_ij4[1];
10175vinfos[4].maxsolutions =
_nj4;
10176vinfos[5].jointtype = 1;
10177vinfos[5].foffset =
j5;
10178vinfos[5].indices[0] =
_ij5[0];
10179vinfos[5].indices[1] =
_ij5[1];
10180vinfos[5].maxsolutions =
_nj5;
10181std::vector<int> vfree(0);
10194IkReal j3array[1], cj3array[1], sj3array[1];
10195bool j3valid[1]={
false};
10205j3array[0]=((-1.5707963267949)+(x753.
value)+(((1.5707963267949)*(x754.
value))));
10206sj3array[0]=
IKsin(j3array[0]);
10207cj3array[0]=
IKcos(j3array[0]);
10208if( j3array[0] >
IKPI )
10212else if( j3array[0] < -
IKPI )
10213{ j3array[0]+=
IK2PI;
10216for(
int ij3 = 0; ij3 < 1; ++ij3)
10223for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
10227 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
10230j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
10235IkReal x757=(
sj5*x756);
10236IkReal x758=(
cj5*x756);
10237IkReal x759=(
sj5*x755);
10238IkReal x760=((1.0)*x755);
10239IkReal x761=(
cj5*x760);
10241evalcond[1]=(x759+x758+
new_r01);
10244evalcond[4]=((((-1.0)*x761))+x757+
new_r00);
10245evalcond[5]=((((-1.0)*x761))+x757+
new_r11);
10247evalcond[7]=((((-1.0)*x759))+(((-1.0)*x758))+
new_r10);
10255std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
10256vinfos[0].jointtype = 1;
10257vinfos[0].foffset =
j0;
10258vinfos[0].indices[0] =
_ij0[0];
10259vinfos[0].indices[1] =
_ij0[1];
10260vinfos[0].maxsolutions =
_nj0;
10261vinfos[1].jointtype = 1;
10262vinfos[1].foffset =
j1;
10263vinfos[1].indices[0] =
_ij1[0];
10264vinfos[1].indices[1] =
_ij1[1];
10265vinfos[1].maxsolutions =
_nj1;
10266vinfos[2].jointtype = 1;
10267vinfos[2].foffset =
j2;
10268vinfos[2].indices[0] =
_ij2[0];
10269vinfos[2].indices[1] =
_ij2[1];
10270vinfos[2].maxsolutions =
_nj2;
10271vinfos[3].jointtype = 1;
10272vinfos[3].foffset =
j3;
10273vinfos[3].indices[0] =
_ij3[0];
10274vinfos[3].indices[1] =
_ij3[1];
10275vinfos[3].maxsolutions =
_nj3;
10276vinfos[4].jointtype = 1;
10277vinfos[4].foffset =
j4;
10278vinfos[4].indices[0] =
_ij4[0];
10279vinfos[4].indices[1] =
_ij4[1];
10280vinfos[4].maxsolutions =
_nj4;
10281vinfos[5].jointtype = 1;
10282vinfos[5].foffset =
j5;
10283vinfos[5].indices[0] =
_ij5[0];
10284vinfos[5].indices[1] =
_ij5[1];
10285vinfos[5].maxsolutions =
_nj5;
10286std::vector<int> vfree(0);
10299IkReal j3array[1], cj3array[1], sj3array[1];
10300bool j3valid[1]={
false};
10311j3array[0]=((-1.5707963267949)+(x763.
value)+(((1.5707963267949)*(x764.
value))));
10312sj3array[0]=
IKsin(j3array[0]);
10313cj3array[0]=
IKcos(j3array[0]);
10314if( j3array[0] >
IKPI )
10318else if( j3array[0] < -
IKPI )
10319{ j3array[0]+=
IK2PI;
10322for(
int ij3 = 0; ij3 < 1; ++ij3)
10329for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
10333 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
10336j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
10341IkReal x767=(
sj5*x766);
10342IkReal x768=(
cj5*x766);
10343IkReal x769=(
sj5*x765);
10344IkReal x770=((1.0)*x765);
10345IkReal x771=(
cj5*x770);
10347evalcond[1]=(x768+x769+
new_r01);
10350evalcond[4]=(x767+(((-1.0)*x771))+
new_r00);
10351evalcond[5]=(x767+(((-1.0)*x771))+
new_r11);
10353evalcond[7]=((((-1.0)*x769))+(((-1.0)*x768))+
new_r10);
10361std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
10362vinfos[0].jointtype = 1;
10363vinfos[0].foffset =
j0;
10364vinfos[0].indices[0] =
_ij0[0];
10365vinfos[0].indices[1] =
_ij0[1];
10366vinfos[0].maxsolutions =
_nj0;
10367vinfos[1].jointtype = 1;
10368vinfos[1].foffset =
j1;
10369vinfos[1].indices[0] =
_ij1[0];
10370vinfos[1].indices[1] =
_ij1[1];
10371vinfos[1].maxsolutions =
_nj1;
10372vinfos[2].jointtype = 1;
10373vinfos[2].foffset =
j2;
10374vinfos[2].indices[0] =
_ij2[0];
10375vinfos[2].indices[1] =
_ij2[1];
10376vinfos[2].maxsolutions =
_nj2;
10377vinfos[3].jointtype = 1;
10378vinfos[3].foffset =
j3;
10379vinfos[3].indices[0] =
_ij3[0];
10380vinfos[3].indices[1] =
_ij3[1];
10381vinfos[3].maxsolutions =
_nj3;
10382vinfos[4].jointtype = 1;
10383vinfos[4].foffset =
j4;
10384vinfos[4].indices[0] =
_ij4[0];
10385vinfos[4].indices[1] =
_ij4[1];
10386vinfos[4].maxsolutions =
_nj4;
10387vinfos[5].jointtype = 1;
10388vinfos[5].foffset =
j5;
10389vinfos[5].indices[0] =
_ij5[0];
10390vinfos[5].indices[1] =
_ij5[1];
10391vinfos[5].maxsolutions =
_nj5;
10392std::vector<int> vfree(0);
10404if( bgotonextstatement )
10406bool bgotonextstatement =
true;
10409evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-3.14159265358979)+
j4)))), 6.28318530717959)));
10414if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 &&
IKabs(evalcond[2]) < 0.0000050000000000 &&
IKabs(evalcond[3]) < 0.0000050000000000 &&
IKabs(evalcond[4]) < 0.0000050000000000 )
10416bgotonextstatement=
false;
10421j4=3.14159265358979;
10427if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
10433j4=3.14159265358979;
10439if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
10445j4=3.14159265358979;
10451if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
10455bool bgotonextstatement =
true;
10463IkReal x779=pow(x780,-0.5);
10468IkReal gconst6=((-1.0)*(x781.
value));
10469IkReal gconst7=((-1.0)*
new_r10*x779);
10470IkReal gconst8=(x778*x779);
10475evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs((
j5+(x782.
value))))), 6.28318530717959)));
10476if(
IKabs(evalcond[0]) < 0.0000050000000000 )
10478bgotonextstatement=
false;
10486IkReal x784=((-1.0)*(x786.
value));
10490j4=3.14159265358979;
10494IkReal gconst6=x784;
10495IkReal gconst7=((-1.0)*
new_r10*x785);
10496IkReal gconst8=(x783*x785);
10500IkReal x790=((((-1.0)*x789))+(((-1.0)*
new_r10*x788)));
10504j3eval[1]=((
IKabs(((((-1.0)*x788*x792))+(((-1.0)*x787*x791)))))+(
IKabs((((
new_r10*x792))+(((-1.0)*x789*x791))))));
10506if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
10515IkReal x794=((-1.0)*(x796.
value));
10519j4=3.14159265358979;
10523IkReal gconst6=x794;
10524IkReal gconst7=((-1.0)*
new_r10*x795);
10525IkReal gconst8=(x793*x795);
10532IkReal x799=x801.
value;
10535if(
IKabs(j3eval[0]) < 0.0000010000000000 )
10544IkReal x803=((-1.0)*(x805.
value));
10548j4=3.14159265358979;
10552IkReal gconst6=x803;
10553IkReal gconst7=((-1.0)*
new_r10*x804);
10554IkReal gconst8=(x802*x804);
10561IkReal x808=x811.
value;
10563IkReal x810=((1.0)*x808);
10565if(
IKabs(j3eval[0]) < 0.0000010000000000 )
10569bool bgotonextstatement =
true;
10573if(
IKabs(evalcond[0]) < 0.0000050000000000 )
10575bgotonextstatement=
false;
10582IkReal x812=((-1.0)*(x813.
value));
10585j4=3.14159265358979;
10591IkReal gconst6=x812;
10596IkReal gconst7=((-1.0)*
new_r10*(pow(x814,-0.5)));
10599if(
IKabs(j3eval[0]) < 0.0000010000000000 )
10602IkReal j3array[2], cj3array[2], sj3array[2];
10603bool j3valid[2]={
false};
10612 j3valid[0] = j3valid[1] =
true;
10613 j3array[0] =
IKacos(cj3array[0]);
10614 sj3array[0] =
IKsin(j3array[0]);
10615 cj3array[1] = cj3array[0];
10616 j3array[1] = -j3array[0];
10617 sj3array[1] = -sj3array[0];
10619else if( isnan(cj3array[0]) )
10623 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
10625for(
int ij3 = 0; ij3 < 2; ++ij3)
10632for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
10636 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
10639j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
10644IkReal x818=((1.0)*gconst7);
10647evalcond[2]=(gconst7*x816);
10648evalcond[3]=((((-1.0)*
new_r10*x817))+gconst7);
10649evalcond[4]=((((-1.0)*x817*x818))+
new_r10);
10650evalcond[5]=(((
new_r01*x817))+(((-1.0)*x818)));
10658std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
10659vinfos[0].jointtype = 1;
10660vinfos[0].foffset =
j0;
10661vinfos[0].indices[0] =
_ij0[0];
10662vinfos[0].indices[1] =
_ij0[1];
10663vinfos[0].maxsolutions =
_nj0;
10664vinfos[1].jointtype = 1;
10665vinfos[1].foffset =
j1;
10666vinfos[1].indices[0] =
_ij1[0];
10667vinfos[1].indices[1] =
_ij1[1];
10668vinfos[1].maxsolutions =
_nj1;
10669vinfos[2].jointtype = 1;
10670vinfos[2].foffset =
j2;
10671vinfos[2].indices[0] =
_ij2[0];
10672vinfos[2].indices[1] =
_ij2[1];
10673vinfos[2].maxsolutions =
_nj2;
10674vinfos[3].jointtype = 1;
10675vinfos[3].foffset =
j3;
10676vinfos[3].indices[0] =
_ij3[0];
10677vinfos[3].indices[1] =
_ij3[1];
10678vinfos[3].maxsolutions =
_nj3;
10679vinfos[4].jointtype = 1;
10680vinfos[4].foffset =
j4;
10681vinfos[4].indices[0] =
_ij4[0];
10682vinfos[4].indices[1] =
_ij4[1];
10683vinfos[4].maxsolutions =
_nj4;
10684vinfos[5].jointtype = 1;
10685vinfos[5].foffset =
j5;
10686vinfos[5].indices[0] =
_ij5[0];
10687vinfos[5].indices[1] =
_ij5[1];
10688vinfos[5].maxsolutions =
_nj5;
10689std::vector<int> vfree(0);
10698IkReal j3array[2], cj3array[2], sj3array[2];
10699bool j3valid[2]={
false};
10705cj3array[0]=(gconst7*(x819.
value));
10708 j3valid[0] = j3valid[1] =
true;
10709 j3array[0] =
IKacos(cj3array[0]);
10710 sj3array[0] =
IKsin(j3array[0]);
10711 cj3array[1] = cj3array[0];
10712 j3array[1] = -j3array[0];
10713 sj3array[1] = -sj3array[0];
10715else if( isnan(cj3array[0]) )
10719 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
10721for(
int ij3 = 0; ij3 < 2; ++ij3)
10728for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
10732 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
10735j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
10740IkReal x822=((1.0)*gconst7);
10741IkReal x823=(x821*x822);
10744evalcond[2]=(gconst7*x820);
10745evalcond[3]=((((-1.0)*x823))+
new_r01);
10746evalcond[4]=((((-1.0)*x823))+
new_r10);
10747evalcond[5]=(((
new_r01*x821))+(((-1.0)*x822)));
10755std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
10756vinfos[0].jointtype = 1;
10757vinfos[0].foffset =
j0;
10758vinfos[0].indices[0] =
_ij0[0];
10759vinfos[0].indices[1] =
_ij0[1];
10760vinfos[0].maxsolutions =
_nj0;
10761vinfos[1].jointtype = 1;
10762vinfos[1].foffset =
j1;
10763vinfos[1].indices[0] =
_ij1[0];
10764vinfos[1].indices[1] =
_ij1[1];
10765vinfos[1].maxsolutions =
_nj1;
10766vinfos[2].jointtype = 1;
10767vinfos[2].foffset =
j2;
10768vinfos[2].indices[0] =
_ij2[0];
10769vinfos[2].indices[1] =
_ij2[1];
10770vinfos[2].maxsolutions =
_nj2;
10771vinfos[3].jointtype = 1;
10772vinfos[3].foffset =
j3;
10773vinfos[3].indices[0] =
_ij3[0];
10774vinfos[3].indices[1] =
_ij3[1];
10775vinfos[3].maxsolutions =
_nj3;
10776vinfos[4].jointtype = 1;
10777vinfos[4].foffset =
j4;
10778vinfos[4].indices[0] =
_ij4[0];
10779vinfos[4].indices[1] =
_ij4[1];
10780vinfos[4].maxsolutions =
_nj4;
10781vinfos[5].jointtype = 1;
10782vinfos[5].foffset =
j5;
10783vinfos[5].indices[0] =
_ij5[0];
10784vinfos[5].indices[1] =
_ij5[1];
10785vinfos[5].maxsolutions =
_nj5;
10786std::vector<int> vfree(0);
10798if( bgotonextstatement )
10800bool bgotonextstatement =
true;
10804evalcond[1]=gconst8;
10805if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 )
10807bgotonextstatement=
false;
10815IkReal x825=((-1.0)*(x826.
value));
10818j4=3.14159265358979;
10826IkReal gconst6=x825;
10827IkReal gconst7=((-1.0)*
new_r10);
10828IkReal gconst8=x824;
10832if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
10841IkReal x828=((-1.0)*(x829.
value));
10844j4=3.14159265358979;
10852IkReal gconst6=x828;
10853IkReal gconst7=((-1.0)*
new_r10);
10854IkReal gconst8=x827;
10858if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
10867IkReal x831=((-1.0)*(x832.
value));
10870j4=3.14159265358979;
10878IkReal gconst6=x831;
10879IkReal gconst7=((-1.0)*
new_r10);
10880IkReal gconst8=x830;
10884if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
10891IkReal j3array[1], cj3array[1], sj3array[1];
10892bool j3valid[1]={
false};
10902j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x833.
value)))+(x834.
value));
10903sj3array[0]=
IKsin(j3array[0]);
10904cj3array[0]=
IKcos(j3array[0]);
10905if( j3array[0] >
IKPI )
10909else if( j3array[0] < -
IKPI )
10910{ j3array[0]+=
IK2PI;
10913for(
int ij3 = 0; ij3 < 1; ++ij3)
10920for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
10924 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
10927j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
10932IkReal x837=(gconst8*x835);
10933IkReal x838=(gconst7*x835);
10934IkReal x839=(gconst8*x836);
10935IkReal x840=((1.0)*x836);
10936IkReal x841=(gconst7*x840);
10937evalcond[0]=((((-1.0)*x841))+x837);
10939evalcond[2]=(
new_r00+x838+x839);
10941evalcond[4]=((((-1.0)*x838))+(((-1.0)*x839)));
10942evalcond[5]=((((-1.0)*x841))+
new_r10+x837);
10950std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
10951vinfos[0].jointtype = 1;
10952vinfos[0].foffset =
j0;
10953vinfos[0].indices[0] =
_ij0[0];
10954vinfos[0].indices[1] =
_ij0[1];
10955vinfos[0].maxsolutions =
_nj0;
10956vinfos[1].jointtype = 1;
10957vinfos[1].foffset =
j1;
10958vinfos[1].indices[0] =
_ij1[0];
10959vinfos[1].indices[1] =
_ij1[1];
10960vinfos[1].maxsolutions =
_nj1;
10961vinfos[2].jointtype = 1;
10962vinfos[2].foffset =
j2;
10963vinfos[2].indices[0] =
_ij2[0];
10964vinfos[2].indices[1] =
_ij2[1];
10965vinfos[2].maxsolutions =
_nj2;
10966vinfos[3].jointtype = 1;
10967vinfos[3].foffset =
j3;
10968vinfos[3].indices[0] =
_ij3[0];
10969vinfos[3].indices[1] =
_ij3[1];
10970vinfos[3].maxsolutions =
_nj3;
10971vinfos[4].jointtype = 1;
10972vinfos[4].foffset =
j4;
10973vinfos[4].indices[0] =
_ij4[0];
10974vinfos[4].indices[1] =
_ij4[1];
10975vinfos[4].maxsolutions =
_nj4;
10976vinfos[5].jointtype = 1;
10977vinfos[5].foffset =
j5;
10978vinfos[5].indices[0] =
_ij5[0];
10979vinfos[5].indices[1] =
_ij5[1];
10980vinfos[5].maxsolutions =
_nj5;
10981std::vector<int> vfree(0);
10994IkReal j3array[1], cj3array[1], sj3array[1];
10995bool j3valid[1]={
false};
11005j3array[0]=((-1.5707963267949)+(x842.
value)+(((1.5707963267949)*(x843.
value))));
11006sj3array[0]=
IKsin(j3array[0]);
11007cj3array[0]=
IKcos(j3array[0]);
11008if( j3array[0] >
IKPI )
11012else if( j3array[0] < -
IKPI )
11013{ j3array[0]+=
IK2PI;
11016for(
int ij3 = 0; ij3 < 1; ++ij3)
11023for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
11027 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
11030j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
11035IkReal x846=(gconst8*x844);
11036IkReal x847=(gconst7*x844);
11037IkReal x848=(gconst8*x845);
11038IkReal x849=((1.0)*x845);
11039IkReal x850=(gconst7*x849);
11040evalcond[0]=((((-1.0)*x850))+x846);
11042evalcond[2]=(
new_r00+x847+x848);
11044evalcond[4]=((((-1.0)*x848))+(((-1.0)*x847)));
11045evalcond[5]=((((-1.0)*x850))+
new_r10+x846);
11053std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
11054vinfos[0].jointtype = 1;
11055vinfos[0].foffset =
j0;
11056vinfos[0].indices[0] =
_ij0[0];
11057vinfos[0].indices[1] =
_ij0[1];
11058vinfos[0].maxsolutions =
_nj0;
11059vinfos[1].jointtype = 1;
11060vinfos[1].foffset =
j1;
11061vinfos[1].indices[0] =
_ij1[0];
11062vinfos[1].indices[1] =
_ij1[1];
11063vinfos[1].maxsolutions =
_nj1;
11064vinfos[2].jointtype = 1;
11065vinfos[2].foffset =
j2;
11066vinfos[2].indices[0] =
_ij2[0];
11067vinfos[2].indices[1] =
_ij2[1];
11068vinfos[2].maxsolutions =
_nj2;
11069vinfos[3].jointtype = 1;
11070vinfos[3].foffset =
j3;
11071vinfos[3].indices[0] =
_ij3[0];
11072vinfos[3].indices[1] =
_ij3[1];
11073vinfos[3].maxsolutions =
_nj3;
11074vinfos[4].jointtype = 1;
11075vinfos[4].foffset =
j4;
11076vinfos[4].indices[0] =
_ij4[0];
11077vinfos[4].indices[1] =
_ij4[1];
11078vinfos[4].maxsolutions =
_nj4;
11079vinfos[5].jointtype = 1;
11080vinfos[5].foffset =
j5;
11081vinfos[5].indices[0] =
_ij5[0];
11082vinfos[5].indices[1] =
_ij5[1];
11083vinfos[5].maxsolutions =
_nj5;
11084std::vector<int> vfree(0);
11097IkReal j3array[1], cj3array[1], sj3array[1];
11098bool j3valid[1]={
false};
11108j3array[0]=((-1.5707963267949)+(x851.
value)+(((1.5707963267949)*(x852.
value))));
11109sj3array[0]=
IKsin(j3array[0]);
11110cj3array[0]=
IKcos(j3array[0]);
11111if( j3array[0] >
IKPI )
11115else if( j3array[0] < -
IKPI )
11116{ j3array[0]+=
IK2PI;
11119for(
int ij3 = 0; ij3 < 1; ++ij3)
11126for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
11130 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
11133j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
11138IkReal x855=(gconst8*x853);
11139IkReal x856=(gconst7*x853);
11140IkReal x857=(gconst8*x854);
11141IkReal x858=((1.0)*x854);
11142IkReal x859=(gconst7*x858);
11143evalcond[0]=((((-1.0)*x859))+x855);
11145evalcond[2]=(
new_r00+x856+x857);
11147evalcond[4]=((((-1.0)*x856))+(((-1.0)*x857)));
11148evalcond[5]=((((-1.0)*x859))+
new_r10+x855);
11156std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
11157vinfos[0].jointtype = 1;
11158vinfos[0].foffset =
j0;
11159vinfos[0].indices[0] =
_ij0[0];
11160vinfos[0].indices[1] =
_ij0[1];
11161vinfos[0].maxsolutions =
_nj0;
11162vinfos[1].jointtype = 1;
11163vinfos[1].foffset =
j1;
11164vinfos[1].indices[0] =
_ij1[0];
11165vinfos[1].indices[1] =
_ij1[1];
11166vinfos[1].maxsolutions =
_nj1;
11167vinfos[2].jointtype = 1;
11168vinfos[2].foffset =
j2;
11169vinfos[2].indices[0] =
_ij2[0];
11170vinfos[2].indices[1] =
_ij2[1];
11171vinfos[2].maxsolutions =
_nj2;
11172vinfos[3].jointtype = 1;
11173vinfos[3].foffset =
j3;
11174vinfos[3].indices[0] =
_ij3[0];
11175vinfos[3].indices[1] =
_ij3[1];
11176vinfos[3].maxsolutions =
_nj3;
11177vinfos[4].jointtype = 1;
11178vinfos[4].foffset =
j4;
11179vinfos[4].indices[0] =
_ij4[0];
11180vinfos[4].indices[1] =
_ij4[1];
11181vinfos[4].maxsolutions =
_nj4;
11182vinfos[5].jointtype = 1;
11183vinfos[5].foffset =
j5;
11184vinfos[5].indices[0] =
_ij5[0];
11185vinfos[5].indices[1] =
_ij5[1];
11186vinfos[5].maxsolutions =
_nj5;
11187std::vector<int> vfree(0);
11199if( bgotonextstatement )
11201bool bgotonextstatement =
true;
11205if(
IKabs(evalcond[0]) < 0.0000050000000000 )
11207bgotonextstatement=
false;
11215IkReal x861=((-1.0)*(x862.
value));
11218j4=3.14159265358979;
11224IkReal gconst6=x861;
11230IkReal gconst8=(x860*(pow(x863,-0.5)));
11232if(
IKabs(j3eval[0]) < 0.0000010000000000 )
11235IkReal j3array[2], cj3array[2], sj3array[2];
11236bool j3valid[2]={
false};
11245 j3valid[0] = j3valid[1] =
true;
11246 j3array[0] =
IKacos(cj3array[0]);
11247 sj3array[0] =
IKsin(j3array[0]);
11248 cj3array[1] = cj3array[0];
11249 j3array[1] = -j3array[0];
11250 sj3array[1] = -sj3array[0];
11252else if( isnan(cj3array[0]) )
11256 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
11258for(
int ij3 = 0; ij3 < 2; ++ij3)
11265for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
11269 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
11272j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
11279evalcond[2]=(gconst8*x865);
11280evalcond[3]=(((
new_r00*x866))+gconst8);
11281evalcond[4]=(((gconst8*x866))+
new_r00);
11282evalcond[5]=(gconst8+(((-1.0)*
new_r11*x866)));
11290std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
11291vinfos[0].jointtype = 1;
11292vinfos[0].foffset =
j0;
11293vinfos[0].indices[0] =
_ij0[0];
11294vinfos[0].indices[1] =
_ij0[1];
11295vinfos[0].maxsolutions =
_nj0;
11296vinfos[1].jointtype = 1;
11297vinfos[1].foffset =
j1;
11298vinfos[1].indices[0] =
_ij1[0];
11299vinfos[1].indices[1] =
_ij1[1];
11300vinfos[1].maxsolutions =
_nj1;
11301vinfos[2].jointtype = 1;
11302vinfos[2].foffset =
j2;
11303vinfos[2].indices[0] =
_ij2[0];
11304vinfos[2].indices[1] =
_ij2[1];
11305vinfos[2].maxsolutions =
_nj2;
11306vinfos[3].jointtype = 1;
11307vinfos[3].foffset =
j3;
11308vinfos[3].indices[0] =
_ij3[0];
11309vinfos[3].indices[1] =
_ij3[1];
11310vinfos[3].maxsolutions =
_nj3;
11311vinfos[4].jointtype = 1;
11312vinfos[4].foffset =
j4;
11313vinfos[4].indices[0] =
_ij4[0];
11314vinfos[4].indices[1] =
_ij4[1];
11315vinfos[4].maxsolutions =
_nj4;
11316vinfos[5].jointtype = 1;
11317vinfos[5].foffset =
j5;
11318vinfos[5].indices[0] =
_ij5[0];
11319vinfos[5].indices[1] =
_ij5[1];
11320vinfos[5].maxsolutions =
_nj5;
11321std::vector<int> vfree(0);
11330IkReal j3array[2], cj3array[2], sj3array[2];
11331bool j3valid[2]={
false};
11337cj3array[0]=(gconst8*(x867.
value));
11340 j3valid[0] = j3valid[1] =
true;
11341 j3array[0] =
IKacos(cj3array[0]);
11342 sj3array[0] =
IKsin(j3array[0]);
11343 cj3array[1] = cj3array[0];
11344 j3array[1] = -j3array[0];
11345 sj3array[1] = -sj3array[0];
11347else if( isnan(cj3array[0]) )
11351 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
11353for(
int ij3 = 0; ij3 < 2; ++ij3)
11360for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
11364 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
11367j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
11372IkReal x870=(gconst8*x869);
11375evalcond[2]=(gconst8*x868);
11376evalcond[3]=(((
new_r00*x869))+gconst8);
11378evalcond[5]=((((-1.0)*x870))+
new_r11);
11386std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
11387vinfos[0].jointtype = 1;
11388vinfos[0].foffset =
j0;
11389vinfos[0].indices[0] =
_ij0[0];
11390vinfos[0].indices[1] =
_ij0[1];
11391vinfos[0].maxsolutions =
_nj0;
11392vinfos[1].jointtype = 1;
11393vinfos[1].foffset =
j1;
11394vinfos[1].indices[0] =
_ij1[0];
11395vinfos[1].indices[1] =
_ij1[1];
11396vinfos[1].maxsolutions =
_nj1;
11397vinfos[2].jointtype = 1;
11398vinfos[2].foffset =
j2;
11399vinfos[2].indices[0] =
_ij2[0];
11400vinfos[2].indices[1] =
_ij2[1];
11401vinfos[2].maxsolutions =
_nj2;
11402vinfos[3].jointtype = 1;
11403vinfos[3].foffset =
j3;
11404vinfos[3].indices[0] =
_ij3[0];
11405vinfos[3].indices[1] =
_ij3[1];
11406vinfos[3].maxsolutions =
_nj3;
11407vinfos[4].jointtype = 1;
11408vinfos[4].foffset =
j4;
11409vinfos[4].indices[0] =
_ij4[0];
11410vinfos[4].indices[1] =
_ij4[1];
11411vinfos[4].maxsolutions =
_nj4;
11412vinfos[5].jointtype = 1;
11413vinfos[5].foffset =
j5;
11414vinfos[5].indices[0] =
_ij5[0];
11415vinfos[5].indices[1] =
_ij5[1];
11416vinfos[5].maxsolutions =
_nj5;
11417std::vector<int> vfree(0);
11429if( bgotonextstatement )
11431bool bgotonextstatement =
true;
11435if(
IKabs(evalcond[0]) < 0.0000050000000000 )
11437bgotonextstatement=
false;
11444IkReal x871=((-1.0)*(x872.
value));
11447j4=3.14159265358979;
11452IkReal gconst6=x871;
11457IkReal gconst7=((-1.0)*
new_r10*(pow(x873,-0.5)));
11460if(
IKabs(j3eval[0]) < 0.0000010000000000 )
11468IkReal x874=((-1.0)*(x875.
value));
11471j4=3.14159265358979;
11476IkReal gconst6=x874;
11481IkReal gconst7=((-1.0)*
new_r10*(pow(x876,-0.5)));
11484if(
IKabs(j3eval[0]) < 0.0000010000000000 )
11492IkReal x877=((-1.0)*(x878.
value));
11495j4=3.14159265358979;
11500IkReal gconst6=x877;
11505IkReal gconst7=((-1.0)*
new_r10*(pow(x879,-0.5)));
11508if(
IKabs(j3eval[0]) < 0.0000010000000000 )
11515IkReal j3array[1], cj3array[1], sj3array[1];
11516bool j3valid[1]={
false};
11529sj3array[0]=
IKsin(j3array[0]);
11530cj3array[0]=
IKcos(j3array[0]);
11531if( j3array[0] >
IKPI )
11535else if( j3array[0] < -
IKPI )
11536{ j3array[0]+=
IK2PI;
11539for(
int ij3 = 0; ij3 < 1; ++ij3)
11546for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
11550 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
11553j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
11558IkReal x884=((1.0)*gconst7);
11559IkReal x885=((1.0)*x883);
11560IkReal x886=(x883*x884);
11562evalcond[1]=(gconst7*x882);
11563evalcond[2]=((((-1.0)*
new_r10*x885))+gconst7);
11564evalcond[3]=((((-1.0)*x886))+
new_r01);
11565evalcond[4]=((((-1.0)*x882*x884))+
new_r11);
11566evalcond[5]=((((-1.0)*x886))+
new_r10);
11576std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
11577vinfos[0].jointtype = 1;
11578vinfos[0].foffset =
j0;
11579vinfos[0].indices[0] =
_ij0[0];
11580vinfos[0].indices[1] =
_ij0[1];
11581vinfos[0].maxsolutions =
_nj0;
11582vinfos[1].jointtype = 1;
11583vinfos[1].foffset =
j1;
11584vinfos[1].indices[0] =
_ij1[0];
11585vinfos[1].indices[1] =
_ij1[1];
11586vinfos[1].maxsolutions =
_nj1;
11587vinfos[2].jointtype = 1;
11588vinfos[2].foffset =
j2;
11589vinfos[2].indices[0] =
_ij2[0];
11590vinfos[2].indices[1] =
_ij2[1];
11591vinfos[2].maxsolutions =
_nj2;
11592vinfos[3].jointtype = 1;
11593vinfos[3].foffset =
j3;
11594vinfos[3].indices[0] =
_ij3[0];
11595vinfos[3].indices[1] =
_ij3[1];
11596vinfos[3].maxsolutions =
_nj3;
11597vinfos[4].jointtype = 1;
11598vinfos[4].foffset =
j4;
11599vinfos[4].indices[0] =
_ij4[0];
11600vinfos[4].indices[1] =
_ij4[1];
11601vinfos[4].maxsolutions =
_nj4;
11602vinfos[5].jointtype = 1;
11603vinfos[5].foffset =
j5;
11604vinfos[5].indices[0] =
_ij5[0];
11605vinfos[5].indices[1] =
_ij5[1];
11606vinfos[5].maxsolutions =
_nj5;
11607std::vector<int> vfree(0);
11620IkReal j3array[1], cj3array[1], sj3array[1];
11621bool j3valid[1]={
false};
11631j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x887.
value)))+(x888.
value));
11632sj3array[0]=
IKsin(j3array[0]);
11633cj3array[0]=
IKcos(j3array[0]);
11634if( j3array[0] >
IKPI )
11638else if( j3array[0] < -
IKPI )
11639{ j3array[0]+=
IK2PI;
11642for(
int ij3 = 0; ij3 < 1; ++ij3)
11649for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
11653 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
11656j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
11661IkReal x891=((1.0)*gconst7);
11662IkReal x892=((1.0)*x890);
11663IkReal x893=(x890*x891);
11665evalcond[1]=(gconst7*x889);
11666evalcond[2]=(gconst7+(((-1.0)*
new_r10*x892)));
11667evalcond[3]=((((-1.0)*x893))+
new_r01);
11668evalcond[4]=((((-1.0)*x889*x891))+
new_r11);
11669evalcond[5]=((((-1.0)*x893))+
new_r10);
11679std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
11680vinfos[0].jointtype = 1;
11681vinfos[0].foffset =
j0;
11682vinfos[0].indices[0] =
_ij0[0];
11683vinfos[0].indices[1] =
_ij0[1];
11684vinfos[0].maxsolutions =
_nj0;
11685vinfos[1].jointtype = 1;
11686vinfos[1].foffset =
j1;
11687vinfos[1].indices[0] =
_ij1[0];
11688vinfos[1].indices[1] =
_ij1[1];
11689vinfos[1].maxsolutions =
_nj1;
11690vinfos[2].jointtype = 1;
11691vinfos[2].foffset =
j2;
11692vinfos[2].indices[0] =
_ij2[0];
11693vinfos[2].indices[1] =
_ij2[1];
11694vinfos[2].maxsolutions =
_nj2;
11695vinfos[3].jointtype = 1;
11696vinfos[3].foffset =
j3;
11697vinfos[3].indices[0] =
_ij3[0];
11698vinfos[3].indices[1] =
_ij3[1];
11699vinfos[3].maxsolutions =
_nj3;
11700vinfos[4].jointtype = 1;
11701vinfos[4].foffset =
j4;
11702vinfos[4].indices[0] =
_ij4[0];
11703vinfos[4].indices[1] =
_ij4[1];
11704vinfos[4].maxsolutions =
_nj4;
11705vinfos[5].jointtype = 1;
11706vinfos[5].foffset =
j5;
11707vinfos[5].indices[0] =
_ij5[0];
11708vinfos[5].indices[1] =
_ij5[1];
11709vinfos[5].maxsolutions =
_nj5;
11710std::vector<int> vfree(0);
11723IkReal j3array[1], cj3array[1], sj3array[1];
11724bool j3valid[1]={
false};
11734j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x894.
value)))+(x895.
value));
11735sj3array[0]=
IKsin(j3array[0]);
11736cj3array[0]=
IKcos(j3array[0]);
11737if( j3array[0] >
IKPI )
11741else if( j3array[0] < -
IKPI )
11742{ j3array[0]+=
IK2PI;
11745for(
int ij3 = 0; ij3 < 1; ++ij3)
11752for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
11756 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
11759j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
11764IkReal x898=((1.0)*gconst7);
11765IkReal x899=((1.0)*x897);
11766IkReal x900=(x897*x898);
11768evalcond[1]=(gconst7*x896);
11769evalcond[2]=(gconst7+(((-1.0)*
new_r10*x899)));
11770evalcond[3]=((((-1.0)*x900))+
new_r01);
11771evalcond[4]=((((-1.0)*x896*x898))+
new_r11);
11772evalcond[5]=((((-1.0)*x900))+
new_r10);
11782std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
11783vinfos[0].jointtype = 1;
11784vinfos[0].foffset =
j0;
11785vinfos[0].indices[0] =
_ij0[0];
11786vinfos[0].indices[1] =
_ij0[1];
11787vinfos[0].maxsolutions =
_nj0;
11788vinfos[1].jointtype = 1;
11789vinfos[1].foffset =
j1;
11790vinfos[1].indices[0] =
_ij1[0];
11791vinfos[1].indices[1] =
_ij1[1];
11792vinfos[1].maxsolutions =
_nj1;
11793vinfos[2].jointtype = 1;
11794vinfos[2].foffset =
j2;
11795vinfos[2].indices[0] =
_ij2[0];
11796vinfos[2].indices[1] =
_ij2[1];
11797vinfos[2].maxsolutions =
_nj2;
11798vinfos[3].jointtype = 1;
11799vinfos[3].foffset =
j3;
11800vinfos[3].indices[0] =
_ij3[0];
11801vinfos[3].indices[1] =
_ij3[1];
11802vinfos[3].maxsolutions =
_nj3;
11803vinfos[4].jointtype = 1;
11804vinfos[4].foffset =
j4;
11805vinfos[4].indices[0] =
_ij4[0];
11806vinfos[4].indices[1] =
_ij4[1];
11807vinfos[4].maxsolutions =
_nj4;
11808vinfos[5].jointtype = 1;
11809vinfos[5].foffset =
j5;
11810vinfos[5].indices[0] =
_ij5[0];
11811vinfos[5].indices[1] =
_ij5[1];
11812vinfos[5].maxsolutions =
_nj5;
11813std::vector<int> vfree(0);
11825if( bgotonextstatement )
11827bool bgotonextstatement =
true;
11832bgotonextstatement=
false;
11837if( bgotonextstatement )
11849IkReal j3array[1], cj3array[1], sj3array[1];
11850bool j3valid[1]={
false};
11860j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x901.
value)))+(x902.
value));
11861sj3array[0]=
IKsin(j3array[0]);
11862cj3array[0]=
IKcos(j3array[0]);
11863if( j3array[0] >
IKPI )
11867else if( j3array[0] < -
IKPI )
11868{ j3array[0]+=
IK2PI;
11871for(
int ij3 = 0; ij3 < 1; ++ij3)
11878for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
11882 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
11885j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
11890IkReal x905=(gconst8*x904);
11891IkReal x906=(gconst7*x904);
11892IkReal x907=((1.0)*x903);
11893IkReal x908=(gconst7*x907);
11895evalcond[1]=(
new_r00+((gconst8*x903))+x906);
11898evalcond[4]=((((-1.0)*x908))+
new_r01+x905);
11899evalcond[5]=((((-1.0)*x908))+
new_r10+x905);
11900evalcond[6]=((((-1.0)*gconst7))+((
new_r11*x904))+((
new_r01*x903)));
11901evalcond[7]=((((-1.0)*gconst8*x907))+(((-1.0)*x906))+
new_r11);
11909std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
11910vinfos[0].jointtype = 1;
11911vinfos[0].foffset =
j0;
11912vinfos[0].indices[0] =
_ij0[0];
11913vinfos[0].indices[1] =
_ij0[1];
11914vinfos[0].maxsolutions =
_nj0;
11915vinfos[1].jointtype = 1;
11916vinfos[1].foffset =
j1;
11917vinfos[1].indices[0] =
_ij1[0];
11918vinfos[1].indices[1] =
_ij1[1];
11919vinfos[1].maxsolutions =
_nj1;
11920vinfos[2].jointtype = 1;
11921vinfos[2].foffset =
j2;
11922vinfos[2].indices[0] =
_ij2[0];
11923vinfos[2].indices[1] =
_ij2[1];
11924vinfos[2].maxsolutions =
_nj2;
11925vinfos[3].jointtype = 1;
11926vinfos[3].foffset =
j3;
11927vinfos[3].indices[0] =
_ij3[0];
11928vinfos[3].indices[1] =
_ij3[1];
11929vinfos[3].maxsolutions =
_nj3;
11930vinfos[4].jointtype = 1;
11931vinfos[4].foffset =
j4;
11932vinfos[4].indices[0] =
_ij4[0];
11933vinfos[4].indices[1] =
_ij4[1];
11934vinfos[4].maxsolutions =
_nj4;
11935vinfos[5].jointtype = 1;
11936vinfos[5].foffset =
j5;
11937vinfos[5].indices[0] =
_ij5[0];
11938vinfos[5].indices[1] =
_ij5[1];
11939vinfos[5].maxsolutions =
_nj5;
11940std::vector<int> vfree(0);
11953IkReal j3array[1], cj3array[1], sj3array[1];
11954bool j3valid[1]={
false};
11965j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x910.
value)))+(x911.
value));
11966sj3array[0]=
IKsin(j3array[0]);
11967cj3array[0]=
IKcos(j3array[0]);
11968if( j3array[0] >
IKPI )
11972else if( j3array[0] < -
IKPI )
11973{ j3array[0]+=
IK2PI;
11976for(
int ij3 = 0; ij3 < 1; ++ij3)
11983for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
11987 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
11990j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
11995IkReal x914=(gconst8*x913);
11996IkReal x915=(gconst7*x913);
11997IkReal x916=((1.0)*x912);
11998IkReal x917=(gconst7*x916);
12000evalcond[1]=(((gconst8*x912))+
new_r00+x915);
12003evalcond[4]=((((-1.0)*x917))+
new_r01+x914);
12004evalcond[5]=((((-1.0)*x917))+
new_r10+x914);
12005evalcond[6]=(((
new_r11*x913))+(((-1.0)*gconst7))+((
new_r01*x912)));
12006evalcond[7]=((((-1.0)*gconst8*x916))+(((-1.0)*x915))+
new_r11);
12014std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
12015vinfos[0].jointtype = 1;
12016vinfos[0].foffset =
j0;
12017vinfos[0].indices[0] =
_ij0[0];
12018vinfos[0].indices[1] =
_ij0[1];
12019vinfos[0].maxsolutions =
_nj0;
12020vinfos[1].jointtype = 1;
12021vinfos[1].foffset =
j1;
12022vinfos[1].indices[0] =
_ij1[0];
12023vinfos[1].indices[1] =
_ij1[1];
12024vinfos[1].maxsolutions =
_nj1;
12025vinfos[2].jointtype = 1;
12026vinfos[2].foffset =
j2;
12027vinfos[2].indices[0] =
_ij2[0];
12028vinfos[2].indices[1] =
_ij2[1];
12029vinfos[2].maxsolutions =
_nj2;
12030vinfos[3].jointtype = 1;
12031vinfos[3].foffset =
j3;
12032vinfos[3].indices[0] =
_ij3[0];
12033vinfos[3].indices[1] =
_ij3[1];
12034vinfos[3].maxsolutions =
_nj3;
12035vinfos[4].jointtype = 1;
12036vinfos[4].foffset =
j4;
12037vinfos[4].indices[0] =
_ij4[0];
12038vinfos[4].indices[1] =
_ij4[1];
12039vinfos[4].maxsolutions =
_nj4;
12040vinfos[5].jointtype = 1;
12041vinfos[5].foffset =
j5;
12042vinfos[5].indices[0] =
_ij5[0];
12043vinfos[5].indices[1] =
_ij5[1];
12044vinfos[5].maxsolutions =
_nj5;
12045std::vector<int> vfree(0);
12058IkReal j3array[1], cj3array[1], sj3array[1];
12059bool j3valid[1]={
false};
12070j3array[0]=((-1.5707963267949)+(x919.
value)+(((1.5707963267949)*(x920.
value))));
12071sj3array[0]=
IKsin(j3array[0]);
12072cj3array[0]=
IKcos(j3array[0]);
12073if( j3array[0] >
IKPI )
12077else if( j3array[0] < -
IKPI )
12078{ j3array[0]+=
IK2PI;
12081for(
int ij3 = 0; ij3 < 1; ++ij3)
12088for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
12092 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
12095j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
12100IkReal x923=(gconst8*x922);
12101IkReal x924=(gconst7*x922);
12102IkReal x925=((1.0)*x921);
12103IkReal x926=(gconst7*x925);
12105evalcond[1]=(((gconst8*x921))+
new_r00+x924);
12108evalcond[4]=((((-1.0)*x926))+
new_r01+x923);
12109evalcond[5]=((((-1.0)*x926))+
new_r10+x923);
12110evalcond[6]=((((-1.0)*gconst7))+((
new_r01*x921))+((
new_r11*x922)));
12111evalcond[7]=((((-1.0)*gconst8*x925))+(((-1.0)*x924))+
new_r11);
12119std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
12120vinfos[0].jointtype = 1;
12121vinfos[0].foffset =
j0;
12122vinfos[0].indices[0] =
_ij0[0];
12123vinfos[0].indices[1] =
_ij0[1];
12124vinfos[0].maxsolutions =
_nj0;
12125vinfos[1].jointtype = 1;
12126vinfos[1].foffset =
j1;
12127vinfos[1].indices[0] =
_ij1[0];
12128vinfos[1].indices[1] =
_ij1[1];
12129vinfos[1].maxsolutions =
_nj1;
12130vinfos[2].jointtype = 1;
12131vinfos[2].foffset =
j2;
12132vinfos[2].indices[0] =
_ij2[0];
12133vinfos[2].indices[1] =
_ij2[1];
12134vinfos[2].maxsolutions =
_nj2;
12135vinfos[3].jointtype = 1;
12136vinfos[3].foffset =
j3;
12137vinfos[3].indices[0] =
_ij3[0];
12138vinfos[3].indices[1] =
_ij3[1];
12139vinfos[3].maxsolutions =
_nj3;
12140vinfos[4].jointtype = 1;
12141vinfos[4].foffset =
j4;
12142vinfos[4].indices[0] =
_ij4[0];
12143vinfos[4].indices[1] =
_ij4[1];
12144vinfos[4].maxsolutions =
_nj4;
12145vinfos[5].jointtype = 1;
12146vinfos[5].foffset =
j5;
12147vinfos[5].indices[0] =
_ij5[0];
12148vinfos[5].indices[1] =
_ij5[1];
12149vinfos[5].maxsolutions =
_nj5;
12150std::vector<int> vfree(0);
12162if( bgotonextstatement )
12164bool bgotonextstatement =
true;
12171IkReal x927=pow(x929,-0.5);
12172IkReal x928=((1.0)*x927);
12177IkReal gconst9=((3.14159265358979)+(((-1.0)*(x930.
value))));
12178IkReal gconst10=(
new_r10*x928);
12179IkReal gconst11=(
new_r00*x928);
12184evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-3.14159265358979)+
j5+(x931.
value))))), 6.28318530717959)));
12185if(
IKabs(evalcond[0]) < 0.0000050000000000 )
12187bgotonextstatement=
false;
12194IkReal x932=((1.0)*(x935.
value));
12196IkReal x934=((1.0)*x933);
12199j4=3.14159265358979;
12202j5=((3.14159265)+(((-1.0)*x932)));
12203IkReal gconst9=((3.14159265358979)+(((-1.0)*x932)));
12204IkReal gconst10=(
new_r10*x934);
12205IkReal gconst11=(
new_r00*x934);
12214if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
12222IkReal x941=((1.0)*(x944.
value));
12224IkReal x943=((1.0)*x942);
12227j4=3.14159265358979;
12230j5=((3.14159265)+(((-1.0)*x941)));
12231IkReal gconst9=((3.14159265358979)+(((-1.0)*x941)));
12232IkReal gconst10=(
new_r10*x943);
12233IkReal gconst11=(
new_r00*x943);
12241IkReal x948=x951.
value;
12245if(
IKabs(j3eval[0]) < 0.0000010000000000 )
12253IkReal x952=((1.0)*(x955.
value));
12255IkReal x954=((1.0)*x953);
12258j4=3.14159265358979;
12261j5=((3.14159265)+(((-1.0)*x952)));
12262IkReal gconst9=((3.14159265358979)+(((-1.0)*x952)));
12263IkReal gconst10=(
new_r10*x954);
12264IkReal gconst11=(
new_r00*x954);
12271IkReal x958=x961.
value;
12273IkReal x960=((1.0)*x958);
12275if(
IKabs(j3eval[0]) < 0.0000010000000000 )
12279bool bgotonextstatement =
true;
12283if(
IKabs(evalcond[0]) < 0.0000050000000000 )
12285bgotonextstatement=
false;
12292IkReal x962=((1.0)*(x963.
value));
12295j4=3.14159265358979;
12298j5=((3.14159265)+(((-1.0)*x962)));
12301IkReal gconst9=((3.14159265358979)+(((-1.0)*x962)));
12306IkReal gconst10=((1.0)*
new_r10*(pow(x964,-0.5)));
12309if(
IKabs(j3eval[0]) < 0.0000010000000000 )
12312IkReal j3array[2], cj3array[2], sj3array[2];
12313bool j3valid[2]={
false};
12322 j3valid[0] = j3valid[1] =
true;
12323 j3array[0] =
IKacos(cj3array[0]);
12324 sj3array[0] =
IKsin(j3array[0]);
12325 cj3array[1] = cj3array[0];
12326 j3array[1] = -j3array[0];
12327 sj3array[1] = -sj3array[0];
12329else if( isnan(cj3array[0]) )
12333 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
12335for(
int ij3 = 0; ij3 < 2; ++ij3)
12342for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
12346 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
12349j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
12354IkReal x968=((1.0)*gconst10);
12357evalcond[2]=(gconst10*x966);
12358evalcond[3]=(gconst10+(((-1.0)*
new_r10*x967)));
12359evalcond[4]=((((-1.0)*x967*x968))+
new_r10);
12360evalcond[5]=(((
new_r01*x967))+(((-1.0)*x968)));
12368std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
12369vinfos[0].jointtype = 1;
12370vinfos[0].foffset =
j0;
12371vinfos[0].indices[0] =
_ij0[0];
12372vinfos[0].indices[1] =
_ij0[1];
12373vinfos[0].maxsolutions =
_nj0;
12374vinfos[1].jointtype = 1;
12375vinfos[1].foffset =
j1;
12376vinfos[1].indices[0] =
_ij1[0];
12377vinfos[1].indices[1] =
_ij1[1];
12378vinfos[1].maxsolutions =
_nj1;
12379vinfos[2].jointtype = 1;
12380vinfos[2].foffset =
j2;
12381vinfos[2].indices[0] =
_ij2[0];
12382vinfos[2].indices[1] =
_ij2[1];
12383vinfos[2].maxsolutions =
_nj2;
12384vinfos[3].jointtype = 1;
12385vinfos[3].foffset =
j3;
12386vinfos[3].indices[0] =
_ij3[0];
12387vinfos[3].indices[1] =
_ij3[1];
12388vinfos[3].maxsolutions =
_nj3;
12389vinfos[4].jointtype = 1;
12390vinfos[4].foffset =
j4;
12391vinfos[4].indices[0] =
_ij4[0];
12392vinfos[4].indices[1] =
_ij4[1];
12393vinfos[4].maxsolutions =
_nj4;
12394vinfos[5].jointtype = 1;
12395vinfos[5].foffset =
j5;
12396vinfos[5].indices[0] =
_ij5[0];
12397vinfos[5].indices[1] =
_ij5[1];
12398vinfos[5].maxsolutions =
_nj5;
12399std::vector<int> vfree(0);
12408IkReal j3array[2], cj3array[2], sj3array[2];
12409bool j3valid[2]={
false};
12415cj3array[0]=(gconst10*(x969.
value));
12418 j3valid[0] = j3valid[1] =
true;
12419 j3array[0] =
IKacos(cj3array[0]);
12420 sj3array[0] =
IKsin(j3array[0]);
12421 cj3array[1] = cj3array[0];
12422 j3array[1] = -j3array[0];
12423 sj3array[1] = -sj3array[0];
12425else if( isnan(cj3array[0]) )
12429 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
12431for(
int ij3 = 0; ij3 < 2; ++ij3)
12438for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
12442 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
12445j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
12450IkReal x972=((1.0)*gconst10);
12451IkReal x973=(x971*x972);
12454evalcond[2]=(gconst10*x970);
12455evalcond[3]=(
new_r01+(((-1.0)*x973)));
12456evalcond[4]=(
new_r10+(((-1.0)*x973)));
12457evalcond[5]=(((
new_r01*x971))+(((-1.0)*x972)));
12465std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
12466vinfos[0].jointtype = 1;
12467vinfos[0].foffset =
j0;
12468vinfos[0].indices[0] =
_ij0[0];
12469vinfos[0].indices[1] =
_ij0[1];
12470vinfos[0].maxsolutions =
_nj0;
12471vinfos[1].jointtype = 1;
12472vinfos[1].foffset =
j1;
12473vinfos[1].indices[0] =
_ij1[0];
12474vinfos[1].indices[1] =
_ij1[1];
12475vinfos[1].maxsolutions =
_nj1;
12476vinfos[2].jointtype = 1;
12477vinfos[2].foffset =
j2;
12478vinfos[2].indices[0] =
_ij2[0];
12479vinfos[2].indices[1] =
_ij2[1];
12480vinfos[2].maxsolutions =
_nj2;
12481vinfos[3].jointtype = 1;
12482vinfos[3].foffset =
j3;
12483vinfos[3].indices[0] =
_ij3[0];
12484vinfos[3].indices[1] =
_ij3[1];
12485vinfos[3].maxsolutions =
_nj3;
12486vinfos[4].jointtype = 1;
12487vinfos[4].foffset =
j4;
12488vinfos[4].indices[0] =
_ij4[0];
12489vinfos[4].indices[1] =
_ij4[1];
12490vinfos[4].maxsolutions =
_nj4;
12491vinfos[5].jointtype = 1;
12492vinfos[5].foffset =
j5;
12493vinfos[5].indices[0] =
_ij5[0];
12494vinfos[5].indices[1] =
_ij5[1];
12495vinfos[5].maxsolutions =
_nj5;
12496std::vector<int> vfree(0);
12508if( bgotonextstatement )
12510bool bgotonextstatement =
true;
12514evalcond[1]=gconst11;
12515if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 )
12517bgotonextstatement=
false;
12524IkReal x974=((1.0)*(x975.
value));
12527j4=3.14159265358979;
12530j5=((3.14159265)+(((-1.0)*x974)));
12535IkReal gconst9=((3.14159265358979)+(((-1.0)*x974)));
12536IkReal gconst10=((1.0)*
new_r10);
12537IkReal gconst11=((1.0)*
new_r00);
12541if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
12549IkReal x976=((1.0)*(x977.
value));
12552j4=3.14159265358979;
12555j5=((3.14159265)+(((-1.0)*x976)));
12560IkReal gconst9=((3.14159265358979)+(((-1.0)*x976)));
12561IkReal gconst10=((1.0)*
new_r10);
12562IkReal gconst11=((1.0)*
new_r00);
12566if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
12574IkReal x978=((1.0)*(x979.
value));
12577j4=3.14159265358979;
12580j5=((3.14159265)+(((-1.0)*x978)));
12585IkReal gconst9=((3.14159265358979)+(((-1.0)*x978)));
12586IkReal gconst10=((1.0)*
new_r10);
12587IkReal gconst11=((1.0)*
new_r00);
12591if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
12598IkReal j3array[1], cj3array[1], sj3array[1];
12599bool j3valid[1]={
false};
12609j3array[0]=((-1.5707963267949)+(x980.
value)+(((1.5707963267949)*(x981.
value))));
12610sj3array[0]=
IKsin(j3array[0]);
12611cj3array[0]=
IKcos(j3array[0]);
12612if( j3array[0] >
IKPI )
12616else if( j3array[0] < -
IKPI )
12617{ j3array[0]+=
IK2PI;
12620for(
int ij3 = 0; ij3 < 1; ++ij3)
12627for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
12631 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
12634j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
12639IkReal x984=(gconst11*x982);
12640IkReal x985=(gconst10*x982);
12641IkReal x986=(gconst11*x983);
12642IkReal x987=((1.0)*x983);
12643IkReal x988=(gconst10*x987);
12644evalcond[0]=((((-1.0)*x988))+x984);
12646evalcond[2]=(
new_r00+x985+x986);
12648evalcond[4]=((((-1.0)*x985))+(((-1.0)*x986)));
12649evalcond[5]=((((-1.0)*x988))+
new_r10+x984);
12657std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
12658vinfos[0].jointtype = 1;
12659vinfos[0].foffset =
j0;
12660vinfos[0].indices[0] =
_ij0[0];
12661vinfos[0].indices[1] =
_ij0[1];
12662vinfos[0].maxsolutions =
_nj0;
12663vinfos[1].jointtype = 1;
12664vinfos[1].foffset =
j1;
12665vinfos[1].indices[0] =
_ij1[0];
12666vinfos[1].indices[1] =
_ij1[1];
12667vinfos[1].maxsolutions =
_nj1;
12668vinfos[2].jointtype = 1;
12669vinfos[2].foffset =
j2;
12670vinfos[2].indices[0] =
_ij2[0];
12671vinfos[2].indices[1] =
_ij2[1];
12672vinfos[2].maxsolutions =
_nj2;
12673vinfos[3].jointtype = 1;
12674vinfos[3].foffset =
j3;
12675vinfos[3].indices[0] =
_ij3[0];
12676vinfos[3].indices[1] =
_ij3[1];
12677vinfos[3].maxsolutions =
_nj3;
12678vinfos[4].jointtype = 1;
12679vinfos[4].foffset =
j4;
12680vinfos[4].indices[0] =
_ij4[0];
12681vinfos[4].indices[1] =
_ij4[1];
12682vinfos[4].maxsolutions =
_nj4;
12683vinfos[5].jointtype = 1;
12684vinfos[5].foffset =
j5;
12685vinfos[5].indices[0] =
_ij5[0];
12686vinfos[5].indices[1] =
_ij5[1];
12687vinfos[5].maxsolutions =
_nj5;
12688std::vector<int> vfree(0);
12701IkReal j3array[1], cj3array[1], sj3array[1];
12702bool j3valid[1]={
false};
12712j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x989.
value)))+(x990.
value));
12713sj3array[0]=
IKsin(j3array[0]);
12714cj3array[0]=
IKcos(j3array[0]);
12715if( j3array[0] >
IKPI )
12719else if( j3array[0] < -
IKPI )
12720{ j3array[0]+=
IK2PI;
12723for(
int ij3 = 0; ij3 < 1; ++ij3)
12730for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
12734 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
12737j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
12742IkReal x993=(gconst11*x991);
12743IkReal x994=(gconst10*x991);
12744IkReal x995=(gconst11*x992);
12745IkReal x996=((1.0)*x992);
12746IkReal x997=(gconst10*x996);
12747evalcond[0]=((((-1.0)*x997))+x993);
12749evalcond[2]=(
new_r00+x995+x994);
12751evalcond[4]=((((-1.0)*x994))+(((-1.0)*x995)));
12752evalcond[5]=((((-1.0)*x997))+
new_r10+x993);
12760std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
12761vinfos[0].jointtype = 1;
12762vinfos[0].foffset =
j0;
12763vinfos[0].indices[0] =
_ij0[0];
12764vinfos[0].indices[1] =
_ij0[1];
12765vinfos[0].maxsolutions =
_nj0;
12766vinfos[1].jointtype = 1;
12767vinfos[1].foffset =
j1;
12768vinfos[1].indices[0] =
_ij1[0];
12769vinfos[1].indices[1] =
_ij1[1];
12770vinfos[1].maxsolutions =
_nj1;
12771vinfos[2].jointtype = 1;
12772vinfos[2].foffset =
j2;
12773vinfos[2].indices[0] =
_ij2[0];
12774vinfos[2].indices[1] =
_ij2[1];
12775vinfos[2].maxsolutions =
_nj2;
12776vinfos[3].jointtype = 1;
12777vinfos[3].foffset =
j3;
12778vinfos[3].indices[0] =
_ij3[0];
12779vinfos[3].indices[1] =
_ij3[1];
12780vinfos[3].maxsolutions =
_nj3;
12781vinfos[4].jointtype = 1;
12782vinfos[4].foffset =
j4;
12783vinfos[4].indices[0] =
_ij4[0];
12784vinfos[4].indices[1] =
_ij4[1];
12785vinfos[4].maxsolutions =
_nj4;
12786vinfos[5].jointtype = 1;
12787vinfos[5].foffset =
j5;
12788vinfos[5].indices[0] =
_ij5[0];
12789vinfos[5].indices[1] =
_ij5[1];
12790vinfos[5].maxsolutions =
_nj5;
12791std::vector<int> vfree(0);
12804IkReal j3array[1], cj3array[1], sj3array[1];
12805bool j3valid[1]={
false};
12815j3array[0]=((-1.5707963267949)+(x998.
value)+(((1.5707963267949)*(x999.
value))));
12816sj3array[0]=
IKsin(j3array[0]);
12817cj3array[0]=
IKcos(j3array[0]);
12818if( j3array[0] >
IKPI )
12822else if( j3array[0] < -
IKPI )
12823{ j3array[0]+=
IK2PI;
12826for(
int ij3 = 0; ij3 < 1; ++ij3)
12833for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
12837 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
12840j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
12845IkReal x1002=(gconst11*x1000);
12846IkReal x1003=(gconst10*x1000);
12847IkReal x1004=(gconst11*x1001);
12848IkReal x1005=((1.0)*x1001);
12849IkReal x1006=(gconst10*x1005);
12850evalcond[0]=(x1002+(((-1.0)*x1006)));
12852evalcond[2]=(x1004+x1003+
new_r00);
12853evalcond[3]=(gconst10+(((-1.0)*
new_r10*x1005))+((
new_r00*x1000)));
12854evalcond[4]=((((-1.0)*x1003))+(((-1.0)*x1004)));
12855evalcond[5]=(x1002+(((-1.0)*x1006))+
new_r10);
12863std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
12864vinfos[0].jointtype = 1;
12865vinfos[0].foffset =
j0;
12866vinfos[0].indices[0] =
_ij0[0];
12867vinfos[0].indices[1] =
_ij0[1];
12868vinfos[0].maxsolutions =
_nj0;
12869vinfos[1].jointtype = 1;
12870vinfos[1].foffset =
j1;
12871vinfos[1].indices[0] =
_ij1[0];
12872vinfos[1].indices[1] =
_ij1[1];
12873vinfos[1].maxsolutions =
_nj1;
12874vinfos[2].jointtype = 1;
12875vinfos[2].foffset =
j2;
12876vinfos[2].indices[0] =
_ij2[0];
12877vinfos[2].indices[1] =
_ij2[1];
12878vinfos[2].maxsolutions =
_nj2;
12879vinfos[3].jointtype = 1;
12880vinfos[3].foffset =
j3;
12881vinfos[3].indices[0] =
_ij3[0];
12882vinfos[3].indices[1] =
_ij3[1];
12883vinfos[3].maxsolutions =
_nj3;
12884vinfos[4].jointtype = 1;
12885vinfos[4].foffset =
j4;
12886vinfos[4].indices[0] =
_ij4[0];
12887vinfos[4].indices[1] =
_ij4[1];
12888vinfos[4].maxsolutions =
_nj4;
12889vinfos[5].jointtype = 1;
12890vinfos[5].foffset =
j5;
12891vinfos[5].indices[0] =
_ij5[0];
12892vinfos[5].indices[1] =
_ij5[1];
12893vinfos[5].maxsolutions =
_nj5;
12894std::vector<int> vfree(0);
12906if( bgotonextstatement )
12908bool bgotonextstatement =
true;
12912if(
IKabs(evalcond[0]) < 0.0000050000000000 )
12914bgotonextstatement=
false;
12921IkReal x1007=((1.0)*(x1008.
value));
12924j4=3.14159265358979;
12927j5=((3.14159265)+(((-1.0)*x1007)));
12930IkReal gconst9=((3.14159265358979)+(((-1.0)*x1007)));
12933if(
IKabs(x1009)==0){
12936IkReal gconst11=((1.0)*
new_r00*(pow(x1009,-0.5)));
12938if(
IKabs(j3eval[0]) < 0.0000010000000000 )
12941IkReal j3array[2], cj3array[2], sj3array[2];
12942bool j3valid[2]={
false};
12951 j3valid[0] = j3valid[1] =
true;
12952 j3array[0] =
IKacos(cj3array[0]);
12953 sj3array[0] =
IKsin(j3array[0]);
12954 cj3array[1] = cj3array[0];
12955 j3array[1] = -j3array[0];
12956 sj3array[1] = -sj3array[0];
12958else if( isnan(cj3array[0]) )
12962 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
12964for(
int ij3 = 0; ij3 < 2; ++ij3)
12971for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
12975 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
12978j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
12985evalcond[2]=(gconst11*x1011);
12986evalcond[3]=(gconst11+((
new_r00*x1012)));
12987evalcond[4]=(((gconst11*x1012))+
new_r00);
12988evalcond[5]=((((-1.0)*
new_r11*x1012))+gconst11);
12996std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
12997vinfos[0].jointtype = 1;
12998vinfos[0].foffset =
j0;
12999vinfos[0].indices[0] =
_ij0[0];
13000vinfos[0].indices[1] =
_ij0[1];
13001vinfos[0].maxsolutions =
_nj0;
13002vinfos[1].jointtype = 1;
13003vinfos[1].foffset =
j1;
13004vinfos[1].indices[0] =
_ij1[0];
13005vinfos[1].indices[1] =
_ij1[1];
13006vinfos[1].maxsolutions =
_nj1;
13007vinfos[2].jointtype = 1;
13008vinfos[2].foffset =
j2;
13009vinfos[2].indices[0] =
_ij2[0];
13010vinfos[2].indices[1] =
_ij2[1];
13011vinfos[2].maxsolutions =
_nj2;
13012vinfos[3].jointtype = 1;
13013vinfos[3].foffset =
j3;
13014vinfos[3].indices[0] =
_ij3[0];
13015vinfos[3].indices[1] =
_ij3[1];
13016vinfos[3].maxsolutions =
_nj3;
13017vinfos[4].jointtype = 1;
13018vinfos[4].foffset =
j4;
13019vinfos[4].indices[0] =
_ij4[0];
13020vinfos[4].indices[1] =
_ij4[1];
13021vinfos[4].maxsolutions =
_nj4;
13022vinfos[5].jointtype = 1;
13023vinfos[5].foffset =
j5;
13024vinfos[5].indices[0] =
_ij5[0];
13025vinfos[5].indices[1] =
_ij5[1];
13026vinfos[5].maxsolutions =
_nj5;
13027std::vector<int> vfree(0);
13036IkReal j3array[2], cj3array[2], sj3array[2];
13037bool j3valid[2]={
false};
13043cj3array[0]=(gconst11*(x1013.
value));
13046 j3valid[0] = j3valid[1] =
true;
13047 j3array[0] =
IKacos(cj3array[0]);
13048 sj3array[0] =
IKsin(j3array[0]);
13049 cj3array[1] = cj3array[0];
13050 j3array[1] = -j3array[0];
13051 sj3array[1] = -sj3array[0];
13053else if( isnan(cj3array[0]) )
13057 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
13059for(
int ij3 = 0; ij3 < 2; ++ij3)
13066for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
13070 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
13073j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
13078IkReal x1016=(gconst11*x1015);
13081evalcond[2]=(gconst11*x1014);
13082evalcond[3]=(gconst11+((
new_r00*x1015)));
13084evalcond[5]=(
new_r11+(((-1.0)*x1016)));
13092std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
13093vinfos[0].jointtype = 1;
13094vinfos[0].foffset =
j0;
13095vinfos[0].indices[0] =
_ij0[0];
13096vinfos[0].indices[1] =
_ij0[1];
13097vinfos[0].maxsolutions =
_nj0;
13098vinfos[1].jointtype = 1;
13099vinfos[1].foffset =
j1;
13100vinfos[1].indices[0] =
_ij1[0];
13101vinfos[1].indices[1] =
_ij1[1];
13102vinfos[1].maxsolutions =
_nj1;
13103vinfos[2].jointtype = 1;
13104vinfos[2].foffset =
j2;
13105vinfos[2].indices[0] =
_ij2[0];
13106vinfos[2].indices[1] =
_ij2[1];
13107vinfos[2].maxsolutions =
_nj2;
13108vinfos[3].jointtype = 1;
13109vinfos[3].foffset =
j3;
13110vinfos[3].indices[0] =
_ij3[0];
13111vinfos[3].indices[1] =
_ij3[1];
13112vinfos[3].maxsolutions =
_nj3;
13113vinfos[4].jointtype = 1;
13114vinfos[4].foffset =
j4;
13115vinfos[4].indices[0] =
_ij4[0];
13116vinfos[4].indices[1] =
_ij4[1];
13117vinfos[4].maxsolutions =
_nj4;
13118vinfos[5].jointtype = 1;
13119vinfos[5].foffset =
j5;
13120vinfos[5].indices[0] =
_ij5[0];
13121vinfos[5].indices[1] =
_ij5[1];
13122vinfos[5].maxsolutions =
_nj5;
13123std::vector<int> vfree(0);
13135if( bgotonextstatement )
13137bool bgotonextstatement =
true;
13141if(
IKabs(evalcond[0]) < 0.0000050000000000 )
13143bgotonextstatement=
false;
13150IkReal x1017=((1.0)*(x1018.
value));
13153j4=3.14159265358979;
13156j5=((3.14159265)+(((-1.0)*x1017)));
13158IkReal gconst9=((3.14159265358979)+(((-1.0)*x1017)));
13160if(
IKabs(x1019)==0){
13163IkReal gconst10=((1.0)*
new_r10*(pow(x1019,-0.5)));
13166if(
IKabs(j3eval[0]) < 0.0000010000000000 )
13174IkReal x1020=((1.0)*(x1021.
value));
13177j4=3.14159265358979;
13180j5=((3.14159265)+(((-1.0)*x1020)));
13182IkReal gconst9=((3.14159265358979)+(((-1.0)*x1020)));
13184if(
IKabs(x1022)==0){
13187IkReal gconst10=((1.0)*
new_r10*(pow(x1022,-0.5)));
13190if(
IKabs(j3eval[0]) < 0.0000010000000000 )
13198IkReal x1023=((1.0)*(x1024.
value));
13201j4=3.14159265358979;
13204j5=((3.14159265)+(((-1.0)*x1023)));
13206IkReal gconst9=((3.14159265358979)+(((-1.0)*x1023)));
13208if(
IKabs(x1025)==0){
13211IkReal gconst10=((1.0)*
new_r10*(pow(x1025,-0.5)));
13214if(
IKabs(j3eval[0]) < 0.0000010000000000 )
13221IkReal j3array[1], cj3array[1], sj3array[1];
13222bool j3valid[1]={
false};
13235sj3array[0]=
IKsin(j3array[0]);
13236cj3array[0]=
IKcos(j3array[0]);
13237if( j3array[0] >
IKPI )
13241else if( j3array[0] < -
IKPI )
13242{ j3array[0]+=
IK2PI;
13245for(
int ij3 = 0; ij3 < 1; ++ij3)
13252for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
13256 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
13259j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
13264IkReal x1030=(gconst10*x1028);
13265IkReal x1031=((1.0)*x1029);
13266IkReal x1032=(gconst10*x1031);
13269evalcond[2]=(gconst10+(((-1.0)*
new_r10*x1031)));
13270evalcond[3]=((((-1.0)*x1032))+
new_r01);
13271evalcond[4]=((((-1.0)*x1030))+
new_r11);
13272evalcond[5]=((((-1.0)*x1032))+
new_r10);
13274evalcond[7]=(((
new_r11*x1028))+(((-1.0)*gconst10))+((
new_r01*x1029)));
13282std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
13283vinfos[0].jointtype = 1;
13284vinfos[0].foffset =
j0;
13285vinfos[0].indices[0] =
_ij0[0];
13286vinfos[0].indices[1] =
_ij0[1];
13287vinfos[0].maxsolutions =
_nj0;
13288vinfos[1].jointtype = 1;
13289vinfos[1].foffset =
j1;
13290vinfos[1].indices[0] =
_ij1[0];
13291vinfos[1].indices[1] =
_ij1[1];
13292vinfos[1].maxsolutions =
_nj1;
13293vinfos[2].jointtype = 1;
13294vinfos[2].foffset =
j2;
13295vinfos[2].indices[0] =
_ij2[0];
13296vinfos[2].indices[1] =
_ij2[1];
13297vinfos[2].maxsolutions =
_nj2;
13298vinfos[3].jointtype = 1;
13299vinfos[3].foffset =
j3;
13300vinfos[3].indices[0] =
_ij3[0];
13301vinfos[3].indices[1] =
_ij3[1];
13302vinfos[3].maxsolutions =
_nj3;
13303vinfos[4].jointtype = 1;
13304vinfos[4].foffset =
j4;
13305vinfos[4].indices[0] =
_ij4[0];
13306vinfos[4].indices[1] =
_ij4[1];
13307vinfos[4].maxsolutions =
_nj4;
13308vinfos[5].jointtype = 1;
13309vinfos[5].foffset =
j5;
13310vinfos[5].indices[0] =
_ij5[0];
13311vinfos[5].indices[1] =
_ij5[1];
13312vinfos[5].maxsolutions =
_nj5;
13313std::vector<int> vfree(0);
13326IkReal j3array[1], cj3array[1], sj3array[1];
13327bool j3valid[1]={
false};
13337j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1033.
value)))+(x1034.
value));
13338sj3array[0]=
IKsin(j3array[0]);
13339cj3array[0]=
IKcos(j3array[0]);
13340if( j3array[0] >
IKPI )
13344else if( j3array[0] < -
IKPI )
13345{ j3array[0]+=
IK2PI;
13348for(
int ij3 = 0; ij3 < 1; ++ij3)
13355for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
13359 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
13362j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
13367IkReal x1037=(gconst10*x1035);
13368IkReal x1038=((1.0)*x1036);
13369IkReal x1039=(gconst10*x1038);
13372evalcond[2]=(gconst10+(((-1.0)*
new_r10*x1038)));
13373evalcond[3]=((((-1.0)*x1039))+
new_r01);
13374evalcond[4]=((((-1.0)*x1037))+
new_r11);
13375evalcond[5]=((((-1.0)*x1039))+
new_r10);
13377evalcond[7]=(((
new_r11*x1035))+(((-1.0)*gconst10))+((
new_r01*x1036)));
13385std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
13386vinfos[0].jointtype = 1;
13387vinfos[0].foffset =
j0;
13388vinfos[0].indices[0] =
_ij0[0];
13389vinfos[0].indices[1] =
_ij0[1];
13390vinfos[0].maxsolutions =
_nj0;
13391vinfos[1].jointtype = 1;
13392vinfos[1].foffset =
j1;
13393vinfos[1].indices[0] =
_ij1[0];
13394vinfos[1].indices[1] =
_ij1[1];
13395vinfos[1].maxsolutions =
_nj1;
13396vinfos[2].jointtype = 1;
13397vinfos[2].foffset =
j2;
13398vinfos[2].indices[0] =
_ij2[0];
13399vinfos[2].indices[1] =
_ij2[1];
13400vinfos[2].maxsolutions =
_nj2;
13401vinfos[3].jointtype = 1;
13402vinfos[3].foffset =
j3;
13403vinfos[3].indices[0] =
_ij3[0];
13404vinfos[3].indices[1] =
_ij3[1];
13405vinfos[3].maxsolutions =
_nj3;
13406vinfos[4].jointtype = 1;
13407vinfos[4].foffset =
j4;
13408vinfos[4].indices[0] =
_ij4[0];
13409vinfos[4].indices[1] =
_ij4[1];
13410vinfos[4].maxsolutions =
_nj4;
13411vinfos[5].jointtype = 1;
13412vinfos[5].foffset =
j5;
13413vinfos[5].indices[0] =
_ij5[0];
13414vinfos[5].indices[1] =
_ij5[1];
13415vinfos[5].maxsolutions =
_nj5;
13416std::vector<int> vfree(0);
13429IkReal j3array[1], cj3array[1], sj3array[1];
13430bool j3valid[1]={
false};
13440j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1040.
value)))+(x1041.
value));
13441sj3array[0]=
IKsin(j3array[0]);
13442cj3array[0]=
IKcos(j3array[0]);
13443if( j3array[0] >
IKPI )
13447else if( j3array[0] < -
IKPI )
13448{ j3array[0]+=
IK2PI;
13451for(
int ij3 = 0; ij3 < 1; ++ij3)
13458for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
13462 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
13465j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
13470IkReal x1044=(gconst10*x1042);
13471IkReal x1045=((1.0)*x1043);
13472IkReal x1046=(gconst10*x1045);
13475evalcond[2]=(gconst10+(((-1.0)*
new_r10*x1045)));
13476evalcond[3]=(
new_r01+(((-1.0)*x1046)));
13477evalcond[4]=((((-1.0)*x1044))+
new_r11);
13478evalcond[5]=(
new_r10+(((-1.0)*x1046)));
13480evalcond[7]=(((
new_r11*x1042))+((
new_r01*x1043))+(((-1.0)*gconst10)));
13488std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
13489vinfos[0].jointtype = 1;
13490vinfos[0].foffset =
j0;
13491vinfos[0].indices[0] =
_ij0[0];
13492vinfos[0].indices[1] =
_ij0[1];
13493vinfos[0].maxsolutions =
_nj0;
13494vinfos[1].jointtype = 1;
13495vinfos[1].foffset =
j1;
13496vinfos[1].indices[0] =
_ij1[0];
13497vinfos[1].indices[1] =
_ij1[1];
13498vinfos[1].maxsolutions =
_nj1;
13499vinfos[2].jointtype = 1;
13500vinfos[2].foffset =
j2;
13501vinfos[2].indices[0] =
_ij2[0];
13502vinfos[2].indices[1] =
_ij2[1];
13503vinfos[2].maxsolutions =
_nj2;
13504vinfos[3].jointtype = 1;
13505vinfos[3].foffset =
j3;
13506vinfos[3].indices[0] =
_ij3[0];
13507vinfos[3].indices[1] =
_ij3[1];
13508vinfos[3].maxsolutions =
_nj3;
13509vinfos[4].jointtype = 1;
13510vinfos[4].foffset =
j4;
13511vinfos[4].indices[0] =
_ij4[0];
13512vinfos[4].indices[1] =
_ij4[1];
13513vinfos[4].maxsolutions =
_nj4;
13514vinfos[5].jointtype = 1;
13515vinfos[5].foffset =
j5;
13516vinfos[5].indices[0] =
_ij5[0];
13517vinfos[5].indices[1] =
_ij5[1];
13518vinfos[5].maxsolutions =
_nj5;
13519std::vector<int> vfree(0);
13531if( bgotonextstatement )
13533bool bgotonextstatement =
true;
13538bgotonextstatement=
false;
13543if( bgotonextstatement )
13555IkReal j3array[1], cj3array[1], sj3array[1];
13556bool j3valid[1]={
false};
13566j3array[0]=((-1.5707963267949)+(x1047.
value)+(((1.5707963267949)*(x1048.
value))));
13567sj3array[0]=
IKsin(j3array[0]);
13568cj3array[0]=
IKcos(j3array[0]);
13569if( j3array[0] >
IKPI )
13573else if( j3array[0] < -
IKPI )
13574{ j3array[0]+=
IK2PI;
13577for(
int ij3 = 0; ij3 < 1; ++ij3)
13584for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
13588 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
13591j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
13596IkReal x1051=((1.0)*gconst10);
13597IkReal x1052=(gconst11*x1050);
13598IkReal x1053=(gconst10*x1050);
13599IkReal x1054=(gconst11*x1049);
13600IkReal x1055=((1.0)*x1049);
13601IkReal x1056=(x1049*x1051);
13603evalcond[1]=(x1053+x1054+
new_r00);
13604evalcond[2]=(gconst10+((
new_r00*x1050))+(((-1.0)*
new_r10*x1055)));
13605evalcond[3]=(gconst11+((
new_r01*x1050))+(((-1.0)*
new_r11*x1055)));
13606evalcond[4]=((((-1.0)*x1056))+x1052+
new_r01);
13607evalcond[5]=((((-1.0)*x1056))+x1052+
new_r10);
13608evalcond[6]=((((-1.0)*x1051))+((
new_r01*x1049))+((
new_r11*x1050)));
13609evalcond[7]=((((-1.0)*x1054))+
new_r11+(((-1.0)*x1050*x1051)));
13617std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
13618vinfos[0].jointtype = 1;
13619vinfos[0].foffset =
j0;
13620vinfos[0].indices[0] =
_ij0[0];
13621vinfos[0].indices[1] =
_ij0[1];
13622vinfos[0].maxsolutions =
_nj0;
13623vinfos[1].jointtype = 1;
13624vinfos[1].foffset =
j1;
13625vinfos[1].indices[0] =
_ij1[0];
13626vinfos[1].indices[1] =
_ij1[1];
13627vinfos[1].maxsolutions =
_nj1;
13628vinfos[2].jointtype = 1;
13629vinfos[2].foffset =
j2;
13630vinfos[2].indices[0] =
_ij2[0];
13631vinfos[2].indices[1] =
_ij2[1];
13632vinfos[2].maxsolutions =
_nj2;
13633vinfos[3].jointtype = 1;
13634vinfos[3].foffset =
j3;
13635vinfos[3].indices[0] =
_ij3[0];
13636vinfos[3].indices[1] =
_ij3[1];
13637vinfos[3].maxsolutions =
_nj3;
13638vinfos[4].jointtype = 1;
13639vinfos[4].foffset =
j4;
13640vinfos[4].indices[0] =
_ij4[0];
13641vinfos[4].indices[1] =
_ij4[1];
13642vinfos[4].maxsolutions =
_nj4;
13643vinfos[5].jointtype = 1;
13644vinfos[5].foffset =
j5;
13645vinfos[5].indices[0] =
_ij5[0];
13646vinfos[5].indices[1] =
_ij5[1];
13647vinfos[5].maxsolutions =
_nj5;
13648std::vector<int> vfree(0);
13661IkReal j3array[1], cj3array[1], sj3array[1];
13662bool j3valid[1]={
false};
13673j3array[0]=((-1.5707963267949)+(x1058.
value)+(((1.5707963267949)*(x1059.
value))));
13674sj3array[0]=
IKsin(j3array[0]);
13675cj3array[0]=
IKcos(j3array[0]);
13676if( j3array[0] >
IKPI )
13680else if( j3array[0] < -
IKPI )
13681{ j3array[0]+=
IK2PI;
13684for(
int ij3 = 0; ij3 < 1; ++ij3)
13691for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
13695 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
13698j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
13703IkReal x1062=((1.0)*gconst10);
13704IkReal x1063=(gconst11*x1061);
13705IkReal x1064=(gconst10*x1061);
13706IkReal x1065=(gconst11*x1060);
13707IkReal x1066=((1.0)*x1060);
13708IkReal x1067=(x1060*x1062);
13710evalcond[1]=(x1065+x1064+
new_r00);
13711evalcond[2]=((((-1.0)*
new_r10*x1066))+gconst10+((
new_r00*x1061)));
13712evalcond[3]=(gconst11+((
new_r01*x1061))+(((-1.0)*
new_r11*x1066)));
13713evalcond[4]=(x1063+
new_r01+(((-1.0)*x1067)));
13714evalcond[5]=(x1063+
new_r10+(((-1.0)*x1067)));
13715evalcond[6]=(((
new_r01*x1060))+((
new_r11*x1061))+(((-1.0)*x1062)));
13716evalcond[7]=((((-1.0)*x1061*x1062))+
new_r11+(((-1.0)*x1065)));
13724std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
13725vinfos[0].jointtype = 1;
13726vinfos[0].foffset =
j0;
13727vinfos[0].indices[0] =
_ij0[0];
13728vinfos[0].indices[1] =
_ij0[1];
13729vinfos[0].maxsolutions =
_nj0;
13730vinfos[1].jointtype = 1;
13731vinfos[1].foffset =
j1;
13732vinfos[1].indices[0] =
_ij1[0];
13733vinfos[1].indices[1] =
_ij1[1];
13734vinfos[1].maxsolutions =
_nj1;
13735vinfos[2].jointtype = 1;
13736vinfos[2].foffset =
j2;
13737vinfos[2].indices[0] =
_ij2[0];
13738vinfos[2].indices[1] =
_ij2[1];
13739vinfos[2].maxsolutions =
_nj2;
13740vinfos[3].jointtype = 1;
13741vinfos[3].foffset =
j3;
13742vinfos[3].indices[0] =
_ij3[0];
13743vinfos[3].indices[1] =
_ij3[1];
13744vinfos[3].maxsolutions =
_nj3;
13745vinfos[4].jointtype = 1;
13746vinfos[4].foffset =
j4;
13747vinfos[4].indices[0] =
_ij4[0];
13748vinfos[4].indices[1] =
_ij4[1];
13749vinfos[4].maxsolutions =
_nj4;
13750vinfos[5].jointtype = 1;
13751vinfos[5].foffset =
j5;
13752vinfos[5].indices[0] =
_ij5[0];
13753vinfos[5].indices[1] =
_ij5[1];
13754vinfos[5].maxsolutions =
_nj5;
13755std::vector<int> vfree(0);
13768IkReal j3array[1], cj3array[1], sj3array[1];
13769bool j3valid[1]={
false};
13780j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1069.
value)))+(x1070.
value));
13781sj3array[0]=
IKsin(j3array[0]);
13782cj3array[0]=
IKcos(j3array[0]);
13783if( j3array[0] >
IKPI )
13787else if( j3array[0] < -
IKPI )
13788{ j3array[0]+=
IK2PI;
13791for(
int ij3 = 0; ij3 < 1; ++ij3)
13798for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
13802 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
13805j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
13810IkReal x1073=((1.0)*gconst10);
13811IkReal x1074=(gconst11*x1072);
13812IkReal x1075=(gconst10*x1072);
13813IkReal x1076=(gconst11*x1071);
13814IkReal x1077=((1.0)*x1071);
13815IkReal x1078=(x1071*x1073);
13817evalcond[1]=(x1076+x1075+
new_r00);
13818evalcond[2]=(gconst10+((
new_r00*x1072))+(((-1.0)*
new_r10*x1077)));
13819evalcond[3]=((((-1.0)*
new_r11*x1077))+gconst11+((
new_r01*x1072)));
13820evalcond[4]=(x1074+
new_r01+(((-1.0)*x1078)));
13821evalcond[5]=(x1074+
new_r10+(((-1.0)*x1078)));
13822evalcond[6]=(((
new_r01*x1071))+((
new_r11*x1072))+(((-1.0)*x1073)));
13823evalcond[7]=((((-1.0)*x1076))+(((-1.0)*x1072*x1073))+
new_r11);
13831std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
13832vinfos[0].jointtype = 1;
13833vinfos[0].foffset =
j0;
13834vinfos[0].indices[0] =
_ij0[0];
13835vinfos[0].indices[1] =
_ij0[1];
13836vinfos[0].maxsolutions =
_nj0;
13837vinfos[1].jointtype = 1;
13838vinfos[1].foffset =
j1;
13839vinfos[1].indices[0] =
_ij1[0];
13840vinfos[1].indices[1] =
_ij1[1];
13841vinfos[1].maxsolutions =
_nj1;
13842vinfos[2].jointtype = 1;
13843vinfos[2].foffset =
j2;
13844vinfos[2].indices[0] =
_ij2[0];
13845vinfos[2].indices[1] =
_ij2[1];
13846vinfos[2].maxsolutions =
_nj2;
13847vinfos[3].jointtype = 1;
13848vinfos[3].foffset =
j3;
13849vinfos[3].indices[0] =
_ij3[0];
13850vinfos[3].indices[1] =
_ij3[1];
13851vinfos[3].maxsolutions =
_nj3;
13852vinfos[4].jointtype = 1;
13853vinfos[4].foffset =
j4;
13854vinfos[4].indices[0] =
_ij4[0];
13855vinfos[4].indices[1] =
_ij4[1];
13856vinfos[4].maxsolutions =
_nj4;
13857vinfos[5].jointtype = 1;
13858vinfos[5].foffset =
j5;
13859vinfos[5].indices[0] =
_ij5[0];
13860vinfos[5].indices[1] =
_ij5[1];
13861vinfos[5].maxsolutions =
_nj5;
13862std::vector<int> vfree(0);
13874if( bgotonextstatement )
13876bool bgotonextstatement =
true;
13879IkReal x1079=((-1.0)*
new_r10);
13881if(
IKabs(x1081)==0){
13884IkReal x1080=pow(x1081,-0.5);
13889IkReal gconst12=((-1.0)*(x1082.
value));
13890IkReal gconst13=(
new_r00*x1080);
13891IkReal gconst14=(x1079*x1080);
13896evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((x1083.
value)+
j5)))), 6.28318530717959)));
13897if(
IKabs(evalcond[0]) < 0.0000050000000000 )
13899bgotonextstatement=
false;
13902IkReal x1084=((-1.0)*
new_r10);
13907IkReal x1085=((-1.0)*(x1087.
value));
13911j4=3.14159265358979;
13915IkReal gconst12=x1085;
13916IkReal gconst13=(
new_r00*x1086);
13917IkReal gconst14=(x1084*x1086);
13921IkReal x1091=((((-1.0)*x1090))+(((-1.0)*
new_r01*x1089)));
13925j3eval[1]=((
IKabs((((x1088*x1092))+(((-1.0)*
new_r01*x1093)))))+(
IKabs(((((-1.0)*x1090*x1092))+(((-1.0)*x1089*x1093))))));
13927if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
13931IkReal x1094=((-1.0)*
new_r10);
13936IkReal x1095=((-1.0)*(x1097.
value));
13940j4=3.14159265358979;
13944IkReal gconst12=x1095;
13945IkReal gconst13=(
new_r00*x1096);
13946IkReal gconst14=(x1094*x1096);
13952IkReal x1099=x1101.
value;
13955if(
IKabs(j3eval[0]) < 0.0000010000000000 )
13959IkReal x1102=((-1.0)*
new_r10);
13964IkReal x1103=((-1.0)*(x1105.
value));
13968j4=3.14159265358979;
13972IkReal gconst12=x1103;
13973IkReal gconst13=(
new_r00*x1104);
13974IkReal gconst14=(x1102*x1104);
13981IkReal x1108=x1111.
value;
13983IkReal x1110=(x1106*x1108);
13985if(
IKabs(j3eval[0]) < 0.0000010000000000 )
13989bool bgotonextstatement =
true;
13993if(
IKabs(evalcond[0]) < 0.0000050000000000 )
13995bgotonextstatement=
false;
13998IkReal x1112=((-1.0)*
new_r10);
14003IkReal x1113=((-1.0)*(x1114.
value));
14006j4=3.14159265358979;
14012IkReal gconst12=x1113;
14015if(
IKabs(x1115)==0){
14018IkReal gconst14=(x1112*(pow(x1115,-0.5)));
14020if(
IKabs(j3eval[0]) < 0.0000010000000000 )
14023IkReal j3array[2], cj3array[2], sj3array[2];
14024bool j3valid[2]={
false};
14033 j3valid[0] = j3valid[1] =
true;
14034 j3array[0] =
IKasin(sj3array[0]);
14035 cj3array[0] =
IKcos(j3array[0]);
14036 sj3array[1] = sj3array[0];
14037 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
14038 cj3array[1] = -cj3array[0];
14040else if( isnan(sj3array[0]) )
14044 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
14046for(
int ij3 = 0; ij3 < 2; ++ij3)
14053for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
14057 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
14060j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
14066evalcond[1]=(gconst14*x1117);
14067evalcond[2]=((-1.0)*
new_r10*x1117);
14068evalcond[3]=(gconst14+((
new_r01*x1118)));
14069evalcond[4]=(gconst14+((
new_r10*x1118)));
14070evalcond[5]=(((gconst14*x1118))+
new_r10);
14078std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
14079vinfos[0].jointtype = 1;
14080vinfos[0].foffset =
j0;
14081vinfos[0].indices[0] =
_ij0[0];
14082vinfos[0].indices[1] =
_ij0[1];
14083vinfos[0].maxsolutions =
_nj0;
14084vinfos[1].jointtype = 1;
14085vinfos[1].foffset =
j1;
14086vinfos[1].indices[0] =
_ij1[0];
14087vinfos[1].indices[1] =
_ij1[1];
14088vinfos[1].maxsolutions =
_nj1;
14089vinfos[2].jointtype = 1;
14090vinfos[2].foffset =
j2;
14091vinfos[2].indices[0] =
_ij2[0];
14092vinfos[2].indices[1] =
_ij2[1];
14093vinfos[2].maxsolutions =
_nj2;
14094vinfos[3].jointtype = 1;
14095vinfos[3].foffset =
j3;
14096vinfos[3].indices[0] =
_ij3[0];
14097vinfos[3].indices[1] =
_ij3[1];
14098vinfos[3].maxsolutions =
_nj3;
14099vinfos[4].jointtype = 1;
14100vinfos[4].foffset =
j4;
14101vinfos[4].indices[0] =
_ij4[0];
14102vinfos[4].indices[1] =
_ij4[1];
14103vinfos[4].maxsolutions =
_nj4;
14104vinfos[5].jointtype = 1;
14105vinfos[5].foffset =
j5;
14106vinfos[5].indices[0] =
_ij5[0];
14107vinfos[5].indices[1] =
_ij5[1];
14108vinfos[5].maxsolutions =
_nj5;
14109std::vector<int> vfree(0);
14118IkReal j3array[2], cj3array[2], sj3array[2];
14119bool j3valid[2]={
false};
14125sj3array[0]=((-1.0)*gconst14*(x1119.
value));
14128 j3valid[0] = j3valid[1] =
true;
14129 j3array[0] =
IKasin(sj3array[0]);
14130 cj3array[0] =
IKcos(j3array[0]);
14131 sj3array[1] = sj3array[0];
14132 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
14133 cj3array[1] = -cj3array[0];
14135else if( isnan(sj3array[0]) )
14139 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
14141for(
int ij3 = 0; ij3 < 2; ++ij3)
14148for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
14152 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
14155j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
14160IkReal x1122=(gconst14*x1121);
14162evalcond[1]=(gconst14*x1120);
14163evalcond[2]=((-1.0)*
new_r10*x1120);
14165evalcond[4]=(gconst14+((
new_r10*x1121)));
14174std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
14175vinfos[0].jointtype = 1;
14176vinfos[0].foffset =
j0;
14177vinfos[0].indices[0] =
_ij0[0];
14178vinfos[0].indices[1] =
_ij0[1];
14179vinfos[0].maxsolutions =
_nj0;
14180vinfos[1].jointtype = 1;
14181vinfos[1].foffset =
j1;
14182vinfos[1].indices[0] =
_ij1[0];
14183vinfos[1].indices[1] =
_ij1[1];
14184vinfos[1].maxsolutions =
_nj1;
14185vinfos[2].jointtype = 1;
14186vinfos[2].foffset =
j2;
14187vinfos[2].indices[0] =
_ij2[0];
14188vinfos[2].indices[1] =
_ij2[1];
14189vinfos[2].maxsolutions =
_nj2;
14190vinfos[3].jointtype = 1;
14191vinfos[3].foffset =
j3;
14192vinfos[3].indices[0] =
_ij3[0];
14193vinfos[3].indices[1] =
_ij3[1];
14194vinfos[3].maxsolutions =
_nj3;
14195vinfos[4].jointtype = 1;
14196vinfos[4].foffset =
j4;
14197vinfos[4].indices[0] =
_ij4[0];
14198vinfos[4].indices[1] =
_ij4[1];
14199vinfos[4].maxsolutions =
_nj4;
14200vinfos[5].jointtype = 1;
14201vinfos[5].foffset =
j5;
14202vinfos[5].indices[0] =
_ij5[0];
14203vinfos[5].indices[1] =
_ij5[1];
14204vinfos[5].maxsolutions =
_nj5;
14205std::vector<int> vfree(0);
14217if( bgotonextstatement )
14219bool bgotonextstatement =
true;
14223evalcond[1]=gconst14;
14224if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 )
14226bgotonextstatement=
false;
14229IkReal x1123=((-1.0)*
new_r10);
14234IkReal x1124=((-1.0)*(x1125.
value));
14237j4=3.14159265358979;
14245IkReal gconst12=x1124;
14247IkReal gconst14=x1123;
14251if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
14255IkReal x1126=((-1.0)*
new_r10);
14260IkReal x1127=((-1.0)*(x1128.
value));
14263j4=3.14159265358979;
14271IkReal gconst12=x1127;
14273IkReal gconst14=x1126;
14277if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
14281IkReal x1129=((-1.0)*
new_r10);
14286IkReal x1130=((-1.0)*(x1131.
value));
14289j4=3.14159265358979;
14297IkReal gconst12=x1130;
14299IkReal gconst14=x1129;
14303if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
14310IkReal j3array[1], cj3array[1], sj3array[1];
14311bool j3valid[1]={
false};
14313IkReal x1132=((1.0)*gconst14);
14322j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1133.
value)))+(x1134.
value));
14323sj3array[0]=
IKsin(j3array[0]);
14324cj3array[0]=
IKcos(j3array[0]);
14325if( j3array[0] >
IKPI )
14329else if( j3array[0] < -
IKPI )
14330{ j3array[0]+=
IK2PI;
14333for(
int ij3 = 0; ij3 < 1; ++ij3)
14340for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
14344 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
14347j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
14352IkReal x1137=((1.0)*gconst13);
14353IkReal x1138=(gconst14*x1135);
14354IkReal x1139=(gconst14*x1136);
14355IkReal x1140=(x1136*x1137);
14356evalcond[0]=(x1138+(((-1.0)*x1140)));
14358evalcond[2]=(x1139+((gconst13*x1135))+
new_r00);
14359evalcond[3]=(gconst13+((
new_r00*x1135))+(((-1.0)*
new_r10*x1136)));
14360evalcond[4]=((((-1.0)*x1139))+(((-1.0)*x1135*x1137)));
14361evalcond[5]=(x1138+(((-1.0)*x1140))+
new_r10);
14369std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
14370vinfos[0].jointtype = 1;
14371vinfos[0].foffset =
j0;
14372vinfos[0].indices[0] =
_ij0[0];
14373vinfos[0].indices[1] =
_ij0[1];
14374vinfos[0].maxsolutions =
_nj0;
14375vinfos[1].jointtype = 1;
14376vinfos[1].foffset =
j1;
14377vinfos[1].indices[0] =
_ij1[0];
14378vinfos[1].indices[1] =
_ij1[1];
14379vinfos[1].maxsolutions =
_nj1;
14380vinfos[2].jointtype = 1;
14381vinfos[2].foffset =
j2;
14382vinfos[2].indices[0] =
_ij2[0];
14383vinfos[2].indices[1] =
_ij2[1];
14384vinfos[2].maxsolutions =
_nj2;
14385vinfos[3].jointtype = 1;
14386vinfos[3].foffset =
j3;
14387vinfos[3].indices[0] =
_ij3[0];
14388vinfos[3].indices[1] =
_ij3[1];
14389vinfos[3].maxsolutions =
_nj3;
14390vinfos[4].jointtype = 1;
14391vinfos[4].foffset =
j4;
14392vinfos[4].indices[0] =
_ij4[0];
14393vinfos[4].indices[1] =
_ij4[1];
14394vinfos[4].maxsolutions =
_nj4;
14395vinfos[5].jointtype = 1;
14396vinfos[5].foffset =
j5;
14397vinfos[5].indices[0] =
_ij5[0];
14398vinfos[5].indices[1] =
_ij5[1];
14399vinfos[5].maxsolutions =
_nj5;
14400std::vector<int> vfree(0);
14413IkReal j3array[1], cj3array[1], sj3array[1];
14414bool j3valid[1]={
false};
14424j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1141.
value)))+(x1142.
value));
14425sj3array[0]=
IKsin(j3array[0]);
14426cj3array[0]=
IKcos(j3array[0]);
14427if( j3array[0] >
IKPI )
14431else if( j3array[0] < -
IKPI )
14432{ j3array[0]+=
IK2PI;
14435for(
int ij3 = 0; ij3 < 1; ++ij3)
14442for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
14446 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
14449j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
14454IkReal x1145=((1.0)*gconst13);
14455IkReal x1146=(gconst14*x1143);
14456IkReal x1147=(gconst14*x1144);
14457IkReal x1148=(x1144*x1145);
14458evalcond[0]=(x1146+(((-1.0)*x1148)));
14460evalcond[2]=(x1147+((gconst13*x1143))+
new_r00);
14461evalcond[3]=((((-1.0)*
new_r10*x1144))+((
new_r00*x1143))+gconst13);
14462evalcond[4]=((((-1.0)*x1143*x1145))+(((-1.0)*x1147)));
14463evalcond[5]=(x1146+(((-1.0)*x1148))+
new_r10);
14471std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
14472vinfos[0].jointtype = 1;
14473vinfos[0].foffset =
j0;
14474vinfos[0].indices[0] =
_ij0[0];
14475vinfos[0].indices[1] =
_ij0[1];
14476vinfos[0].maxsolutions =
_nj0;
14477vinfos[1].jointtype = 1;
14478vinfos[1].foffset =
j1;
14479vinfos[1].indices[0] =
_ij1[0];
14480vinfos[1].indices[1] =
_ij1[1];
14481vinfos[1].maxsolutions =
_nj1;
14482vinfos[2].jointtype = 1;
14483vinfos[2].foffset =
j2;
14484vinfos[2].indices[0] =
_ij2[0];
14485vinfos[2].indices[1] =
_ij2[1];
14486vinfos[2].maxsolutions =
_nj2;
14487vinfos[3].jointtype = 1;
14488vinfos[3].foffset =
j3;
14489vinfos[3].indices[0] =
_ij3[0];
14490vinfos[3].indices[1] =
_ij3[1];
14491vinfos[3].maxsolutions =
_nj3;
14492vinfos[4].jointtype = 1;
14493vinfos[4].foffset =
j4;
14494vinfos[4].indices[0] =
_ij4[0];
14495vinfos[4].indices[1] =
_ij4[1];
14496vinfos[4].maxsolutions =
_nj4;
14497vinfos[5].jointtype = 1;
14498vinfos[5].foffset =
j5;
14499vinfos[5].indices[0] =
_ij5[0];
14500vinfos[5].indices[1] =
_ij5[1];
14501vinfos[5].maxsolutions =
_nj5;
14502std::vector<int> vfree(0);
14515IkReal j3array[1], cj3array[1], sj3array[1];
14516bool j3valid[1]={
false};
14526j3array[0]=((-1.5707963267949)+(x1149.
value)+(((1.5707963267949)*(x1150.
value))));
14527sj3array[0]=
IKsin(j3array[0]);
14528cj3array[0]=
IKcos(j3array[0]);
14529if( j3array[0] >
IKPI )
14533else if( j3array[0] < -
IKPI )
14534{ j3array[0]+=
IK2PI;
14537for(
int ij3 = 0; ij3 < 1; ++ij3)
14544for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
14548 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
14551j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
14556IkReal x1153=((1.0)*gconst13);
14557IkReal x1154=(gconst14*x1151);
14558IkReal x1155=(gconst14*x1152);
14559IkReal x1156=(x1152*x1153);
14560evalcond[0]=(x1154+(((-1.0)*x1156)));
14562evalcond[2]=(x1155+((gconst13*x1151))+
new_r00);
14563evalcond[3]=(gconst13+((
new_r00*x1151))+(((-1.0)*
new_r10*x1152)));
14564evalcond[4]=((((-1.0)*x1155))+(((-1.0)*x1151*x1153)));
14565evalcond[5]=(x1154+(((-1.0)*x1156))+
new_r10);
14573std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
14574vinfos[0].jointtype = 1;
14575vinfos[0].foffset =
j0;
14576vinfos[0].indices[0] =
_ij0[0];
14577vinfos[0].indices[1] =
_ij0[1];
14578vinfos[0].maxsolutions =
_nj0;
14579vinfos[1].jointtype = 1;
14580vinfos[1].foffset =
j1;
14581vinfos[1].indices[0] =
_ij1[0];
14582vinfos[1].indices[1] =
_ij1[1];
14583vinfos[1].maxsolutions =
_nj1;
14584vinfos[2].jointtype = 1;
14585vinfos[2].foffset =
j2;
14586vinfos[2].indices[0] =
_ij2[0];
14587vinfos[2].indices[1] =
_ij2[1];
14588vinfos[2].maxsolutions =
_nj2;
14589vinfos[3].jointtype = 1;
14590vinfos[3].foffset =
j3;
14591vinfos[3].indices[0] =
_ij3[0];
14592vinfos[3].indices[1] =
_ij3[1];
14593vinfos[3].maxsolutions =
_nj3;
14594vinfos[4].jointtype = 1;
14595vinfos[4].foffset =
j4;
14596vinfos[4].indices[0] =
_ij4[0];
14597vinfos[4].indices[1] =
_ij4[1];
14598vinfos[4].maxsolutions =
_nj4;
14599vinfos[5].jointtype = 1;
14600vinfos[5].foffset =
j5;
14601vinfos[5].indices[0] =
_ij5[0];
14602vinfos[5].indices[1] =
_ij5[1];
14603vinfos[5].maxsolutions =
_nj5;
14604std::vector<int> vfree(0);
14616if( bgotonextstatement )
14618bool bgotonextstatement =
true;
14622if(
IKabs(evalcond[0]) < 0.0000050000000000 )
14624bgotonextstatement=
false;
14626IkReal j3array[2], cj3array[2], sj3array[2];
14627bool j3valid[2]={
false};
14636 j3valid[0] = j3valid[1] =
true;
14637 j3array[0] =
IKasin(sj3array[0]);
14638 cj3array[0] =
IKcos(j3array[0]);
14639 sj3array[1] = sj3array[0];
14640 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
14641 cj3array[1] = -cj3array[0];
14643else if( isnan(sj3array[0]) )
14647 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
14649for(
int ij3 = 0; ij3 < 2; ++ij3)
14656for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
14660 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
14663j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
14668IkReal x1160=((-1.0)*x1158);
14671evalcond[2]=(gconst13*x1160);
14672evalcond[3]=(gconst13+((
new_r00*x1159)));
14673evalcond[4]=(((gconst13*x1159))+
new_r00);
14674evalcond[5]=(((
new_r11*x1159))+(((-1.0)*gconst13)));
14682std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
14683vinfos[0].jointtype = 1;
14684vinfos[0].foffset =
j0;
14685vinfos[0].indices[0] =
_ij0[0];
14686vinfos[0].indices[1] =
_ij0[1];
14687vinfos[0].maxsolutions =
_nj0;
14688vinfos[1].jointtype = 1;
14689vinfos[1].foffset =
j1;
14690vinfos[1].indices[0] =
_ij1[0];
14691vinfos[1].indices[1] =
_ij1[1];
14692vinfos[1].maxsolutions =
_nj1;
14693vinfos[2].jointtype = 1;
14694vinfos[2].foffset =
j2;
14695vinfos[2].indices[0] =
_ij2[0];
14696vinfos[2].indices[1] =
_ij2[1];
14697vinfos[2].maxsolutions =
_nj2;
14698vinfos[3].jointtype = 1;
14699vinfos[3].foffset =
j3;
14700vinfos[3].indices[0] =
_ij3[0];
14701vinfos[3].indices[1] =
_ij3[1];
14702vinfos[3].maxsolutions =
_nj3;
14703vinfos[4].jointtype = 1;
14704vinfos[4].foffset =
j4;
14705vinfos[4].indices[0] =
_ij4[0];
14706vinfos[4].indices[1] =
_ij4[1];
14707vinfos[4].maxsolutions =
_nj4;
14708vinfos[5].jointtype = 1;
14709vinfos[5].foffset =
j5;
14710vinfos[5].indices[0] =
_ij5[0];
14711vinfos[5].indices[1] =
_ij5[1];
14712vinfos[5].maxsolutions =
_nj5;
14713std::vector<int> vfree(0);
14721if( bgotonextstatement )
14723bool bgotonextstatement =
true;
14727if(
IKabs(evalcond[0]) < 0.0000050000000000 )
14729bgotonextstatement=
false;
14736IkReal x1161=((-1.0)*(x1162.
value));
14739j4=3.14159265358979;
14747IkReal gconst12=x1161;
14749if(
IKabs(x1163)==0){
14752IkReal gconst13=(
new_r00*(pow(x1163,-0.5)));
14755if(
IKabs(j3eval[0]) < 0.0000010000000000 )
14763IkReal x1164=((-1.0)*(x1165.
value));
14766j4=3.14159265358979;
14774IkReal gconst12=x1164;
14776if(
IKabs(x1166)==0){
14779IkReal gconst13=(
new_r00*(pow(x1166,-0.5)));
14782if(
IKabs(j3eval[0]) < 0.0000010000000000 )
14790IkReal x1167=((-1.0)*(x1168.
value));
14793j4=3.14159265358979;
14801IkReal gconst12=x1167;
14803if(
IKabs(x1169)==0){
14806IkReal gconst13=(
new_r00*(pow(x1169,-0.5)));
14810if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 )
14817IkReal j3array[1], cj3array[1], sj3array[1];
14818bool j3valid[1]={
false};
14831sj3array[0]=
IKsin(j3array[0]);
14832cj3array[0]=
IKcos(j3array[0]);
14833if( j3array[0] >
IKPI )
14837else if( j3array[0] < -
IKPI )
14838{ j3array[0]+=
IK2PI;
14841for(
int ij3 = 0; ij3 < 1; ++ij3)
14848for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
14852 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
14855j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
14860IkReal x1174=(gconst13*x1173);
14861IkReal x1175=(gconst13*x1172);
14864evalcond[2]=((-1.0)*x1175);
14865evalcond[3]=((-1.0)*x1174);
14866evalcond[4]=(gconst13+((
new_r00*x1172)));
14868evalcond[6]=(
new_r01+(((-1.0)*x1174)));
14869evalcond[7]=((((-1.0)*gconst13))+((
new_r01*x1173)));
14877std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
14878vinfos[0].jointtype = 1;
14879vinfos[0].foffset =
j0;
14880vinfos[0].indices[0] =
_ij0[0];
14881vinfos[0].indices[1] =
_ij0[1];
14882vinfos[0].maxsolutions =
_nj0;
14883vinfos[1].jointtype = 1;
14884vinfos[1].foffset =
j1;
14885vinfos[1].indices[0] =
_ij1[0];
14886vinfos[1].indices[1] =
_ij1[1];
14887vinfos[1].maxsolutions =
_nj1;
14888vinfos[2].jointtype = 1;
14889vinfos[2].foffset =
j2;
14890vinfos[2].indices[0] =
_ij2[0];
14891vinfos[2].indices[1] =
_ij2[1];
14892vinfos[2].maxsolutions =
_nj2;
14893vinfos[3].jointtype = 1;
14894vinfos[3].foffset =
j3;
14895vinfos[3].indices[0] =
_ij3[0];
14896vinfos[3].indices[1] =
_ij3[1];
14897vinfos[3].maxsolutions =
_nj3;
14898vinfos[4].jointtype = 1;
14899vinfos[4].foffset =
j4;
14900vinfos[4].indices[0] =
_ij4[0];
14901vinfos[4].indices[1] =
_ij4[1];
14902vinfos[4].maxsolutions =
_nj4;
14903vinfos[5].jointtype = 1;
14904vinfos[5].foffset =
j5;
14905vinfos[5].indices[0] =
_ij5[0];
14906vinfos[5].indices[1] =
_ij5[1];
14907vinfos[5].maxsolutions =
_nj5;
14908std::vector<int> vfree(0);
14921IkReal j3array[1], cj3array[1], sj3array[1];
14922bool j3valid[1]={
false};
14935sj3array[0]=
IKsin(j3array[0]);
14936cj3array[0]=
IKcos(j3array[0]);
14937if( j3array[0] >
IKPI )
14941else if( j3array[0] < -
IKPI )
14942{ j3array[0]+=
IK2PI;
14945for(
int ij3 = 0; ij3 < 1; ++ij3)
14952for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
14956 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
14959j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
14964IkReal x1180=(gconst13*x1179);
14965IkReal x1181=(gconst13*x1178);
14968evalcond[2]=((-1.0)*x1181);
14969evalcond[3]=((-1.0)*x1180);
14970evalcond[4]=(gconst13+((
new_r00*x1178)));
14972evalcond[6]=(
new_r01+(((-1.0)*x1180)));
14973evalcond[7]=((((-1.0)*gconst13))+((
new_r01*x1179)));
14981std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
14982vinfos[0].jointtype = 1;
14983vinfos[0].foffset =
j0;
14984vinfos[0].indices[0] =
_ij0[0];
14985vinfos[0].indices[1] =
_ij0[1];
14986vinfos[0].maxsolutions =
_nj0;
14987vinfos[1].jointtype = 1;
14988vinfos[1].foffset =
j1;
14989vinfos[1].indices[0] =
_ij1[0];
14990vinfos[1].indices[1] =
_ij1[1];
14991vinfos[1].maxsolutions =
_nj1;
14992vinfos[2].jointtype = 1;
14993vinfos[2].foffset =
j2;
14994vinfos[2].indices[0] =
_ij2[0];
14995vinfos[2].indices[1] =
_ij2[1];
14996vinfos[2].maxsolutions =
_nj2;
14997vinfos[3].jointtype = 1;
14998vinfos[3].foffset =
j3;
14999vinfos[3].indices[0] =
_ij3[0];
15000vinfos[3].indices[1] =
_ij3[1];
15001vinfos[3].maxsolutions =
_nj3;
15002vinfos[4].jointtype = 1;
15003vinfos[4].foffset =
j4;
15004vinfos[4].indices[0] =
_ij4[0];
15005vinfos[4].indices[1] =
_ij4[1];
15006vinfos[4].maxsolutions =
_nj4;
15007vinfos[5].jointtype = 1;
15008vinfos[5].foffset =
j5;
15009vinfos[5].indices[0] =
_ij5[0];
15010vinfos[5].indices[1] =
_ij5[1];
15011vinfos[5].maxsolutions =
_nj5;
15012std::vector<int> vfree(0);
15025IkReal j3array[1], cj3array[1], sj3array[1];
15026bool j3valid[1]={
false};
15036j3array[0]=((-1.5707963267949)+(x1182.
value)+(((1.5707963267949)*(x1183.
value))));
15037sj3array[0]=
IKsin(j3array[0]);
15038cj3array[0]=
IKcos(j3array[0]);
15039if( j3array[0] >
IKPI )
15043else if( j3array[0] < -
IKPI )
15044{ j3array[0]+=
IK2PI;
15047for(
int ij3 = 0; ij3 < 1; ++ij3)
15054for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
15058 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
15061j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
15066IkReal x1186=(gconst13*x1185);
15067IkReal x1187=(gconst13*x1184);
15070evalcond[2]=((-1.0)*x1187);
15071evalcond[3]=((-1.0)*x1186);
15072evalcond[4]=(gconst13+((
new_r00*x1184)));
15074evalcond[6]=(
new_r01+(((-1.0)*x1186)));
15075evalcond[7]=(((
new_r01*x1185))+(((-1.0)*gconst13)));
15083std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
15084vinfos[0].jointtype = 1;
15085vinfos[0].foffset =
j0;
15086vinfos[0].indices[0] =
_ij0[0];
15087vinfos[0].indices[1] =
_ij0[1];
15088vinfos[0].maxsolutions =
_nj0;
15089vinfos[1].jointtype = 1;
15090vinfos[1].foffset =
j1;
15091vinfos[1].indices[0] =
_ij1[0];
15092vinfos[1].indices[1] =
_ij1[1];
15093vinfos[1].maxsolutions =
_nj1;
15094vinfos[2].jointtype = 1;
15095vinfos[2].foffset =
j2;
15096vinfos[2].indices[0] =
_ij2[0];
15097vinfos[2].indices[1] =
_ij2[1];
15098vinfos[2].maxsolutions =
_nj2;
15099vinfos[3].jointtype = 1;
15100vinfos[3].foffset =
j3;
15101vinfos[3].indices[0] =
_ij3[0];
15102vinfos[3].indices[1] =
_ij3[1];
15103vinfos[3].maxsolutions =
_nj3;
15104vinfos[4].jointtype = 1;
15105vinfos[4].foffset =
j4;
15106vinfos[4].indices[0] =
_ij4[0];
15107vinfos[4].indices[1] =
_ij4[1];
15108vinfos[4].maxsolutions =
_nj4;
15109vinfos[5].jointtype = 1;
15110vinfos[5].foffset =
j5;
15111vinfos[5].indices[0] =
_ij5[0];
15112vinfos[5].indices[1] =
_ij5[1];
15113vinfos[5].maxsolutions =
_nj5;
15114std::vector<int> vfree(0);
15126if( bgotonextstatement )
15128bool bgotonextstatement =
true;
15132if(
IKabs(evalcond[0]) < 0.0000050000000000 )
15134bgotonextstatement=
false;
15141IkReal x1188=((-1.0)*(x1189.
value));
15144j4=3.14159265358979;
15149IkReal gconst12=x1188;
15151if(
IKabs(x1190)==0){
15154IkReal gconst13=(
new_r00*(pow(x1190,-0.5)));
15157if(
IKabs(j3eval[0]) < 0.0000010000000000 )
15165IkReal x1191=((-1.0)*(x1192.
value));
15168j4=3.14159265358979;
15173IkReal gconst12=x1191;
15175if(
IKabs(x1193)==0){
15178IkReal gconst13=(
new_r00*(pow(x1193,-0.5)));
15181if(
IKabs(j3eval[0]) < 0.0000010000000000 )
15189IkReal x1194=((-1.0)*(x1195.
value));
15192j4=3.14159265358979;
15197IkReal gconst12=x1194;
15199if(
IKabs(x1196)==0){
15202IkReal gconst13=(
new_r00*(pow(x1196,-0.5)));
15205if(
IKabs(j3eval[0]) < 0.0000010000000000 )
15212IkReal j3array[1], cj3array[1], sj3array[1];
15213bool j3valid[1]={
false};
15226sj3array[0]=
IKsin(j3array[0]);
15227cj3array[0]=
IKcos(j3array[0]);
15228if( j3array[0] >
IKPI )
15232else if( j3array[0] < -
IKPI )
15233{ j3array[0]+=
IK2PI;
15236for(
int ij3 = 0; ij3 < 1; ++ij3)
15243for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
15247 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
15250j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
15255IkReal x1201=(gconst13*x1199);
15256IkReal x1202=(gconst13*x1200);
15258evalcond[1]=((-1.0)*x1201);
15259evalcond[2]=(((
new_r00*x1200))+gconst13);
15261evalcond[4]=((((-1.0)*x1201))+
new_r01);
15262evalcond[5]=((((-1.0)*x1202))+
new_r11);
15264evalcond[7]=(((
new_r11*x1200))+(((-1.0)*gconst13))+((
new_r01*x1199)));
15272std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
15273vinfos[0].jointtype = 1;
15274vinfos[0].foffset =
j0;
15275vinfos[0].indices[0] =
_ij0[0];
15276vinfos[0].indices[1] =
_ij0[1];
15277vinfos[0].maxsolutions =
_nj0;
15278vinfos[1].jointtype = 1;
15279vinfos[1].foffset =
j1;
15280vinfos[1].indices[0] =
_ij1[0];
15281vinfos[1].indices[1] =
_ij1[1];
15282vinfos[1].maxsolutions =
_nj1;
15283vinfos[2].jointtype = 1;
15284vinfos[2].foffset =
j2;
15285vinfos[2].indices[0] =
_ij2[0];
15286vinfos[2].indices[1] =
_ij2[1];
15287vinfos[2].maxsolutions =
_nj2;
15288vinfos[3].jointtype = 1;
15289vinfos[3].foffset =
j3;
15290vinfos[3].indices[0] =
_ij3[0];
15291vinfos[3].indices[1] =
_ij3[1];
15292vinfos[3].maxsolutions =
_nj3;
15293vinfos[4].jointtype = 1;
15294vinfos[4].foffset =
j4;
15295vinfos[4].indices[0] =
_ij4[0];
15296vinfos[4].indices[1] =
_ij4[1];
15297vinfos[4].maxsolutions =
_nj4;
15298vinfos[5].jointtype = 1;
15299vinfos[5].foffset =
j5;
15300vinfos[5].indices[0] =
_ij5[0];
15301vinfos[5].indices[1] =
_ij5[1];
15302vinfos[5].maxsolutions =
_nj5;
15303std::vector<int> vfree(0);
15316IkReal j3array[1], cj3array[1], sj3array[1];
15317bool j3valid[1]={
false};
15327j3array[0]=((-1.5707963267949)+(x1203.
value)+(((1.5707963267949)*(x1204.
value))));
15328sj3array[0]=
IKsin(j3array[0]);
15329cj3array[0]=
IKcos(j3array[0]);
15330if( j3array[0] >
IKPI )
15334else if( j3array[0] < -
IKPI )
15335{ j3array[0]+=
IK2PI;
15338for(
int ij3 = 0; ij3 < 1; ++ij3)
15345for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
15349 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
15352j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
15357IkReal x1207=(gconst13*x1205);
15358IkReal x1208=(gconst13*x1206);
15360evalcond[1]=((-1.0)*x1207);
15361evalcond[2]=(((
new_r00*x1206))+gconst13);
15363evalcond[4]=((((-1.0)*x1207))+
new_r01);
15364evalcond[5]=((((-1.0)*x1208))+
new_r11);
15366evalcond[7]=(((
new_r11*x1206))+((
new_r01*x1205))+(((-1.0)*gconst13)));
15374std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
15375vinfos[0].jointtype = 1;
15376vinfos[0].foffset =
j0;
15377vinfos[0].indices[0] =
_ij0[0];
15378vinfos[0].indices[1] =
_ij0[1];
15379vinfos[0].maxsolutions =
_nj0;
15380vinfos[1].jointtype = 1;
15381vinfos[1].foffset =
j1;
15382vinfos[1].indices[0] =
_ij1[0];
15383vinfos[1].indices[1] =
_ij1[1];
15384vinfos[1].maxsolutions =
_nj1;
15385vinfos[2].jointtype = 1;
15386vinfos[2].foffset =
j2;
15387vinfos[2].indices[0] =
_ij2[0];
15388vinfos[2].indices[1] =
_ij2[1];
15389vinfos[2].maxsolutions =
_nj2;
15390vinfos[3].jointtype = 1;
15391vinfos[3].foffset =
j3;
15392vinfos[3].indices[0] =
_ij3[0];
15393vinfos[3].indices[1] =
_ij3[1];
15394vinfos[3].maxsolutions =
_nj3;
15395vinfos[4].jointtype = 1;
15396vinfos[4].foffset =
j4;
15397vinfos[4].indices[0] =
_ij4[0];
15398vinfos[4].indices[1] =
_ij4[1];
15399vinfos[4].maxsolutions =
_nj4;
15400vinfos[5].jointtype = 1;
15401vinfos[5].foffset =
j5;
15402vinfos[5].indices[0] =
_ij5[0];
15403vinfos[5].indices[1] =
_ij5[1];
15404vinfos[5].maxsolutions =
_nj5;
15405std::vector<int> vfree(0);
15418IkReal j3array[1], cj3array[1], sj3array[1];
15419bool j3valid[1]={
false};
15429j3array[0]=((-1.5707963267949)+(x1209.
value)+(((1.5707963267949)*(x1210.
value))));
15430sj3array[0]=
IKsin(j3array[0]);
15431cj3array[0]=
IKcos(j3array[0]);
15432if( j3array[0] >
IKPI )
15436else if( j3array[0] < -
IKPI )
15437{ j3array[0]+=
IK2PI;
15440for(
int ij3 = 0; ij3 < 1; ++ij3)
15447for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
15451 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
15454j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
15459IkReal x1213=(gconst13*x1211);
15460IkReal x1214=(gconst13*x1212);
15462evalcond[1]=((-1.0)*x1213);
15463evalcond[2]=(gconst13+((
new_r00*x1212)));
15465evalcond[4]=(
new_r01+(((-1.0)*x1213)));
15466evalcond[5]=(
new_r11+(((-1.0)*x1214)));
15468evalcond[7]=(((
new_r11*x1212))+((
new_r01*x1211))+(((-1.0)*gconst13)));
15476std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
15477vinfos[0].jointtype = 1;
15478vinfos[0].foffset =
j0;
15479vinfos[0].indices[0] =
_ij0[0];
15480vinfos[0].indices[1] =
_ij0[1];
15481vinfos[0].maxsolutions =
_nj0;
15482vinfos[1].jointtype = 1;
15483vinfos[1].foffset =
j1;
15484vinfos[1].indices[0] =
_ij1[0];
15485vinfos[1].indices[1] =
_ij1[1];
15486vinfos[1].maxsolutions =
_nj1;
15487vinfos[2].jointtype = 1;
15488vinfos[2].foffset =
j2;
15489vinfos[2].indices[0] =
_ij2[0];
15490vinfos[2].indices[1] =
_ij2[1];
15491vinfos[2].maxsolutions =
_nj2;
15492vinfos[3].jointtype = 1;
15493vinfos[3].foffset =
j3;
15494vinfos[3].indices[0] =
_ij3[0];
15495vinfos[3].indices[1] =
_ij3[1];
15496vinfos[3].maxsolutions =
_nj3;
15497vinfos[4].jointtype = 1;
15498vinfos[4].foffset =
j4;
15499vinfos[4].indices[0] =
_ij4[0];
15500vinfos[4].indices[1] =
_ij4[1];
15501vinfos[4].maxsolutions =
_nj4;
15502vinfos[5].jointtype = 1;
15503vinfos[5].foffset =
j5;
15504vinfos[5].indices[0] =
_ij5[0];
15505vinfos[5].indices[1] =
_ij5[1];
15506vinfos[5].maxsolutions =
_nj5;
15507std::vector<int> vfree(0);
15519if( bgotonextstatement )
15521bool bgotonextstatement =
true;
15526bgotonextstatement=
false;
15531if( bgotonextstatement )
15544IkReal j3array[1], cj3array[1], sj3array[1];
15545bool j3valid[1]={
false};
15547IkReal x1215=((1.0)*gconst14);
15556j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1216.
value)))+(x1217.
value));
15557sj3array[0]=
IKsin(j3array[0]);
15558cj3array[0]=
IKcos(j3array[0]);
15559if( j3array[0] >
IKPI )
15563else if( j3array[0] < -
IKPI )
15564{ j3array[0]+=
IK2PI;
15567for(
int ij3 = 0; ij3 < 1; ++ij3)
15574for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
15578 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
15581j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
15586IkReal x1220=(gconst14*x1218);
15587IkReal x1221=((1.0)*x1219);
15588IkReal x1222=(gconst13*x1218);
15589IkReal x1223=(gconst13*x1221);
15591evalcond[1]=(x1222+((gconst14*x1219))+
new_r00);
15592evalcond[2]=(gconst13+((
new_r00*x1218))+(((-1.0)*
new_r10*x1221)));
15593evalcond[3]=(gconst14+((
new_r01*x1218))+(((-1.0)*
new_r11*x1221)));
15594evalcond[4]=(x1220+(((-1.0)*x1223))+
new_r01);
15595evalcond[5]=(x1220+(((-1.0)*x1223))+
new_r10);
15596evalcond[6]=(((
new_r11*x1218))+((
new_r01*x1219))+(((-1.0)*gconst13)));
15597evalcond[7]=((((-1.0)*x1222))+
new_r11+(((-1.0)*gconst14*x1221)));
15605std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
15606vinfos[0].jointtype = 1;
15607vinfos[0].foffset =
j0;
15608vinfos[0].indices[0] =
_ij0[0];
15609vinfos[0].indices[1] =
_ij0[1];
15610vinfos[0].maxsolutions =
_nj0;
15611vinfos[1].jointtype = 1;
15612vinfos[1].foffset =
j1;
15613vinfos[1].indices[0] =
_ij1[0];
15614vinfos[1].indices[1] =
_ij1[1];
15615vinfos[1].maxsolutions =
_nj1;
15616vinfos[2].jointtype = 1;
15617vinfos[2].foffset =
j2;
15618vinfos[2].indices[0] =
_ij2[0];
15619vinfos[2].indices[1] =
_ij2[1];
15620vinfos[2].maxsolutions =
_nj2;
15621vinfos[3].jointtype = 1;
15622vinfos[3].foffset =
j3;
15623vinfos[3].indices[0] =
_ij3[0];
15624vinfos[3].indices[1] =
_ij3[1];
15625vinfos[3].maxsolutions =
_nj3;
15626vinfos[4].jointtype = 1;
15627vinfos[4].foffset =
j4;
15628vinfos[4].indices[0] =
_ij4[0];
15629vinfos[4].indices[1] =
_ij4[1];
15630vinfos[4].maxsolutions =
_nj4;
15631vinfos[5].jointtype = 1;
15632vinfos[5].foffset =
j5;
15633vinfos[5].indices[0] =
_ij5[0];
15634vinfos[5].indices[1] =
_ij5[1];
15635vinfos[5].maxsolutions =
_nj5;
15636std::vector<int> vfree(0);
15649IkReal j3array[1], cj3array[1], sj3array[1];
15650bool j3valid[1]={
false};
15652IkReal x1224=((1.0)*gconst14);
15661j3array[0]=((-1.5707963267949)+(x1225.
value)+(((1.5707963267949)*(x1226.
value))));
15662sj3array[0]=
IKsin(j3array[0]);
15663cj3array[0]=
IKcos(j3array[0]);
15664if( j3array[0] >
IKPI )
15668else if( j3array[0] < -
IKPI )
15669{ j3array[0]+=
IK2PI;
15672for(
int ij3 = 0; ij3 < 1; ++ij3)
15679for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
15683 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
15686j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
15691IkReal x1229=(gconst14*x1227);
15692IkReal x1230=((1.0)*x1228);
15693IkReal x1231=(gconst13*x1227);
15694IkReal x1232=(gconst13*x1230);
15696evalcond[1]=(x1231+
new_r00+((gconst14*x1228)));
15697evalcond[2]=(gconst13+((
new_r00*x1227))+(((-1.0)*
new_r10*x1230)));
15698evalcond[3]=(gconst14+((
new_r01*x1227))+(((-1.0)*
new_r11*x1230)));
15699evalcond[4]=(x1229+(((-1.0)*x1232))+
new_r01);
15700evalcond[5]=(x1229+(((-1.0)*x1232))+
new_r10);
15701evalcond[6]=(((
new_r11*x1227))+((
new_r01*x1228))+(((-1.0)*gconst13)));
15702evalcond[7]=((((-1.0)*x1231))+
new_r11+(((-1.0)*gconst14*x1230)));
15710std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
15711vinfos[0].jointtype = 1;
15712vinfos[0].foffset =
j0;
15713vinfos[0].indices[0] =
_ij0[0];
15714vinfos[0].indices[1] =
_ij0[1];
15715vinfos[0].maxsolutions =
_nj0;
15716vinfos[1].jointtype = 1;
15717vinfos[1].foffset =
j1;
15718vinfos[1].indices[0] =
_ij1[0];
15719vinfos[1].indices[1] =
_ij1[1];
15720vinfos[1].maxsolutions =
_nj1;
15721vinfos[2].jointtype = 1;
15722vinfos[2].foffset =
j2;
15723vinfos[2].indices[0] =
_ij2[0];
15724vinfos[2].indices[1] =
_ij2[1];
15725vinfos[2].maxsolutions =
_nj2;
15726vinfos[3].jointtype = 1;
15727vinfos[3].foffset =
j3;
15728vinfos[3].indices[0] =
_ij3[0];
15729vinfos[3].indices[1] =
_ij3[1];
15730vinfos[3].maxsolutions =
_nj3;
15731vinfos[4].jointtype = 1;
15732vinfos[4].foffset =
j4;
15733vinfos[4].indices[0] =
_ij4[0];
15734vinfos[4].indices[1] =
_ij4[1];
15735vinfos[4].maxsolutions =
_nj4;
15736vinfos[5].jointtype = 1;
15737vinfos[5].foffset =
j5;
15738vinfos[5].indices[0] =
_ij5[0];
15739vinfos[5].indices[1] =
_ij5[1];
15740vinfos[5].maxsolutions =
_nj5;
15741std::vector<int> vfree(0);
15754IkReal j3array[1], cj3array[1], sj3array[1];
15755bool j3valid[1]={
false};
15766j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1234.
value)))+(x1235.
value));
15767sj3array[0]=
IKsin(j3array[0]);
15768cj3array[0]=
IKcos(j3array[0]);
15769if( j3array[0] >
IKPI )
15773else if( j3array[0] < -
IKPI )
15774{ j3array[0]+=
IK2PI;
15777for(
int ij3 = 0; ij3 < 1; ++ij3)
15784for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
15788 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
15791j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
15796IkReal x1238=(gconst14*x1236);
15797IkReal x1239=((1.0)*x1237);
15798IkReal x1240=(gconst13*x1236);
15799IkReal x1241=(gconst13*x1239);
15801evalcond[1]=(((gconst14*x1237))+x1240+
new_r00);
15802evalcond[2]=(gconst13+((
new_r00*x1236))+(((-1.0)*
new_r10*x1239)));
15803evalcond[3]=(gconst14+((
new_r01*x1236))+(((-1.0)*
new_r11*x1239)));
15804evalcond[4]=(x1238+(((-1.0)*x1241))+
new_r01);
15805evalcond[5]=(x1238+(((-1.0)*x1241))+
new_r10);
15806evalcond[6]=(((
new_r01*x1237))+((
new_r11*x1236))+(((-1.0)*gconst13)));
15807evalcond[7]=((((-1.0)*x1240))+
new_r11+(((-1.0)*gconst14*x1239)));
15815std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
15816vinfos[0].jointtype = 1;
15817vinfos[0].foffset =
j0;
15818vinfos[0].indices[0] =
_ij0[0];
15819vinfos[0].indices[1] =
_ij0[1];
15820vinfos[0].maxsolutions =
_nj0;
15821vinfos[1].jointtype = 1;
15822vinfos[1].foffset =
j1;
15823vinfos[1].indices[0] =
_ij1[0];
15824vinfos[1].indices[1] =
_ij1[1];
15825vinfos[1].maxsolutions =
_nj1;
15826vinfos[2].jointtype = 1;
15827vinfos[2].foffset =
j2;
15828vinfos[2].indices[0] =
_ij2[0];
15829vinfos[2].indices[1] =
_ij2[1];
15830vinfos[2].maxsolutions =
_nj2;
15831vinfos[3].jointtype = 1;
15832vinfos[3].foffset =
j3;
15833vinfos[3].indices[0] =
_ij3[0];
15834vinfos[3].indices[1] =
_ij3[1];
15835vinfos[3].maxsolutions =
_nj3;
15836vinfos[4].jointtype = 1;
15837vinfos[4].foffset =
j4;
15838vinfos[4].indices[0] =
_ij4[0];
15839vinfos[4].indices[1] =
_ij4[1];
15840vinfos[4].maxsolutions =
_nj4;
15841vinfos[5].jointtype = 1;
15842vinfos[5].foffset =
j5;
15843vinfos[5].indices[0] =
_ij5[0];
15844vinfos[5].indices[1] =
_ij5[1];
15845vinfos[5].maxsolutions =
_nj5;
15846std::vector<int> vfree(0);
15858if( bgotonextstatement )
15860bool bgotonextstatement =
true;
15863IkReal x1242=((-1.0)*
new_r00);
15865if(
IKabs(x1244)==0){
15868IkReal x1243=pow(x1244,-0.5);
15873IkReal gconst15=((3.14159265358979)+(((-1.0)*(x1245.
value))));
15874IkReal gconst16=(x1242*x1243);
15875IkReal gconst17=((1.0)*
new_r10*x1243);
15880evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-3.14159265358979)+(x1246.
value)+
j5)))), 6.28318530717959)));
15881if(
IKabs(evalcond[0]) < 0.0000050000000000 )
15883bgotonextstatement=
false;
15886IkReal x1247=((-1.0)*
new_r00);
15891IkReal x1248=((1.0)*(x1250.
value));
15895j4=3.14159265358979;
15898j5=((3.14159265)+(((-1.0)*x1248)));
15899IkReal gconst15=((3.14159265358979)+(((-1.0)*x1248)));
15900IkReal gconst16=(x1247*x1249);
15901IkReal gconst17=((1.0)*
new_r10*x1249);
15910if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
15914IkReal x1256=((-1.0)*
new_r00);
15919IkReal x1257=((1.0)*(x1259.
value));
15923j4=3.14159265358979;
15926j5=((3.14159265)+(((-1.0)*x1257)));
15927IkReal gconst15=((3.14159265358979)+(((-1.0)*x1257)));
15928IkReal gconst16=(x1256*x1258);
15929IkReal gconst17=((1.0)*
new_r10*x1258);
15936IkReal x1262=x1265.
value;
15937IkReal x1263=(x1260*x1262);
15938IkReal x1264=(x1261*x1262);
15940if(
IKabs(j3eval[0]) < 0.0000010000000000 )
15944IkReal x1266=((-1.0)*
new_r00);
15949IkReal x1267=((1.0)*(x1269.
value));
15953j4=3.14159265358979;
15956j5=((3.14159265)+(((-1.0)*x1267)));
15957IkReal gconst15=((3.14159265358979)+(((-1.0)*x1267)));
15958IkReal gconst16=(x1266*x1268);
15959IkReal gconst17=((1.0)*
new_r10*x1268);
15966IkReal x1272=x1275.
value;
15968IkReal x1274=(x1270*x1272);
15970if(
IKabs(j3eval[0]) < 0.0000010000000000 )
15974bool bgotonextstatement =
true;
15978if(
IKabs(evalcond[0]) < 0.0000050000000000 )
15980bgotonextstatement=
false;
15987IkReal x1276=((1.0)*(x1277.
value));
15990j4=3.14159265358979;
15993j5=((3.14159265)+(((-1.0)*x1276)));
15996IkReal gconst15=((3.14159265358979)+(((-1.0)*x1276)));
15999if(
IKabs(x1278)==0){
16002IkReal gconst17=((1.0)*
new_r10*(pow(x1278,-0.5)));
16004if(
IKabs(j3eval[0]) < 0.0000010000000000 )
16007IkReal j3array[2], cj3array[2], sj3array[2];
16008bool j3valid[2]={
false};
16017 j3valid[0] = j3valid[1] =
true;
16018 j3array[0] =
IKasin(sj3array[0]);
16019 cj3array[0] =
IKcos(j3array[0]);
16020 sj3array[1] = sj3array[0];
16021 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
16022 cj3array[1] = -cj3array[0];
16024else if( isnan(sj3array[0]) )
16028 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
16030for(
int ij3 = 0; ij3 < 2; ++ij3)
16037for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
16041 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
16044j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
16050evalcond[1]=(gconst17*x1280);
16051evalcond[2]=((-1.0)*
new_r10*x1280);
16052evalcond[3]=(gconst17+((
new_r01*x1281)));
16053evalcond[4]=(((
new_r10*x1281))+gconst17);
16054evalcond[5]=(
new_r10+((gconst17*x1281)));
16062std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
16063vinfos[0].jointtype = 1;
16064vinfos[0].foffset =
j0;
16065vinfos[0].indices[0] =
_ij0[0];
16066vinfos[0].indices[1] =
_ij0[1];
16067vinfos[0].maxsolutions =
_nj0;
16068vinfos[1].jointtype = 1;
16069vinfos[1].foffset =
j1;
16070vinfos[1].indices[0] =
_ij1[0];
16071vinfos[1].indices[1] =
_ij1[1];
16072vinfos[1].maxsolutions =
_nj1;
16073vinfos[2].jointtype = 1;
16074vinfos[2].foffset =
j2;
16075vinfos[2].indices[0] =
_ij2[0];
16076vinfos[2].indices[1] =
_ij2[1];
16077vinfos[2].maxsolutions =
_nj2;
16078vinfos[3].jointtype = 1;
16079vinfos[3].foffset =
j3;
16080vinfos[3].indices[0] =
_ij3[0];
16081vinfos[3].indices[1] =
_ij3[1];
16082vinfos[3].maxsolutions =
_nj3;
16083vinfos[4].jointtype = 1;
16084vinfos[4].foffset =
j4;
16085vinfos[4].indices[0] =
_ij4[0];
16086vinfos[4].indices[1] =
_ij4[1];
16087vinfos[4].maxsolutions =
_nj4;
16088vinfos[5].jointtype = 1;
16089vinfos[5].foffset =
j5;
16090vinfos[5].indices[0] =
_ij5[0];
16091vinfos[5].indices[1] =
_ij5[1];
16092vinfos[5].maxsolutions =
_nj5;
16093std::vector<int> vfree(0);
16102IkReal j3array[2], cj3array[2], sj3array[2];
16103bool j3valid[2]={
false};
16109sj3array[0]=((-1.0)*gconst17*(x1282.
value));
16112 j3valid[0] = j3valid[1] =
true;
16113 j3array[0] =
IKasin(sj3array[0]);
16114 cj3array[0] =
IKcos(j3array[0]);
16115 sj3array[1] = sj3array[0];
16116 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
16117 cj3array[1] = -cj3array[0];
16119else if( isnan(sj3array[0]) )
16123 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
16125for(
int ij3 = 0; ij3 < 2; ++ij3)
16132for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
16136 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
16139j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
16144IkReal x1285=(gconst17*x1284);
16146evalcond[1]=(gconst17*x1283);
16147evalcond[2]=((-1.0)*
new_r10*x1283);
16149evalcond[4]=(((
new_r10*x1284))+gconst17);
16158std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
16159vinfos[0].jointtype = 1;
16160vinfos[0].foffset =
j0;
16161vinfos[0].indices[0] =
_ij0[0];
16162vinfos[0].indices[1] =
_ij0[1];
16163vinfos[0].maxsolutions =
_nj0;
16164vinfos[1].jointtype = 1;
16165vinfos[1].foffset =
j1;
16166vinfos[1].indices[0] =
_ij1[0];
16167vinfos[1].indices[1] =
_ij1[1];
16168vinfos[1].maxsolutions =
_nj1;
16169vinfos[2].jointtype = 1;
16170vinfos[2].foffset =
j2;
16171vinfos[2].indices[0] =
_ij2[0];
16172vinfos[2].indices[1] =
_ij2[1];
16173vinfos[2].maxsolutions =
_nj2;
16174vinfos[3].jointtype = 1;
16175vinfos[3].foffset =
j3;
16176vinfos[3].indices[0] =
_ij3[0];
16177vinfos[3].indices[1] =
_ij3[1];
16178vinfos[3].maxsolutions =
_nj3;
16179vinfos[4].jointtype = 1;
16180vinfos[4].foffset =
j4;
16181vinfos[4].indices[0] =
_ij4[0];
16182vinfos[4].indices[1] =
_ij4[1];
16183vinfos[4].maxsolutions =
_nj4;
16184vinfos[5].jointtype = 1;
16185vinfos[5].foffset =
j5;
16186vinfos[5].indices[0] =
_ij5[0];
16187vinfos[5].indices[1] =
_ij5[1];
16188vinfos[5].maxsolutions =
_nj5;
16189std::vector<int> vfree(0);
16201if( bgotonextstatement )
16203bool bgotonextstatement =
true;
16207evalcond[1]=gconst17;
16208if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 )
16210bgotonextstatement=
false;
16213IkReal x1286=((-1.0)*
new_r00);
16218IkReal x1287=((1.0)*(x1288.
value));
16221j4=3.14159265358979;
16224j5=((3.14159265)+(((-1.0)*x1287)));
16229IkReal gconst15=((3.14159265358979)+(((-1.0)*x1287)));
16230IkReal gconst16=x1286;
16231IkReal gconst17=((1.0)*
new_r10);
16235if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
16239IkReal x1289=((-1.0)*
new_r00);
16244IkReal x1290=((1.0)*(x1291.
value));
16247j4=3.14159265358979;
16250j5=((3.14159265)+(((-1.0)*x1290)));
16255IkReal gconst15=((3.14159265358979)+(((-1.0)*x1290)));
16256IkReal gconst16=x1289;
16257IkReal gconst17=((1.0)*
new_r10);
16261if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
16265IkReal x1292=((-1.0)*
new_r00);
16270IkReal x1293=((1.0)*(x1294.
value));
16273j4=3.14159265358979;
16276j5=((3.14159265)+(((-1.0)*x1293)));
16281IkReal gconst15=((3.14159265358979)+(((-1.0)*x1293)));
16282IkReal gconst16=x1292;
16283IkReal gconst17=((1.0)*
new_r10);
16287if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
16294IkReal j3array[1], cj3array[1], sj3array[1];
16295bool j3valid[1]={
false};
16297IkReal x1295=((1.0)*gconst17);
16306j3array[0]=((-1.5707963267949)+(x1296.
value)+(((1.5707963267949)*(x1297.
value))));
16307sj3array[0]=
IKsin(j3array[0]);
16308cj3array[0]=
IKcos(j3array[0]);
16309if( j3array[0] >
IKPI )
16313else if( j3array[0] < -
IKPI )
16314{ j3array[0]+=
IK2PI;
16317for(
int ij3 = 0; ij3 < 1; ++ij3)
16324for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
16328 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
16331j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
16336IkReal x1300=(gconst17*x1298);
16337IkReal x1301=(gconst16*x1298);
16338IkReal x1302=(gconst17*x1299);
16339IkReal x1303=((1.0)*x1299);
16340IkReal x1304=(gconst16*x1303);
16341evalcond[0]=(x1300+(((-1.0)*x1304)));
16343evalcond[2]=(x1301+x1302+
new_r00);
16344evalcond[3]=((((-1.0)*
new_r10*x1303))+gconst16+((
new_r00*x1298)));
16345evalcond[4]=((((-1.0)*x1301))+(((-1.0)*x1302)));
16346evalcond[5]=(x1300+(((-1.0)*x1304))+
new_r10);
16354std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
16355vinfos[0].jointtype = 1;
16356vinfos[0].foffset =
j0;
16357vinfos[0].indices[0] =
_ij0[0];
16358vinfos[0].indices[1] =
_ij0[1];
16359vinfos[0].maxsolutions =
_nj0;
16360vinfos[1].jointtype = 1;
16361vinfos[1].foffset =
j1;
16362vinfos[1].indices[0] =
_ij1[0];
16363vinfos[1].indices[1] =
_ij1[1];
16364vinfos[1].maxsolutions =
_nj1;
16365vinfos[2].jointtype = 1;
16366vinfos[2].foffset =
j2;
16367vinfos[2].indices[0] =
_ij2[0];
16368vinfos[2].indices[1] =
_ij2[1];
16369vinfos[2].maxsolutions =
_nj2;
16370vinfos[3].jointtype = 1;
16371vinfos[3].foffset =
j3;
16372vinfos[3].indices[0] =
_ij3[0];
16373vinfos[3].indices[1] =
_ij3[1];
16374vinfos[3].maxsolutions =
_nj3;
16375vinfos[4].jointtype = 1;
16376vinfos[4].foffset =
j4;
16377vinfos[4].indices[0] =
_ij4[0];
16378vinfos[4].indices[1] =
_ij4[1];
16379vinfos[4].maxsolutions =
_nj4;
16380vinfos[5].jointtype = 1;
16381vinfos[5].foffset =
j5;
16382vinfos[5].indices[0] =
_ij5[0];
16383vinfos[5].indices[1] =
_ij5[1];
16384vinfos[5].maxsolutions =
_nj5;
16385std::vector<int> vfree(0);
16398IkReal j3array[1], cj3array[1], sj3array[1];
16399bool j3valid[1]={
false};
16409j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1305.
value)))+(x1306.
value));
16410sj3array[0]=
IKsin(j3array[0]);
16411cj3array[0]=
IKcos(j3array[0]);
16412if( j3array[0] >
IKPI )
16416else if( j3array[0] < -
IKPI )
16417{ j3array[0]+=
IK2PI;
16420for(
int ij3 = 0; ij3 < 1; ++ij3)
16427for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
16431 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
16434j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
16439IkReal x1309=(gconst17*x1307);
16440IkReal x1310=(gconst16*x1307);
16441IkReal x1311=(gconst17*x1308);
16442IkReal x1312=((1.0)*x1308);
16443IkReal x1313=(gconst16*x1312);
16444evalcond[0]=(x1309+(((-1.0)*x1313)));
16446evalcond[2]=(x1311+x1310+
new_r00);
16447evalcond[3]=((((-1.0)*
new_r10*x1312))+gconst16+((
new_r00*x1307)));
16448evalcond[4]=((((-1.0)*x1310))+(((-1.0)*x1311)));
16449evalcond[5]=(x1309+(((-1.0)*x1313))+
new_r10);
16457std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
16458vinfos[0].jointtype = 1;
16459vinfos[0].foffset =
j0;
16460vinfos[0].indices[0] =
_ij0[0];
16461vinfos[0].indices[1] =
_ij0[1];
16462vinfos[0].maxsolutions =
_nj0;
16463vinfos[1].jointtype = 1;
16464vinfos[1].foffset =
j1;
16465vinfos[1].indices[0] =
_ij1[0];
16466vinfos[1].indices[1] =
_ij1[1];
16467vinfos[1].maxsolutions =
_nj1;
16468vinfos[2].jointtype = 1;
16469vinfos[2].foffset =
j2;
16470vinfos[2].indices[0] =
_ij2[0];
16471vinfos[2].indices[1] =
_ij2[1];
16472vinfos[2].maxsolutions =
_nj2;
16473vinfos[3].jointtype = 1;
16474vinfos[3].foffset =
j3;
16475vinfos[3].indices[0] =
_ij3[0];
16476vinfos[3].indices[1] =
_ij3[1];
16477vinfos[3].maxsolutions =
_nj3;
16478vinfos[4].jointtype = 1;
16479vinfos[4].foffset =
j4;
16480vinfos[4].indices[0] =
_ij4[0];
16481vinfos[4].indices[1] =
_ij4[1];
16482vinfos[4].maxsolutions =
_nj4;
16483vinfos[5].jointtype = 1;
16484vinfos[5].foffset =
j5;
16485vinfos[5].indices[0] =
_ij5[0];
16486vinfos[5].indices[1] =
_ij5[1];
16487vinfos[5].maxsolutions =
_nj5;
16488std::vector<int> vfree(0);
16501IkReal j3array[1], cj3array[1], sj3array[1];
16502bool j3valid[1]={
false};
16512j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1314.
value)))+(x1315.
value));
16513sj3array[0]=
IKsin(j3array[0]);
16514cj3array[0]=
IKcos(j3array[0]);
16515if( j3array[0] >
IKPI )
16519else if( j3array[0] < -
IKPI )
16520{ j3array[0]+=
IK2PI;
16523for(
int ij3 = 0; ij3 < 1; ++ij3)
16530for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
16534 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
16537j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
16542IkReal x1318=(gconst17*x1316);
16543IkReal x1319=(gconst16*x1316);
16544IkReal x1320=(gconst17*x1317);
16545IkReal x1321=((1.0)*x1317);
16546IkReal x1322=(gconst16*x1321);
16547evalcond[0]=(x1318+(((-1.0)*x1322)));
16549evalcond[2]=(x1319+x1320+
new_r00);
16550evalcond[3]=(((
new_r00*x1316))+(((-1.0)*
new_r10*x1321))+gconst16);
16551evalcond[4]=((((-1.0)*x1319))+(((-1.0)*x1320)));
16552evalcond[5]=(x1318+(((-1.0)*x1322))+
new_r10);
16560std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
16561vinfos[0].jointtype = 1;
16562vinfos[0].foffset =
j0;
16563vinfos[0].indices[0] =
_ij0[0];
16564vinfos[0].indices[1] =
_ij0[1];
16565vinfos[0].maxsolutions =
_nj0;
16566vinfos[1].jointtype = 1;
16567vinfos[1].foffset =
j1;
16568vinfos[1].indices[0] =
_ij1[0];
16569vinfos[1].indices[1] =
_ij1[1];
16570vinfos[1].maxsolutions =
_nj1;
16571vinfos[2].jointtype = 1;
16572vinfos[2].foffset =
j2;
16573vinfos[2].indices[0] =
_ij2[0];
16574vinfos[2].indices[1] =
_ij2[1];
16575vinfos[2].maxsolutions =
_nj2;
16576vinfos[3].jointtype = 1;
16577vinfos[3].foffset =
j3;
16578vinfos[3].indices[0] =
_ij3[0];
16579vinfos[3].indices[1] =
_ij3[1];
16580vinfos[3].maxsolutions =
_nj3;
16581vinfos[4].jointtype = 1;
16582vinfos[4].foffset =
j4;
16583vinfos[4].indices[0] =
_ij4[0];
16584vinfos[4].indices[1] =
_ij4[1];
16585vinfos[4].maxsolutions =
_nj4;
16586vinfos[5].jointtype = 1;
16587vinfos[5].foffset =
j5;
16588vinfos[5].indices[0] =
_ij5[0];
16589vinfos[5].indices[1] =
_ij5[1];
16590vinfos[5].maxsolutions =
_nj5;
16591std::vector<int> vfree(0);
16603if( bgotonextstatement )
16605bool bgotonextstatement =
true;
16609if(
IKabs(evalcond[0]) < 0.0000050000000000 )
16611bgotonextstatement=
false;
16613IkReal j3array[2], cj3array[2], sj3array[2];
16614bool j3valid[2]={
false};
16623 j3valid[0] = j3valid[1] =
true;
16624 j3array[0] =
IKasin(sj3array[0]);
16625 cj3array[0] =
IKcos(j3array[0]);
16626 sj3array[1] = sj3array[0];
16627 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
16628 cj3array[1] = -cj3array[0];
16630else if( isnan(sj3array[0]) )
16634 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
16636for(
int ij3 = 0; ij3 < 2; ++ij3)
16643for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
16647 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
16650j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
16655IkReal x1326=((-1.0)*x1324);
16658evalcond[2]=(gconst16*x1326);
16659evalcond[3]=(((
new_r00*x1325))+gconst16);
16660evalcond[4]=(((gconst16*x1325))+
new_r00);
16661evalcond[5]=(((
new_r11*x1325))+(((-1.0)*gconst16)));
16669std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
16670vinfos[0].jointtype = 1;
16671vinfos[0].foffset =
j0;
16672vinfos[0].indices[0] =
_ij0[0];
16673vinfos[0].indices[1] =
_ij0[1];
16674vinfos[0].maxsolutions =
_nj0;
16675vinfos[1].jointtype = 1;
16676vinfos[1].foffset =
j1;
16677vinfos[1].indices[0] =
_ij1[0];
16678vinfos[1].indices[1] =
_ij1[1];
16679vinfos[1].maxsolutions =
_nj1;
16680vinfos[2].jointtype = 1;
16681vinfos[2].foffset =
j2;
16682vinfos[2].indices[0] =
_ij2[0];
16683vinfos[2].indices[1] =
_ij2[1];
16684vinfos[2].maxsolutions =
_nj2;
16685vinfos[3].jointtype = 1;
16686vinfos[3].foffset =
j3;
16687vinfos[3].indices[0] =
_ij3[0];
16688vinfos[3].indices[1] =
_ij3[1];
16689vinfos[3].maxsolutions =
_nj3;
16690vinfos[4].jointtype = 1;
16691vinfos[4].foffset =
j4;
16692vinfos[4].indices[0] =
_ij4[0];
16693vinfos[4].indices[1] =
_ij4[1];
16694vinfos[4].maxsolutions =
_nj4;
16695vinfos[5].jointtype = 1;
16696vinfos[5].foffset =
j5;
16697vinfos[5].indices[0] =
_ij5[0];
16698vinfos[5].indices[1] =
_ij5[1];
16699vinfos[5].maxsolutions =
_nj5;
16700std::vector<int> vfree(0);
16708if( bgotonextstatement )
16710bool bgotonextstatement =
true;
16714if(
IKabs(evalcond[0]) < 0.0000050000000000 )
16716bgotonextstatement=
false;
16719IkReal x1327=((-1.0)*
new_r00);
16724IkReal x1328=((1.0)*(x1329.
value));
16727j4=3.14159265358979;
16730j5=((3.14159265)+(((-1.0)*x1328)));
16735IkReal gconst15=((3.14159265358979)+(((-1.0)*x1328)));
16737if(
IKabs(x1330)==0){
16740IkReal gconst16=(x1327*(pow(x1330,-0.5)));
16743if(
IKabs(j3eval[0]) < 0.0000010000000000 )
16747IkReal x1331=((-1.0)*
new_r00);
16752IkReal x1332=((1.0)*(x1333.
value));
16755j4=3.14159265358979;
16758j5=((3.14159265)+(((-1.0)*x1332)));
16763IkReal gconst15=((3.14159265358979)+(((-1.0)*x1332)));
16765if(
IKabs(x1334)==0){
16768IkReal gconst16=(x1331*(pow(x1334,-0.5)));
16771if(
IKabs(j3eval[0]) < 0.0000010000000000 )
16775IkReal x1335=((-1.0)*
new_r00);
16780IkReal x1336=((1.0)*(x1337.
value));
16783j4=3.14159265358979;
16786j5=((3.14159265)+(((-1.0)*x1336)));
16791IkReal gconst15=((3.14159265358979)+(((-1.0)*x1336)));
16793if(
IKabs(x1338)==0){
16796IkReal gconst16=(x1335*(pow(x1338,-0.5)));
16800if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 )
16807IkReal j3array[1], cj3array[1], sj3array[1];
16808bool j3valid[1]={
false};
16821sj3array[0]=
IKsin(j3array[0]);
16822cj3array[0]=
IKcos(j3array[0]);
16823if( j3array[0] >
IKPI )
16827else if( j3array[0] < -
IKPI )
16828{ j3array[0]+=
IK2PI;
16831for(
int ij3 = 0; ij3 < 1; ++ij3)
16838for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
16842 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
16845j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
16850IkReal x1343=((1.0)*gconst16);
16851IkReal x1344=((-1.0)*gconst16);
16854evalcond[2]=(x1341*x1344);
16855evalcond[3]=(x1342*x1344);
16856evalcond[4]=(gconst16+((
new_r00*x1341)));
16857evalcond[5]=(((gconst16*x1341))+
new_r00);
16858evalcond[6]=((((-1.0)*x1342*x1343))+
new_r01);
16859evalcond[7]=((((-1.0)*x1343))+((
new_r01*x1342)));
16867std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
16868vinfos[0].jointtype = 1;
16869vinfos[0].foffset =
j0;
16870vinfos[0].indices[0] =
_ij0[0];
16871vinfos[0].indices[1] =
_ij0[1];
16872vinfos[0].maxsolutions =
_nj0;
16873vinfos[1].jointtype = 1;
16874vinfos[1].foffset =
j1;
16875vinfos[1].indices[0] =
_ij1[0];
16876vinfos[1].indices[1] =
_ij1[1];
16877vinfos[1].maxsolutions =
_nj1;
16878vinfos[2].jointtype = 1;
16879vinfos[2].foffset =
j2;
16880vinfos[2].indices[0] =
_ij2[0];
16881vinfos[2].indices[1] =
_ij2[1];
16882vinfos[2].maxsolutions =
_nj2;
16883vinfos[3].jointtype = 1;
16884vinfos[3].foffset =
j3;
16885vinfos[3].indices[0] =
_ij3[0];
16886vinfos[3].indices[1] =
_ij3[1];
16887vinfos[3].maxsolutions =
_nj3;
16888vinfos[4].jointtype = 1;
16889vinfos[4].foffset =
j4;
16890vinfos[4].indices[0] =
_ij4[0];
16891vinfos[4].indices[1] =
_ij4[1];
16892vinfos[4].maxsolutions =
_nj4;
16893vinfos[5].jointtype = 1;
16894vinfos[5].foffset =
j5;
16895vinfos[5].indices[0] =
_ij5[0];
16896vinfos[5].indices[1] =
_ij5[1];
16897vinfos[5].maxsolutions =
_nj5;
16898std::vector<int> vfree(0);
16911IkReal j3array[1], cj3array[1], sj3array[1];
16912bool j3valid[1]={
false};
16925sj3array[0]=
IKsin(j3array[0]);
16926cj3array[0]=
IKcos(j3array[0]);
16927if( j3array[0] >
IKPI )
16931else if( j3array[0] < -
IKPI )
16932{ j3array[0]+=
IK2PI;
16935for(
int ij3 = 0; ij3 < 1; ++ij3)
16942for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
16946 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
16949j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
16954IkReal x1349=((1.0)*gconst16);
16955IkReal x1350=((-1.0)*gconst16);
16958evalcond[2]=(x1347*x1350);
16959evalcond[3]=(x1348*x1350);
16960evalcond[4]=(gconst16+((
new_r00*x1347)));
16961evalcond[5]=(((gconst16*x1347))+
new_r00);
16962evalcond[6]=((((-1.0)*x1348*x1349))+
new_r01);
16963evalcond[7]=((((-1.0)*x1349))+((
new_r01*x1348)));
16971std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
16972vinfos[0].jointtype = 1;
16973vinfos[0].foffset =
j0;
16974vinfos[0].indices[0] =
_ij0[0];
16975vinfos[0].indices[1] =
_ij0[1];
16976vinfos[0].maxsolutions =
_nj0;
16977vinfos[1].jointtype = 1;
16978vinfos[1].foffset =
j1;
16979vinfos[1].indices[0] =
_ij1[0];
16980vinfos[1].indices[1] =
_ij1[1];
16981vinfos[1].maxsolutions =
_nj1;
16982vinfos[2].jointtype = 1;
16983vinfos[2].foffset =
j2;
16984vinfos[2].indices[0] =
_ij2[0];
16985vinfos[2].indices[1] =
_ij2[1];
16986vinfos[2].maxsolutions =
_nj2;
16987vinfos[3].jointtype = 1;
16988vinfos[3].foffset =
j3;
16989vinfos[3].indices[0] =
_ij3[0];
16990vinfos[3].indices[1] =
_ij3[1];
16991vinfos[3].maxsolutions =
_nj3;
16992vinfos[4].jointtype = 1;
16993vinfos[4].foffset =
j4;
16994vinfos[4].indices[0] =
_ij4[0];
16995vinfos[4].indices[1] =
_ij4[1];
16996vinfos[4].maxsolutions =
_nj4;
16997vinfos[5].jointtype = 1;
16998vinfos[5].foffset =
j5;
16999vinfos[5].indices[0] =
_ij5[0];
17000vinfos[5].indices[1] =
_ij5[1];
17001vinfos[5].maxsolutions =
_nj5;
17002std::vector<int> vfree(0);
17015IkReal j3array[1], cj3array[1], sj3array[1];
17016bool j3valid[1]={
false};
17026j3array[0]=((-1.5707963267949)+(x1351.
value)+(((1.5707963267949)*(x1352.
value))));
17027sj3array[0]=
IKsin(j3array[0]);
17028cj3array[0]=
IKcos(j3array[0]);
17029if( j3array[0] >
IKPI )
17033else if( j3array[0] < -
IKPI )
17034{ j3array[0]+=
IK2PI;
17037for(
int ij3 = 0; ij3 < 1; ++ij3)
17044for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
17048 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
17051j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
17056IkReal x1355=((1.0)*gconst16);
17057IkReal x1356=((-1.0)*gconst16);
17060evalcond[2]=(x1353*x1356);
17061evalcond[3]=(x1354*x1356);
17062evalcond[4]=(gconst16+((
new_r00*x1353)));
17063evalcond[5]=(
new_r00+((gconst16*x1353)));
17064evalcond[6]=((((-1.0)*x1354*x1355))+
new_r01);
17065evalcond[7]=((((-1.0)*x1355))+((
new_r01*x1354)));
17073std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
17074vinfos[0].jointtype = 1;
17075vinfos[0].foffset =
j0;
17076vinfos[0].indices[0] =
_ij0[0];
17077vinfos[0].indices[1] =
_ij0[1];
17078vinfos[0].maxsolutions =
_nj0;
17079vinfos[1].jointtype = 1;
17080vinfos[1].foffset =
j1;
17081vinfos[1].indices[0] =
_ij1[0];
17082vinfos[1].indices[1] =
_ij1[1];
17083vinfos[1].maxsolutions =
_nj1;
17084vinfos[2].jointtype = 1;
17085vinfos[2].foffset =
j2;
17086vinfos[2].indices[0] =
_ij2[0];
17087vinfos[2].indices[1] =
_ij2[1];
17088vinfos[2].maxsolutions =
_nj2;
17089vinfos[3].jointtype = 1;
17090vinfos[3].foffset =
j3;
17091vinfos[3].indices[0] =
_ij3[0];
17092vinfos[3].indices[1] =
_ij3[1];
17093vinfos[3].maxsolutions =
_nj3;
17094vinfos[4].jointtype = 1;
17095vinfos[4].foffset =
j4;
17096vinfos[4].indices[0] =
_ij4[0];
17097vinfos[4].indices[1] =
_ij4[1];
17098vinfos[4].maxsolutions =
_nj4;
17099vinfos[5].jointtype = 1;
17100vinfos[5].foffset =
j5;
17101vinfos[5].indices[0] =
_ij5[0];
17102vinfos[5].indices[1] =
_ij5[1];
17103vinfos[5].maxsolutions =
_nj5;
17104std::vector<int> vfree(0);
17116if( bgotonextstatement )
17118bool bgotonextstatement =
true;
17122if(
IKabs(evalcond[0]) < 0.0000050000000000 )
17124bgotonextstatement=
false;
17127IkReal x1357=((-1.0)*
new_r00);
17132IkReal x1358=((1.0)*(x1359.
value));
17135j4=3.14159265358979;
17138j5=((3.14159265)+(((-1.0)*x1358)));
17140IkReal gconst15=((3.14159265358979)+(((-1.0)*x1358)));
17142if(
IKabs(x1360)==0){
17145IkReal gconst16=(x1357*(pow(x1360,-0.5)));
17148if(
IKabs(j3eval[0]) < 0.0000010000000000 )
17152IkReal x1361=((-1.0)*
new_r00);
17157IkReal x1362=((1.0)*(x1363.
value));
17160j4=3.14159265358979;
17163j5=((3.14159265)+(((-1.0)*x1362)));
17165IkReal gconst15=((3.14159265358979)+(((-1.0)*x1362)));
17167if(
IKabs(x1364)==0){
17170IkReal gconst16=(x1361*(pow(x1364,-0.5)));
17173if(
IKabs(j3eval[0]) < 0.0000010000000000 )
17177IkReal x1365=((-1.0)*
new_r00);
17182IkReal x1366=((1.0)*(x1367.
value));
17185j4=3.14159265358979;
17188j5=((3.14159265)+(((-1.0)*x1366)));
17190IkReal gconst15=((3.14159265358979)+(((-1.0)*x1366)));
17192if(
IKabs(x1368)==0){
17195IkReal gconst16=(x1365*(pow(x1368,-0.5)));
17198if(
IKabs(j3eval[0]) < 0.0000010000000000 )
17205IkReal j3array[1], cj3array[1], sj3array[1];
17206bool j3valid[1]={
false};
17219sj3array[0]=
IKsin(j3array[0]);
17220cj3array[0]=
IKcos(j3array[0]);
17221if( j3array[0] >
IKPI )
17225else if( j3array[0] < -
IKPI )
17226{ j3array[0]+=
IK2PI;
17229for(
int ij3 = 0; ij3 < 1; ++ij3)
17236for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
17240 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
17243j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
17248IkReal x1373=((1.0)*gconst16);
17250evalcond[1]=((-1.0)*gconst16*x1371);
17251evalcond[2]=(gconst16+((
new_r00*x1372)));
17252evalcond[3]=(
new_r00+((gconst16*x1372)));
17253evalcond[4]=((((-1.0)*x1371*x1373))+
new_r01);
17254evalcond[5]=((((-1.0)*x1372*x1373))+
new_r11);
17256evalcond[7]=((((-1.0)*x1373))+((
new_r11*x1372))+((
new_r01*x1371)));
17264std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
17265vinfos[0].jointtype = 1;
17266vinfos[0].foffset =
j0;
17267vinfos[0].indices[0] =
_ij0[0];
17268vinfos[0].indices[1] =
_ij0[1];
17269vinfos[0].maxsolutions =
_nj0;
17270vinfos[1].jointtype = 1;
17271vinfos[1].foffset =
j1;
17272vinfos[1].indices[0] =
_ij1[0];
17273vinfos[1].indices[1] =
_ij1[1];
17274vinfos[1].maxsolutions =
_nj1;
17275vinfos[2].jointtype = 1;
17276vinfos[2].foffset =
j2;
17277vinfos[2].indices[0] =
_ij2[0];
17278vinfos[2].indices[1] =
_ij2[1];
17279vinfos[2].maxsolutions =
_nj2;
17280vinfos[3].jointtype = 1;
17281vinfos[3].foffset =
j3;
17282vinfos[3].indices[0] =
_ij3[0];
17283vinfos[3].indices[1] =
_ij3[1];
17284vinfos[3].maxsolutions =
_nj3;
17285vinfos[4].jointtype = 1;
17286vinfos[4].foffset =
j4;
17287vinfos[4].indices[0] =
_ij4[0];
17288vinfos[4].indices[1] =
_ij4[1];
17289vinfos[4].maxsolutions =
_nj4;
17290vinfos[5].jointtype = 1;
17291vinfos[5].foffset =
j5;
17292vinfos[5].indices[0] =
_ij5[0];
17293vinfos[5].indices[1] =
_ij5[1];
17294vinfos[5].maxsolutions =
_nj5;
17295std::vector<int> vfree(0);
17308IkReal j3array[1], cj3array[1], sj3array[1];
17309bool j3valid[1]={
false};
17319j3array[0]=((-1.5707963267949)+(x1374.
value)+(((1.5707963267949)*(x1375.
value))));
17320sj3array[0]=
IKsin(j3array[0]);
17321cj3array[0]=
IKcos(j3array[0]);
17322if( j3array[0] >
IKPI )
17326else if( j3array[0] < -
IKPI )
17327{ j3array[0]+=
IK2PI;
17330for(
int ij3 = 0; ij3 < 1; ++ij3)
17337for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
17341 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
17344j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
17349IkReal x1378=((1.0)*gconst16);
17351evalcond[1]=((-1.0)*gconst16*x1376);
17352evalcond[2]=(gconst16+((
new_r00*x1377)));
17353evalcond[3]=(
new_r00+((gconst16*x1377)));
17354evalcond[4]=((((-1.0)*x1376*x1378))+
new_r01);
17355evalcond[5]=((((-1.0)*x1377*x1378))+
new_r11);
17357evalcond[7]=((((-1.0)*x1378))+((
new_r11*x1377))+((
new_r01*x1376)));
17365std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
17366vinfos[0].jointtype = 1;
17367vinfos[0].foffset =
j0;
17368vinfos[0].indices[0] =
_ij0[0];
17369vinfos[0].indices[1] =
_ij0[1];
17370vinfos[0].maxsolutions =
_nj0;
17371vinfos[1].jointtype = 1;
17372vinfos[1].foffset =
j1;
17373vinfos[1].indices[0] =
_ij1[0];
17374vinfos[1].indices[1] =
_ij1[1];
17375vinfos[1].maxsolutions =
_nj1;
17376vinfos[2].jointtype = 1;
17377vinfos[2].foffset =
j2;
17378vinfos[2].indices[0] =
_ij2[0];
17379vinfos[2].indices[1] =
_ij2[1];
17380vinfos[2].maxsolutions =
_nj2;
17381vinfos[3].jointtype = 1;
17382vinfos[3].foffset =
j3;
17383vinfos[3].indices[0] =
_ij3[0];
17384vinfos[3].indices[1] =
_ij3[1];
17385vinfos[3].maxsolutions =
_nj3;
17386vinfos[4].jointtype = 1;
17387vinfos[4].foffset =
j4;
17388vinfos[4].indices[0] =
_ij4[0];
17389vinfos[4].indices[1] =
_ij4[1];
17390vinfos[4].maxsolutions =
_nj4;
17391vinfos[5].jointtype = 1;
17392vinfos[5].foffset =
j5;
17393vinfos[5].indices[0] =
_ij5[0];
17394vinfos[5].indices[1] =
_ij5[1];
17395vinfos[5].maxsolutions =
_nj5;
17396std::vector<int> vfree(0);
17409IkReal j3array[1], cj3array[1], sj3array[1];
17410bool j3valid[1]={
false};
17420j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1379.
value)))+(x1380.
value));
17421sj3array[0]=
IKsin(j3array[0]);
17422cj3array[0]=
IKcos(j3array[0]);
17423if( j3array[0] >
IKPI )
17427else if( j3array[0] < -
IKPI )
17428{ j3array[0]+=
IK2PI;
17431for(
int ij3 = 0; ij3 < 1; ++ij3)
17438for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
17442 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
17445j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
17450IkReal x1383=((1.0)*gconst16);
17452evalcond[1]=((-1.0)*gconst16*x1381);
17453evalcond[2]=(gconst16+((
new_r00*x1382)));
17454evalcond[3]=(((gconst16*x1382))+
new_r00);
17455evalcond[4]=((((-1.0)*x1381*x1383))+
new_r01);
17456evalcond[5]=((((-1.0)*x1382*x1383))+
new_r11);
17458evalcond[7]=((((-1.0)*x1383))+((
new_r11*x1382))+((
new_r01*x1381)));
17466std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
17467vinfos[0].jointtype = 1;
17468vinfos[0].foffset =
j0;
17469vinfos[0].indices[0] =
_ij0[0];
17470vinfos[0].indices[1] =
_ij0[1];
17471vinfos[0].maxsolutions =
_nj0;
17472vinfos[1].jointtype = 1;
17473vinfos[1].foffset =
j1;
17474vinfos[1].indices[0] =
_ij1[0];
17475vinfos[1].indices[1] =
_ij1[1];
17476vinfos[1].maxsolutions =
_nj1;
17477vinfos[2].jointtype = 1;
17478vinfos[2].foffset =
j2;
17479vinfos[2].indices[0] =
_ij2[0];
17480vinfos[2].indices[1] =
_ij2[1];
17481vinfos[2].maxsolutions =
_nj2;
17482vinfos[3].jointtype = 1;
17483vinfos[3].foffset =
j3;
17484vinfos[3].indices[0] =
_ij3[0];
17485vinfos[3].indices[1] =
_ij3[1];
17486vinfos[3].maxsolutions =
_nj3;
17487vinfos[4].jointtype = 1;
17488vinfos[4].foffset =
j4;
17489vinfos[4].indices[0] =
_ij4[0];
17490vinfos[4].indices[1] =
_ij4[1];
17491vinfos[4].maxsolutions =
_nj4;
17492vinfos[5].jointtype = 1;
17493vinfos[5].foffset =
j5;
17494vinfos[5].indices[0] =
_ij5[0];
17495vinfos[5].indices[1] =
_ij5[1];
17496vinfos[5].maxsolutions =
_nj5;
17497std::vector<int> vfree(0);
17509if( bgotonextstatement )
17511bool bgotonextstatement =
true;
17516bgotonextstatement=
false;
17521if( bgotonextstatement )
17534IkReal j3array[1], cj3array[1], sj3array[1];
17535bool j3valid[1]={
false};
17537IkReal x1384=((1.0)*gconst17);
17546j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1385.
value)))+(x1386.
value));
17547sj3array[0]=
IKsin(j3array[0]);
17548cj3array[0]=
IKcos(j3array[0]);
17549if( j3array[0] >
IKPI )
17553else if( j3array[0] < -
IKPI )
17554{ j3array[0]+=
IK2PI;
17557for(
int ij3 = 0; ij3 < 1; ++ij3)
17564for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
17568 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
17571j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
17576IkReal x1389=((1.0)*gconst16);
17577IkReal x1390=(gconst17*x1387);
17578IkReal x1391=(gconst17*x1388);
17579IkReal x1392=((1.0)*x1388);
17580IkReal x1393=(x1388*x1389);
17582evalcond[1]=(x1391+((gconst16*x1387))+
new_r00);
17583evalcond[2]=(gconst16+((
new_r00*x1387))+(((-1.0)*
new_r10*x1392)));
17584evalcond[3]=(gconst17+((
new_r01*x1387))+(((-1.0)*
new_r11*x1392)));
17585evalcond[4]=(x1390+
new_r01+(((-1.0)*x1393)));
17586evalcond[5]=(x1390+
new_r10+(((-1.0)*x1393)));
17587evalcond[6]=((((-1.0)*x1389))+((
new_r11*x1387))+((
new_r01*x1388)));
17588evalcond[7]=((((-1.0)*x1391))+
new_r11+(((-1.0)*x1387*x1389)));
17596std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
17597vinfos[0].jointtype = 1;
17598vinfos[0].foffset =
j0;
17599vinfos[0].indices[0] =
_ij0[0];
17600vinfos[0].indices[1] =
_ij0[1];
17601vinfos[0].maxsolutions =
_nj0;
17602vinfos[1].jointtype = 1;
17603vinfos[1].foffset =
j1;
17604vinfos[1].indices[0] =
_ij1[0];
17605vinfos[1].indices[1] =
_ij1[1];
17606vinfos[1].maxsolutions =
_nj1;
17607vinfos[2].jointtype = 1;
17608vinfos[2].foffset =
j2;
17609vinfos[2].indices[0] =
_ij2[0];
17610vinfos[2].indices[1] =
_ij2[1];
17611vinfos[2].maxsolutions =
_nj2;
17612vinfos[3].jointtype = 1;
17613vinfos[3].foffset =
j3;
17614vinfos[3].indices[0] =
_ij3[0];
17615vinfos[3].indices[1] =
_ij3[1];
17616vinfos[3].maxsolutions =
_nj3;
17617vinfos[4].jointtype = 1;
17618vinfos[4].foffset =
j4;
17619vinfos[4].indices[0] =
_ij4[0];
17620vinfos[4].indices[1] =
_ij4[1];
17621vinfos[4].maxsolutions =
_nj4;
17622vinfos[5].jointtype = 1;
17623vinfos[5].foffset =
j5;
17624vinfos[5].indices[0] =
_ij5[0];
17625vinfos[5].indices[1] =
_ij5[1];
17626vinfos[5].maxsolutions =
_nj5;
17627std::vector<int> vfree(0);
17640IkReal j3array[1], cj3array[1], sj3array[1];
17641bool j3valid[1]={
false};
17643IkReal x1394=((1.0)*gconst17);
17652j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1395.
value)))+(x1396.
value));
17653sj3array[0]=
IKsin(j3array[0]);
17654cj3array[0]=
IKcos(j3array[0]);
17655if( j3array[0] >
IKPI )
17659else if( j3array[0] < -
IKPI )
17660{ j3array[0]+=
IK2PI;
17663for(
int ij3 = 0; ij3 < 1; ++ij3)
17670for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
17674 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
17677j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
17682IkReal x1399=((1.0)*gconst16);
17683IkReal x1400=(gconst17*x1397);
17684IkReal x1401=(gconst17*x1398);
17685IkReal x1402=((1.0)*x1398);
17686IkReal x1403=(x1398*x1399);
17688evalcond[1]=(x1401+
new_r00+((gconst16*x1397)));
17689evalcond[2]=(gconst16+((
new_r00*x1397))+(((-1.0)*
new_r10*x1402)));
17690evalcond[3]=(gconst17+((
new_r01*x1397))+(((-1.0)*
new_r11*x1402)));
17691evalcond[4]=((((-1.0)*x1403))+x1400+
new_r01);
17692evalcond[5]=((((-1.0)*x1403))+x1400+
new_r10);
17693evalcond[6]=(((
new_r11*x1397))+((
new_r01*x1398))+(((-1.0)*x1399)));
17694evalcond[7]=((((-1.0)*x1401))+(((-1.0)*x1397*x1399))+
new_r11);
17702std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
17703vinfos[0].jointtype = 1;
17704vinfos[0].foffset =
j0;
17705vinfos[0].indices[0] =
_ij0[0];
17706vinfos[0].indices[1] =
_ij0[1];
17707vinfos[0].maxsolutions =
_nj0;
17708vinfos[1].jointtype = 1;
17709vinfos[1].foffset =
j1;
17710vinfos[1].indices[0] =
_ij1[0];
17711vinfos[1].indices[1] =
_ij1[1];
17712vinfos[1].maxsolutions =
_nj1;
17713vinfos[2].jointtype = 1;
17714vinfos[2].foffset =
j2;
17715vinfos[2].indices[0] =
_ij2[0];
17716vinfos[2].indices[1] =
_ij2[1];
17717vinfos[2].maxsolutions =
_nj2;
17718vinfos[3].jointtype = 1;
17719vinfos[3].foffset =
j3;
17720vinfos[3].indices[0] =
_ij3[0];
17721vinfos[3].indices[1] =
_ij3[1];
17722vinfos[3].maxsolutions =
_nj3;
17723vinfos[4].jointtype = 1;
17724vinfos[4].foffset =
j4;
17725vinfos[4].indices[0] =
_ij4[0];
17726vinfos[4].indices[1] =
_ij4[1];
17727vinfos[4].maxsolutions =
_nj4;
17728vinfos[5].jointtype = 1;
17729vinfos[5].foffset =
j5;
17730vinfos[5].indices[0] =
_ij5[0];
17731vinfos[5].indices[1] =
_ij5[1];
17732vinfos[5].maxsolutions =
_nj5;
17733std::vector<int> vfree(0);
17746IkReal j3array[1], cj3array[1], sj3array[1];
17747bool j3valid[1]={
false};
17758j3array[0]=((-1.5707963267949)+(x1405.
value)+(((1.5707963267949)*(x1406.
value))));
17759sj3array[0]=
IKsin(j3array[0]);
17760cj3array[0]=
IKcos(j3array[0]);
17761if( j3array[0] >
IKPI )
17765else if( j3array[0] < -
IKPI )
17766{ j3array[0]+=
IK2PI;
17769for(
int ij3 = 0; ij3 < 1; ++ij3)
17776for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
17780 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
17783j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
17788IkReal x1409=((1.0)*gconst16);
17789IkReal x1410=(gconst17*x1407);
17790IkReal x1411=(gconst17*x1408);
17791IkReal x1412=((1.0)*x1408);
17792IkReal x1413=(x1408*x1409);
17794evalcond[1]=(((gconst16*x1407))+x1411+
new_r00);
17795evalcond[2]=((((-1.0)*
new_r10*x1412))+gconst16+((
new_r00*x1407)));
17796evalcond[3]=((((-1.0)*
new_r11*x1412))+((
new_r01*x1407))+gconst17);
17797evalcond[4]=((((-1.0)*x1413))+x1410+
new_r01);
17798evalcond[5]=((((-1.0)*x1413))+x1410+
new_r10);
17799evalcond[6]=(((
new_r01*x1408))+((
new_r11*x1407))+(((-1.0)*x1409)));
17800evalcond[7]=((((-1.0)*x1407*x1409))+
new_r11+(((-1.0)*x1411)));
17808std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
17809vinfos[0].jointtype = 1;
17810vinfos[0].foffset =
j0;
17811vinfos[0].indices[0] =
_ij0[0];
17812vinfos[0].indices[1] =
_ij0[1];
17813vinfos[0].maxsolutions =
_nj0;
17814vinfos[1].jointtype = 1;
17815vinfos[1].foffset =
j1;
17816vinfos[1].indices[0] =
_ij1[0];
17817vinfos[1].indices[1] =
_ij1[1];
17818vinfos[1].maxsolutions =
_nj1;
17819vinfos[2].jointtype = 1;
17820vinfos[2].foffset =
j2;
17821vinfos[2].indices[0] =
_ij2[0];
17822vinfos[2].indices[1] =
_ij2[1];
17823vinfos[2].maxsolutions =
_nj2;
17824vinfos[3].jointtype = 1;
17825vinfos[3].foffset =
j3;
17826vinfos[3].indices[0] =
_ij3[0];
17827vinfos[3].indices[1] =
_ij3[1];
17828vinfos[3].maxsolutions =
_nj3;
17829vinfos[4].jointtype = 1;
17830vinfos[4].foffset =
j4;
17831vinfos[4].indices[0] =
_ij4[0];
17832vinfos[4].indices[1] =
_ij4[1];
17833vinfos[4].maxsolutions =
_nj4;
17834vinfos[5].jointtype = 1;
17835vinfos[5].foffset =
j5;
17836vinfos[5].indices[0] =
_ij5[0];
17837vinfos[5].indices[1] =
_ij5[1];
17838vinfos[5].maxsolutions =
_nj5;
17839std::vector<int> vfree(0);
17851if( bgotonextstatement )
17853bool bgotonextstatement =
true;
17856evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-1.5707963267949)+
j5)))), 6.28318530717959)));
17857if(
IKabs(evalcond[0]) < 0.0000050000000000 )
17859bgotonextstatement=
false;
17861IkReal j3array[1], cj3array[1], sj3array[1];
17862bool j3valid[1]={
false};
17867sj3array[0]=
IKsin(j3array[0]);
17868cj3array[0]=
IKcos(j3array[0]);
17869if( j3array[0] >
IKPI )
17873else if( j3array[0] < -
IKPI )
17874{ j3array[0]+=
IK2PI;
17877for(
int ij3 = 0; ij3 < 1; ++ij3)
17884for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
17888 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
17891j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
17896IkReal x1416=((1.0)*x1415);
17898evalcond[1]=((((-1.0)*x1416))+
new_r01);
17899evalcond[2]=(
new_r11+(((-1.0)*x1414)));
17900evalcond[3]=((((-1.0)*x1416))+
new_r10);
17912std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
17913vinfos[0].jointtype = 1;
17914vinfos[0].foffset =
j0;
17915vinfos[0].indices[0] =
_ij0[0];
17916vinfos[0].indices[1] =
_ij0[1];
17917vinfos[0].maxsolutions =
_nj0;
17918vinfos[1].jointtype = 1;
17919vinfos[1].foffset =
j1;
17920vinfos[1].indices[0] =
_ij1[0];
17921vinfos[1].indices[1] =
_ij1[1];
17922vinfos[1].maxsolutions =
_nj1;
17923vinfos[2].jointtype = 1;
17924vinfos[2].foffset =
j2;
17925vinfos[2].indices[0] =
_ij2[0];
17926vinfos[2].indices[1] =
_ij2[1];
17927vinfos[2].maxsolutions =
_nj2;
17928vinfos[3].jointtype = 1;
17929vinfos[3].foffset =
j3;
17930vinfos[3].indices[0] =
_ij3[0];
17931vinfos[3].indices[1] =
_ij3[1];
17932vinfos[3].maxsolutions =
_nj3;
17933vinfos[4].jointtype = 1;
17934vinfos[4].foffset =
j4;
17935vinfos[4].indices[0] =
_ij4[0];
17936vinfos[4].indices[1] =
_ij4[1];
17937vinfos[4].maxsolutions =
_nj4;
17938vinfos[5].jointtype = 1;
17939vinfos[5].foffset =
j5;
17940vinfos[5].indices[0] =
_ij5[0];
17941vinfos[5].indices[1] =
_ij5[1];
17942vinfos[5].maxsolutions =
_nj5;
17943std::vector<int> vfree(0);
17951if( bgotonextstatement )
17953bool bgotonextstatement =
true;
17956evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((1.5707963267949)+
j5)))), 6.28318530717959)));
17957if(
IKabs(evalcond[0]) < 0.0000050000000000 )
17959bgotonextstatement=
false;
17961IkReal j3array[1], cj3array[1], sj3array[1];
17962bool j3valid[1]={
false};
17967sj3array[0]=
IKsin(j3array[0]);
17968cj3array[0]=
IKcos(j3array[0]);
17969if( j3array[0] >
IKPI )
17973else if( j3array[0] < -
IKPI )
17974{ j3array[0]+=
IK2PI;
17977for(
int ij3 = 0; ij3 < 1; ++ij3)
17984for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
17988 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
17991j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
17996IkReal x1419=((1.0)*x1417);
18000evalcond[3]=(
new_r00+(((-1.0)*x1418)));
18012std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
18013vinfos[0].jointtype = 1;
18014vinfos[0].foffset =
j0;
18015vinfos[0].indices[0] =
_ij0[0];
18016vinfos[0].indices[1] =
_ij0[1];
18017vinfos[0].maxsolutions =
_nj0;
18018vinfos[1].jointtype = 1;
18019vinfos[1].foffset =
j1;
18020vinfos[1].indices[0] =
_ij1[0];
18021vinfos[1].indices[1] =
_ij1[1];
18022vinfos[1].maxsolutions =
_nj1;
18023vinfos[2].jointtype = 1;
18024vinfos[2].foffset =
j2;
18025vinfos[2].indices[0] =
_ij2[0];
18026vinfos[2].indices[1] =
_ij2[1];
18027vinfos[2].maxsolutions =
_nj2;
18028vinfos[3].jointtype = 1;
18029vinfos[3].foffset =
j3;
18030vinfos[3].indices[0] =
_ij3[0];
18031vinfos[3].indices[1] =
_ij3[1];
18032vinfos[3].maxsolutions =
_nj3;
18033vinfos[4].jointtype = 1;
18034vinfos[4].foffset =
j4;
18035vinfos[4].indices[0] =
_ij4[0];
18036vinfos[4].indices[1] =
_ij4[1];
18037vinfos[4].maxsolutions =
_nj4;
18038vinfos[5].jointtype = 1;
18039vinfos[5].foffset =
j5;
18040vinfos[5].indices[0] =
_ij5[0];
18041vinfos[5].indices[1] =
_ij5[1];
18042vinfos[5].maxsolutions =
_nj5;
18043std::vector<int> vfree(0);
18051if( bgotonextstatement )
18053bool bgotonextstatement =
true;
18057if(
IKabs(evalcond[0]) < 0.0000050000000000 )
18059bgotonextstatement=
false;
18064j4=3.14159265358979;
18070if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
18076j4=3.14159265358979;
18082if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
18088j4=3.14159265358979;
18093if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 )
18100IkReal j3array[1], cj3array[1], sj3array[1];
18101bool j3valid[1]={
false};
18114sj3array[0]=
IKsin(j3array[0]);
18115cj3array[0]=
IKcos(j3array[0]);
18116if( j3array[0] >
IKPI )
18120else if( j3array[0] < -
IKPI )
18121{ j3array[0]+=
IK2PI;
18124for(
int ij3 = 0; ij3 < 1; ++ij3)
18131for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
18135 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
18138j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
18143IkReal x1424=((1.0)*
sj5);
18144IkReal x1425=(
cj5*x1422);
18145IkReal x1426=(x1423*x1424);
18149evalcond[3]=(((
new_r01*x1423))+(((-1.0)*x1424)));
18150evalcond[4]=(((
sj5*x1422))+((
cj5*x1423)));
18151evalcond[5]=(x1425+
new_r01+(((-1.0)*x1426)));
18152evalcond[6]=(x1425+
new_r10+(((-1.0)*x1426)));
18160std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
18161vinfos[0].jointtype = 1;
18162vinfos[0].foffset =
j0;
18163vinfos[0].indices[0] =
_ij0[0];
18164vinfos[0].indices[1] =
_ij0[1];
18165vinfos[0].maxsolutions =
_nj0;
18166vinfos[1].jointtype = 1;
18167vinfos[1].foffset =
j1;
18168vinfos[1].indices[0] =
_ij1[0];
18169vinfos[1].indices[1] =
_ij1[1];
18170vinfos[1].maxsolutions =
_nj1;
18171vinfos[2].jointtype = 1;
18172vinfos[2].foffset =
j2;
18173vinfos[2].indices[0] =
_ij2[0];
18174vinfos[2].indices[1] =
_ij2[1];
18175vinfos[2].maxsolutions =
_nj2;
18176vinfos[3].jointtype = 1;
18177vinfos[3].foffset =
j3;
18178vinfos[3].indices[0] =
_ij3[0];
18179vinfos[3].indices[1] =
_ij3[1];
18180vinfos[3].maxsolutions =
_nj3;
18181vinfos[4].jointtype = 1;
18182vinfos[4].foffset =
j4;
18183vinfos[4].indices[0] =
_ij4[0];
18184vinfos[4].indices[1] =
_ij4[1];
18185vinfos[4].maxsolutions =
_nj4;
18186vinfos[5].jointtype = 1;
18187vinfos[5].foffset =
j5;
18188vinfos[5].indices[0] =
_ij5[0];
18189vinfos[5].indices[1] =
_ij5[1];
18190vinfos[5].maxsolutions =
_nj5;
18191std::vector<int> vfree(0);
18204IkReal j3array[1], cj3array[1], sj3array[1];
18205bool j3valid[1]={
false};
18215j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1427.
value)))+(x1428.
value));
18216sj3array[0]=
IKsin(j3array[0]);
18217cj3array[0]=
IKcos(j3array[0]);
18218if( j3array[0] >
IKPI )
18222else if( j3array[0] < -
IKPI )
18223{ j3array[0]+=
IK2PI;
18226for(
int ij3 = 0; ij3 < 1; ++ij3)
18233for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
18237 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
18240j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
18245IkReal x1431=((1.0)*
sj5);
18246IkReal x1432=(
cj5*x1429);
18247IkReal x1433=(x1430*x1431);
18251evalcond[3]=(((
new_r01*x1430))+(((-1.0)*x1431)));
18252evalcond[4]=(((
cj5*x1430))+((
sj5*x1429)));
18253evalcond[5]=((((-1.0)*x1433))+x1432+
new_r01);
18254evalcond[6]=((((-1.0)*x1433))+x1432+
new_r10);
18262std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
18263vinfos[0].jointtype = 1;
18264vinfos[0].foffset =
j0;
18265vinfos[0].indices[0] =
_ij0[0];
18266vinfos[0].indices[1] =
_ij0[1];
18267vinfos[0].maxsolutions =
_nj0;
18268vinfos[1].jointtype = 1;
18269vinfos[1].foffset =
j1;
18270vinfos[1].indices[0] =
_ij1[0];
18271vinfos[1].indices[1] =
_ij1[1];
18272vinfos[1].maxsolutions =
_nj1;
18273vinfos[2].jointtype = 1;
18274vinfos[2].foffset =
j2;
18275vinfos[2].indices[0] =
_ij2[0];
18276vinfos[2].indices[1] =
_ij2[1];
18277vinfos[2].maxsolutions =
_nj2;
18278vinfos[3].jointtype = 1;
18279vinfos[3].foffset =
j3;
18280vinfos[3].indices[0] =
_ij3[0];
18281vinfos[3].indices[1] =
_ij3[1];
18282vinfos[3].maxsolutions =
_nj3;
18283vinfos[4].jointtype = 1;
18284vinfos[4].foffset =
j4;
18285vinfos[4].indices[0] =
_ij4[0];
18286vinfos[4].indices[1] =
_ij4[1];
18287vinfos[4].maxsolutions =
_nj4;
18288vinfos[5].jointtype = 1;
18289vinfos[5].foffset =
j5;
18290vinfos[5].indices[0] =
_ij5[0];
18291vinfos[5].indices[1] =
_ij5[1];
18292vinfos[5].maxsolutions =
_nj5;
18293std::vector<int> vfree(0);
18306IkReal j3array[1], cj3array[1], sj3array[1];
18307bool j3valid[1]={
false};
18317j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1434.
value)))+(x1435.
value));
18318sj3array[0]=
IKsin(j3array[0]);
18319cj3array[0]=
IKcos(j3array[0]);
18320if( j3array[0] >
IKPI )
18324else if( j3array[0] < -
IKPI )
18325{ j3array[0]+=
IK2PI;
18328for(
int ij3 = 0; ij3 < 1; ++ij3)
18335for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
18339 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
18342j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
18347IkReal x1438=((1.0)*
sj5);
18348IkReal x1439=(
cj5*x1436);
18349IkReal x1440=(x1437*x1438);
18353evalcond[3]=(((
new_r01*x1437))+(((-1.0)*x1438)));
18354evalcond[4]=(((
sj5*x1436))+((
cj5*x1437)));
18355evalcond[5]=(x1439+(((-1.0)*x1440))+
new_r01);
18356evalcond[6]=(x1439+(((-1.0)*x1440))+
new_r10);
18364std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
18365vinfos[0].jointtype = 1;
18366vinfos[0].foffset =
j0;
18367vinfos[0].indices[0] =
_ij0[0];
18368vinfos[0].indices[1] =
_ij0[1];
18369vinfos[0].maxsolutions =
_nj0;
18370vinfos[1].jointtype = 1;
18371vinfos[1].foffset =
j1;
18372vinfos[1].indices[0] =
_ij1[0];
18373vinfos[1].indices[1] =
_ij1[1];
18374vinfos[1].maxsolutions =
_nj1;
18375vinfos[2].jointtype = 1;
18376vinfos[2].foffset =
j2;
18377vinfos[2].indices[0] =
_ij2[0];
18378vinfos[2].indices[1] =
_ij2[1];
18379vinfos[2].maxsolutions =
_nj2;
18380vinfos[3].jointtype = 1;
18381vinfos[3].foffset =
j3;
18382vinfos[3].indices[0] =
_ij3[0];
18383vinfos[3].indices[1] =
_ij3[1];
18384vinfos[3].maxsolutions =
_nj3;
18385vinfos[4].jointtype = 1;
18386vinfos[4].foffset =
j4;
18387vinfos[4].indices[0] =
_ij4[0];
18388vinfos[4].indices[1] =
_ij4[1];
18389vinfos[4].maxsolutions =
_nj4;
18390vinfos[5].jointtype = 1;
18391vinfos[5].foffset =
j5;
18392vinfos[5].indices[0] =
_ij5[0];
18393vinfos[5].indices[1] =
_ij5[1];
18394vinfos[5].maxsolutions =
_nj5;
18395std::vector<int> vfree(0);
18407if( bgotonextstatement )
18409bool bgotonextstatement =
true;
18413if(
IKabs(evalcond[0]) < 0.0000050000000000 )
18415bgotonextstatement=
false;
18420j4=3.14159265358979;
18426if(
IKabs(j3eval[0]) < 0.0000010000000000 )
18433IkReal j3array[2], cj3array[2], sj3array[2];
18434bool j3valid[2]={
false};
18440IkReal x1441=x1442.
value;
18441j3array[0]=((-1.0)*x1441);
18442sj3array[0]=
IKsin(j3array[0]);
18443cj3array[0]=
IKcos(j3array[0]);
18444j3array[1]=((3.14159265358979)+(((-1.0)*x1441)));
18445sj3array[1]=
IKsin(j3array[1]);
18446cj3array[1]=
IKcos(j3array[1]);
18447if( j3array[0] >
IKPI )
18451else if( j3array[0] < -
IKPI )
18452{ j3array[0]+=
IK2PI;
18455if( j3array[1] >
IKPI )
18459else if( j3array[1] < -
IKPI )
18460{ j3array[1]+=
IK2PI;
18463for(
int ij3 = 0; ij3 < 2; ++ij3)
18470for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
18474 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
18477j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
18488std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
18489vinfos[0].jointtype = 1;
18490vinfos[0].foffset =
j0;
18491vinfos[0].indices[0] =
_ij0[0];
18492vinfos[0].indices[1] =
_ij0[1];
18493vinfos[0].maxsolutions =
_nj0;
18494vinfos[1].jointtype = 1;
18495vinfos[1].foffset =
j1;
18496vinfos[1].indices[0] =
_ij1[0];
18497vinfos[1].indices[1] =
_ij1[1];
18498vinfos[1].maxsolutions =
_nj1;
18499vinfos[2].jointtype = 1;
18500vinfos[2].foffset =
j2;
18501vinfos[2].indices[0] =
_ij2[0];
18502vinfos[2].indices[1] =
_ij2[1];
18503vinfos[2].maxsolutions =
_nj2;
18504vinfos[3].jointtype = 1;
18505vinfos[3].foffset =
j3;
18506vinfos[3].indices[0] =
_ij3[0];
18507vinfos[3].indices[1] =
_ij3[1];
18508vinfos[3].maxsolutions =
_nj3;
18509vinfos[4].jointtype = 1;
18510vinfos[4].foffset =
j4;
18511vinfos[4].indices[0] =
_ij4[0];
18512vinfos[4].indices[1] =
_ij4[1];
18513vinfos[4].maxsolutions =
_nj4;
18514vinfos[5].jointtype = 1;
18515vinfos[5].foffset =
j5;
18516vinfos[5].indices[0] =
_ij5[0];
18517vinfos[5].indices[1] =
_ij5[1];
18518vinfos[5].maxsolutions =
_nj5;
18519std::vector<int> vfree(0);
18531if( bgotonextstatement )
18533bool bgotonextstatement =
true;
18537if(
IKabs(evalcond[0]) < 0.0000050000000000 )
18539bgotonextstatement=
false;
18544j4=3.14159265358979;
18550if(
IKabs(j3eval[0]) < 0.0000010000000000 )
18557IkReal j3array[2], cj3array[2], sj3array[2];
18558bool j3valid[2]={
false};
18564IkReal x1443=x1444.
value;
18565j3array[0]=((-1.0)*x1443);
18566sj3array[0]=
IKsin(j3array[0]);
18567cj3array[0]=
IKcos(j3array[0]);
18568j3array[1]=((3.14159265358979)+(((-1.0)*x1443)));
18569sj3array[1]=
IKsin(j3array[1]);
18570cj3array[1]=
IKcos(j3array[1]);
18571if( j3array[0] >
IKPI )
18575else if( j3array[0] < -
IKPI )
18576{ j3array[0]+=
IK2PI;
18579if( j3array[1] >
IKPI )
18583else if( j3array[1] < -
IKPI )
18584{ j3array[1]+=
IK2PI;
18587for(
int ij3 = 0; ij3 < 2; ++ij3)
18594for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
18598 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
18601j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
18612std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
18613vinfos[0].jointtype = 1;
18614vinfos[0].foffset =
j0;
18615vinfos[0].indices[0] =
_ij0[0];
18616vinfos[0].indices[1] =
_ij0[1];
18617vinfos[0].maxsolutions =
_nj0;
18618vinfos[1].jointtype = 1;
18619vinfos[1].foffset =
j1;
18620vinfos[1].indices[0] =
_ij1[0];
18621vinfos[1].indices[1] =
_ij1[1];
18622vinfos[1].maxsolutions =
_nj1;
18623vinfos[2].jointtype = 1;
18624vinfos[2].foffset =
j2;
18625vinfos[2].indices[0] =
_ij2[0];
18626vinfos[2].indices[1] =
_ij2[1];
18627vinfos[2].maxsolutions =
_nj2;
18628vinfos[3].jointtype = 1;
18629vinfos[3].foffset =
j3;
18630vinfos[3].indices[0] =
_ij3[0];
18631vinfos[3].indices[1] =
_ij3[1];
18632vinfos[3].maxsolutions =
_nj3;
18633vinfos[4].jointtype = 1;
18634vinfos[4].foffset =
j4;
18635vinfos[4].indices[0] =
_ij4[0];
18636vinfos[4].indices[1] =
_ij4[1];
18637vinfos[4].maxsolutions =
_nj4;
18638vinfos[5].jointtype = 1;
18639vinfos[5].foffset =
j5;
18640vinfos[5].indices[0] =
_ij5[0];
18641vinfos[5].indices[1] =
_ij5[1];
18642vinfos[5].maxsolutions =
_nj5;
18643std::vector<int> vfree(0);
18655if( bgotonextstatement )
18657bool bgotonextstatement =
true;
18661if(
IKabs(evalcond[0]) < 0.0000050000000000 )
18663bgotonextstatement=
false;
18668j4=3.14159265358979;
18674if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
18680j4=3.14159265358979;
18685if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 )
18692IkReal j3array[1], cj3array[1], sj3array[1];
18693bool j3valid[1]={
false};
18706sj3array[0]=
IKsin(j3array[0]);
18707cj3array[0]=
IKcos(j3array[0]);
18708if( j3array[0] >
IKPI )
18712else if( j3array[0] < -
IKPI )
18713{ j3array[0]+=
IK2PI;
18716for(
int ij3 = 0; ij3 < 1; ++ij3)
18723for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
18727 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
18730j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
18735IkReal x1449=((1.0)*
sj5);
18736IkReal x1450=(
cj5*x1447);
18737IkReal x1451=((1.0)*x1447);
18741evalcond[3]=(((
new_r11*x1448))+(((-1.0)*x1449)));
18742evalcond[4]=((((-1.0)*x1447*x1449))+((
cj5*x1448)));
18744evalcond[6]=((((-1.0)*x1450))+
new_r11+(((-1.0)*x1448*x1449)));
18752std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
18753vinfos[0].jointtype = 1;
18754vinfos[0].foffset =
j0;
18755vinfos[0].indices[0] =
_ij0[0];
18756vinfos[0].indices[1] =
_ij0[1];
18757vinfos[0].maxsolutions =
_nj0;
18758vinfos[1].jointtype = 1;
18759vinfos[1].foffset =
j1;
18760vinfos[1].indices[0] =
_ij1[0];
18761vinfos[1].indices[1] =
_ij1[1];
18762vinfos[1].maxsolutions =
_nj1;
18763vinfos[2].jointtype = 1;
18764vinfos[2].foffset =
j2;
18765vinfos[2].indices[0] =
_ij2[0];
18766vinfos[2].indices[1] =
_ij2[1];
18767vinfos[2].maxsolutions =
_nj2;
18768vinfos[3].jointtype = 1;
18769vinfos[3].foffset =
j3;
18770vinfos[3].indices[0] =
_ij3[0];
18771vinfos[3].indices[1] =
_ij3[1];
18772vinfos[3].maxsolutions =
_nj3;
18773vinfos[4].jointtype = 1;
18774vinfos[4].foffset =
j4;
18775vinfos[4].indices[0] =
_ij4[0];
18776vinfos[4].indices[1] =
_ij4[1];
18777vinfos[4].maxsolutions =
_nj4;
18778vinfos[5].jointtype = 1;
18779vinfos[5].foffset =
j5;
18780vinfos[5].indices[0] =
_ij5[0];
18781vinfos[5].indices[1] =
_ij5[1];
18782vinfos[5].maxsolutions =
_nj5;
18783std::vector<int> vfree(0);
18796IkReal j3array[1], cj3array[1], sj3array[1];
18797bool j3valid[1]={
false};
18807j3array[0]=((-1.5707963267949)+(x1452.
value)+(((1.5707963267949)*(x1453.
value))));
18808sj3array[0]=
IKsin(j3array[0]);
18809cj3array[0]=
IKcos(j3array[0]);
18810if( j3array[0] >
IKPI )
18814else if( j3array[0] < -
IKPI )
18815{ j3array[0]+=
IK2PI;
18818for(
int ij3 = 0; ij3 < 1; ++ij3)
18825for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
18829 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
18832j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
18837IkReal x1456=((1.0)*
sj5);
18838IkReal x1457=(
cj5*x1454);
18839IkReal x1458=((1.0)*x1454);
18843evalcond[3]=((((-1.0)*x1456))+((
new_r11*x1455)));
18844evalcond[4]=(((
cj5*x1455))+(((-1.0)*x1454*x1456)));
18846evalcond[6]=((((-1.0)*x1457))+(((-1.0)*x1455*x1456))+
new_r11);
18854std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
18855vinfos[0].jointtype = 1;
18856vinfos[0].foffset =
j0;
18857vinfos[0].indices[0] =
_ij0[0];
18858vinfos[0].indices[1] =
_ij0[1];
18859vinfos[0].maxsolutions =
_nj0;
18860vinfos[1].jointtype = 1;
18861vinfos[1].foffset =
j1;
18862vinfos[1].indices[0] =
_ij1[0];
18863vinfos[1].indices[1] =
_ij1[1];
18864vinfos[1].maxsolutions =
_nj1;
18865vinfos[2].jointtype = 1;
18866vinfos[2].foffset =
j2;
18867vinfos[2].indices[0] =
_ij2[0];
18868vinfos[2].indices[1] =
_ij2[1];
18869vinfos[2].maxsolutions =
_nj2;
18870vinfos[3].jointtype = 1;
18871vinfos[3].foffset =
j3;
18872vinfos[3].indices[0] =
_ij3[0];
18873vinfos[3].indices[1] =
_ij3[1];
18874vinfos[3].maxsolutions =
_nj3;
18875vinfos[4].jointtype = 1;
18876vinfos[4].foffset =
j4;
18877vinfos[4].indices[0] =
_ij4[0];
18878vinfos[4].indices[1] =
_ij4[1];
18879vinfos[4].maxsolutions =
_nj4;
18880vinfos[5].jointtype = 1;
18881vinfos[5].foffset =
j5;
18882vinfos[5].indices[0] =
_ij5[0];
18883vinfos[5].indices[1] =
_ij5[1];
18884vinfos[5].maxsolutions =
_nj5;
18885std::vector<int> vfree(0);
18897if( bgotonextstatement )
18899bool bgotonextstatement =
true;
18904bgotonextstatement=
false;
18909if( bgotonextstatement )
18927IkReal j3array[1], cj3array[1], sj3array[1];
18928bool j3valid[1]={
false};
18939j3array[0]=((-1.5707963267949)+(x1460.
value)+(((1.5707963267949)*(x1461.
value))));
18940sj3array[0]=
IKsin(j3array[0]);
18941cj3array[0]=
IKcos(j3array[0]);
18942if( j3array[0] >
IKPI )
18946else if( j3array[0] < -
IKPI )
18947{ j3array[0]+=
IK2PI;
18950for(
int ij3 = 0; ij3 < 1; ++ij3)
18957for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
18961 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
18964j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
18969IkReal x1464=((1.0)*
sj5);
18970IkReal x1465=(
cj5*x1462);
18971IkReal x1466=((1.0)*x1463);
18972IkReal x1467=(x1463*x1464);
18977evalcond[4]=((((-1.0)*x1467))+x1465+
new_r01);
18978evalcond[5]=((((-1.0)*x1467))+x1465+
new_r10);
18979evalcond[6]=(((
new_r01*x1463))+(((-1.0)*x1464))+((
new_r11*x1462)));
18980evalcond[7]=((((-1.0)*
cj5*x1466))+(((-1.0)*x1462*x1464))+
new_r11);
18988std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
18989vinfos[0].jointtype = 1;
18990vinfos[0].foffset =
j0;
18991vinfos[0].indices[0] =
_ij0[0];
18992vinfos[0].indices[1] =
_ij0[1];
18993vinfos[0].maxsolutions =
_nj0;
18994vinfos[1].jointtype = 1;
18995vinfos[1].foffset =
j1;
18996vinfos[1].indices[0] =
_ij1[0];
18997vinfos[1].indices[1] =
_ij1[1];
18998vinfos[1].maxsolutions =
_nj1;
18999vinfos[2].jointtype = 1;
19000vinfos[2].foffset =
j2;
19001vinfos[2].indices[0] =
_ij2[0];
19002vinfos[2].indices[1] =
_ij2[1];
19003vinfos[2].maxsolutions =
_nj2;
19004vinfos[3].jointtype = 1;
19005vinfos[3].foffset =
j3;
19006vinfos[3].indices[0] =
_ij3[0];
19007vinfos[3].indices[1] =
_ij3[1];
19008vinfos[3].maxsolutions =
_nj3;
19009vinfos[4].jointtype = 1;
19010vinfos[4].foffset =
j4;
19011vinfos[4].indices[0] =
_ij4[0];
19012vinfos[4].indices[1] =
_ij4[1];
19013vinfos[4].maxsolutions =
_nj4;
19014vinfos[5].jointtype = 1;
19015vinfos[5].foffset =
j5;
19016vinfos[5].indices[0] =
_ij5[0];
19017vinfos[5].indices[1] =
_ij5[1];
19018vinfos[5].maxsolutions =
_nj5;
19019std::vector<int> vfree(0);
19032IkReal j3array[1], cj3array[1], sj3array[1];
19033bool j3valid[1]={
false};
19044j3array[0]=((-1.5707963267949)+(x1469.
value)+(((1.5707963267949)*(x1470.
value))));
19045sj3array[0]=
IKsin(j3array[0]);
19046cj3array[0]=
IKcos(j3array[0]);
19047if( j3array[0] >
IKPI )
19051else if( j3array[0] < -
IKPI )
19052{ j3array[0]+=
IK2PI;
19055for(
int ij3 = 0; ij3 < 1; ++ij3)
19062for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
19066 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
19069j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
19074IkReal x1473=((1.0)*
sj5);
19075IkReal x1474=(
cj5*x1471);
19076IkReal x1475=((1.0)*x1472);
19077IkReal x1476=(x1472*x1473);
19082evalcond[4]=(x1474+(((-1.0)*x1476))+
new_r01);
19083evalcond[5]=(x1474+(((-1.0)*x1476))+
new_r10);
19084evalcond[6]=(((
new_r11*x1471))+((
new_r01*x1472))+(((-1.0)*x1473)));
19085evalcond[7]=((((-1.0)*x1471*x1473))+(((-1.0)*
cj5*x1475))+
new_r11);
19093std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
19094vinfos[0].jointtype = 1;
19095vinfos[0].foffset =
j0;
19096vinfos[0].indices[0] =
_ij0[0];
19097vinfos[0].indices[1] =
_ij0[1];
19098vinfos[0].maxsolutions =
_nj0;
19099vinfos[1].jointtype = 1;
19100vinfos[1].foffset =
j1;
19101vinfos[1].indices[0] =
_ij1[0];
19102vinfos[1].indices[1] =
_ij1[1];
19103vinfos[1].maxsolutions =
_nj1;
19104vinfos[2].jointtype = 1;
19105vinfos[2].foffset =
j2;
19106vinfos[2].indices[0] =
_ij2[0];
19107vinfos[2].indices[1] =
_ij2[1];
19108vinfos[2].maxsolutions =
_nj2;
19109vinfos[3].jointtype = 1;
19110vinfos[3].foffset =
j3;
19111vinfos[3].indices[0] =
_ij3[0];
19112vinfos[3].indices[1] =
_ij3[1];
19113vinfos[3].maxsolutions =
_nj3;
19114vinfos[4].jointtype = 1;
19115vinfos[4].foffset =
j4;
19116vinfos[4].indices[0] =
_ij4[0];
19117vinfos[4].indices[1] =
_ij4[1];
19118vinfos[4].maxsolutions =
_nj4;
19119vinfos[5].jointtype = 1;
19120vinfos[5].foffset =
j5;
19121vinfos[5].indices[0] =
_ij5[0];
19122vinfos[5].indices[1] =
_ij5[1];
19123vinfos[5].maxsolutions =
_nj5;
19124std::vector<int> vfree(0);
19137IkReal j3array[1], cj3array[1], sj3array[1];
19138bool j3valid[1]={
false};
19149j3array[0]=((-1.5707963267949)+(x1478.
value)+(((1.5707963267949)*(x1479.
value))));
19150sj3array[0]=
IKsin(j3array[0]);
19151cj3array[0]=
IKcos(j3array[0]);
19152if( j3array[0] >
IKPI )
19156else if( j3array[0] < -
IKPI )
19157{ j3array[0]+=
IK2PI;
19160for(
int ij3 = 0; ij3 < 1; ++ij3)
19167for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
19171 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
19174j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
19179IkReal x1482=((1.0)*
sj5);
19180IkReal x1483=(
cj5*x1480);
19181IkReal x1484=((1.0)*x1481);
19182IkReal x1485=(x1481*x1482);
19187evalcond[4]=((((-1.0)*x1485))+x1483+
new_r01);
19188evalcond[5]=((((-1.0)*x1485))+x1483+
new_r10);
19189evalcond[6]=((((-1.0)*x1482))+((
new_r11*x1480))+((
new_r01*x1481)));
19190evalcond[7]=((((-1.0)*x1480*x1482))+
new_r11+(((-1.0)*
cj5*x1484)));
19198std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
19199vinfos[0].jointtype = 1;
19200vinfos[0].foffset =
j0;
19201vinfos[0].indices[0] =
_ij0[0];
19202vinfos[0].indices[1] =
_ij0[1];
19203vinfos[0].maxsolutions =
_nj0;
19204vinfos[1].jointtype = 1;
19205vinfos[1].foffset =
j1;
19206vinfos[1].indices[0] =
_ij1[0];
19207vinfos[1].indices[1] =
_ij1[1];
19208vinfos[1].maxsolutions =
_nj1;
19209vinfos[2].jointtype = 1;
19210vinfos[2].foffset =
j2;
19211vinfos[2].indices[0] =
_ij2[0];
19212vinfos[2].indices[1] =
_ij2[1];
19213vinfos[2].maxsolutions =
_nj2;
19214vinfos[3].jointtype = 1;
19215vinfos[3].foffset =
j3;
19216vinfos[3].indices[0] =
_ij3[0];
19217vinfos[3].indices[1] =
_ij3[1];
19218vinfos[3].maxsolutions =
_nj3;
19219vinfos[4].jointtype = 1;
19220vinfos[4].foffset =
j4;
19221vinfos[4].indices[0] =
_ij4[0];
19222vinfos[4].indices[1] =
_ij4[1];
19223vinfos[4].maxsolutions =
_nj4;
19224vinfos[5].jointtype = 1;
19225vinfos[5].foffset =
j5;
19226vinfos[5].indices[0] =
_ij5[0];
19227vinfos[5].indices[1] =
_ij5[1];
19228vinfos[5].maxsolutions =
_nj5;
19229std::vector<int> vfree(0);
19241if( bgotonextstatement )
19243bool bgotonextstatement =
true;
19247if(
IKabs(evalcond[0]) < 0.0000050000000000 )
19249bgotonextstatement=
false;
19257if(
IKabs(j3eval[0]) < 0.0000010000000000 )
19266if(
IKabs(j3eval[0]) < 0.0000010000000000 )
19275if(
IKabs(j3eval[0]) < 0.0000010000000000 )
19282IkReal j3array[2], cj3array[2], sj3array[2];
19283bool j3valid[2]={
false};
19285IkReal x1486=((-1.0)*
new_r22);
19290IkReal x1487=x1488.
value;
19291j3array[0]=((-1.0)*x1487);
19292sj3array[0]=
IKsin(j3array[0]);
19293cj3array[0]=
IKcos(j3array[0]);
19294j3array[1]=((3.14159265358979)+(((-1.0)*x1487)));
19295sj3array[1]=
IKsin(j3array[1]);
19296cj3array[1]=
IKcos(j3array[1]);
19297if( j3array[0] >
IKPI )
19301else if( j3array[0] < -
IKPI )
19302{ j3array[0]+=
IK2PI;
19305if( j3array[1] >
IKPI )
19309else if( j3array[1] < -
IKPI )
19310{ j3array[1]+=
IK2PI;
19313for(
int ij3 = 0; ij3 < 2; ++ij3)
19320for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
19324 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
19327j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
19334evalcond[0]=(((
new_r11*x1489))+x1492);
19337evalcond[3]=(((
new_r01*x1489))+(((-1.0)*x1490*x1491)));
19338evalcond[4]=((((-1.0)*
new_r22*x1492))+(((-1.0)*
new_r22*x1489*x1491)));
19346std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
19347vinfos[0].jointtype = 1;
19348vinfos[0].foffset =
j0;
19349vinfos[0].indices[0] =
_ij0[0];
19350vinfos[0].indices[1] =
_ij0[1];
19351vinfos[0].maxsolutions =
_nj0;
19352vinfos[1].jointtype = 1;
19353vinfos[1].foffset =
j1;
19354vinfos[1].indices[0] =
_ij1[0];
19355vinfos[1].indices[1] =
_ij1[1];
19356vinfos[1].maxsolutions =
_nj1;
19357vinfos[2].jointtype = 1;
19358vinfos[2].foffset =
j2;
19359vinfos[2].indices[0] =
_ij2[0];
19360vinfos[2].indices[1] =
_ij2[1];
19361vinfos[2].maxsolutions =
_nj2;
19362vinfos[3].jointtype = 1;
19363vinfos[3].foffset =
j3;
19364vinfos[3].indices[0] =
_ij3[0];
19365vinfos[3].indices[1] =
_ij3[1];
19366vinfos[3].maxsolutions =
_nj3;
19367vinfos[4].jointtype = 1;
19368vinfos[4].foffset =
j4;
19369vinfos[4].indices[0] =
_ij4[0];
19370vinfos[4].indices[1] =
_ij4[1];
19371vinfos[4].maxsolutions =
_nj4;
19372vinfos[5].jointtype = 1;
19373vinfos[5].foffset =
j5;
19374vinfos[5].indices[0] =
_ij5[0];
19375vinfos[5].indices[1] =
_ij5[1];
19376vinfos[5].maxsolutions =
_nj5;
19377std::vector<int> vfree(0);
19390IkReal j3array[2], cj3array[2], sj3array[2];
19391bool j3valid[2]={
false};
19397IkReal x1493=x1494.
value;
19398j3array[0]=((-1.0)*x1493);
19399sj3array[0]=
IKsin(j3array[0]);
19400cj3array[0]=
IKcos(j3array[0]);
19401j3array[1]=((3.14159265358979)+(((-1.0)*x1493)));
19402sj3array[1]=
IKsin(j3array[1]);
19403cj3array[1]=
IKcos(j3array[1]);
19404if( j3array[0] >
IKPI )
19408else if( j3array[0] < -
IKPI )
19409{ j3array[0]+=
IK2PI;
19412if( j3array[1] >
IKPI )
19416else if( j3array[1] < -
IKPI )
19417{ j3array[1]+=
IK2PI;
19420for(
int ij3 = 0; ij3 < 2; ++ij3)
19427for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
19431 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
19434j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
19439IkReal x1497=((1.0)*x1496);
19440IkReal x1498=((1.0)*
new_r22*x1495);
19453std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
19454vinfos[0].jointtype = 1;
19455vinfos[0].foffset =
j0;
19456vinfos[0].indices[0] =
_ij0[0];
19457vinfos[0].indices[1] =
_ij0[1];
19458vinfos[0].maxsolutions =
_nj0;
19459vinfos[1].jointtype = 1;
19460vinfos[1].foffset =
j1;
19461vinfos[1].indices[0] =
_ij1[0];
19462vinfos[1].indices[1] =
_ij1[1];
19463vinfos[1].maxsolutions =
_nj1;
19464vinfos[2].jointtype = 1;
19465vinfos[2].foffset =
j2;
19466vinfos[2].indices[0] =
_ij2[0];
19467vinfos[2].indices[1] =
_ij2[1];
19468vinfos[2].maxsolutions =
_nj2;
19469vinfos[3].jointtype = 1;
19470vinfos[3].foffset =
j3;
19471vinfos[3].indices[0] =
_ij3[0];
19472vinfos[3].indices[1] =
_ij3[1];
19473vinfos[3].maxsolutions =
_nj3;
19474vinfos[4].jointtype = 1;
19475vinfos[4].foffset =
j4;
19476vinfos[4].indices[0] =
_ij4[0];
19477vinfos[4].indices[1] =
_ij4[1];
19478vinfos[4].maxsolutions =
_nj4;
19479vinfos[5].jointtype = 1;
19480vinfos[5].foffset =
j5;
19481vinfos[5].indices[0] =
_ij5[0];
19482vinfos[5].indices[1] =
_ij5[1];
19483vinfos[5].maxsolutions =
_nj5;
19484std::vector<int> vfree(0);
19497IkReal j3array[2], cj3array[2], sj3array[2];
19498bool j3valid[2]={
false};
19504IkReal x1499=x1500.
value;
19505j3array[0]=((-1.0)*x1499);
19506sj3array[0]=
IKsin(j3array[0]);
19507cj3array[0]=
IKcos(j3array[0]);
19508j3array[1]=((3.14159265358979)+(((-1.0)*x1499)));
19509sj3array[1]=
IKsin(j3array[1]);
19510cj3array[1]=
IKcos(j3array[1]);
19511if( j3array[0] >
IKPI )
19515else if( j3array[0] < -
IKPI )
19516{ j3array[0]+=
IK2PI;
19519if( j3array[1] >
IKPI )
19523else if( j3array[1] < -
IKPI )
19524{ j3array[1]+=
IK2PI;
19527for(
int ij3 = 0; ij3 < 2; ++ij3)
19534for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
19538 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
19541j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
19548IkReal x1505=((1.0)*x1502);
19550evalcond[0]=(x1506+x1504);
19553evalcond[3]=((((-1.0)*x1503*x1506))+(((-1.0)*x1503*x1504)));
19554evalcond[4]=((((-1.0)*
new_r11*x1501*x1503))+(((-1.0)*
new_r01*x1502*x1503)));
19562std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
19563vinfos[0].jointtype = 1;
19564vinfos[0].foffset =
j0;
19565vinfos[0].indices[0] =
_ij0[0];
19566vinfos[0].indices[1] =
_ij0[1];
19567vinfos[0].maxsolutions =
_nj0;
19568vinfos[1].jointtype = 1;
19569vinfos[1].foffset =
j1;
19570vinfos[1].indices[0] =
_ij1[0];
19571vinfos[1].indices[1] =
_ij1[1];
19572vinfos[1].maxsolutions =
_nj1;
19573vinfos[2].jointtype = 1;
19574vinfos[2].foffset =
j2;
19575vinfos[2].indices[0] =
_ij2[0];
19576vinfos[2].indices[1] =
_ij2[1];
19577vinfos[2].maxsolutions =
_nj2;
19578vinfos[3].jointtype = 1;
19579vinfos[3].foffset =
j3;
19580vinfos[3].indices[0] =
_ij3[0];
19581vinfos[3].indices[1] =
_ij3[1];
19582vinfos[3].maxsolutions =
_nj3;
19583vinfos[4].jointtype = 1;
19584vinfos[4].foffset =
j4;
19585vinfos[4].indices[0] =
_ij4[0];
19586vinfos[4].indices[1] =
_ij4[1];
19587vinfos[4].maxsolutions =
_nj4;
19588vinfos[5].jointtype = 1;
19589vinfos[5].foffset =
j5;
19590vinfos[5].indices[0] =
_ij5[0];
19591vinfos[5].indices[1] =
_ij5[1];
19592vinfos[5].maxsolutions =
_nj5;
19593std::vector<int> vfree(0);
19605if( bgotonextstatement )
19607bool bgotonextstatement =
true;
19612bgotonextstatement=
false;
19617if( bgotonextstatement )
19628IkReal j3array[1], cj3array[1], sj3array[1];
19629bool j3valid[1]={
false};
19635IkReal x1507=x1508.
value;
19643sj3array[0]=
IKsin(j3array[0]);
19644cj3array[0]=
IKcos(j3array[0]);
19645if( j3array[0] >
IKPI )
19649else if( j3array[0] < -
IKPI )
19650{ j3array[0]+=
IK2PI;
19653for(
int ij3 = 0; ij3 < 1; ++ij3)
19660for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
19664 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
19667j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
19669IkReal evalcond[18];
19675IkReal x1515=((1.0)*
cj4);
19676IkReal x1516=((1.0)*
sj4);
19677IkReal x1517=(
sj4*x1511);
19678IkReal x1518=((1.0)*x1510);
19679IkReal x1519=(
sj4*x1510);
19680IkReal x1520=(x1511*x1515);
19687evalcond[6]=(((x1510*x1513))+((
cj5*x1511))+
new_r01);
19689evalcond[8]=(((
sj5*x1511))+(((-1.0)*x1512*x1518))+
new_r00);
19690evalcond[9]=((((-1.0)*
cj5*x1518))+
new_r11+((x1511*x1513)));
19691evalcond[10]=(((
new_r10*x1511))+(((-1.0)*x1512))+((
new_r00*x1510)));
19692evalcond[11]=((((-1.0)*x1511*x1512))+(((-1.0)*
sj5*x1518))+
new_r10);
19697evalcond[16]=(
cj5+(((-1.0)*
new_r00*x1510*x1515))+(((-1.0)*
sj4*x1514))+(((-1.0)*
new_r10*x1520)));
19706std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
19707vinfos[0].jointtype = 1;
19708vinfos[0].foffset =
j0;
19709vinfos[0].indices[0] =
_ij0[0];
19710vinfos[0].indices[1] =
_ij0[1];
19711vinfos[0].maxsolutions =
_nj0;
19712vinfos[1].jointtype = 1;
19713vinfos[1].foffset =
j1;
19714vinfos[1].indices[0] =
_ij1[0];
19715vinfos[1].indices[1] =
_ij1[1];
19716vinfos[1].maxsolutions =
_nj1;
19717vinfos[2].jointtype = 1;
19718vinfos[2].foffset =
j2;
19719vinfos[2].indices[0] =
_ij2[0];
19720vinfos[2].indices[1] =
_ij2[1];
19721vinfos[2].maxsolutions =
_nj2;
19722vinfos[3].jointtype = 1;
19723vinfos[3].foffset =
j3;
19724vinfos[3].indices[0] =
_ij3[0];
19725vinfos[3].indices[1] =
_ij3[1];
19726vinfos[3].maxsolutions =
_nj3;
19727vinfos[4].jointtype = 1;
19728vinfos[4].foffset =
j4;
19729vinfos[4].indices[0] =
_ij4[0];
19730vinfos[4].indices[1] =
_ij4[1];
19731vinfos[4].maxsolutions =
_nj4;
19732vinfos[5].jointtype = 1;
19733vinfos[5].foffset =
j5;
19734vinfos[5].indices[0] =
_ij5[0];
19735vinfos[5].indices[1] =
_ij5[1];
19736vinfos[5].maxsolutions =
_nj5;
19737std::vector<int> vfree(0);
19750IkReal j3array[1], cj3array[1], sj3array[1];
19751bool j3valid[1]={
false};
19761j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1521.
value)))+(x1522.
value));
19762sj3array[0]=
IKsin(j3array[0]);
19763cj3array[0]=
IKcos(j3array[0]);
19764if( j3array[0] >
IKPI )
19768else if( j3array[0] < -
IKPI )
19769{ j3array[0]+=
IK2PI;
19772for(
int ij3 = 0; ij3 < 1; ++ij3)
19779for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
19783 j3valid[iij3]=
false;
_ij3[1] = iij3;
break;
19786j3 = j3array[ij3];
cj3 = cj3array[ij3];
sj3 = sj3array[ij3];
19788IkReal evalcond[18];
19794IkReal x1528=((1.0)*
cj4);
19795IkReal x1529=((1.0)*
sj4);
19796IkReal x1530=(
sj4*x1524);
19797IkReal x1531=((1.0)*x1523);
19798IkReal x1532=(
sj4*x1523);
19799IkReal x1533=(x1524*x1528);
19806evalcond[6]=(((x1523*x1526))+((
cj5*x1524))+
new_r01);
19808evalcond[8]=(((
sj5*x1524))+(((-1.0)*x1525*x1531))+
new_r00);
19809evalcond[9]=(((x1524*x1526))+(((-1.0)*
cj5*x1531))+
new_r11);
19810evalcond[10]=(((
new_r00*x1523))+((
new_r10*x1524))+(((-1.0)*x1525)));
19811evalcond[11]=((((-1.0)*x1524*x1525))+
new_r10+(((-1.0)*
sj5*x1531)));
19816evalcond[16]=((((-1.0)*
new_r10*x1533))+(((-1.0)*
sj4*x1527))+
cj5+(((-1.0)*
new_r00*x1523*x1528)));
19825std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
19826vinfos[0].jointtype = 1;
19827vinfos[0].foffset =
j0;
19828vinfos[0].indices[0] =
_ij0[0];
19829vinfos[0].indices[1] =
_ij0[1];
19830vinfos[0].maxsolutions =
_nj0;
19831vinfos[1].jointtype = 1;
19832vinfos[1].foffset =
j1;
19833vinfos[1].indices[0] =
_ij1[0];
19834vinfos[1].indices[1] =
_ij1[1];
19835vinfos[1].maxsolutions =
_nj1;
19836vinfos[2].jointtype = 1;
19837vinfos[2].foffset =
j2;
19838vinfos[2].indices[0] =
_ij2[0];
19839vinfos[2].indices[1] =
_ij2[1];
19840vinfos[2].maxsolutions =
_nj2;
19841vinfos[3].jointtype = 1;
19842vinfos[3].foffset =
j3;
19843vinfos[3].indices[0] =
_ij3[0];
19844vinfos[3].indices[1] =
_ij3[1];
19845vinfos[3].maxsolutions =
_nj3;
19846vinfos[4].jointtype = 1;
19847vinfos[4].foffset =
j4;
19848vinfos[4].indices[0] =
_ij4[0];
19849vinfos[4].indices[1] =
_ij4[1];
19850vinfos[4].maxsolutions =
_nj4;
19851vinfos[5].jointtype = 1;
19852vinfos[5].foffset =
j5;
19853vinfos[5].indices[0] =
_ij5[0];
19854vinfos[5].indices[1] =
_ij5[1];
19855vinfos[5].maxsolutions =
_nj5;
19856std::vector<int> vfree(0);
19874}
static inline void polyroots3(IkReal rawcoeffs[3+1], IkReal rawroots[3],
int& numroots)