867for(
int rotationiter = 0; rotationiter < 1; ++rotationiter) {
871IkReal x73=((1.0)*sj0);
875IkReal x77=(((sj1*sj2))+((cj1*cj2)));
876IkReal x78=(x75+(((-1.0)*x74)));
877IkReal x79=(x74+(((-1.0)*x75)));
881new_r00=(((r00*x82))+((x72*x77))+((r20*x78)));
882new_r01=(((r21*x78))+((r01*x82))+((x70*x77)));
883new_r02=(((r22*x78))+((x76*x77))+((x71*x77)));
884new_r10=((((-1.0)*r00*x73))+((cj0*r10)));
885new_r11=((((-1.0)*r01*x73))+((cj0*r11)));
886new_r12=((((-1.0)*r02*x73))+((cj0*r12)));
887new_r20=(((r00*x81))+((x72*x79))+((r20*x77)));
888new_r21=(((r21*x77))+((r01*x81))+((x70*x79)));
889new_r22=(((r22*x77))+((x76*x79))+((x71*x79)));
891IkReal j4array[2], cj4array[2], sj4array[2];
892bool j4valid[2]={
false};
897 j4valid[0] = j4valid[1] =
true;
898 j4array[0] =
IKacos(cj4array[0]);
899 sj4array[0] =
IKsin(j4array[0]);
900 cj4array[1] = cj4array[0];
901 j4array[1] = -j4array[0];
902 sj4array[1] = -sj4array[0];
904else if( isnan(cj4array[0]) )
908 cj4array[0] = 1; sj4array[0] = 0; j4array[0] = 0;
910for(
int ij4 = 0; ij4 < 2; ++ij4)
916_ij4[0] = ij4; _ij4[1] = -1;
917for(
int iij4 = ij4+1; iij4 < 2; ++iij4)
921 j4valid[iij4]=
false; _ij4[1] = iij4;
break;
924j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4];
931if(
IKabs(j5eval[0]) < 0.0000010000000000 ||
IKabs(j5eval[1]) < 0.0000010000000000 ||
IKabs(j5eval[2]) < 0.0000010000000000 )
938if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
944if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 )
948bool bgotonextstatement =
true;
951evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(j4))), 6.28318530717959)));
956if(
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 )
958bgotonextstatement=
false;
964j3=
IKatan2(((-1.0)*new_r01), new_r00);
966std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
967vinfos[0].jointtype = 1;
968vinfos[0].foffset = j0;
969vinfos[0].indices[0] = _ij0[0];
970vinfos[0].indices[1] = _ij0[1];
971vinfos[0].maxsolutions = _nj0;
972vinfos[1].jointtype = 1;
973vinfos[1].foffset = j1;
974vinfos[1].indices[0] = _ij1[0];
975vinfos[1].indices[1] = _ij1[1];
976vinfos[1].maxsolutions = _nj1;
977vinfos[2].jointtype = 1;
978vinfos[2].foffset = j2;
979vinfos[2].indices[0] = _ij2[0];
980vinfos[2].indices[1] = _ij2[1];
981vinfos[2].maxsolutions = _nj2;
982vinfos[3].jointtype = 1;
983vinfos[3].foffset = j3;
984vinfos[3].fmul = j3mul;
985vinfos[3].freeind = 0;
986vinfos[3].maxsolutions = 0;
987vinfos[4].jointtype = 1;
988vinfos[4].foffset = j4;
989vinfos[4].indices[0] = _ij4[0];
990vinfos[4].indices[1] = _ij4[1];
991vinfos[4].maxsolutions = _nj4;
992vinfos[5].jointtype = 1;
993vinfos[5].foffset = j5;
994vinfos[5].fmul = j5mul;
995vinfos[5].freeind = 0;
996vinfos[5].maxsolutions = 0;
997std::vector<int> vfree(1);
1004if( bgotonextstatement )
1006bool bgotonextstatement =
true;
1009evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-3.14159265358979)+j4)))), 6.28318530717959)));
1014if(
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 )
1016bgotonextstatement=
false;
1022j3=
IKatan2(((-1.0)*new_r01), ((-1.0)*new_r00));
1024std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
1025vinfos[0].jointtype = 1;
1026vinfos[0].foffset = j0;
1027vinfos[0].indices[0] = _ij0[0];
1028vinfos[0].indices[1] = _ij0[1];
1029vinfos[0].maxsolutions = _nj0;
1030vinfos[1].jointtype = 1;
1031vinfos[1].foffset = j1;
1032vinfos[1].indices[0] = _ij1[0];
1033vinfos[1].indices[1] = _ij1[1];
1034vinfos[1].maxsolutions = _nj1;
1035vinfos[2].jointtype = 1;
1036vinfos[2].foffset = j2;
1037vinfos[2].indices[0] = _ij2[0];
1038vinfos[2].indices[1] = _ij2[1];
1039vinfos[2].maxsolutions = _nj2;
1040vinfos[3].jointtype = 1;
1041vinfos[3].foffset = j3;
1042vinfos[3].fmul = j3mul;
1043vinfos[3].freeind = 0;
1044vinfos[3].maxsolutions = 0;
1045vinfos[4].jointtype = 1;
1046vinfos[4].foffset = j4;
1047vinfos[4].indices[0] = _ij4[0];
1048vinfos[4].indices[1] = _ij4[1];
1049vinfos[4].maxsolutions = _nj4;
1050vinfos[5].jointtype = 1;
1051vinfos[5].foffset = j5;
1052vinfos[5].fmul = j5mul;
1053vinfos[5].freeind = 0;
1054vinfos[5].maxsolutions = 0;
1055std::vector<int> vfree(1);
1062if( bgotonextstatement )
1064bool bgotonextstatement =
true;
1067evalcond[0]=((
IKabs(new_r20))+(
IKabs(new_r21)));
1068if(
IKabs(evalcond[0]) < 0.0000050000000000 )
1070bgotonextstatement=
false;
1077IkReal x83=new_r22*new_r22;
1078IkReal x84=((16.0)*new_r10);
1079IkReal x85=((16.0)*new_r01);
1080IkReal x86=((16.0)*new_r22);
1081IkReal x87=((8.0)*new_r11);
1082IkReal x88=((8.0)*new_r00);
1083IkReal x89=(x83*x84);
1084IkReal x90=(x83*x85);
1085j3eval[0]=((
IKabs((x89+(((-1.0)*x84)))))+(
IKabs((((new_r22*x88))+(((-1.0)*x83*x87)))))+(
IKabs(((((16.0)*new_r00))+((new_r11*x86))+(((-32.0)*new_r00*x83)))))+(
IKabs((x85+(((-1.0)*x90)))))+(
IKabs((((new_r22*x87))+(((-1.0)*x88)))))+(
IKabs(((((16.0)*new_r11*x83))+((new_r00*x86))+(((-32.0)*new_r11)))))+(
IKabs((x90+(((-1.0)*x85)))))+(
IKabs((x84+(((-1.0)*x89))))));
1086if(
IKabs(j3eval[0]) < 0.0000000100000000 )
1092IkReal op[4+1], zeror[4];
1094IkReal j3evalpoly[1];
1095IkReal x91=new_r22*new_r22;
1096IkReal x92=((16.0)*new_r10);
1097IkReal x93=(new_r11*new_r22);
1098IkReal x94=(x91*x92);
1099IkReal x95=((((8.0)*x93))+(((-8.0)*new_r00)));
1101op[1]=(x92+(((-1.0)*x94)));
1102op[2]=((((16.0)*x93))+(((16.0)*new_r00))+(((-32.0)*new_r00*x91)));
1103op[3]=(x94+(((-1.0)*x92)));
1105polyroots4(op,zeror,numroots);
1106IkReal j3array[4], cj3array[4], sj3array[4], tempj3array[1];
1107int numsolutions = 0;
1108for(
int ij3 = 0; ij3 < numroots; ++ij3)
1110IkReal htj3 = zeror[ij3];
1111tempj3array[0]=((2.0)*(atan(htj3)));
1112for(
int kj3 = 0; kj3 < 1; ++kj3)
1114j3array[numsolutions] = tempj3array[kj3];
1115if( j3array[numsolutions] >
IKPI )
1117 j3array[numsolutions]-=
IK2PI;
1119else if( j3array[numsolutions] < -
IKPI )
1121 j3array[numsolutions]+=
IK2PI;
1123sj3array[numsolutions] =
IKsin(j3array[numsolutions]);
1124cj3array[numsolutions] =
IKcos(j3array[numsolutions]);
1128bool j3valid[4]={
true,
true,
true,
true};
1130for(
int ij3 = 0; ij3 < numsolutions; ++ij3)
1136 j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
1139IkReal x96=((16.0)*new_r01);
1140IkReal x97=new_r22*new_r22;
1141IkReal x98=(new_r00*new_r22);
1142IkReal x99=((8.0)*x98);
1143IkReal x100=(new_r11*x97);
1144IkReal x101=(x96*x97);
1145IkReal x102=((8.0)*x100);
1146j3evalpoly[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);
1147if(
IKabs(j3evalpoly[0]) > 0.0000001000000000 )
1151_ij3[0] = ij3; _ij3[1] = -1;
1152for(
int iij3 = ij3+1; iij3 < numsolutions; ++iij3)
1156 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
1166IkReal x104=(cj3*new_r22);
1167IkReal x105=((-1.0)+x103+(((-1.0)*x103*(new_r22*new_r22))));
1169j5eval[1]=((
IKabs((((new_r01*sj3))+(((-1.0)*new_r00*x104)))))+(
IKabs((((new_r00*sj3))+((new_r01*x104))))));
1171if(
IKabs(j5eval[0]) < 0.0000010000000000 ||
IKabs(j5eval[1]) < 0.0000010000000000 ||
IKabs(j5eval[2]) < 0.0000010000000000 )
1180if(
IKabs(j5eval[0]) < 0.0000010000000000 )
1189if(
IKabs(j5eval[0]) < 0.0000010000000000 )
1193bool bgotonextstatement =
true;
1196evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(j3))), 6.28318530717959)));
1197if(
IKabs(evalcond[0]) < 0.0000050000000000 )
1199bgotonextstatement=
false;
1201IkReal j5array[1], cj5array[1], sj5array[1];
1202bool j5valid[1]={
false};
1206j5array[0]=
IKatan2(new_r10, new_r11);
1207sj5array[0]=
IKsin(j5array[0]);
1208cj5array[0]=
IKcos(j5array[0]);
1209if( j5array[0] >
IKPI )
1213else if( j5array[0] < -
IKPI )
1217for(
int ij5 = 0; ij5 < 1; ++ij5)
1223_ij5[0] = ij5; _ij5[1] = -1;
1224for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
1228 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
1231j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
1234IkReal x106=
IKsin(j5);
1235IkReal x107=
IKcos(j5);
1237evalcond[1]=((-1.0)*x106);
1238evalcond[2]=(x106+(((-1.0)*new_r10)));
1239evalcond[3]=(x107+(((-1.0)*new_r11)));
1247std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
1248vinfos[0].jointtype = 1;
1249vinfos[0].foffset = j0;
1250vinfos[0].indices[0] = _ij0[0];
1251vinfos[0].indices[1] = _ij0[1];
1252vinfos[0].maxsolutions = _nj0;
1253vinfos[1].jointtype = 1;
1254vinfos[1].foffset = j1;
1255vinfos[1].indices[0] = _ij1[0];
1256vinfos[1].indices[1] = _ij1[1];
1257vinfos[1].maxsolutions = _nj1;
1258vinfos[2].jointtype = 1;
1259vinfos[2].foffset = j2;
1260vinfos[2].indices[0] = _ij2[0];
1261vinfos[2].indices[1] = _ij2[1];
1262vinfos[2].maxsolutions = _nj2;
1263vinfos[3].jointtype = 1;
1264vinfos[3].foffset = j3;
1265vinfos[3].indices[0] = _ij3[0];
1266vinfos[3].indices[1] = _ij3[1];
1267vinfos[3].maxsolutions = _nj3;
1268vinfos[4].jointtype = 1;
1269vinfos[4].foffset = j4;
1270vinfos[4].indices[0] = _ij4[0];
1271vinfos[4].indices[1] = _ij4[1];
1272vinfos[4].maxsolutions = _nj4;
1273vinfos[5].jointtype = 1;
1274vinfos[5].foffset = j5;
1275vinfos[5].indices[0] = _ij5[0];
1276vinfos[5].indices[1] = _ij5[1];
1277vinfos[5].maxsolutions = _nj5;
1278std::vector<int> vfree(0);
1286if( bgotonextstatement )
1288bool bgotonextstatement =
true;
1291evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-3.14159265358979)+j3)))), 6.28318530717959)));
1292if(
IKabs(evalcond[0]) < 0.0000050000000000 )
1294bgotonextstatement=
false;
1296IkReal j5array[1], cj5array[1], sj5array[1];
1297bool j5valid[1]={
false};
1301j5array[0]=
IKatan2(((-1.0)*new_r10), ((-1.0)*new_r11));
1302sj5array[0]=
IKsin(j5array[0]);
1303cj5array[0]=
IKcos(j5array[0]);
1304if( j5array[0] >
IKPI )
1308else if( j5array[0] < -
IKPI )
1312for(
int ij5 = 0; ij5 < 1; ++ij5)
1318_ij5[0] = ij5; _ij5[1] = -1;
1319for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
1323 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
1326j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
1329IkReal x108=
IKcos(j5);
1330IkReal x109=
IKsin(j5);
1332evalcond[1]=(x109+new_r10);
1333evalcond[2]=(x108+new_r11);
1334evalcond[3]=((-1.0)*x109);
1342std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
1343vinfos[0].jointtype = 1;
1344vinfos[0].foffset = j0;
1345vinfos[0].indices[0] = _ij0[0];
1346vinfos[0].indices[1] = _ij0[1];
1347vinfos[0].maxsolutions = _nj0;
1348vinfos[1].jointtype = 1;
1349vinfos[1].foffset = j1;
1350vinfos[1].indices[0] = _ij1[0];
1351vinfos[1].indices[1] = _ij1[1];
1352vinfos[1].maxsolutions = _nj1;
1353vinfos[2].jointtype = 1;
1354vinfos[2].foffset = j2;
1355vinfos[2].indices[0] = _ij2[0];
1356vinfos[2].indices[1] = _ij2[1];
1357vinfos[2].maxsolutions = _nj2;
1358vinfos[3].jointtype = 1;
1359vinfos[3].foffset = j3;
1360vinfos[3].indices[0] = _ij3[0];
1361vinfos[3].indices[1] = _ij3[1];
1362vinfos[3].maxsolutions = _nj3;
1363vinfos[4].jointtype = 1;
1364vinfos[4].foffset = j4;
1365vinfos[4].indices[0] = _ij4[0];
1366vinfos[4].indices[1] = _ij4[1];
1367vinfos[4].maxsolutions = _nj4;
1368vinfos[5].jointtype = 1;
1369vinfos[5].foffset = j5;
1370vinfos[5].indices[0] = _ij5[0];
1371vinfos[5].indices[1] = _ij5[1];
1372vinfos[5].maxsolutions = _nj5;
1373std::vector<int> vfree(0);
1381if( bgotonextstatement )
1383bool bgotonextstatement =
true;
1390if((x110.
value) < -0.00001)
1393evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-1.0)+(
IKsign(sj3)))))+(
IKabs((cj3+(((-1.0)*gconst18)))))), 6.28318530717959)));
1394if(
IKabs(evalcond[0]) < 0.0000050000000000 )
1396bgotonextstatement=
false;
1403if((((1.0)+(((-1.0)*(gconst18*gconst18))))) < -0.00001)
1405sj3=
IKsqrt(((1.0)+(((-1.0)*(gconst18*gconst18)))));
1414if((x111.
value) < -0.00001)
1417j5eval[0]=((
IKabs(new_r11))+(
IKabs(new_r10)));
1418if(
IKabs(j5eval[0]) < 0.0000010000000000 )
1421IkReal j5array[1], cj5array[1], sj5array[1];
1422bool j5valid[1]={
false};
1424if((((1.0)+(((-1.0)*(gconst18*gconst18))))) < -0.00001)
1432j5array[0]=
IKatan2((((gconst18*new_r10))+(((-1.0)*new_r00*(
IKsqrt(((1.0)+(((-1.0)*(gconst18*gconst18))))))))), (new_r11*(x112.
value)));
1433sj5array[0]=
IKsin(j5array[0]);
1434cj5array[0]=
IKcos(j5array[0]);
1435if( j5array[0] >
IKPI )
1439else if( j5array[0] < -
IKPI )
1443for(
int ij5 = 0; ij5 < 1; ++ij5)
1449_ij5[0] = ij5; _ij5[1] = -1;
1450for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
1454 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
1457j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
1460IkReal x113=
IKcos(j5);
1461IkReal x114=
IKsin(j5);
1462IkReal x115=((1.0)*gconst18);
1463if((((1.0)+(((-1.0)*gconst18*x115)))) < -0.00001)
1465IkReal x116=
IKsqrt(((1.0)+(((-1.0)*gconst18*x115))));
1467evalcond[1]=((-1.0)*x114);
1468evalcond[2]=((((-1.0)*x113*x115))+new_r11);
1469evalcond[3]=((((-1.0)*x114*x115))+new_r10);
1470evalcond[4]=(((x113*x116))+new_r01);
1471evalcond[5]=(((x114*x116))+new_r00);
1472evalcond[6]=((((-1.0)*new_r10*x115))+x114+((new_r00*x116)));
1473evalcond[7]=((((-1.0)*new_r11*x115))+x113+((new_r01*x116)));
1481std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
1482vinfos[0].jointtype = 1;
1483vinfos[0].foffset = j0;
1484vinfos[0].indices[0] = _ij0[0];
1485vinfos[0].indices[1] = _ij0[1];
1486vinfos[0].maxsolutions = _nj0;
1487vinfos[1].jointtype = 1;
1488vinfos[1].foffset = j1;
1489vinfos[1].indices[0] = _ij1[0];
1490vinfos[1].indices[1] = _ij1[1];
1491vinfos[1].maxsolutions = _nj1;
1492vinfos[2].jointtype = 1;
1493vinfos[2].foffset = j2;
1494vinfos[2].indices[0] = _ij2[0];
1495vinfos[2].indices[1] = _ij2[1];
1496vinfos[2].maxsolutions = _nj2;
1497vinfos[3].jointtype = 1;
1498vinfos[3].foffset = j3;
1499vinfos[3].indices[0] = _ij3[0];
1500vinfos[3].indices[1] = _ij3[1];
1501vinfos[3].maxsolutions = _nj3;
1502vinfos[4].jointtype = 1;
1503vinfos[4].foffset = j4;
1504vinfos[4].indices[0] = _ij4[0];
1505vinfos[4].indices[1] = _ij4[1];
1506vinfos[4].maxsolutions = _nj4;
1507vinfos[5].jointtype = 1;
1508vinfos[5].foffset = j5;
1509vinfos[5].indices[0] = _ij5[0];
1510vinfos[5].indices[1] = _ij5[1];
1511vinfos[5].maxsolutions = _nj5;
1512std::vector<int> vfree(0);
1521IkReal j5array[1], cj5array[1], sj5array[1];
1522bool j5valid[1]={
false};
1532j5array[0]=((-1.5707963267949)+(((1.5707963267949)*(x117.
value)))+(x118.
value));
1533sj5array[0]=
IKsin(j5array[0]);
1534cj5array[0]=
IKcos(j5array[0]);
1535if( j5array[0] >
IKPI )
1539else if( j5array[0] < -
IKPI )
1543for(
int ij5 = 0; ij5 < 1; ++ij5)
1549_ij5[0] = ij5; _ij5[1] = -1;
1550for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
1554 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
1557j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
1560IkReal x119=
IKcos(j5);
1561IkReal x120=
IKsin(j5);
1562IkReal x121=((1.0)*gconst18);
1563if((((1.0)+(((-1.0)*gconst18*x121)))) < -0.00001)
1565IkReal x122=
IKsqrt(((1.0)+(((-1.0)*gconst18*x121))));
1567evalcond[1]=((-1.0)*x120);
1568evalcond[2]=((((-1.0)*x119*x121))+new_r11);
1569evalcond[3]=((((-1.0)*x120*x121))+new_r10);
1570evalcond[4]=(new_r01+((x119*x122)));
1571evalcond[5]=(((x120*x122))+new_r00);
1572evalcond[6]=((((-1.0)*new_r10*x121))+((new_r00*x122))+x120);
1573evalcond[7]=(((new_r01*x122))+x119+(((-1.0)*new_r11*x121)));
1581std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
1582vinfos[0].jointtype = 1;
1583vinfos[0].foffset = j0;
1584vinfos[0].indices[0] = _ij0[0];
1585vinfos[0].indices[1] = _ij0[1];
1586vinfos[0].maxsolutions = _nj0;
1587vinfos[1].jointtype = 1;
1588vinfos[1].foffset = j1;
1589vinfos[1].indices[0] = _ij1[0];
1590vinfos[1].indices[1] = _ij1[1];
1591vinfos[1].maxsolutions = _nj1;
1592vinfos[2].jointtype = 1;
1593vinfos[2].foffset = j2;
1594vinfos[2].indices[0] = _ij2[0];
1595vinfos[2].indices[1] = _ij2[1];
1596vinfos[2].maxsolutions = _nj2;
1597vinfos[3].jointtype = 1;
1598vinfos[3].foffset = j3;
1599vinfos[3].indices[0] = _ij3[0];
1600vinfos[3].indices[1] = _ij3[1];
1601vinfos[3].maxsolutions = _nj3;
1602vinfos[4].jointtype = 1;
1603vinfos[4].foffset = j4;
1604vinfos[4].indices[0] = _ij4[0];
1605vinfos[4].indices[1] = _ij4[1];
1606vinfos[4].maxsolutions = _nj4;
1607vinfos[5].jointtype = 1;
1608vinfos[5].foffset = j5;
1609vinfos[5].indices[0] = _ij5[0];
1610vinfos[5].indices[1] = _ij5[1];
1611vinfos[5].maxsolutions = _nj5;
1612std::vector<int> vfree(0);
1624if( bgotonextstatement )
1626bool bgotonextstatement =
true;
1633if((x123.
value) < -0.00001)
1636evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((1.0)+(
IKsign(sj3)))))+(
IKabs((cj3+(((-1.0)*gconst18)))))), 6.28318530717959)));
1637if(
IKabs(evalcond[0]) < 0.0000050000000000 )
1639bgotonextstatement=
false;
1646if((((1.0)+(((-1.0)*(gconst18*gconst18))))) < -0.00001)
1648sj3=((-1.0)*(
IKsqrt(((1.0)+(((-1.0)*(gconst18*gconst18)))))));
1652j3=((-1.0)*(
IKacos(gconst18)));
1657if((x124.
value) < -0.00001)
1660j5eval[0]=((
IKabs(new_r11))+(
IKabs(new_r10)));
1661if(
IKabs(j5eval[0]) < 0.0000010000000000 )
1664IkReal j5array[1], cj5array[1], sj5array[1];
1665bool j5valid[1]={
false};
1667if((((1.0)+(((-1.0)*(gconst18*gconst18))))) < -0.00001)
1675j5array[0]=
IKatan2((((gconst18*new_r10))+((new_r00*(
IKsqrt(((1.0)+(((-1.0)*(gconst18*gconst18))))))))), (new_r11*(x125.
value)));
1676sj5array[0]=
IKsin(j5array[0]);
1677cj5array[0]=
IKcos(j5array[0]);
1678if( j5array[0] >
IKPI )
1682else if( j5array[0] < -
IKPI )
1686for(
int ij5 = 0; ij5 < 1; ++ij5)
1692_ij5[0] = ij5; _ij5[1] = -1;
1693for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
1697 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
1700j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
1703IkReal x126=
IKcos(j5);
1704IkReal x127=
IKsin(j5);
1705IkReal x128=((1.0)*gconst18);
1706if((((1.0)+(((-1.0)*gconst18*x128)))) < -0.00001)
1708IkReal x129=
IKsqrt(((1.0)+(((-1.0)*gconst18*x128))));
1709IkReal x130=((1.0)*x129);
1711evalcond[1]=((-1.0)*x127);
1712evalcond[2]=((((-1.0)*x126*x128))+new_r11);
1713evalcond[3]=(new_r10+(((-1.0)*x127*x128)));
1714evalcond[4]=((((-1.0)*x126*x130))+new_r01);
1715evalcond[5]=(new_r00+(((-1.0)*x127*x130)));
1716evalcond[6]=((((-1.0)*new_r10*x128))+(((-1.0)*new_r00*x130))+x127);
1717evalcond[7]=((((-1.0)*new_r01*x130))+x126+(((-1.0)*new_r11*x128)));
1725std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
1726vinfos[0].jointtype = 1;
1727vinfos[0].foffset = j0;
1728vinfos[0].indices[0] = _ij0[0];
1729vinfos[0].indices[1] = _ij0[1];
1730vinfos[0].maxsolutions = _nj0;
1731vinfos[1].jointtype = 1;
1732vinfos[1].foffset = j1;
1733vinfos[1].indices[0] = _ij1[0];
1734vinfos[1].indices[1] = _ij1[1];
1735vinfos[1].maxsolutions = _nj1;
1736vinfos[2].jointtype = 1;
1737vinfos[2].foffset = j2;
1738vinfos[2].indices[0] = _ij2[0];
1739vinfos[2].indices[1] = _ij2[1];
1740vinfos[2].maxsolutions = _nj2;
1741vinfos[3].jointtype = 1;
1742vinfos[3].foffset = j3;
1743vinfos[3].indices[0] = _ij3[0];
1744vinfos[3].indices[1] = _ij3[1];
1745vinfos[3].maxsolutions = _nj3;
1746vinfos[4].jointtype = 1;
1747vinfos[4].foffset = j4;
1748vinfos[4].indices[0] = _ij4[0];
1749vinfos[4].indices[1] = _ij4[1];
1750vinfos[4].maxsolutions = _nj4;
1751vinfos[5].jointtype = 1;
1752vinfos[5].foffset = j5;
1753vinfos[5].indices[0] = _ij5[0];
1754vinfos[5].indices[1] = _ij5[1];
1755vinfos[5].maxsolutions = _nj5;
1756std::vector<int> vfree(0);
1765IkReal j5array[1], cj5array[1], sj5array[1];
1766bool j5valid[1]={
false};
1776j5array[0]=((-1.5707963267949)+(((1.5707963267949)*(x131.
value)))+(x132.
value));
1777sj5array[0]=
IKsin(j5array[0]);
1778cj5array[0]=
IKcos(j5array[0]);
1779if( j5array[0] >
IKPI )
1783else if( j5array[0] < -
IKPI )
1787for(
int ij5 = 0; ij5 < 1; ++ij5)
1793_ij5[0] = ij5; _ij5[1] = -1;
1794for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
1798 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
1801j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
1804IkReal x133=
IKcos(j5);
1805IkReal x134=
IKsin(j5);
1806IkReal x135=((1.0)*gconst18);
1807if((((1.0)+(((-1.0)*gconst18*x135)))) < -0.00001)
1809IkReal x136=
IKsqrt(((1.0)+(((-1.0)*gconst18*x135))));
1810IkReal x137=((1.0)*x136);
1812evalcond[1]=((-1.0)*x134);
1813evalcond[2]=((((-1.0)*x133*x135))+new_r11);
1814evalcond[3]=((((-1.0)*x134*x135))+new_r10);
1815evalcond[4]=((((-1.0)*x133*x137))+new_r01);
1816evalcond[5]=((((-1.0)*x134*x137))+new_r00);
1817evalcond[6]=((((-1.0)*new_r10*x135))+(((-1.0)*new_r00*x137))+x134);
1818evalcond[7]=((((-1.0)*new_r11*x135))+(((-1.0)*new_r01*x137))+x133);
1826std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
1827vinfos[0].jointtype = 1;
1828vinfos[0].foffset = j0;
1829vinfos[0].indices[0] = _ij0[0];
1830vinfos[0].indices[1] = _ij0[1];
1831vinfos[0].maxsolutions = _nj0;
1832vinfos[1].jointtype = 1;
1833vinfos[1].foffset = j1;
1834vinfos[1].indices[0] = _ij1[0];
1835vinfos[1].indices[1] = _ij1[1];
1836vinfos[1].maxsolutions = _nj1;
1837vinfos[2].jointtype = 1;
1838vinfos[2].foffset = j2;
1839vinfos[2].indices[0] = _ij2[0];
1840vinfos[2].indices[1] = _ij2[1];
1841vinfos[2].maxsolutions = _nj2;
1842vinfos[3].jointtype = 1;
1843vinfos[3].foffset = j3;
1844vinfos[3].indices[0] = _ij3[0];
1845vinfos[3].indices[1] = _ij3[1];
1846vinfos[3].maxsolutions = _nj3;
1847vinfos[4].jointtype = 1;
1848vinfos[4].foffset = j4;
1849vinfos[4].indices[0] = _ij4[0];
1850vinfos[4].indices[1] = _ij4[1];
1851vinfos[4].maxsolutions = _nj4;
1852vinfos[5].jointtype = 1;
1853vinfos[5].foffset = j5;
1854vinfos[5].indices[0] = _ij5[0];
1855vinfos[5].indices[1] = _ij5[1];
1856vinfos[5].maxsolutions = _nj5;
1857std::vector<int> vfree(0);
1869if( bgotonextstatement )
1871bool bgotonextstatement =
true;
1878if((x138.
value) < -0.00001)
1881evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-1.0)+(
IKsign(sj3)))))+(
IKabs((cj3+(((-1.0)*gconst19)))))), 6.28318530717959)));
1882if(
IKabs(evalcond[0]) < 0.0000050000000000 )
1884bgotonextstatement=
false;
1891if((((1.0)+(((-1.0)*(gconst19*gconst19))))) < -0.00001)
1893sj3=
IKsqrt(((1.0)+(((-1.0)*(gconst19*gconst19)))));
1902if((x139.
value) < -0.00001)
1905j5eval[0]=((
IKabs(new_r11))+(
IKabs(new_r10)));
1906if(
IKabs(j5eval[0]) < 0.0000010000000000 )
1909IkReal j5array[1], cj5array[1], sj5array[1];
1910bool j5valid[1]={
false};
1912if((((1.0)+(((-1.0)*(gconst19*gconst19))))) < -0.00001)
1920j5array[0]=
IKatan2((((gconst19*new_r10))+(((-1.0)*new_r00*(
IKsqrt(((1.0)+(((-1.0)*(gconst19*gconst19))))))))), (new_r11*(x140.
value)));
1921sj5array[0]=
IKsin(j5array[0]);
1922cj5array[0]=
IKcos(j5array[0]);
1923if( j5array[0] >
IKPI )
1927else if( j5array[0] < -
IKPI )
1931for(
int ij5 = 0; ij5 < 1; ++ij5)
1937_ij5[0] = ij5; _ij5[1] = -1;
1938for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
1942 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
1945j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
1948IkReal x141=
IKcos(j5);
1949IkReal x142=
IKsin(j5);
1950IkReal x143=((1.0)*gconst19);
1951if((((1.0)+(((-1.0)*gconst19*x143)))) < -0.00001)
1953IkReal x144=
IKsqrt(((1.0)+(((-1.0)*gconst19*x143))));
1955evalcond[1]=((-1.0)*x142);
1956evalcond[2]=((((-1.0)*x141*x143))+new_r11);
1957evalcond[3]=((((-1.0)*x142*x143))+new_r10);
1958evalcond[4]=(((x141*x144))+new_r01);
1959evalcond[5]=(((x142*x144))+new_r00);
1960evalcond[6]=(((new_r00*x144))+x142+(((-1.0)*new_r10*x143)));
1961evalcond[7]=(((new_r01*x144))+(((-1.0)*new_r11*x143))+x141);
1969std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
1970vinfos[0].jointtype = 1;
1971vinfos[0].foffset = j0;
1972vinfos[0].indices[0] = _ij0[0];
1973vinfos[0].indices[1] = _ij0[1];
1974vinfos[0].maxsolutions = _nj0;
1975vinfos[1].jointtype = 1;
1976vinfos[1].foffset = j1;
1977vinfos[1].indices[0] = _ij1[0];
1978vinfos[1].indices[1] = _ij1[1];
1979vinfos[1].maxsolutions = _nj1;
1980vinfos[2].jointtype = 1;
1981vinfos[2].foffset = j2;
1982vinfos[2].indices[0] = _ij2[0];
1983vinfos[2].indices[1] = _ij2[1];
1984vinfos[2].maxsolutions = _nj2;
1985vinfos[3].jointtype = 1;
1986vinfos[3].foffset = j3;
1987vinfos[3].indices[0] = _ij3[0];
1988vinfos[3].indices[1] = _ij3[1];
1989vinfos[3].maxsolutions = _nj3;
1990vinfos[4].jointtype = 1;
1991vinfos[4].foffset = j4;
1992vinfos[4].indices[0] = _ij4[0];
1993vinfos[4].indices[1] = _ij4[1];
1994vinfos[4].maxsolutions = _nj4;
1995vinfos[5].jointtype = 1;
1996vinfos[5].foffset = j5;
1997vinfos[5].indices[0] = _ij5[0];
1998vinfos[5].indices[1] = _ij5[1];
1999vinfos[5].maxsolutions = _nj5;
2000std::vector<int> vfree(0);
2009IkReal j5array[1], cj5array[1], sj5array[1];
2010bool j5valid[1]={
false};
2020j5array[0]=((-1.5707963267949)+(((1.5707963267949)*(x145.
value)))+(x146.
value));
2021sj5array[0]=
IKsin(j5array[0]);
2022cj5array[0]=
IKcos(j5array[0]);
2023if( j5array[0] >
IKPI )
2027else if( j5array[0] < -
IKPI )
2031for(
int ij5 = 0; ij5 < 1; ++ij5)
2037_ij5[0] = ij5; _ij5[1] = -1;
2038for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
2042 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
2045j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
2048IkReal x147=
IKcos(j5);
2049IkReal x148=
IKsin(j5);
2050IkReal x149=((1.0)*gconst19);
2051if((((1.0)+(((-1.0)*gconst19*x149)))) < -0.00001)
2053IkReal x150=
IKsqrt(((1.0)+(((-1.0)*gconst19*x149))));
2055evalcond[1]=((-1.0)*x148);
2056evalcond[2]=((((-1.0)*x147*x149))+new_r11);
2057evalcond[3]=((((-1.0)*x148*x149))+new_r10);
2058evalcond[4]=(((x147*x150))+new_r01);
2059evalcond[5]=(((x148*x150))+new_r00);
2060evalcond[6]=(((new_r00*x150))+x148+(((-1.0)*new_r10*x149)));
2061evalcond[7]=(((new_r01*x150))+(((-1.0)*new_r11*x149))+x147);
2069std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
2070vinfos[0].jointtype = 1;
2071vinfos[0].foffset = j0;
2072vinfos[0].indices[0] = _ij0[0];
2073vinfos[0].indices[1] = _ij0[1];
2074vinfos[0].maxsolutions = _nj0;
2075vinfos[1].jointtype = 1;
2076vinfos[1].foffset = j1;
2077vinfos[1].indices[0] = _ij1[0];
2078vinfos[1].indices[1] = _ij1[1];
2079vinfos[1].maxsolutions = _nj1;
2080vinfos[2].jointtype = 1;
2081vinfos[2].foffset = j2;
2082vinfos[2].indices[0] = _ij2[0];
2083vinfos[2].indices[1] = _ij2[1];
2084vinfos[2].maxsolutions = _nj2;
2085vinfos[3].jointtype = 1;
2086vinfos[3].foffset = j3;
2087vinfos[3].indices[0] = _ij3[0];
2088vinfos[3].indices[1] = _ij3[1];
2089vinfos[3].maxsolutions = _nj3;
2090vinfos[4].jointtype = 1;
2091vinfos[4].foffset = j4;
2092vinfos[4].indices[0] = _ij4[0];
2093vinfos[4].indices[1] = _ij4[1];
2094vinfos[4].maxsolutions = _nj4;
2095vinfos[5].jointtype = 1;
2096vinfos[5].foffset = j5;
2097vinfos[5].indices[0] = _ij5[0];
2098vinfos[5].indices[1] = _ij5[1];
2099vinfos[5].maxsolutions = _nj5;
2100std::vector<int> vfree(0);
2112if( bgotonextstatement )
2114bool bgotonextstatement =
true;
2121if((x151.
value) < -0.00001)
2124evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((1.0)+(
IKsign(sj3)))))+(
IKabs((cj3+(((-1.0)*gconst19)))))), 6.28318530717959)));
2125if(
IKabs(evalcond[0]) < 0.0000050000000000 )
2127bgotonextstatement=
false;
2134if((((1.0)+(((-1.0)*(gconst19*gconst19))))) < -0.00001)
2136sj3=((-1.0)*(
IKsqrt(((1.0)+(((-1.0)*(gconst19*gconst19)))))));
2140j3=((-1.0)*(
IKacos(gconst19)));
2145if((x152.
value) < -0.00001)
2148j5eval[0]=((
IKabs(new_r11))+(
IKabs(new_r10)));
2149if(
IKabs(j5eval[0]) < 0.0000010000000000 )
2152IkReal j5array[1], cj5array[1], sj5array[1];
2153bool j5valid[1]={
false};
2155if((((1.0)+(((-1.0)*(gconst19*gconst19))))) < -0.00001)
2163j5array[0]=
IKatan2((((new_r00*(
IKsqrt(((1.0)+(((-1.0)*(gconst19*gconst19))))))))+((gconst19*new_r10))), (new_r11*(x153.
value)));
2164sj5array[0]=
IKsin(j5array[0]);
2165cj5array[0]=
IKcos(j5array[0]);
2166if( j5array[0] >
IKPI )
2170else if( j5array[0] < -
IKPI )
2174for(
int ij5 = 0; ij5 < 1; ++ij5)
2180_ij5[0] = ij5; _ij5[1] = -1;
2181for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
2185 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
2188j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
2191IkReal x154=
IKcos(j5);
2192IkReal x155=
IKsin(j5);
2193IkReal x156=((1.0)*gconst19);
2194if((((1.0)+(((-1.0)*gconst19*x156)))) < -0.00001)
2196IkReal x157=
IKsqrt(((1.0)+(((-1.0)*gconst19*x156))));
2197IkReal x158=((1.0)*x157);
2199evalcond[1]=((-1.0)*x155);
2200evalcond[2]=((((-1.0)*x154*x156))+new_r11);
2201evalcond[3]=((((-1.0)*x155*x156))+new_r10);
2202evalcond[4]=((((-1.0)*x154*x158))+new_r01);
2203evalcond[5]=((((-1.0)*x155*x158))+new_r00);
2204evalcond[6]=(x155+(((-1.0)*new_r10*x156))+(((-1.0)*new_r00*x158)));
2205evalcond[7]=(x154+(((-1.0)*new_r11*x156))+(((-1.0)*new_r01*x158)));
2213std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
2214vinfos[0].jointtype = 1;
2215vinfos[0].foffset = j0;
2216vinfos[0].indices[0] = _ij0[0];
2217vinfos[0].indices[1] = _ij0[1];
2218vinfos[0].maxsolutions = _nj0;
2219vinfos[1].jointtype = 1;
2220vinfos[1].foffset = j1;
2221vinfos[1].indices[0] = _ij1[0];
2222vinfos[1].indices[1] = _ij1[1];
2223vinfos[1].maxsolutions = _nj1;
2224vinfos[2].jointtype = 1;
2225vinfos[2].foffset = j2;
2226vinfos[2].indices[0] = _ij2[0];
2227vinfos[2].indices[1] = _ij2[1];
2228vinfos[2].maxsolutions = _nj2;
2229vinfos[3].jointtype = 1;
2230vinfos[3].foffset = j3;
2231vinfos[3].indices[0] = _ij3[0];
2232vinfos[3].indices[1] = _ij3[1];
2233vinfos[3].maxsolutions = _nj3;
2234vinfos[4].jointtype = 1;
2235vinfos[4].foffset = j4;
2236vinfos[4].indices[0] = _ij4[0];
2237vinfos[4].indices[1] = _ij4[1];
2238vinfos[4].maxsolutions = _nj4;
2239vinfos[5].jointtype = 1;
2240vinfos[5].foffset = j5;
2241vinfos[5].indices[0] = _ij5[0];
2242vinfos[5].indices[1] = _ij5[1];
2243vinfos[5].maxsolutions = _nj5;
2244std::vector<int> vfree(0);
2253IkReal j5array[1], cj5array[1], sj5array[1];
2254bool j5valid[1]={
false};
2264j5array[0]=((-1.5707963267949)+(((1.5707963267949)*(x159.
value)))+(x160.
value));
2265sj5array[0]=
IKsin(j5array[0]);
2266cj5array[0]=
IKcos(j5array[0]);
2267if( j5array[0] >
IKPI )
2271else if( j5array[0] < -
IKPI )
2275for(
int ij5 = 0; ij5 < 1; ++ij5)
2281_ij5[0] = ij5; _ij5[1] = -1;
2282for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
2286 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
2289j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
2292IkReal x161=
IKcos(j5);
2293IkReal x162=
IKsin(j5);
2294IkReal x163=((1.0)*gconst19);
2295if((((1.0)+(((-1.0)*gconst19*x163)))) < -0.00001)
2297IkReal x164=
IKsqrt(((1.0)+(((-1.0)*gconst19*x163))));
2298IkReal x165=((1.0)*x164);
2300evalcond[1]=((-1.0)*x162);
2301evalcond[2]=((((-1.0)*x161*x163))+new_r11);
2302evalcond[3]=((((-1.0)*x162*x163))+new_r10);
2303evalcond[4]=((((-1.0)*x161*x165))+new_r01);
2304evalcond[5]=((((-1.0)*x162*x165))+new_r00);
2305evalcond[6]=((((-1.0)*new_r00*x165))+(((-1.0)*new_r10*x163))+x162);
2306evalcond[7]=((((-1.0)*new_r11*x163))+x161+(((-1.0)*new_r01*x165)));
2314std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
2315vinfos[0].jointtype = 1;
2316vinfos[0].foffset = j0;
2317vinfos[0].indices[0] = _ij0[0];
2318vinfos[0].indices[1] = _ij0[1];
2319vinfos[0].maxsolutions = _nj0;
2320vinfos[1].jointtype = 1;
2321vinfos[1].foffset = j1;
2322vinfos[1].indices[0] = _ij1[0];
2323vinfos[1].indices[1] = _ij1[1];
2324vinfos[1].maxsolutions = _nj1;
2325vinfos[2].jointtype = 1;
2326vinfos[2].foffset = j2;
2327vinfos[2].indices[0] = _ij2[0];
2328vinfos[2].indices[1] = _ij2[1];
2329vinfos[2].maxsolutions = _nj2;
2330vinfos[3].jointtype = 1;
2331vinfos[3].foffset = j3;
2332vinfos[3].indices[0] = _ij3[0];
2333vinfos[3].indices[1] = _ij3[1];
2334vinfos[3].maxsolutions = _nj3;
2335vinfos[4].jointtype = 1;
2336vinfos[4].foffset = j4;
2337vinfos[4].indices[0] = _ij4[0];
2338vinfos[4].indices[1] = _ij4[1];
2339vinfos[4].maxsolutions = _nj4;
2340vinfos[5].jointtype = 1;
2341vinfos[5].foffset = j5;
2342vinfos[5].indices[0] = _ij5[0];
2343vinfos[5].indices[1] = _ij5[1];
2344vinfos[5].maxsolutions = _nj5;
2345std::vector<int> vfree(0);
2357if( bgotonextstatement )
2359bool bgotonextstatement =
true;
2364bgotonextstatement=
false;
2369if( bgotonextstatement )
2383IkReal j5array[1], cj5array[1], sj5array[1];
2384bool j5valid[1]={
false};
2386IkReal x166=(new_r00*sj3);
2393j5array[0]=
IKatan2(((((-1.0)*x166))+((cj3*new_r10))), ((x167.
value)*((((cj3*new_r22*x166))+(((-1.0)*new_r01))+(((-1.0)*new_r10*new_r22*(cj3*cj3)))))));
2394sj5array[0]=
IKsin(j5array[0]);
2395cj5array[0]=
IKcos(j5array[0]);
2396if( j5array[0] >
IKPI )
2400else if( j5array[0] < -
IKPI )
2404for(
int ij5 = 0; ij5 < 1; ++ij5)
2410_ij5[0] = ij5; _ij5[1] = -1;
2411for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
2415 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
2418j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
2421IkReal x168=
IKsin(j5);
2422IkReal x169=
IKcos(j5);
2423IkReal x170=((1.0)*new_r11);
2424IkReal x171=(new_r22*sj3);
2425IkReal x172=((1.0)*new_r10);
2426IkReal x173=((1.0)*cj3*new_r22);
2427IkReal x174=(sj3*x168);
2428IkReal x175=(new_r22*x168);
2429IkReal x176=((1.0)*x169);
2430IkReal x177=((1.0)*x168);
2431evalcond[0]=(((new_r00*sj3))+x168+(((-1.0)*cj3*x172)));
2432evalcond[1]=(((new_r01*sj3))+x169+(((-1.0)*cj3*x170)));
2433evalcond[2]=(((new_r11*sj3))+x175+((cj3*new_r01)));
2434evalcond[3]=(((sj3*x169))+((cj3*x175))+new_r01);
2435evalcond[4]=(((new_r10*sj3))+(((-1.0)*new_r22*x176))+((cj3*new_r00)));
2436evalcond[5]=(x174+new_r00+(((-1.0)*x169*x173)));
2437evalcond[6]=(((x168*x171))+(((-1.0)*cj3*x176))+new_r11);
2438evalcond[7]=(x169+(((-1.0)*x171*x172))+(((-1.0)*new_r00*x173)));
2439evalcond[8]=((((-1.0)*cj3*x177))+(((-1.0)*x171*x176))+new_r10);
2440evalcond[9]=((((-1.0)*x177))+(((-1.0)*x170*x171))+(((-1.0)*new_r01*x173)));
2448std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
2449vinfos[0].jointtype = 1;
2450vinfos[0].foffset = j0;
2451vinfos[0].indices[0] = _ij0[0];
2452vinfos[0].indices[1] = _ij0[1];
2453vinfos[0].maxsolutions = _nj0;
2454vinfos[1].jointtype = 1;
2455vinfos[1].foffset = j1;
2456vinfos[1].indices[0] = _ij1[0];
2457vinfos[1].indices[1] = _ij1[1];
2458vinfos[1].maxsolutions = _nj1;
2459vinfos[2].jointtype = 1;
2460vinfos[2].foffset = j2;
2461vinfos[2].indices[0] = _ij2[0];
2462vinfos[2].indices[1] = _ij2[1];
2463vinfos[2].maxsolutions = _nj2;
2464vinfos[3].jointtype = 1;
2465vinfos[3].foffset = j3;
2466vinfos[3].indices[0] = _ij3[0];
2467vinfos[3].indices[1] = _ij3[1];
2468vinfos[3].maxsolutions = _nj3;
2469vinfos[4].jointtype = 1;
2470vinfos[4].foffset = j4;
2471vinfos[4].indices[0] = _ij4[0];
2472vinfos[4].indices[1] = _ij4[1];
2473vinfos[4].maxsolutions = _nj4;
2474vinfos[5].jointtype = 1;
2475vinfos[5].foffset = j5;
2476vinfos[5].indices[0] = _ij5[0];
2477vinfos[5].indices[1] = _ij5[1];
2478vinfos[5].maxsolutions = _nj5;
2479std::vector<int> vfree(0);
2492IkReal j5array[1], cj5array[1], sj5array[1];
2493bool j5valid[1]={
false};
2495IkReal x178=((1.0)*new_r01);
2502j5array[0]=
IKatan2(((x179.
value)*(((((-1.0)*cj3*x178))+(((-1.0)*new_r11*sj3))))), (((cj3*new_r11))+(((-1.0)*sj3*x178))));
2503sj5array[0]=
IKsin(j5array[0]);
2504cj5array[0]=
IKcos(j5array[0]);
2505if( j5array[0] >
IKPI )
2509else if( j5array[0] < -
IKPI )
2513for(
int ij5 = 0; ij5 < 1; ++ij5)
2519_ij5[0] = ij5; _ij5[1] = -1;
2520for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
2524 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
2527j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
2530IkReal x180=
IKsin(j5);
2531IkReal x181=
IKcos(j5);
2532IkReal x182=((1.0)*new_r11);
2533IkReal x183=(new_r22*sj3);
2534IkReal x184=((1.0)*new_r10);
2535IkReal x185=((1.0)*cj3*new_r22);
2536IkReal x186=(sj3*x180);
2537IkReal x187=(new_r22*x180);
2538IkReal x188=((1.0)*x181);
2539IkReal x189=((1.0)*x180);
2540evalcond[0]=(((new_r00*sj3))+x180+(((-1.0)*cj3*x184)));
2541evalcond[1]=(((new_r01*sj3))+x181+(((-1.0)*cj3*x182)));
2542evalcond[2]=(((new_r11*sj3))+x187+((cj3*new_r01)));
2543evalcond[3]=(((sj3*x181))+((cj3*x187))+new_r01);
2544evalcond[4]=(((new_r10*sj3))+(((-1.0)*new_r22*x188))+((cj3*new_r00)));
2545evalcond[5]=(x186+new_r00+(((-1.0)*x181*x185)));
2546evalcond[6]=(((x180*x183))+new_r11+(((-1.0)*cj3*x188)));
2547evalcond[7]=(x181+(((-1.0)*new_r00*x185))+(((-1.0)*x183*x184)));
2548evalcond[8]=(new_r10+(((-1.0)*x183*x188))+(((-1.0)*cj3*x189)));
2549evalcond[9]=((((-1.0)*x189))+(((-1.0)*new_r01*x185))+(((-1.0)*x182*x183)));
2557std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
2558vinfos[0].jointtype = 1;
2559vinfos[0].foffset = j0;
2560vinfos[0].indices[0] = _ij0[0];
2561vinfos[0].indices[1] = _ij0[1];
2562vinfos[0].maxsolutions = _nj0;
2563vinfos[1].jointtype = 1;
2564vinfos[1].foffset = j1;
2565vinfos[1].indices[0] = _ij1[0];
2566vinfos[1].indices[1] = _ij1[1];
2567vinfos[1].maxsolutions = _nj1;
2568vinfos[2].jointtype = 1;
2569vinfos[2].foffset = j2;
2570vinfos[2].indices[0] = _ij2[0];
2571vinfos[2].indices[1] = _ij2[1];
2572vinfos[2].maxsolutions = _nj2;
2573vinfos[3].jointtype = 1;
2574vinfos[3].foffset = j3;
2575vinfos[3].indices[0] = _ij3[0];
2576vinfos[3].indices[1] = _ij3[1];
2577vinfos[3].maxsolutions = _nj3;
2578vinfos[4].jointtype = 1;
2579vinfos[4].foffset = j4;
2580vinfos[4].indices[0] = _ij4[0];
2581vinfos[4].indices[1] = _ij4[1];
2582vinfos[4].maxsolutions = _nj4;
2583vinfos[5].jointtype = 1;
2584vinfos[5].foffset = j5;
2585vinfos[5].indices[0] = _ij5[0];
2586vinfos[5].indices[1] = _ij5[1];
2587vinfos[5].maxsolutions = _nj5;
2588std::vector<int> vfree(0);
2601IkReal j5array[1], cj5array[1], sj5array[1];
2602bool j5valid[1]={
false};
2605IkReal x191=(cj3*new_r22);
2614j5array[0]=((-1.5707963267949)+(((1.5707963267949)*(x192.
value)))+(x193.
value));
2615sj5array[0]=
IKsin(j5array[0]);
2616cj5array[0]=
IKcos(j5array[0]);
2617if( j5array[0] >
IKPI )
2621else if( j5array[0] < -
IKPI )
2625for(
int ij5 = 0; ij5 < 1; ++ij5)
2631_ij5[0] = ij5; _ij5[1] = -1;
2632for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
2636 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
2639j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
2642IkReal x194=
IKsin(j5);
2643IkReal x195=
IKcos(j5);
2644IkReal x196=((1.0)*new_r11);
2645IkReal x197=(new_r22*sj3);
2646IkReal x198=((1.0)*new_r10);
2647IkReal x199=((1.0)*cj3*new_r22);
2648IkReal x200=(sj3*x194);
2649IkReal x201=(new_r22*x194);
2650IkReal x202=((1.0)*x195);
2651IkReal x203=((1.0)*x194);
2652evalcond[0]=(((new_r00*sj3))+x194+(((-1.0)*cj3*x198)));
2653evalcond[1]=(((new_r01*sj3))+x195+(((-1.0)*cj3*x196)));
2654evalcond[2]=(((new_r11*sj3))+x201+((cj3*new_r01)));
2655evalcond[3]=(((sj3*x195))+((cj3*x201))+new_r01);
2656evalcond[4]=((((-1.0)*new_r22*x202))+((new_r10*sj3))+((cj3*new_r00)));
2657evalcond[5]=((((-1.0)*x195*x199))+x200+new_r00);
2658evalcond[6]=(((x194*x197))+new_r11+(((-1.0)*cj3*x202)));
2659evalcond[7]=((((-1.0)*x197*x198))+x195+(((-1.0)*new_r00*x199)));
2660evalcond[8]=((((-1.0)*x197*x202))+new_r10+(((-1.0)*cj3*x203)));
2661evalcond[9]=((((-1.0)*x196*x197))+(((-1.0)*x203))+(((-1.0)*new_r01*x199)));
2669std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
2670vinfos[0].jointtype = 1;
2671vinfos[0].foffset = j0;
2672vinfos[0].indices[0] = _ij0[0];
2673vinfos[0].indices[1] = _ij0[1];
2674vinfos[0].maxsolutions = _nj0;
2675vinfos[1].jointtype = 1;
2676vinfos[1].foffset = j1;
2677vinfos[1].indices[0] = _ij1[0];
2678vinfos[1].indices[1] = _ij1[1];
2679vinfos[1].maxsolutions = _nj1;
2680vinfos[2].jointtype = 1;
2681vinfos[2].foffset = j2;
2682vinfos[2].indices[0] = _ij2[0];
2683vinfos[2].indices[1] = _ij2[1];
2684vinfos[2].maxsolutions = _nj2;
2685vinfos[3].jointtype = 1;
2686vinfos[3].foffset = j3;
2687vinfos[3].indices[0] = _ij3[0];
2688vinfos[3].indices[1] = _ij3[1];
2689vinfos[3].maxsolutions = _nj3;
2690vinfos[4].jointtype = 1;
2691vinfos[4].foffset = j4;
2692vinfos[4].indices[0] = _ij4[0];
2693vinfos[4].indices[1] = _ij4[1];
2694vinfos[4].maxsolutions = _nj4;
2695vinfos[5].jointtype = 1;
2696vinfos[5].foffset = j5;
2697vinfos[5].indices[0] = _ij5[0];
2698vinfos[5].indices[1] = _ij5[1];
2699vinfos[5].maxsolutions = _nj5;
2700std::vector<int> vfree(0);
2717if( bgotonextstatement )
2719bool bgotonextstatement =
true;
2724bgotonextstatement=
false;
2729if( bgotonextstatement )
2740IkReal j3array[1], cj3array[1], sj3array[1];
2741bool j3valid[1]={
false};
2747IkReal x204=x205.
value;
2754j3array[0]=
IKatan2((x204*(x206.
value)*(((-1.0)+(new_r02*new_r02)+(cj4*cj4)))), ((-1.0)*new_r02*x204));
2755sj3array[0]=
IKsin(j3array[0]);
2756cj3array[0]=
IKcos(j3array[0]);
2757if( j3array[0] >
IKPI )
2761else if( j3array[0] < -
IKPI )
2765for(
int ij3 = 0; ij3 < 1; ++ij3)
2771_ij3[0] = ij3; _ij3[1] = -1;
2772for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
2776 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
2779j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
2782IkReal x207=
IKcos(j3);
2783IkReal x208=
IKsin(j3);
2784IkReal x209=((1.0)*cj4);
2785IkReal x210=(sj4*x208);
2786IkReal x211=(new_r12*x208);
2787IkReal x212=(sj4*x207);
2788IkReal x213=(new_r02*x207);
2789evalcond[0]=(x212+new_r02);
2790evalcond[1]=(x210+new_r12);
2791evalcond[2]=((((-1.0)*new_r02*x208))+((new_r12*x207)));
2792evalcond[3]=(sj4+x211+x213);
2793evalcond[4]=((((-1.0)*new_r20*x209))+((new_r00*x212))+((new_r10*x210)));
2794evalcond[5]=((((-1.0)*new_r21*x209))+((new_r01*x212))+((new_r11*x210)));
2795evalcond[6]=((1.0)+(((-1.0)*new_r22*x209))+((new_r02*x212))+((new_r12*x210)));
2796evalcond[7]=((((-1.0)*new_r22*sj4))+(((-1.0)*x209*x213))+(((-1.0)*x209*x211)));
2807j5eval[2]=((
IKabs(new_r20))+(
IKabs(new_r21)));
2808if(
IKabs(j5eval[0]) < 0.0000010000000000 ||
IKabs(j5eval[1]) < 0.0000010000000000 ||
IKabs(j5eval[2]) < 0.0000010000000000 )
2814if(
IKabs(j5eval[0]) < 0.0000010000000000 ||
IKabs(j5eval[1]) < 0.0000010000000000 )
2820if(
IKabs(j5eval[0]) < 0.0000010000000000 ||
IKabs(j5eval[1]) < 0.0000010000000000 )
2824bool bgotonextstatement =
true;
2827evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(j4))), 6.28318530717959)));
2832if(
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 )
2834bgotonextstatement=
false;
2836IkReal j5array[1], cj5array[1], sj5array[1];
2837bool j5valid[1]={
false};
2839IkReal x214=((1.0)*new_r01);
2842j5array[0]=
IKatan2(((((-1.0)*cj3*x214))+(((-1.0)*new_r00*sj3))), ((((-1.0)*sj3*x214))+((cj3*new_r00))));
2843sj5array[0]=
IKsin(j5array[0]);
2844cj5array[0]=
IKcos(j5array[0]);
2845if( j5array[0] >
IKPI )
2849else if( j5array[0] < -
IKPI )
2853for(
int ij5 = 0; ij5 < 1; ++ij5)
2859_ij5[0] = ij5; _ij5[1] = -1;
2860for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
2864 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
2867j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
2870IkReal x215=
IKsin(j5);
2871IkReal x216=
IKcos(j5);
2872IkReal x217=((1.0)*cj3);
2873IkReal x218=(sj3*x215);
2874IkReal x219=((1.0)*x216);
2875IkReal x220=(x216*x217);
2876evalcond[0]=(((new_r11*sj3))+x215+((cj3*new_r01)));
2877evalcond[1]=(((new_r00*sj3))+(((-1.0)*new_r10*x217))+x215);
2878evalcond[2]=((((-1.0)*new_r11*x217))+((new_r01*sj3))+x216);
2879evalcond[3]=(((sj3*x216))+((cj3*x215))+new_r01);
2880evalcond[4]=(((new_r10*sj3))+((cj3*new_r00))+(((-1.0)*x219)));
2881evalcond[5]=(x218+new_r00+(((-1.0)*x220)));
2882evalcond[6]=(x218+new_r11+(((-1.0)*x220)));
2883evalcond[7]=((((-1.0)*sj3*x219))+new_r10+(((-1.0)*x215*x217)));
2891std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
2892vinfos[0].jointtype = 1;
2893vinfos[0].foffset = j0;
2894vinfos[0].indices[0] = _ij0[0];
2895vinfos[0].indices[1] = _ij0[1];
2896vinfos[0].maxsolutions = _nj0;
2897vinfos[1].jointtype = 1;
2898vinfos[1].foffset = j1;
2899vinfos[1].indices[0] = _ij1[0];
2900vinfos[1].indices[1] = _ij1[1];
2901vinfos[1].maxsolutions = _nj1;
2902vinfos[2].jointtype = 1;
2903vinfos[2].foffset = j2;
2904vinfos[2].indices[0] = _ij2[0];
2905vinfos[2].indices[1] = _ij2[1];
2906vinfos[2].maxsolutions = _nj2;
2907vinfos[3].jointtype = 1;
2908vinfos[3].foffset = j3;
2909vinfos[3].indices[0] = _ij3[0];
2910vinfos[3].indices[1] = _ij3[1];
2911vinfos[3].maxsolutions = _nj3;
2912vinfos[4].jointtype = 1;
2913vinfos[4].foffset = j4;
2914vinfos[4].indices[0] = _ij4[0];
2915vinfos[4].indices[1] = _ij4[1];
2916vinfos[4].maxsolutions = _nj4;
2917vinfos[5].jointtype = 1;
2918vinfos[5].foffset = j5;
2919vinfos[5].indices[0] = _ij5[0];
2920vinfos[5].indices[1] = _ij5[1];
2921vinfos[5].maxsolutions = _nj5;
2922std::vector<int> vfree(0);
2930if( bgotonextstatement )
2932bool bgotonextstatement =
true;
2935evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-3.14159265358979)+j4)))), 6.28318530717959)));
2940if(
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 )
2942bgotonextstatement=
false;
2944IkReal j5array[1], cj5array[1], sj5array[1];
2945bool j5valid[1]={
false};
2947IkReal x221=((1.0)*sj3);
2950j5array[0]=
IKatan2((((cj3*new_r01))+(((-1.0)*new_r00*x221))), ((((-1.0)*new_r01*x221))+(((-1.0)*cj3*new_r00))));
2951sj5array[0]=
IKsin(j5array[0]);
2952cj5array[0]=
IKcos(j5array[0]);
2953if( j5array[0] >
IKPI )
2957else if( j5array[0] < -
IKPI )
2961for(
int ij5 = 0; ij5 < 1; ++ij5)
2967_ij5[0] = ij5; _ij5[1] = -1;
2968for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
2972 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
2975j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
2978IkReal x222=
IKcos(j5);
2979IkReal x223=
IKsin(j5);
2980IkReal x224=((1.0)*cj3);
2981IkReal x225=(sj3*x222);
2982IkReal x226=((1.0)*x223);
2983IkReal x227=(x223*x224);
2984evalcond[0]=(((new_r10*sj3))+x222+((cj3*new_r00)));
2985evalcond[1]=((((-1.0)*new_r10*x224))+((new_r00*sj3))+x223);
2986evalcond[2]=((((-1.0)*new_r11*x224))+((new_r01*sj3))+x222);
2987evalcond[3]=(((new_r11*sj3))+((cj3*new_r01))+(((-1.0)*x226)));
2988evalcond[4]=(((cj3*x222))+((sj3*x223))+new_r00);
2989evalcond[5]=(x225+new_r01+(((-1.0)*x227)));
2990evalcond[6]=(x225+new_r10+(((-1.0)*x227)));
2991evalcond[7]=((((-1.0)*x222*x224))+(((-1.0)*sj3*x226))+new_r11);
2999std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
3000vinfos[0].jointtype = 1;
3001vinfos[0].foffset = j0;
3002vinfos[0].indices[0] = _ij0[0];
3003vinfos[0].indices[1] = _ij0[1];
3004vinfos[0].maxsolutions = _nj0;
3005vinfos[1].jointtype = 1;
3006vinfos[1].foffset = j1;
3007vinfos[1].indices[0] = _ij1[0];
3008vinfos[1].indices[1] = _ij1[1];
3009vinfos[1].maxsolutions = _nj1;
3010vinfos[2].jointtype = 1;
3011vinfos[2].foffset = j2;
3012vinfos[2].indices[0] = _ij2[0];
3013vinfos[2].indices[1] = _ij2[1];
3014vinfos[2].maxsolutions = _nj2;
3015vinfos[3].jointtype = 1;
3016vinfos[3].foffset = j3;
3017vinfos[3].indices[0] = _ij3[0];
3018vinfos[3].indices[1] = _ij3[1];
3019vinfos[3].maxsolutions = _nj3;
3020vinfos[4].jointtype = 1;
3021vinfos[4].foffset = j4;
3022vinfos[4].indices[0] = _ij4[0];
3023vinfos[4].indices[1] = _ij4[1];
3024vinfos[4].maxsolutions = _nj4;
3025vinfos[5].jointtype = 1;
3026vinfos[5].foffset = j5;
3027vinfos[5].indices[0] = _ij5[0];
3028vinfos[5].indices[1] = _ij5[1];
3029vinfos[5].maxsolutions = _nj5;
3030std::vector<int> vfree(0);
3038if( bgotonextstatement )
3040bool bgotonextstatement =
true;
3043evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-1.5707963267949)+j3)))), 6.28318530717959)));
3045if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 )
3047bgotonextstatement=
false;
3049IkReal j5array[1], cj5array[1], sj5array[1];
3050bool j5valid[1]={
false};
3054j5array[0]=
IKatan2(((-1.0)*new_r00), ((-1.0)*new_r01));
3055sj5array[0]=
IKsin(j5array[0]);
3056cj5array[0]=
IKcos(j5array[0]);
3057if( j5array[0] >
IKPI )
3061else if( j5array[0] < -
IKPI )
3065for(
int ij5 = 0; ij5 < 1; ++ij5)
3071_ij5[0] = ij5; _ij5[1] = -1;
3072for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
3076 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
3079j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
3082IkReal x228=
IKsin(j5);
3083IkReal x229=
IKcos(j5);
3084IkReal x230=((1.0)*cj4);
3085IkReal x231=((1.0)*sj4);
3086evalcond[0]=(x228+new_r00);
3087evalcond[1]=(x229+new_r01);
3088evalcond[2]=(((sj4*x228))+new_r21);
3089evalcond[3]=(((cj4*x228))+new_r11);
3090evalcond[4]=(new_r20+(((-1.0)*x229*x231)));
3091evalcond[5]=(new_r10+(((-1.0)*x229*x230)));
3092evalcond[6]=((((-1.0)*new_r20*x231))+x229+(((-1.0)*new_r10*x230)));
3093evalcond[7]=((((-1.0)*new_r21*x231))+(((-1.0)*new_r11*x230))+(((-1.0)*x228)));
3101std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
3102vinfos[0].jointtype = 1;
3103vinfos[0].foffset = j0;
3104vinfos[0].indices[0] = _ij0[0];
3105vinfos[0].indices[1] = _ij0[1];
3106vinfos[0].maxsolutions = _nj0;
3107vinfos[1].jointtype = 1;
3108vinfos[1].foffset = j1;
3109vinfos[1].indices[0] = _ij1[0];
3110vinfos[1].indices[1] = _ij1[1];
3111vinfos[1].maxsolutions = _nj1;
3112vinfos[2].jointtype = 1;
3113vinfos[2].foffset = j2;
3114vinfos[2].indices[0] = _ij2[0];
3115vinfos[2].indices[1] = _ij2[1];
3116vinfos[2].maxsolutions = _nj2;
3117vinfos[3].jointtype = 1;
3118vinfos[3].foffset = j3;
3119vinfos[3].indices[0] = _ij3[0];
3120vinfos[3].indices[1] = _ij3[1];
3121vinfos[3].maxsolutions = _nj3;
3122vinfos[4].jointtype = 1;
3123vinfos[4].foffset = j4;
3124vinfos[4].indices[0] = _ij4[0];
3125vinfos[4].indices[1] = _ij4[1];
3126vinfos[4].maxsolutions = _nj4;
3127vinfos[5].jointtype = 1;
3128vinfos[5].foffset = j5;
3129vinfos[5].indices[0] = _ij5[0];
3130vinfos[5].indices[1] = _ij5[1];
3131vinfos[5].maxsolutions = _nj5;
3132std::vector<int> vfree(0);
3140if( bgotonextstatement )
3142bool bgotonextstatement =
true;
3145evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((1.5707963267949)+j3)))), 6.28318530717959)));
3147if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 )
3149bgotonextstatement=
false;
3151IkReal j5array[1], cj5array[1], sj5array[1];
3152bool j5valid[1]={
false};
3156j5array[0]=
IKatan2(new_r00, new_r01);
3157sj5array[0]=
IKsin(j5array[0]);
3158cj5array[0]=
IKcos(j5array[0]);
3159if( j5array[0] >
IKPI )
3163else if( j5array[0] < -
IKPI )
3167for(
int ij5 = 0; ij5 < 1; ++ij5)
3173_ij5[0] = ij5; _ij5[1] = -1;
3174for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
3178 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
3181j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
3184IkReal x232=
IKsin(j5);
3185IkReal x233=
IKcos(j5);
3186IkReal x234=((1.0)*sj4);
3187IkReal x235=((1.0)*x233);
3188evalcond[0]=(((sj4*x232))+new_r21);
3189evalcond[1]=(x232+(((-1.0)*new_r00)));
3190evalcond[2]=(x233+(((-1.0)*new_r01)));
3191evalcond[3]=((((-1.0)*x233*x234))+new_r20);
3192evalcond[4]=(((cj4*x232))+(((-1.0)*new_r11)));
3193evalcond[5]=((((-1.0)*cj4*x235))+(((-1.0)*new_r10)));
3194evalcond[6]=((((-1.0)*new_r20*x234))+((cj4*new_r10))+x233);
3195evalcond[7]=((((-1.0)*new_r21*x234))+((cj4*new_r11))+(((-1.0)*x232)));
3203std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
3204vinfos[0].jointtype = 1;
3205vinfos[0].foffset = j0;
3206vinfos[0].indices[0] = _ij0[0];
3207vinfos[0].indices[1] = _ij0[1];
3208vinfos[0].maxsolutions = _nj0;
3209vinfos[1].jointtype = 1;
3210vinfos[1].foffset = j1;
3211vinfos[1].indices[0] = _ij1[0];
3212vinfos[1].indices[1] = _ij1[1];
3213vinfos[1].maxsolutions = _nj1;
3214vinfos[2].jointtype = 1;
3215vinfos[2].foffset = j2;
3216vinfos[2].indices[0] = _ij2[0];
3217vinfos[2].indices[1] = _ij2[1];
3218vinfos[2].maxsolutions = _nj2;
3219vinfos[3].jointtype = 1;
3220vinfos[3].foffset = j3;
3221vinfos[3].indices[0] = _ij3[0];
3222vinfos[3].indices[1] = _ij3[1];
3223vinfos[3].maxsolutions = _nj3;
3224vinfos[4].jointtype = 1;
3225vinfos[4].foffset = j4;
3226vinfos[4].indices[0] = _ij4[0];
3227vinfos[4].indices[1] = _ij4[1];
3228vinfos[4].maxsolutions = _nj4;
3229vinfos[5].jointtype = 1;
3230vinfos[5].foffset = j5;
3231vinfos[5].indices[0] = _ij5[0];
3232vinfos[5].indices[1] = _ij5[1];
3233vinfos[5].maxsolutions = _nj5;
3234std::vector<int> vfree(0);
3242if( bgotonextstatement )
3244bool bgotonextstatement =
true;
3247evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(j3))), 6.28318530717959)));
3249if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 )
3251bgotonextstatement=
false;
3253IkReal j5array[1], cj5array[1], sj5array[1];
3254bool j5valid[1]={
false};
3258j5array[0]=
IKatan2(new_r10, new_r11);
3259sj5array[0]=
IKsin(j5array[0]);
3260cj5array[0]=
IKcos(j5array[0]);
3261if( j5array[0] >
IKPI )
3265else if( j5array[0] < -
IKPI )
3269for(
int ij5 = 0; ij5 < 1; ++ij5)
3275_ij5[0] = ij5; _ij5[1] = -1;
3276for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
3280 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
3283j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
3286IkReal x236=
IKcos(j5);
3287IkReal x237=
IKsin(j5);
3288IkReal x238=((1.0)*cj4);
3289IkReal x239=((1.0)*sj4);
3290IkReal x240=((1.0)*x237);
3291evalcond[0]=(((new_r02*x236))+new_r20);
3292evalcond[1]=(x237+(((-1.0)*new_r10)));
3293evalcond[2]=(x236+(((-1.0)*new_r11)));
3294evalcond[3]=(((cj4*x237))+new_r01);
3295evalcond[4]=((((-1.0)*new_r02*x240))+new_r21);
3296evalcond[5]=((((-1.0)*x236*x238))+new_r00);
3297evalcond[6]=((((-1.0)*new_r20*x239))+x236+(((-1.0)*new_r00*x238)));
3298evalcond[7]=((((-1.0)*new_r21*x239))+(((-1.0)*x240))+(((-1.0)*new_r01*x238)));
3306std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
3307vinfos[0].jointtype = 1;
3308vinfos[0].foffset = j0;
3309vinfos[0].indices[0] = _ij0[0];
3310vinfos[0].indices[1] = _ij0[1];
3311vinfos[0].maxsolutions = _nj0;
3312vinfos[1].jointtype = 1;
3313vinfos[1].foffset = j1;
3314vinfos[1].indices[0] = _ij1[0];
3315vinfos[1].indices[1] = _ij1[1];
3316vinfos[1].maxsolutions = _nj1;
3317vinfos[2].jointtype = 1;
3318vinfos[2].foffset = j2;
3319vinfos[2].indices[0] = _ij2[0];
3320vinfos[2].indices[1] = _ij2[1];
3321vinfos[2].maxsolutions = _nj2;
3322vinfos[3].jointtype = 1;
3323vinfos[3].foffset = j3;
3324vinfos[3].indices[0] = _ij3[0];
3325vinfos[3].indices[1] = _ij3[1];
3326vinfos[3].maxsolutions = _nj3;
3327vinfos[4].jointtype = 1;
3328vinfos[4].foffset = j4;
3329vinfos[4].indices[0] = _ij4[0];
3330vinfos[4].indices[1] = _ij4[1];
3331vinfos[4].maxsolutions = _nj4;
3332vinfos[5].jointtype = 1;
3333vinfos[5].foffset = j5;
3334vinfos[5].indices[0] = _ij5[0];
3335vinfos[5].indices[1] = _ij5[1];
3336vinfos[5].maxsolutions = _nj5;
3337std::vector<int> vfree(0);
3345if( bgotonextstatement )
3347bool bgotonextstatement =
true;
3350evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-3.14159265358979)+j3)))), 6.28318530717959)));
3352if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 )
3354bgotonextstatement=
false;
3356IkReal j5array[1], cj5array[1], sj5array[1];
3357bool j5valid[1]={
false};
3361j5array[0]=
IKatan2(((-1.0)*new_r10), ((-1.0)*new_r11));
3362sj5array[0]=
IKsin(j5array[0]);
3363cj5array[0]=
IKcos(j5array[0]);
3364if( j5array[0] >
IKPI )
3368else if( j5array[0] < -
IKPI )
3372for(
int ij5 = 0; ij5 < 1; ++ij5)
3378_ij5[0] = ij5; _ij5[1] = -1;
3379for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
3383 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
3386j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
3389IkReal x241=
IKsin(j5);
3390IkReal x242=
IKcos(j5);
3391IkReal x243=((1.0)*sj4);
3392IkReal x244=((1.0)*x242);
3393evalcond[0]=(x241+new_r10);
3394evalcond[1]=(x242+new_r11);
3395evalcond[2]=(new_r21+((new_r02*x241)));
3396evalcond[3]=((((-1.0)*new_r02*x244))+new_r20);
3397evalcond[4]=(((cj4*x241))+(((-1.0)*new_r01)));
3398evalcond[5]=((((-1.0)*cj4*x244))+(((-1.0)*new_r00)));
3399evalcond[6]=(((cj4*new_r00))+x242+(((-1.0)*new_r20*x243)));
3400evalcond[7]=(((cj4*new_r01))+(((-1.0)*x241))+(((-1.0)*new_r21*x243)));
3408std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
3409vinfos[0].jointtype = 1;
3410vinfos[0].foffset = j0;
3411vinfos[0].indices[0] = _ij0[0];
3412vinfos[0].indices[1] = _ij0[1];
3413vinfos[0].maxsolutions = _nj0;
3414vinfos[1].jointtype = 1;
3415vinfos[1].foffset = j1;
3416vinfos[1].indices[0] = _ij1[0];
3417vinfos[1].indices[1] = _ij1[1];
3418vinfos[1].maxsolutions = _nj1;
3419vinfos[2].jointtype = 1;
3420vinfos[2].foffset = j2;
3421vinfos[2].indices[0] = _ij2[0];
3422vinfos[2].indices[1] = _ij2[1];
3423vinfos[2].maxsolutions = _nj2;
3424vinfos[3].jointtype = 1;
3425vinfos[3].foffset = j3;
3426vinfos[3].indices[0] = _ij3[0];
3427vinfos[3].indices[1] = _ij3[1];
3428vinfos[3].maxsolutions = _nj3;
3429vinfos[4].jointtype = 1;
3430vinfos[4].foffset = j4;
3431vinfos[4].indices[0] = _ij4[0];
3432vinfos[4].indices[1] = _ij4[1];
3433vinfos[4].maxsolutions = _nj4;
3434vinfos[5].jointtype = 1;
3435vinfos[5].foffset = j5;
3436vinfos[5].indices[0] = _ij5[0];
3437vinfos[5].indices[1] = _ij5[1];
3438vinfos[5].maxsolutions = _nj5;
3439std::vector<int> vfree(0);
3447if( bgotonextstatement )
3449bool bgotonextstatement =
true;
3452evalcond[0]=((
IKabs(new_r20))+(
IKabs(new_r21)));
3453if(
IKabs(evalcond[0]) < 0.0000050000000000 )
3455bgotonextstatement=
false;
3463if(
IKabs(j5eval[0]) < 0.0000000100000000 )
3469IkReal op[2+1], zeror[2];
3474polyroots2(op,zeror,numroots);
3475IkReal j5array[2], cj5array[2], sj5array[2], tempj5array[1];
3476int numsolutions = 0;
3477for(
int ij5 = 0; ij5 < numroots; ++ij5)
3479IkReal htj5 = zeror[ij5];
3480tempj5array[0]=((2.0)*(atan(htj5)));
3481for(
int kj5 = 0; kj5 < 1; ++kj5)
3483j5array[numsolutions] = tempj5array[kj5];
3484if( j5array[numsolutions] >
IKPI )
3486 j5array[numsolutions]-=
IK2PI;
3488else if( j5array[numsolutions] < -
IKPI )
3490 j5array[numsolutions]+=
IK2PI;
3492sj5array[numsolutions] =
IKsin(j5array[numsolutions]);
3493cj5array[numsolutions] =
IKcos(j5array[numsolutions]);
3497bool j5valid[2]={
true,
true};
3499for(
int ij5 = 0; ij5 < numsolutions; ++ij5)
3505 j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
3508_ij5[0] = ij5; _ij5[1] = -1;
3509for(
int iij5 = ij5+1; iij5 < numsolutions; ++iij5)
3513 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
3517std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
3518vinfos[0].jointtype = 1;
3519vinfos[0].foffset = j0;
3520vinfos[0].indices[0] = _ij0[0];
3521vinfos[0].indices[1] = _ij0[1];
3522vinfos[0].maxsolutions = _nj0;
3523vinfos[1].jointtype = 1;
3524vinfos[1].foffset = j1;
3525vinfos[1].indices[0] = _ij1[0];
3526vinfos[1].indices[1] = _ij1[1];
3527vinfos[1].maxsolutions = _nj1;
3528vinfos[2].jointtype = 1;
3529vinfos[2].foffset = j2;
3530vinfos[2].indices[0] = _ij2[0];
3531vinfos[2].indices[1] = _ij2[1];
3532vinfos[2].maxsolutions = _nj2;
3533vinfos[3].jointtype = 1;
3534vinfos[3].foffset = j3;
3535vinfos[3].indices[0] = _ij3[0];
3536vinfos[3].indices[1] = _ij3[1];
3537vinfos[3].maxsolutions = _nj3;
3538vinfos[4].jointtype = 1;
3539vinfos[4].foffset = j4;
3540vinfos[4].indices[0] = _ij4[0];
3541vinfos[4].indices[1] = _ij4[1];
3542vinfos[4].maxsolutions = _nj4;
3543vinfos[5].jointtype = 1;
3544vinfos[5].foffset = j5;
3545vinfos[5].indices[0] = _ij5[0];
3546vinfos[5].indices[1] = _ij5[1];
3547vinfos[5].maxsolutions = _nj5;
3548std::vector<int> vfree(0);
3559if( bgotonextstatement )
3561bool bgotonextstatement =
true;
3566bgotonextstatement=
false;
3571if( bgotonextstatement )
3586IkReal j5array[1], cj5array[1], sj5array[1];
3587bool j5valid[1]={
false};
3593IkReal x245=x246.
value;
3600j5array[0]=
IKatan2(((-1.0)*new_r21*x245), (x245*(x247.
value)*((((new_r11*sj4))+(((-1.0)*cj4*new_r21*sj3))))));
3601sj5array[0]=
IKsin(j5array[0]);
3602cj5array[0]=
IKcos(j5array[0]);
3603if( j5array[0] >
IKPI )
3607else if( j5array[0] < -
IKPI )
3611for(
int ij5 = 0; ij5 < 1; ++ij5)
3617_ij5[0] = ij5; _ij5[1] = -1;
3618for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
3622 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
3625j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
3628IkReal x248=
IKsin(j5);
3629IkReal x249=
IKcos(j5);
3630IkReal x250=(cj3*new_r00);
3631IkReal x251=(cj3*cj4);
3632IkReal x252=((1.0)*cj3);
3633IkReal x253=(new_r11*sj3);
3634IkReal x254=((1.0)*cj4);
3635IkReal x255=(new_r10*sj3);
3636IkReal x256=((1.0)*sj4);
3637IkReal x257=(sj3*x248);
3638IkReal x258=((1.0)*x249);
3639IkReal x259=(sj3*x249);
3640evalcond[0]=(new_r21+((sj4*x248)));
3641evalcond[1]=((((-1.0)*x249*x256))+new_r20);
3642evalcond[2]=((((-1.0)*new_r10*x252))+((new_r00*sj3))+x248);
3643evalcond[3]=((((-1.0)*new_r11*x252))+((new_r01*sj3))+x249);
3644evalcond[4]=(((cj4*x248))+x253+((cj3*new_r01)));
3645evalcond[5]=(((x248*x251))+x259+new_r01);
3646evalcond[6]=(x255+x250+(((-1.0)*x249*x254)));
3647evalcond[7]=((((-1.0)*x251*x258))+x257+new_r00);
3648evalcond[8]=((((-1.0)*x249*x252))+new_r11+((cj4*x257)));
3649evalcond[9]=((((-1.0)*x254*x259))+(((-1.0)*x248*x252))+new_r10);
3650evalcond[10]=((((-1.0)*x250*x254))+(((-1.0)*x254*x255))+x249+(((-1.0)*new_r20*x256)));
3651evalcond[11]=((((-1.0)*new_r21*x256))+(((-1.0)*x248))+(((-1.0)*x253*x254))+(((-1.0)*new_r01*x251)));
3659std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
3660vinfos[0].jointtype = 1;
3661vinfos[0].foffset = j0;
3662vinfos[0].indices[0] = _ij0[0];
3663vinfos[0].indices[1] = _ij0[1];
3664vinfos[0].maxsolutions = _nj0;
3665vinfos[1].jointtype = 1;
3666vinfos[1].foffset = j1;
3667vinfos[1].indices[0] = _ij1[0];
3668vinfos[1].indices[1] = _ij1[1];
3669vinfos[1].maxsolutions = _nj1;
3670vinfos[2].jointtype = 1;
3671vinfos[2].foffset = j2;
3672vinfos[2].indices[0] = _ij2[0];
3673vinfos[2].indices[1] = _ij2[1];
3674vinfos[2].maxsolutions = _nj2;
3675vinfos[3].jointtype = 1;
3676vinfos[3].foffset = j3;
3677vinfos[3].indices[0] = _ij3[0];
3678vinfos[3].indices[1] = _ij3[1];
3679vinfos[3].maxsolutions = _nj3;
3680vinfos[4].jointtype = 1;
3681vinfos[4].foffset = j4;
3682vinfos[4].indices[0] = _ij4[0];
3683vinfos[4].indices[1] = _ij4[1];
3684vinfos[4].maxsolutions = _nj4;
3685vinfos[5].jointtype = 1;
3686vinfos[5].foffset = j5;
3687vinfos[5].indices[0] = _ij5[0];
3688vinfos[5].indices[1] = _ij5[1];
3689vinfos[5].maxsolutions = _nj5;
3690std::vector<int> vfree(0);
3703IkReal j5array[1], cj5array[1], sj5array[1];
3704bool j5valid[1]={
false};
3710IkReal x260=x261.
value;
3717j5array[0]=
IKatan2(((-1.0)*new_r21*x260), (x260*(x262.
value)*(((((-1.0)*new_r01*sj4))+((cj3*cj4*new_r21))))));
3718sj5array[0]=
IKsin(j5array[0]);
3719cj5array[0]=
IKcos(j5array[0]);
3720if( j5array[0] >
IKPI )
3724else if( j5array[0] < -
IKPI )
3728for(
int ij5 = 0; ij5 < 1; ++ij5)
3734_ij5[0] = ij5; _ij5[1] = -1;
3735for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
3739 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
3742j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
3745IkReal x263=
IKsin(j5);
3746IkReal x264=
IKcos(j5);
3747IkReal x265=(cj3*new_r00);
3748IkReal x266=(cj3*cj4);
3749IkReal x267=((1.0)*cj3);
3750IkReal x268=(new_r11*sj3);
3751IkReal x269=((1.0)*cj4);
3752IkReal x270=(new_r10*sj3);
3753IkReal x271=((1.0)*sj4);
3754IkReal x272=(sj3*x263);
3755IkReal x273=((1.0)*x264);
3756IkReal x274=(sj3*x264);
3757evalcond[0]=(new_r21+((sj4*x263)));
3758evalcond[1]=(new_r20+(((-1.0)*x264*x271)));
3759evalcond[2]=(((new_r00*sj3))+x263+(((-1.0)*new_r10*x267)));
3760evalcond[3]=(((new_r01*sj3))+x264+(((-1.0)*new_r11*x267)));
3761evalcond[4]=(((cj4*x263))+x268+((cj3*new_r01)));
3762evalcond[5]=(((x263*x266))+x274+new_r01);
3763evalcond[6]=(x265+x270+(((-1.0)*x264*x269)));
3764evalcond[7]=(x272+(((-1.0)*x266*x273))+new_r00);
3765evalcond[8]=(((cj4*x272))+new_r11+(((-1.0)*x264*x267)));
3766evalcond[9]=((((-1.0)*x263*x267))+(((-1.0)*x269*x274))+new_r10);
3767evalcond[10]=((((-1.0)*x269*x270))+x264+(((-1.0)*new_r20*x271))+(((-1.0)*x265*x269)));
3768evalcond[11]=((((-1.0)*x263))+(((-1.0)*new_r01*x266))+(((-1.0)*new_r21*x271))+(((-1.0)*x268*x269)));
3776std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
3777vinfos[0].jointtype = 1;
3778vinfos[0].foffset = j0;
3779vinfos[0].indices[0] = _ij0[0];
3780vinfos[0].indices[1] = _ij0[1];
3781vinfos[0].maxsolutions = _nj0;
3782vinfos[1].jointtype = 1;
3783vinfos[1].foffset = j1;
3784vinfos[1].indices[0] = _ij1[0];
3785vinfos[1].indices[1] = _ij1[1];
3786vinfos[1].maxsolutions = _nj1;
3787vinfos[2].jointtype = 1;
3788vinfos[2].foffset = j2;
3789vinfos[2].indices[0] = _ij2[0];
3790vinfos[2].indices[1] = _ij2[1];
3791vinfos[2].maxsolutions = _nj2;
3792vinfos[3].jointtype = 1;
3793vinfos[3].foffset = j3;
3794vinfos[3].indices[0] = _ij3[0];
3795vinfos[3].indices[1] = _ij3[1];
3796vinfos[3].maxsolutions = _nj3;
3797vinfos[4].jointtype = 1;
3798vinfos[4].foffset = j4;
3799vinfos[4].indices[0] = _ij4[0];
3800vinfos[4].indices[1] = _ij4[1];
3801vinfos[4].maxsolutions = _nj4;
3802vinfos[5].jointtype = 1;
3803vinfos[5].foffset = j5;
3804vinfos[5].indices[0] = _ij5[0];
3805vinfos[5].indices[1] = _ij5[1];
3806vinfos[5].maxsolutions = _nj5;
3807std::vector<int> vfree(0);
3820IkReal j5array[1], cj5array[1], sj5array[1];
3821bool j5valid[1]={
false};
3831j5array[0]=((-1.5707963267949)+(x275.
value)+(((1.5707963267949)*(x276.
value))));
3832sj5array[0]=
IKsin(j5array[0]);
3833cj5array[0]=
IKcos(j5array[0]);
3834if( j5array[0] >
IKPI )
3838else if( j5array[0] < -
IKPI )
3842for(
int ij5 = 0; ij5 < 1; ++ij5)
3848_ij5[0] = ij5; _ij5[1] = -1;
3849for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
3853 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
3856j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
3859IkReal x277=
IKsin(j5);
3860IkReal x278=
IKcos(j5);
3861IkReal x279=(cj3*new_r00);
3862IkReal x280=(cj3*cj4);
3863IkReal x281=((1.0)*cj3);
3864IkReal x282=(new_r11*sj3);
3865IkReal x283=((1.0)*cj4);
3866IkReal x284=(new_r10*sj3);
3867IkReal x285=((1.0)*sj4);
3868IkReal x286=(sj3*x277);
3869IkReal x287=((1.0)*x278);
3870IkReal x288=(sj3*x278);
3871evalcond[0]=(new_r21+((sj4*x277)));
3872evalcond[1]=(new_r20+(((-1.0)*x278*x285)));
3873evalcond[2]=(((new_r00*sj3))+x277+(((-1.0)*new_r10*x281)));
3874evalcond[3]=(((new_r01*sj3))+x278+(((-1.0)*new_r11*x281)));
3875evalcond[4]=(((cj4*x277))+x282+((cj3*new_r01)));
3876evalcond[5]=(x288+new_r01+((x277*x280)));
3877evalcond[6]=(x279+x284+(((-1.0)*x278*x283)));
3878evalcond[7]=((((-1.0)*x280*x287))+x286+new_r00);
3879evalcond[8]=(new_r11+((cj4*x286))+(((-1.0)*x278*x281)));
3880evalcond[9]=((((-1.0)*x277*x281))+new_r10+(((-1.0)*x283*x288)));
3881evalcond[10]=(x278+(((-1.0)*new_r20*x285))+(((-1.0)*x279*x283))+(((-1.0)*x283*x284)));
3882evalcond[11]=((((-1.0)*x277))+(((-1.0)*x282*x283))+(((-1.0)*new_r01*x280))+(((-1.0)*new_r21*x285)));
3890std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
3891vinfos[0].jointtype = 1;
3892vinfos[0].foffset = j0;
3893vinfos[0].indices[0] = _ij0[0];
3894vinfos[0].indices[1] = _ij0[1];
3895vinfos[0].maxsolutions = _nj0;
3896vinfos[1].jointtype = 1;
3897vinfos[1].foffset = j1;
3898vinfos[1].indices[0] = _ij1[0];
3899vinfos[1].indices[1] = _ij1[1];
3900vinfos[1].maxsolutions = _nj1;
3901vinfos[2].jointtype = 1;
3902vinfos[2].foffset = j2;
3903vinfos[2].indices[0] = _ij2[0];
3904vinfos[2].indices[1] = _ij2[1];
3905vinfos[2].maxsolutions = _nj2;
3906vinfos[3].jointtype = 1;
3907vinfos[3].foffset = j3;
3908vinfos[3].indices[0] = _ij3[0];
3909vinfos[3].indices[1] = _ij3[1];
3910vinfos[3].maxsolutions = _nj3;
3911vinfos[4].jointtype = 1;
3912vinfos[4].foffset = j4;
3913vinfos[4].indices[0] = _ij4[0];
3914vinfos[4].indices[1] = _ij4[1];
3915vinfos[4].maxsolutions = _nj4;
3916vinfos[5].jointtype = 1;
3917vinfos[5].foffset = j5;
3918vinfos[5].indices[0] = _ij5[0];
3919vinfos[5].indices[1] = _ij5[1];
3920vinfos[5].maxsolutions = _nj5;
3921std::vector<int> vfree(0);
3940IkReal j3array[1], cj3array[1], sj3array[1];
3941bool j3valid[1]={
false};
3951j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x289.
value)))+(x290.
value));
3952sj3array[0]=
IKsin(j3array[0]);
3953cj3array[0]=
IKcos(j3array[0]);
3954if( j3array[0] >
IKPI )
3958else if( j3array[0] < -
IKPI )
3962for(
int ij3 = 0; ij3 < 1; ++ij3)
3968_ij3[0] = ij3; _ij3[1] = -1;
3969for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
3973 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
3976j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
3979IkReal x291=
IKcos(j3);
3980IkReal x292=
IKsin(j3);
3981IkReal x293=((1.0)*cj4);
3982IkReal x294=(sj4*x292);
3983IkReal x295=(new_r12*x292);
3984IkReal x296=(sj4*x291);
3985IkReal x297=(new_r02*x291);
3986evalcond[0]=(x296+new_r02);
3987evalcond[1]=(x294+new_r12);
3988evalcond[2]=(((new_r12*x291))+(((-1.0)*new_r02*x292)));
3989evalcond[3]=(sj4+x295+x297);
3990evalcond[4]=((((-1.0)*new_r20*x293))+((new_r10*x294))+((new_r00*x296)));
3991evalcond[5]=((((-1.0)*new_r21*x293))+((new_r11*x294))+((new_r01*x296)));
3992evalcond[6]=((1.0)+((new_r02*x296))+((new_r12*x294))+(((-1.0)*new_r22*x293)));
3993evalcond[7]=((((-1.0)*x293*x297))+(((-1.0)*x293*x295))+(((-1.0)*new_r22*sj4)));
4004j5eval[2]=((
IKabs(new_r20))+(
IKabs(new_r21)));
4005if(
IKabs(j5eval[0]) < 0.0000010000000000 ||
IKabs(j5eval[1]) < 0.0000010000000000 ||
IKabs(j5eval[2]) < 0.0000010000000000 )
4011if(
IKabs(j5eval[0]) < 0.0000010000000000 ||
IKabs(j5eval[1]) < 0.0000010000000000 )
4017if(
IKabs(j5eval[0]) < 0.0000010000000000 ||
IKabs(j5eval[1]) < 0.0000010000000000 )
4021bool bgotonextstatement =
true;
4024evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(j4))), 6.28318530717959)));
4029if(
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 )
4031bgotonextstatement=
false;
4033IkReal j5array[1], cj5array[1], sj5array[1];
4034bool j5valid[1]={
false};
4036IkReal x298=((1.0)*new_r01);
4039j5array[0]=
IKatan2(((((-1.0)*cj3*x298))+(((-1.0)*new_r00*sj3))), ((((-1.0)*sj3*x298))+((cj3*new_r00))));
4040sj5array[0]=
IKsin(j5array[0]);
4041cj5array[0]=
IKcos(j5array[0]);
4042if( j5array[0] >
IKPI )
4046else if( j5array[0] < -
IKPI )
4050for(
int ij5 = 0; ij5 < 1; ++ij5)
4056_ij5[0] = ij5; _ij5[1] = -1;
4057for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
4061 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
4064j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
4067IkReal x299=
IKsin(j5);
4068IkReal x300=
IKcos(j5);
4069IkReal x301=((1.0)*cj3);
4070IkReal x302=(sj3*x299);
4071IkReal x303=((1.0)*x300);
4072IkReal x304=(x300*x301);
4073evalcond[0]=(((new_r11*sj3))+x299+((cj3*new_r01)));
4074evalcond[1]=(((new_r00*sj3))+x299+(((-1.0)*new_r10*x301)));
4075evalcond[2]=(((new_r01*sj3))+x300+(((-1.0)*new_r11*x301)));
4076evalcond[3]=(((cj3*x299))+((sj3*x300))+new_r01);
4077evalcond[4]=(((new_r10*sj3))+((cj3*new_r00))+(((-1.0)*x303)));
4078evalcond[5]=(x302+new_r00+(((-1.0)*x304)));
4079evalcond[6]=(x302+new_r11+(((-1.0)*x304)));
4080evalcond[7]=((((-1.0)*sj3*x303))+(((-1.0)*x299*x301))+new_r10);
4088std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
4089vinfos[0].jointtype = 1;
4090vinfos[0].foffset = j0;
4091vinfos[0].indices[0] = _ij0[0];
4092vinfos[0].indices[1] = _ij0[1];
4093vinfos[0].maxsolutions = _nj0;
4094vinfos[1].jointtype = 1;
4095vinfos[1].foffset = j1;
4096vinfos[1].indices[0] = _ij1[0];
4097vinfos[1].indices[1] = _ij1[1];
4098vinfos[1].maxsolutions = _nj1;
4099vinfos[2].jointtype = 1;
4100vinfos[2].foffset = j2;
4101vinfos[2].indices[0] = _ij2[0];
4102vinfos[2].indices[1] = _ij2[1];
4103vinfos[2].maxsolutions = _nj2;
4104vinfos[3].jointtype = 1;
4105vinfos[3].foffset = j3;
4106vinfos[3].indices[0] = _ij3[0];
4107vinfos[3].indices[1] = _ij3[1];
4108vinfos[3].maxsolutions = _nj3;
4109vinfos[4].jointtype = 1;
4110vinfos[4].foffset = j4;
4111vinfos[4].indices[0] = _ij4[0];
4112vinfos[4].indices[1] = _ij4[1];
4113vinfos[4].maxsolutions = _nj4;
4114vinfos[5].jointtype = 1;
4115vinfos[5].foffset = j5;
4116vinfos[5].indices[0] = _ij5[0];
4117vinfos[5].indices[1] = _ij5[1];
4118vinfos[5].maxsolutions = _nj5;
4119std::vector<int> vfree(0);
4127if( bgotonextstatement )
4129bool bgotonextstatement =
true;
4132evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-3.14159265358979)+j4)))), 6.28318530717959)));
4137if(
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 )
4139bgotonextstatement=
false;
4141IkReal j5array[1], cj5array[1], sj5array[1];
4142bool j5valid[1]={
false};
4144IkReal x305=((1.0)*sj3);
4147j5array[0]=
IKatan2((((cj3*new_r01))+(((-1.0)*new_r00*x305))), ((((-1.0)*cj3*new_r00))+(((-1.0)*new_r01*x305))));
4148sj5array[0]=
IKsin(j5array[0]);
4149cj5array[0]=
IKcos(j5array[0]);
4150if( j5array[0] >
IKPI )
4154else if( j5array[0] < -
IKPI )
4158for(
int ij5 = 0; ij5 < 1; ++ij5)
4164_ij5[0] = ij5; _ij5[1] = -1;
4165for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
4169 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
4172j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
4175IkReal x306=
IKcos(j5);
4176IkReal x307=
IKsin(j5);
4177IkReal x308=((1.0)*cj3);
4178IkReal x309=(sj3*x306);
4179IkReal x310=((1.0)*x307);
4180IkReal x311=(x307*x308);
4181evalcond[0]=(((new_r10*sj3))+x306+((cj3*new_r00)));
4182evalcond[1]=(((new_r00*sj3))+x307+(((-1.0)*new_r10*x308)));
4183evalcond[2]=(((new_r01*sj3))+x306+(((-1.0)*new_r11*x308)));
4184evalcond[3]=(((new_r11*sj3))+(((-1.0)*x310))+((cj3*new_r01)));
4185evalcond[4]=(((sj3*x307))+((cj3*x306))+new_r00);
4186evalcond[5]=(x309+(((-1.0)*x311))+new_r01);
4187evalcond[6]=(x309+(((-1.0)*x311))+new_r10);
4188evalcond[7]=((((-1.0)*sj3*x310))+(((-1.0)*x306*x308))+new_r11);
4196std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
4197vinfos[0].jointtype = 1;
4198vinfos[0].foffset = j0;
4199vinfos[0].indices[0] = _ij0[0];
4200vinfos[0].indices[1] = _ij0[1];
4201vinfos[0].maxsolutions = _nj0;
4202vinfos[1].jointtype = 1;
4203vinfos[1].foffset = j1;
4204vinfos[1].indices[0] = _ij1[0];
4205vinfos[1].indices[1] = _ij1[1];
4206vinfos[1].maxsolutions = _nj1;
4207vinfos[2].jointtype = 1;
4208vinfos[2].foffset = j2;
4209vinfos[2].indices[0] = _ij2[0];
4210vinfos[2].indices[1] = _ij2[1];
4211vinfos[2].maxsolutions = _nj2;
4212vinfos[3].jointtype = 1;
4213vinfos[3].foffset = j3;
4214vinfos[3].indices[0] = _ij3[0];
4215vinfos[3].indices[1] = _ij3[1];
4216vinfos[3].maxsolutions = _nj3;
4217vinfos[4].jointtype = 1;
4218vinfos[4].foffset = j4;
4219vinfos[4].indices[0] = _ij4[0];
4220vinfos[4].indices[1] = _ij4[1];
4221vinfos[4].maxsolutions = _nj4;
4222vinfos[5].jointtype = 1;
4223vinfos[5].foffset = j5;
4224vinfos[5].indices[0] = _ij5[0];
4225vinfos[5].indices[1] = _ij5[1];
4226vinfos[5].maxsolutions = _nj5;
4227std::vector<int> vfree(0);
4235if( bgotonextstatement )
4237bool bgotonextstatement =
true;
4240evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-1.5707963267949)+j3)))), 6.28318530717959)));
4242if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 )
4244bgotonextstatement=
false;
4246IkReal j5array[1], cj5array[1], sj5array[1];
4247bool j5valid[1]={
false};
4251j5array[0]=
IKatan2(((-1.0)*new_r00), ((-1.0)*new_r01));
4252sj5array[0]=
IKsin(j5array[0]);
4253cj5array[0]=
IKcos(j5array[0]);
4254if( j5array[0] >
IKPI )
4258else if( j5array[0] < -
IKPI )
4262for(
int ij5 = 0; ij5 < 1; ++ij5)
4268_ij5[0] = ij5; _ij5[1] = -1;
4269for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
4273 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
4276j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
4279IkReal x312=
IKsin(j5);
4280IkReal x313=
IKcos(j5);
4281IkReal x314=((1.0)*cj4);
4282IkReal x315=((1.0)*sj4);
4283evalcond[0]=(x312+new_r00);
4284evalcond[1]=(x313+new_r01);
4285evalcond[2]=(((sj4*x312))+new_r21);
4286evalcond[3]=(((cj4*x312))+new_r11);
4287evalcond[4]=((((-1.0)*x313*x315))+new_r20);
4288evalcond[5]=((((-1.0)*x313*x314))+new_r10);
4289evalcond[6]=((((-1.0)*new_r20*x315))+x313+(((-1.0)*new_r10*x314)));
4290evalcond[7]=((((-1.0)*new_r21*x315))+(((-1.0)*new_r11*x314))+(((-1.0)*x312)));
4298std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
4299vinfos[0].jointtype = 1;
4300vinfos[0].foffset = j0;
4301vinfos[0].indices[0] = _ij0[0];
4302vinfos[0].indices[1] = _ij0[1];
4303vinfos[0].maxsolutions = _nj0;
4304vinfos[1].jointtype = 1;
4305vinfos[1].foffset = j1;
4306vinfos[1].indices[0] = _ij1[0];
4307vinfos[1].indices[1] = _ij1[1];
4308vinfos[1].maxsolutions = _nj1;
4309vinfos[2].jointtype = 1;
4310vinfos[2].foffset = j2;
4311vinfos[2].indices[0] = _ij2[0];
4312vinfos[2].indices[1] = _ij2[1];
4313vinfos[2].maxsolutions = _nj2;
4314vinfos[3].jointtype = 1;
4315vinfos[3].foffset = j3;
4316vinfos[3].indices[0] = _ij3[0];
4317vinfos[3].indices[1] = _ij3[1];
4318vinfos[3].maxsolutions = _nj3;
4319vinfos[4].jointtype = 1;
4320vinfos[4].foffset = j4;
4321vinfos[4].indices[0] = _ij4[0];
4322vinfos[4].indices[1] = _ij4[1];
4323vinfos[4].maxsolutions = _nj4;
4324vinfos[5].jointtype = 1;
4325vinfos[5].foffset = j5;
4326vinfos[5].indices[0] = _ij5[0];
4327vinfos[5].indices[1] = _ij5[1];
4328vinfos[5].maxsolutions = _nj5;
4329std::vector<int> vfree(0);
4337if( bgotonextstatement )
4339bool bgotonextstatement =
true;
4342evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((1.5707963267949)+j3)))), 6.28318530717959)));
4344if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 )
4346bgotonextstatement=
false;
4348IkReal j5array[1], cj5array[1], sj5array[1];
4349bool j5valid[1]={
false};
4353j5array[0]=
IKatan2(new_r00, new_r01);
4354sj5array[0]=
IKsin(j5array[0]);
4355cj5array[0]=
IKcos(j5array[0]);
4356if( j5array[0] >
IKPI )
4360else if( j5array[0] < -
IKPI )
4364for(
int ij5 = 0; ij5 < 1; ++ij5)
4370_ij5[0] = ij5; _ij5[1] = -1;
4371for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
4375 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
4378j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
4381IkReal x316=
IKsin(j5);
4382IkReal x317=
IKcos(j5);
4383IkReal x318=((1.0)*sj4);
4384IkReal x319=((1.0)*x317);
4385evalcond[0]=(((sj4*x316))+new_r21);
4386evalcond[1]=(x316+(((-1.0)*new_r00)));
4387evalcond[2]=(x317+(((-1.0)*new_r01)));
4388evalcond[3]=(new_r20+(((-1.0)*x317*x318)));
4389evalcond[4]=(((cj4*x316))+(((-1.0)*new_r11)));
4390evalcond[5]=((((-1.0)*cj4*x319))+(((-1.0)*new_r10)));
4391evalcond[6]=((((-1.0)*new_r20*x318))+((cj4*new_r10))+x317);
4392evalcond[7]=((((-1.0)*new_r21*x318))+((cj4*new_r11))+(((-1.0)*x316)));
4400std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
4401vinfos[0].jointtype = 1;
4402vinfos[0].foffset = j0;
4403vinfos[0].indices[0] = _ij0[0];
4404vinfos[0].indices[1] = _ij0[1];
4405vinfos[0].maxsolutions = _nj0;
4406vinfos[1].jointtype = 1;
4407vinfos[1].foffset = j1;
4408vinfos[1].indices[0] = _ij1[0];
4409vinfos[1].indices[1] = _ij1[1];
4410vinfos[1].maxsolutions = _nj1;
4411vinfos[2].jointtype = 1;
4412vinfos[2].foffset = j2;
4413vinfos[2].indices[0] = _ij2[0];
4414vinfos[2].indices[1] = _ij2[1];
4415vinfos[2].maxsolutions = _nj2;
4416vinfos[3].jointtype = 1;
4417vinfos[3].foffset = j3;
4418vinfos[3].indices[0] = _ij3[0];
4419vinfos[3].indices[1] = _ij3[1];
4420vinfos[3].maxsolutions = _nj3;
4421vinfos[4].jointtype = 1;
4422vinfos[4].foffset = j4;
4423vinfos[4].indices[0] = _ij4[0];
4424vinfos[4].indices[1] = _ij4[1];
4425vinfos[4].maxsolutions = _nj4;
4426vinfos[5].jointtype = 1;
4427vinfos[5].foffset = j5;
4428vinfos[5].indices[0] = _ij5[0];
4429vinfos[5].indices[1] = _ij5[1];
4430vinfos[5].maxsolutions = _nj5;
4431std::vector<int> vfree(0);
4439if( bgotonextstatement )
4441bool bgotonextstatement =
true;
4444evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(j3))), 6.28318530717959)));
4446if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 )
4448bgotonextstatement=
false;
4450IkReal j5array[1], cj5array[1], sj5array[1];
4451bool j5valid[1]={
false};
4455j5array[0]=
IKatan2(new_r10, new_r11);
4456sj5array[0]=
IKsin(j5array[0]);
4457cj5array[0]=
IKcos(j5array[0]);
4458if( j5array[0] >
IKPI )
4462else if( j5array[0] < -
IKPI )
4466for(
int ij5 = 0; ij5 < 1; ++ij5)
4472_ij5[0] = ij5; _ij5[1] = -1;
4473for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
4477 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
4480j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
4483IkReal x320=
IKcos(j5);
4484IkReal x321=
IKsin(j5);
4485IkReal x322=((1.0)*cj4);
4486IkReal x323=((1.0)*sj4);
4487IkReal x324=((1.0)*x321);
4488evalcond[0]=(new_r20+((new_r02*x320)));
4489evalcond[1]=(x321+(((-1.0)*new_r10)));
4490evalcond[2]=(x320+(((-1.0)*new_r11)));
4491evalcond[3]=(((cj4*x321))+new_r01);
4492evalcond[4]=((((-1.0)*new_r02*x324))+new_r21);
4493evalcond[5]=((((-1.0)*x320*x322))+new_r00);
4494evalcond[6]=(x320+(((-1.0)*new_r00*x322))+(((-1.0)*new_r20*x323)));
4495evalcond[7]=((((-1.0)*x324))+(((-1.0)*new_r01*x322))+(((-1.0)*new_r21*x323)));
4503std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
4504vinfos[0].jointtype = 1;
4505vinfos[0].foffset = j0;
4506vinfos[0].indices[0] = _ij0[0];
4507vinfos[0].indices[1] = _ij0[1];
4508vinfos[0].maxsolutions = _nj0;
4509vinfos[1].jointtype = 1;
4510vinfos[1].foffset = j1;
4511vinfos[1].indices[0] = _ij1[0];
4512vinfos[1].indices[1] = _ij1[1];
4513vinfos[1].maxsolutions = _nj1;
4514vinfos[2].jointtype = 1;
4515vinfos[2].foffset = j2;
4516vinfos[2].indices[0] = _ij2[0];
4517vinfos[2].indices[1] = _ij2[1];
4518vinfos[2].maxsolutions = _nj2;
4519vinfos[3].jointtype = 1;
4520vinfos[3].foffset = j3;
4521vinfos[3].indices[0] = _ij3[0];
4522vinfos[3].indices[1] = _ij3[1];
4523vinfos[3].maxsolutions = _nj3;
4524vinfos[4].jointtype = 1;
4525vinfos[4].foffset = j4;
4526vinfos[4].indices[0] = _ij4[0];
4527vinfos[4].indices[1] = _ij4[1];
4528vinfos[4].maxsolutions = _nj4;
4529vinfos[5].jointtype = 1;
4530vinfos[5].foffset = j5;
4531vinfos[5].indices[0] = _ij5[0];
4532vinfos[5].indices[1] = _ij5[1];
4533vinfos[5].maxsolutions = _nj5;
4534std::vector<int> vfree(0);
4542if( bgotonextstatement )
4544bool bgotonextstatement =
true;
4547evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-3.14159265358979)+j3)))), 6.28318530717959)));
4549if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 )
4551bgotonextstatement=
false;
4553IkReal j5array[1], cj5array[1], sj5array[1];
4554bool j5valid[1]={
false};
4558j5array[0]=
IKatan2(((-1.0)*new_r10), ((-1.0)*new_r11));
4559sj5array[0]=
IKsin(j5array[0]);
4560cj5array[0]=
IKcos(j5array[0]);
4561if( j5array[0] >
IKPI )
4565else if( j5array[0] < -
IKPI )
4569for(
int ij5 = 0; ij5 < 1; ++ij5)
4575_ij5[0] = ij5; _ij5[1] = -1;
4576for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
4580 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
4583j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
4586IkReal x325=
IKsin(j5);
4587IkReal x326=
IKcos(j5);
4588IkReal x327=((1.0)*sj4);
4589IkReal x328=((1.0)*x326);
4590evalcond[0]=(x325+new_r10);
4591evalcond[1]=(x326+new_r11);
4592evalcond[2]=(new_r21+((new_r02*x325)));
4593evalcond[3]=((((-1.0)*new_r02*x328))+new_r20);
4594evalcond[4]=(((cj4*x325))+(((-1.0)*new_r01)));
4595evalcond[5]=((((-1.0)*new_r00))+(((-1.0)*cj4*x328)));
4596evalcond[6]=(((cj4*new_r00))+x326+(((-1.0)*new_r20*x327)));
4597evalcond[7]=(((cj4*new_r01))+(((-1.0)*x325))+(((-1.0)*new_r21*x327)));
4605std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
4606vinfos[0].jointtype = 1;
4607vinfos[0].foffset = j0;
4608vinfos[0].indices[0] = _ij0[0];
4609vinfos[0].indices[1] = _ij0[1];
4610vinfos[0].maxsolutions = _nj0;
4611vinfos[1].jointtype = 1;
4612vinfos[1].foffset = j1;
4613vinfos[1].indices[0] = _ij1[0];
4614vinfos[1].indices[1] = _ij1[1];
4615vinfos[1].maxsolutions = _nj1;
4616vinfos[2].jointtype = 1;
4617vinfos[2].foffset = j2;
4618vinfos[2].indices[0] = _ij2[0];
4619vinfos[2].indices[1] = _ij2[1];
4620vinfos[2].maxsolutions = _nj2;
4621vinfos[3].jointtype = 1;
4622vinfos[3].foffset = j3;
4623vinfos[3].indices[0] = _ij3[0];
4624vinfos[3].indices[1] = _ij3[1];
4625vinfos[3].maxsolutions = _nj3;
4626vinfos[4].jointtype = 1;
4627vinfos[4].foffset = j4;
4628vinfos[4].indices[0] = _ij4[0];
4629vinfos[4].indices[1] = _ij4[1];
4630vinfos[4].maxsolutions = _nj4;
4631vinfos[5].jointtype = 1;
4632vinfos[5].foffset = j5;
4633vinfos[5].indices[0] = _ij5[0];
4634vinfos[5].indices[1] = _ij5[1];
4635vinfos[5].maxsolutions = _nj5;
4636std::vector<int> vfree(0);
4644if( bgotonextstatement )
4646bool bgotonextstatement =
true;
4649evalcond[0]=((
IKabs(new_r20))+(
IKabs(new_r21)));
4650if(
IKabs(evalcond[0]) < 0.0000050000000000 )
4652bgotonextstatement=
false;
4660if(
IKabs(j5eval[0]) < 0.0000000100000000 )
4666IkReal op[2+1], zeror[2];
4671polyroots2(op,zeror,numroots);
4672IkReal j5array[2], cj5array[2], sj5array[2], tempj5array[1];
4673int numsolutions = 0;
4674for(
int ij5 = 0; ij5 < numroots; ++ij5)
4676IkReal htj5 = zeror[ij5];
4677tempj5array[0]=((2.0)*(atan(htj5)));
4678for(
int kj5 = 0; kj5 < 1; ++kj5)
4680j5array[numsolutions] = tempj5array[kj5];
4681if( j5array[numsolutions] >
IKPI )
4683 j5array[numsolutions]-=
IK2PI;
4685else if( j5array[numsolutions] < -
IKPI )
4687 j5array[numsolutions]+=
IK2PI;
4689sj5array[numsolutions] =
IKsin(j5array[numsolutions]);
4690cj5array[numsolutions] =
IKcos(j5array[numsolutions]);
4694bool j5valid[2]={
true,
true};
4696for(
int ij5 = 0; ij5 < numsolutions; ++ij5)
4702 j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
4705_ij5[0] = ij5; _ij5[1] = -1;
4706for(
int iij5 = ij5+1; iij5 < numsolutions; ++iij5)
4710 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
4714std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
4715vinfos[0].jointtype = 1;
4716vinfos[0].foffset = j0;
4717vinfos[0].indices[0] = _ij0[0];
4718vinfos[0].indices[1] = _ij0[1];
4719vinfos[0].maxsolutions = _nj0;
4720vinfos[1].jointtype = 1;
4721vinfos[1].foffset = j1;
4722vinfos[1].indices[0] = _ij1[0];
4723vinfos[1].indices[1] = _ij1[1];
4724vinfos[1].maxsolutions = _nj1;
4725vinfos[2].jointtype = 1;
4726vinfos[2].foffset = j2;
4727vinfos[2].indices[0] = _ij2[0];
4728vinfos[2].indices[1] = _ij2[1];
4729vinfos[2].maxsolutions = _nj2;
4730vinfos[3].jointtype = 1;
4731vinfos[3].foffset = j3;
4732vinfos[3].indices[0] = _ij3[0];
4733vinfos[3].indices[1] = _ij3[1];
4734vinfos[3].maxsolutions = _nj3;
4735vinfos[4].jointtype = 1;
4736vinfos[4].foffset = j4;
4737vinfos[4].indices[0] = _ij4[0];
4738vinfos[4].indices[1] = _ij4[1];
4739vinfos[4].maxsolutions = _nj4;
4740vinfos[5].jointtype = 1;
4741vinfos[5].foffset = j5;
4742vinfos[5].indices[0] = _ij5[0];
4743vinfos[5].indices[1] = _ij5[1];
4744vinfos[5].maxsolutions = _nj5;
4745std::vector<int> vfree(0);
4756if( bgotonextstatement )
4758bool bgotonextstatement =
true;
4763bgotonextstatement=
false;
4768if( bgotonextstatement )
4783IkReal j5array[1], cj5array[1], sj5array[1];
4784bool j5valid[1]={
false};
4790IkReal x329=x330.
value;
4797j5array[0]=
IKatan2(((-1.0)*new_r21*x329), (x329*(x331.
value)*((((new_r11*sj4))+(((-1.0)*cj4*new_r21*sj3))))));
4798sj5array[0]=
IKsin(j5array[0]);
4799cj5array[0]=
IKcos(j5array[0]);
4800if( j5array[0] >
IKPI )
4804else if( j5array[0] < -
IKPI )
4808for(
int ij5 = 0; ij5 < 1; ++ij5)
4814_ij5[0] = ij5; _ij5[1] = -1;
4815for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
4819 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
4822j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
4825IkReal x332=
IKsin(j5);
4826IkReal x333=
IKcos(j5);
4827IkReal x334=(cj3*new_r00);
4828IkReal x335=(cj3*cj4);
4829IkReal x336=((1.0)*cj3);
4830IkReal x337=(new_r11*sj3);
4831IkReal x338=((1.0)*cj4);
4832IkReal x339=(new_r10*sj3);
4833IkReal x340=((1.0)*sj4);
4834IkReal x341=(sj3*x332);
4835IkReal x342=((1.0)*x333);
4836IkReal x343=(sj3*x333);
4837evalcond[0]=(((sj4*x332))+new_r21);
4838evalcond[1]=(new_r20+(((-1.0)*x333*x340)));
4839evalcond[2]=((((-1.0)*new_r10*x336))+((new_r00*sj3))+x332);
4840evalcond[3]=((((-1.0)*new_r11*x336))+((new_r01*sj3))+x333);
4841evalcond[4]=(x337+((cj4*x332))+((cj3*new_r01)));
4842evalcond[5]=(((x332*x335))+x343+new_r01);
4843evalcond[6]=((((-1.0)*x333*x338))+x339+x334);
4844evalcond[7]=((((-1.0)*x335*x342))+x341+new_r00);
4845evalcond[8]=((((-1.0)*x333*x336))+((cj4*x341))+new_r11);
4846evalcond[9]=((((-1.0)*x332*x336))+new_r10+(((-1.0)*x338*x343)));
4847evalcond[10]=((((-1.0)*x338*x339))+x333+(((-1.0)*new_r20*x340))+(((-1.0)*x334*x338)));
4848evalcond[11]=((((-1.0)*x337*x338))+(((-1.0)*new_r01*x335))+(((-1.0)*x332))+(((-1.0)*new_r21*x340)));
4856std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
4857vinfos[0].jointtype = 1;
4858vinfos[0].foffset = j0;
4859vinfos[0].indices[0] = _ij0[0];
4860vinfos[0].indices[1] = _ij0[1];
4861vinfos[0].maxsolutions = _nj0;
4862vinfos[1].jointtype = 1;
4863vinfos[1].foffset = j1;
4864vinfos[1].indices[0] = _ij1[0];
4865vinfos[1].indices[1] = _ij1[1];
4866vinfos[1].maxsolutions = _nj1;
4867vinfos[2].jointtype = 1;
4868vinfos[2].foffset = j2;
4869vinfos[2].indices[0] = _ij2[0];
4870vinfos[2].indices[1] = _ij2[1];
4871vinfos[2].maxsolutions = _nj2;
4872vinfos[3].jointtype = 1;
4873vinfos[3].foffset = j3;
4874vinfos[3].indices[0] = _ij3[0];
4875vinfos[3].indices[1] = _ij3[1];
4876vinfos[3].maxsolutions = _nj3;
4877vinfos[4].jointtype = 1;
4878vinfos[4].foffset = j4;
4879vinfos[4].indices[0] = _ij4[0];
4880vinfos[4].indices[1] = _ij4[1];
4881vinfos[4].maxsolutions = _nj4;
4882vinfos[5].jointtype = 1;
4883vinfos[5].foffset = j5;
4884vinfos[5].indices[0] = _ij5[0];
4885vinfos[5].indices[1] = _ij5[1];
4886vinfos[5].maxsolutions = _nj5;
4887std::vector<int> vfree(0);
4900IkReal j5array[1], cj5array[1], sj5array[1];
4901bool j5valid[1]={
false};
4907IkReal x344=x345.
value;
4914j5array[0]=
IKatan2(((-1.0)*new_r21*x344), (x344*(x346.
value)*(((((-1.0)*new_r01*sj4))+((cj3*cj4*new_r21))))));
4915sj5array[0]=
IKsin(j5array[0]);
4916cj5array[0]=
IKcos(j5array[0]);
4917if( j5array[0] >
IKPI )
4921else if( j5array[0] < -
IKPI )
4925for(
int ij5 = 0; ij5 < 1; ++ij5)
4931_ij5[0] = ij5; _ij5[1] = -1;
4932for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
4936 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
4939j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
4942IkReal x347=
IKsin(j5);
4943IkReal x348=
IKcos(j5);
4944IkReal x349=(cj3*new_r00);
4945IkReal x350=(cj3*cj4);
4946IkReal x351=((1.0)*cj3);
4947IkReal x352=(new_r11*sj3);
4948IkReal x353=((1.0)*cj4);
4949IkReal x354=(new_r10*sj3);
4950IkReal x355=((1.0)*sj4);
4951IkReal x356=(sj3*x347);
4952IkReal x357=((1.0)*x348);
4953IkReal x358=(sj3*x348);
4954evalcond[0]=(((sj4*x347))+new_r21);
4955evalcond[1]=((((-1.0)*x348*x355))+new_r20);
4956evalcond[2]=(((new_r00*sj3))+x347+(((-1.0)*new_r10*x351)));
4957evalcond[3]=(((new_r01*sj3))+x348+(((-1.0)*new_r11*x351)));
4958evalcond[4]=(x352+((cj4*x347))+((cj3*new_r01)));
4959evalcond[5]=(x358+((x347*x350))+new_r01);
4960evalcond[6]=((((-1.0)*x348*x353))+x354+x349);
4961evalcond[7]=(x356+new_r00+(((-1.0)*x350*x357)));
4962evalcond[8]=((((-1.0)*x348*x351))+((cj4*x356))+new_r11);
4963evalcond[9]=((((-1.0)*x347*x351))+(((-1.0)*x353*x358))+new_r10);
4964evalcond[10]=((((-1.0)*x349*x353))+x348+(((-1.0)*x353*x354))+(((-1.0)*new_r20*x355)));
4965evalcond[11]=((((-1.0)*new_r01*x350))+(((-1.0)*new_r21*x355))+(((-1.0)*x352*x353))+(((-1.0)*x347)));
4973std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
4974vinfos[0].jointtype = 1;
4975vinfos[0].foffset = j0;
4976vinfos[0].indices[0] = _ij0[0];
4977vinfos[0].indices[1] = _ij0[1];
4978vinfos[0].maxsolutions = _nj0;
4979vinfos[1].jointtype = 1;
4980vinfos[1].foffset = j1;
4981vinfos[1].indices[0] = _ij1[0];
4982vinfos[1].indices[1] = _ij1[1];
4983vinfos[1].maxsolutions = _nj1;
4984vinfos[2].jointtype = 1;
4985vinfos[2].foffset = j2;
4986vinfos[2].indices[0] = _ij2[0];
4987vinfos[2].indices[1] = _ij2[1];
4988vinfos[2].maxsolutions = _nj2;
4989vinfos[3].jointtype = 1;
4990vinfos[3].foffset = j3;
4991vinfos[3].indices[0] = _ij3[0];
4992vinfos[3].indices[1] = _ij3[1];
4993vinfos[3].maxsolutions = _nj3;
4994vinfos[4].jointtype = 1;
4995vinfos[4].foffset = j4;
4996vinfos[4].indices[0] = _ij4[0];
4997vinfos[4].indices[1] = _ij4[1];
4998vinfos[4].maxsolutions = _nj4;
4999vinfos[5].jointtype = 1;
5000vinfos[5].foffset = j5;
5001vinfos[5].indices[0] = _ij5[0];
5002vinfos[5].indices[1] = _ij5[1];
5003vinfos[5].maxsolutions = _nj5;
5004std::vector<int> vfree(0);
5017IkReal j5array[1], cj5array[1], sj5array[1];
5018bool j5valid[1]={
false};
5028j5array[0]=((-1.5707963267949)+(x359.
value)+(((1.5707963267949)*(x360.
value))));
5029sj5array[0]=
IKsin(j5array[0]);
5030cj5array[0]=
IKcos(j5array[0]);
5031if( j5array[0] >
IKPI )
5035else if( j5array[0] < -
IKPI )
5039for(
int ij5 = 0; ij5 < 1; ++ij5)
5045_ij5[0] = ij5; _ij5[1] = -1;
5046for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
5050 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
5053j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
5056IkReal x361=
IKsin(j5);
5057IkReal x362=
IKcos(j5);
5058IkReal x363=(cj3*new_r00);
5059IkReal x364=(cj3*cj4);
5060IkReal x365=((1.0)*cj3);
5061IkReal x366=(new_r11*sj3);
5062IkReal x367=((1.0)*cj4);
5063IkReal x368=(new_r10*sj3);
5064IkReal x369=((1.0)*sj4);
5065IkReal x370=(sj3*x361);
5066IkReal x371=((1.0)*x362);
5067IkReal x372=(sj3*x362);
5068evalcond[0]=(((sj4*x361))+new_r21);
5069evalcond[1]=((((-1.0)*x362*x369))+new_r20);
5070evalcond[2]=(((new_r00*sj3))+x361+(((-1.0)*new_r10*x365)));
5071evalcond[3]=(((new_r01*sj3))+x362+(((-1.0)*new_r11*x365)));
5072evalcond[4]=(((cj4*x361))+x366+((cj3*new_r01)));
5073evalcond[5]=(((x361*x364))+x372+new_r01);
5074evalcond[6]=((((-1.0)*x362*x367))+x368+x363);
5075evalcond[7]=(x370+new_r00+(((-1.0)*x364*x371)));
5076evalcond[8]=((((-1.0)*x362*x365))+((cj4*x370))+new_r11);
5077evalcond[9]=((((-1.0)*x361*x365))+(((-1.0)*x367*x372))+new_r10);
5078evalcond[10]=((((-1.0)*x363*x367))+(((-1.0)*new_r20*x369))+(((-1.0)*x367*x368))+x362);
5079evalcond[11]=((((-1.0)*x361))+(((-1.0)*x366*x367))+(((-1.0)*new_r01*x364))+(((-1.0)*new_r21*x369)));
5087std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
5088vinfos[0].jointtype = 1;
5089vinfos[0].foffset = j0;
5090vinfos[0].indices[0] = _ij0[0];
5091vinfos[0].indices[1] = _ij0[1];
5092vinfos[0].maxsolutions = _nj0;
5093vinfos[1].jointtype = 1;
5094vinfos[1].foffset = j1;
5095vinfos[1].indices[0] = _ij1[0];
5096vinfos[1].indices[1] = _ij1[1];
5097vinfos[1].maxsolutions = _nj1;
5098vinfos[2].jointtype = 1;
5099vinfos[2].foffset = j2;
5100vinfos[2].indices[0] = _ij2[0];
5101vinfos[2].indices[1] = _ij2[1];
5102vinfos[2].maxsolutions = _nj2;
5103vinfos[3].jointtype = 1;
5104vinfos[3].foffset = j3;
5105vinfos[3].indices[0] = _ij3[0];
5106vinfos[3].indices[1] = _ij3[1];
5107vinfos[3].maxsolutions = _nj3;
5108vinfos[4].jointtype = 1;
5109vinfos[4].foffset = j4;
5110vinfos[4].indices[0] = _ij4[0];
5111vinfos[4].indices[1] = _ij4[1];
5112vinfos[4].maxsolutions = _nj4;
5113vinfos[5].jointtype = 1;
5114vinfos[5].foffset = j5;
5115vinfos[5].indices[0] = _ij5[0];
5116vinfos[5].indices[1] = _ij5[1];
5117vinfos[5].maxsolutions = _nj5;
5118std::vector<int> vfree(0);
5137IkReal j5array[1], cj5array[1], sj5array[1];
5138bool j5valid[1]={
false};
5148j5array[0]=((-1.5707963267949)+(x373.
value)+(((1.5707963267949)*(x374.
value))));
5149sj5array[0]=
IKsin(j5array[0]);
5150cj5array[0]=
IKcos(j5array[0]);
5151if( j5array[0] >
IKPI )
5155else if( j5array[0] < -
IKPI )
5159for(
int ij5 = 0; ij5 < 1; ++ij5)
5165_ij5[0] = ij5; _ij5[1] = -1;
5166for(
int iij5 = ij5+1; iij5 < 1; ++iij5)
5170 j5valid[iij5]=
false; _ij5[1] = iij5;
break;
5173j5 = j5array[ij5]; cj5 = cj5array[ij5]; sj5 = sj5array[ij5];
5176evalcond[0]=(((sj4*(
IKsin(j5))))+new_r21);
5177evalcond[1]=((((-1.0)*sj4*(
IKcos(j5))))+new_r20);
5188j3eval[2]=((
IKabs(new_r12))+(
IKabs(new_r02)));
5189if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
5195if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 )
5199bool bgotonextstatement =
true;
5202evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(j4))), 6.28318530717959)));
5207if(
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 )
5209bgotonextstatement=
false;
5215IkReal x375=((1.0)*new_r11);
5216IkReal x376=((((-1.0)*new_r10*x375))+(((-1.0)*new_r00*new_r01)));
5218j3eval[1]=((
IKabs((((new_r10*sj5))+((new_r01*sj5)))))+(
IKabs(((((-1.0)*sj5*x375))+((new_r00*sj5))))));
5220if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
5227IkReal x377=((((-1.0)*(new_r01*new_r01)))+(((-1.0)*(new_r11*new_r11))));
5229j3eval[1]=((
IKabs((((new_r11*sj5))+((cj5*new_r01)))))+(
IKabs((((new_r01*sj5))+(((-1.0)*cj5*new_r11))))));
5231if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
5238IkReal x378=((1.0)*new_r11);
5239IkReal x379=((((-1.0)*cj5*x378))+(((-1.0)*new_r01*sj5)));
5242j3eval[2]=((
IKabs((((new_r00*new_r01))+((cj5*sj5)))))+(
IKabs(((1.0)+(((-1.0)*new_r00*x378))+(((-1.0)*(cj5*cj5)))))));
5243if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
5247bool bgotonextstatement =
true;
5250IkReal x380=((-1.0)*new_r01);
5251IkReal x382 = ((new_r01*new_r01)+(new_r11*new_r11));
5255IkReal x381=pow(x382,-0.5);
5260IkReal gconst0=((-1.0)*(x383.
value));
5261IkReal gconst1=(new_r11*x381);
5262IkReal gconst2=(x380*x381);
5267evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((x384.
value)+j5)))), 6.28318530717959)));
5268if(
IKabs(evalcond[0]) < 0.0000050000000000 )
5270bgotonextstatement=
false;
5273IkReal x385=((-1.0)*new_r01);
5278IkReal x386=((-1.0)*(x388.
value));
5287IkReal gconst1=(new_r11*x387);
5288IkReal gconst2=(x385*x387);
5289IkReal x389=new_r11*new_r11;
5290IkReal x390=(new_r10*new_r11);
5291IkReal x391=((((-1.0)*x390))+(((-1.0)*new_r00*new_r01)));
5293IkReal x393=(new_r11*x392);
5295j3eval[1]=((
IKabs(((((-1.0)*x389*x392))+((new_r00*x393)))))+(
IKabs((((new_r01*x393))+((x390*x392))))));
5297if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
5301IkReal x394=((-1.0)*new_r01);
5306IkReal x395=((-1.0)*(x397.
value));
5315IkReal gconst1=(new_r11*x396);
5316IkReal gconst2=(x394*x396);
5317IkReal x398=new_r11*new_r11;
5322IkReal x399=x401.
value;
5323IkReal x400=(x398*x399);
5324j3eval[0]=((
IKabs((((new_r01*new_r10))+x400)))+(
IKabs((((new_r00*new_r01*x400))+((new_r00*x399*(new_r01*new_r01*new_r01)))+((new_r01*new_r11*x399))))));
5325if(
IKabs(j3eval[0]) < 0.0000010000000000 )
5329IkReal x402=((-1.0)*new_r01);
5334IkReal x403=((-1.0)*(x405.
value));
5343IkReal gconst1=(new_r11*x404);
5344IkReal gconst2=(x402*x404);
5345IkReal x406=new_r01*new_r01;
5346IkReal x407=new_r11*new_r11;
5351IkReal x408=x414.
value;
5352IkReal x409=(x407*x408);
5357IkReal x410=x415.
value;
5358IkReal x411=((1.0)*x410);
5359IkReal x412=(new_r11*x411);
5360IkReal x413=(new_r01*x411);
5361j3eval[0]=((
IKabs((((x406*x409))+((x408*(x406*x406)))+(((-1.0)*x409)))))+(
IKabs(((((-1.0)*new_r01*x412*(new_r11*new_r11)))+(((-1.0)*x412*(new_r01*new_r01*new_r01)))+(((-1.0)*new_r01*x412))))));
5362if(
IKabs(j3eval[0]) < 0.0000010000000000 )
5366bool bgotonextstatement =
true;
5369evalcond[0]=((
IKabs(new_r11))+(
IKabs(new_r00)));
5370if(
IKabs(evalcond[0]) < 0.0000050000000000 )
5372bgotonextstatement=
false;
5374IkReal j3array[2], cj3array[2], sj3array[2];
5375bool j3valid[2]={
false};
5381sj3array[0]=(new_r10*(x416.
value));
5384 j3valid[0] = j3valid[1] =
true;
5385 j3array[0] =
IKasin(sj3array[0]);
5386 cj3array[0] =
IKcos(j3array[0]);
5387 sj3array[1] = sj3array[0];
5388 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
5389 cj3array[1] = -cj3array[0];
5391else if( isnan(sj3array[0]) )
5395 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
5397for(
int ij3 = 0; ij3 < 2; ++ij3)
5403_ij3[0] = ij3; _ij3[1] = -1;
5404for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
5408 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
5411j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
5414IkReal x417=
IKcos(j3);
5415IkReal x418=
IKsin(j3);
5416IkReal x419=((-1.0)*x417);
5417evalcond[0]=(new_r01*x417);
5418evalcond[1]=(new_r10*x419);
5419evalcond[2]=(gconst2*x419);
5420evalcond[3]=(gconst2+((new_r01*x418)));
5421evalcond[4]=(((gconst2*x418))+new_r01);
5422evalcond[5]=((((-1.0)*gconst2))+((new_r10*x418)));
5430std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
5431vinfos[0].jointtype = 1;
5432vinfos[0].foffset = j0;
5433vinfos[0].indices[0] = _ij0[0];
5434vinfos[0].indices[1] = _ij0[1];
5435vinfos[0].maxsolutions = _nj0;
5436vinfos[1].jointtype = 1;
5437vinfos[1].foffset = j1;
5438vinfos[1].indices[0] = _ij1[0];
5439vinfos[1].indices[1] = _ij1[1];
5440vinfos[1].maxsolutions = _nj1;
5441vinfos[2].jointtype = 1;
5442vinfos[2].foffset = j2;
5443vinfos[2].indices[0] = _ij2[0];
5444vinfos[2].indices[1] = _ij2[1];
5445vinfos[2].maxsolutions = _nj2;
5446vinfos[3].jointtype = 1;
5447vinfos[3].foffset = j3;
5448vinfos[3].indices[0] = _ij3[0];
5449vinfos[3].indices[1] = _ij3[1];
5450vinfos[3].maxsolutions = _nj3;
5451vinfos[4].jointtype = 1;
5452vinfos[4].foffset = j4;
5453vinfos[4].indices[0] = _ij4[0];
5454vinfos[4].indices[1] = _ij4[1];
5455vinfos[4].maxsolutions = _nj4;
5456vinfos[5].jointtype = 1;
5457vinfos[5].foffset = j5;
5458vinfos[5].indices[0] = _ij5[0];
5459vinfos[5].indices[1] = _ij5[1];
5460vinfos[5].maxsolutions = _nj5;
5461std::vector<int> vfree(0);
5469if( bgotonextstatement )
5471bool bgotonextstatement =
true;
5474evalcond[0]=((
IKabs(new_r10))+(
IKabs(new_r00)));
5477if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 &&
IKabs(evalcond[2]) < 0.0000050000000000 )
5479bgotonextstatement=
false;
5482IkReal x420=((-1.0)*new_r01);
5487IkReal x421=((-1.0)*(x422.
value));
5499IkReal gconst1=new_r11;
5503j3eval[2]=((
IKabs((new_r01*new_r11)))+(
IKabs(((1.0)+(((-1.0)*(new_r01*new_r01)))))));
5504if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
5508IkReal x423=((-1.0)*new_r01);
5513IkReal x424=((-1.0)*(x425.
value));
5525IkReal gconst1=new_r11;
5528j3eval[1]=((
IKabs(new_r01*new_r01))+(
IKabs((new_r01*new_r11))));
5530if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
5534IkReal x426=((-1.0)*new_r01);
5539IkReal x427=((-1.0)*(x428.
value));
5551IkReal gconst1=new_r11;
5555j3eval[2]=((((0.5)*(
IKabs(((-1.0)+(((2.0)*(new_r01*new_r01))))))))+(
IKabs((new_r01*new_r11))));
5556if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
5563IkReal j3array[1], cj3array[1], sj3array[1];
5564bool j3valid[1]={
false};
5566IkReal x429=((1.0)*new_r01);
5575j3array[0]=((-1.5707963267949)+(x430.
value)+(((1.5707963267949)*(x431.
value))));
5576sj3array[0]=
IKsin(j3array[0]);
5577cj3array[0]=
IKcos(j3array[0]);
5578if( j3array[0] >
IKPI )
5582else if( j3array[0] < -
IKPI )
5586for(
int ij3 = 0; ij3 < 1; ++ij3)
5592_ij3[0] = ij3; _ij3[1] = -1;
5593for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
5597 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
5600j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
5603IkReal x432=
IKcos(j3);
5604IkReal x433=
IKsin(j3);
5605IkReal x434=(gconst1*x433);
5606IkReal x435=(gconst2*x433);
5607IkReal x436=((1.0)*x432);
5608IkReal x437=(gconst2*x436);
5609evalcond[0]=(((new_r01*x432))+gconst1+((new_r11*x433)));
5610evalcond[1]=(((gconst1*x432))+x435+new_r01);
5611evalcond[2]=((((-1.0)*x437))+x434);
5612evalcond[3]=(((new_r01*x433))+gconst2+(((-1.0)*new_r11*x436)));
5613evalcond[4]=((((-1.0)*x437))+x434+new_r11);
5614evalcond[5]=((((-1.0)*x435))+(((-1.0)*gconst1*x436)));
5622std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
5623vinfos[0].jointtype = 1;
5624vinfos[0].foffset = j0;
5625vinfos[0].indices[0] = _ij0[0];
5626vinfos[0].indices[1] = _ij0[1];
5627vinfos[0].maxsolutions = _nj0;
5628vinfos[1].jointtype = 1;
5629vinfos[1].foffset = j1;
5630vinfos[1].indices[0] = _ij1[0];
5631vinfos[1].indices[1] = _ij1[1];
5632vinfos[1].maxsolutions = _nj1;
5633vinfos[2].jointtype = 1;
5634vinfos[2].foffset = j2;
5635vinfos[2].indices[0] = _ij2[0];
5636vinfos[2].indices[1] = _ij2[1];
5637vinfos[2].maxsolutions = _nj2;
5638vinfos[3].jointtype = 1;
5639vinfos[3].foffset = j3;
5640vinfos[3].indices[0] = _ij3[0];
5641vinfos[3].indices[1] = _ij3[1];
5642vinfos[3].maxsolutions = _nj3;
5643vinfos[4].jointtype = 1;
5644vinfos[4].foffset = j4;
5645vinfos[4].indices[0] = _ij4[0];
5646vinfos[4].indices[1] = _ij4[1];
5647vinfos[4].maxsolutions = _nj4;
5648vinfos[5].jointtype = 1;
5649vinfos[5].foffset = j5;
5650vinfos[5].indices[0] = _ij5[0];
5651vinfos[5].indices[1] = _ij5[1];
5652vinfos[5].maxsolutions = _nj5;
5653std::vector<int> vfree(0);
5666IkReal j3array[1], cj3array[1], sj3array[1];
5667bool j3valid[1]={
false};
5677j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x438.
value)))+(x439.
value));
5678sj3array[0]=
IKsin(j3array[0]);
5679cj3array[0]=
IKcos(j3array[0]);
5680if( j3array[0] >
IKPI )
5684else if( j3array[0] < -
IKPI )
5688for(
int ij3 = 0; ij3 < 1; ++ij3)
5694_ij3[0] = ij3; _ij3[1] = -1;
5695for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
5699 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
5702j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
5705IkReal x440=
IKcos(j3);
5706IkReal x441=
IKsin(j3);
5707IkReal x442=(gconst1*x441);
5708IkReal x443=(gconst2*x441);
5709IkReal x444=((1.0)*x440);
5710IkReal x445=(gconst2*x444);
5711evalcond[0]=(((new_r01*x440))+gconst1+((new_r11*x441)));
5712evalcond[1]=(((gconst1*x440))+x443+new_r01);
5713evalcond[2]=((((-1.0)*x445))+x442);
5714evalcond[3]=(((new_r01*x441))+gconst2+(((-1.0)*new_r11*x444)));
5715evalcond[4]=((((-1.0)*x445))+x442+new_r11);
5716evalcond[5]=((((-1.0)*x443))+(((-1.0)*gconst1*x444)));
5724std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
5725vinfos[0].jointtype = 1;
5726vinfos[0].foffset = j0;
5727vinfos[0].indices[0] = _ij0[0];
5728vinfos[0].indices[1] = _ij0[1];
5729vinfos[0].maxsolutions = _nj0;
5730vinfos[1].jointtype = 1;
5731vinfos[1].foffset = j1;
5732vinfos[1].indices[0] = _ij1[0];
5733vinfos[1].indices[1] = _ij1[1];
5734vinfos[1].maxsolutions = _nj1;
5735vinfos[2].jointtype = 1;
5736vinfos[2].foffset = j2;
5737vinfos[2].indices[0] = _ij2[0];
5738vinfos[2].indices[1] = _ij2[1];
5739vinfos[2].maxsolutions = _nj2;
5740vinfos[3].jointtype = 1;
5741vinfos[3].foffset = j3;
5742vinfos[3].indices[0] = _ij3[0];
5743vinfos[3].indices[1] = _ij3[1];
5744vinfos[3].maxsolutions = _nj3;
5745vinfos[4].jointtype = 1;
5746vinfos[4].foffset = j4;
5747vinfos[4].indices[0] = _ij4[0];
5748vinfos[4].indices[1] = _ij4[1];
5749vinfos[4].maxsolutions = _nj4;
5750vinfos[5].jointtype = 1;
5751vinfos[5].foffset = j5;
5752vinfos[5].indices[0] = _ij5[0];
5753vinfos[5].indices[1] = _ij5[1];
5754vinfos[5].maxsolutions = _nj5;
5755std::vector<int> vfree(0);
5768IkReal j3array[1], cj3array[1], sj3array[1];
5769bool j3valid[1]={
false};
5779j3array[0]=((-1.5707963267949)+(x446.
value)+(((1.5707963267949)*(x447.
value))));
5780sj3array[0]=
IKsin(j3array[0]);
5781cj3array[0]=
IKcos(j3array[0]);
5782if( j3array[0] >
IKPI )
5786else if( j3array[0] < -
IKPI )
5790for(
int ij3 = 0; ij3 < 1; ++ij3)
5796_ij3[0] = ij3; _ij3[1] = -1;
5797for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
5801 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
5804j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
5807IkReal x448=
IKcos(j3);
5808IkReal x449=
IKsin(j3);
5809IkReal x450=(gconst1*x449);
5810IkReal x451=(gconst2*x449);
5811IkReal x452=((1.0)*x448);
5812IkReal x453=(gconst2*x452);
5813evalcond[0]=(((new_r01*x448))+gconst1+((new_r11*x449)));
5814evalcond[1]=(((gconst1*x448))+x451+new_r01);
5815evalcond[2]=((((-1.0)*x453))+x450);
5816evalcond[3]=(((new_r01*x449))+gconst2+(((-1.0)*new_r11*x452)));
5817evalcond[4]=((((-1.0)*x453))+x450+new_r11);
5818evalcond[5]=((((-1.0)*x451))+(((-1.0)*gconst1*x452)));
5826std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
5827vinfos[0].jointtype = 1;
5828vinfos[0].foffset = j0;
5829vinfos[0].indices[0] = _ij0[0];
5830vinfos[0].indices[1] = _ij0[1];
5831vinfos[0].maxsolutions = _nj0;
5832vinfos[1].jointtype = 1;
5833vinfos[1].foffset = j1;
5834vinfos[1].indices[0] = _ij1[0];
5835vinfos[1].indices[1] = _ij1[1];
5836vinfos[1].maxsolutions = _nj1;
5837vinfos[2].jointtype = 1;
5838vinfos[2].foffset = j2;
5839vinfos[2].indices[0] = _ij2[0];
5840vinfos[2].indices[1] = _ij2[1];
5841vinfos[2].maxsolutions = _nj2;
5842vinfos[3].jointtype = 1;
5843vinfos[3].foffset = j3;
5844vinfos[3].indices[0] = _ij3[0];
5845vinfos[3].indices[1] = _ij3[1];
5846vinfos[3].maxsolutions = _nj3;
5847vinfos[4].jointtype = 1;
5848vinfos[4].foffset = j4;
5849vinfos[4].indices[0] = _ij4[0];
5850vinfos[4].indices[1] = _ij4[1];
5851vinfos[4].maxsolutions = _nj4;
5852vinfos[5].jointtype = 1;
5853vinfos[5].foffset = j5;
5854vinfos[5].indices[0] = _ij5[0];
5855vinfos[5].indices[1] = _ij5[1];
5856vinfos[5].maxsolutions = _nj5;
5857std::vector<int> vfree(0);
5869if( bgotonextstatement )
5871bool bgotonextstatement =
true;
5874evalcond[0]=((
IKabs(new_r10))+(
IKabs(new_r01)));
5875if(
IKabs(evalcond[0]) < 0.0000050000000000 )
5877bgotonextstatement=
false;
5884IkReal x454=((-1.0)*(x455.
value));
5894IkReal x456 = new_r11*new_r11;
5898IkReal gconst1=(new_r11*(pow(x456,-0.5)));
5901if(
IKabs(j3eval[0]) < 0.0000010000000000 )
5909IkReal x457=((-1.0)*(x458.
value));
5919IkReal x459 = new_r11*new_r11;
5923IkReal gconst1=(new_r11*(pow(x459,-0.5)));
5926if(
IKabs(j3eval[0]) < 0.0000010000000000 )
5929IkReal j3array[2], cj3array[2], sj3array[2];
5930bool j3valid[2]={
false};
5936sj3array[0]=((-1.0)*new_r00*(x460.
value));
5939 j3valid[0] = j3valid[1] =
true;
5940 j3array[0] =
IKasin(sj3array[0]);
5941 cj3array[0] =
IKcos(j3array[0]);
5942 sj3array[1] = sj3array[0];
5943 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
5944 cj3array[1] = -cj3array[0];
5946else if( isnan(sj3array[0]) )
5950 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
5952for(
int ij3 = 0; ij3 < 2; ++ij3)
5958_ij3[0] = ij3; _ij3[1] = -1;
5959for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
5963 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
5966j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
5969IkReal x461=
IKcos(j3);
5970IkReal x462=
IKsin(j3);
5971evalcond[0]=(gconst1*x461);
5972evalcond[1]=(new_r00*x461);
5973evalcond[2]=((-1.0)*new_r11*x461);
5974evalcond[3]=(((new_r00*x462))+gconst1);
5975evalcond[4]=(((new_r11*x462))+gconst1);
5976evalcond[5]=(((gconst1*x462))+new_r11);
5984std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
5985vinfos[0].jointtype = 1;
5986vinfos[0].foffset = j0;
5987vinfos[0].indices[0] = _ij0[0];
5988vinfos[0].indices[1] = _ij0[1];
5989vinfos[0].maxsolutions = _nj0;
5990vinfos[1].jointtype = 1;
5991vinfos[1].foffset = j1;
5992vinfos[1].indices[0] = _ij1[0];
5993vinfos[1].indices[1] = _ij1[1];
5994vinfos[1].maxsolutions = _nj1;
5995vinfos[2].jointtype = 1;
5996vinfos[2].foffset = j2;
5997vinfos[2].indices[0] = _ij2[0];
5998vinfos[2].indices[1] = _ij2[1];
5999vinfos[2].maxsolutions = _nj2;
6000vinfos[3].jointtype = 1;
6001vinfos[3].foffset = j3;
6002vinfos[3].indices[0] = _ij3[0];
6003vinfos[3].indices[1] = _ij3[1];
6004vinfos[3].maxsolutions = _nj3;
6005vinfos[4].jointtype = 1;
6006vinfos[4].foffset = j4;
6007vinfos[4].indices[0] = _ij4[0];
6008vinfos[4].indices[1] = _ij4[1];
6009vinfos[4].maxsolutions = _nj4;
6010vinfos[5].jointtype = 1;
6011vinfos[5].foffset = j5;
6012vinfos[5].indices[0] = _ij5[0];
6013vinfos[5].indices[1] = _ij5[1];
6014vinfos[5].maxsolutions = _nj5;
6015std::vector<int> vfree(0);
6024IkReal j3array[2], cj3array[2], sj3array[2];
6025bool j3valid[2]={
false};
6031sj3array[0]=((-1.0)*gconst1*(x463.
value));
6034 j3valid[0] = j3valid[1] =
true;
6035 j3array[0] =
IKasin(sj3array[0]);
6036 cj3array[0] =
IKcos(j3array[0]);
6037 sj3array[1] = sj3array[0];
6038 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
6039 cj3array[1] = -cj3array[0];
6041else if( isnan(sj3array[0]) )
6045 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
6047for(
int ij3 = 0; ij3 < 2; ++ij3)
6053_ij3[0] = ij3; _ij3[1] = -1;
6054for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
6058 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
6061j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
6064IkReal x464=
IKcos(j3);
6065IkReal x465=
IKsin(j3);
6066IkReal x466=(gconst1*x465);
6067evalcond[0]=(gconst1*x464);
6068evalcond[1]=(new_r00*x464);
6069evalcond[2]=((-1.0)*new_r11*x464);
6070evalcond[3]=(((new_r00*x465))+gconst1);
6071evalcond[4]=(x466+new_r00);
6072evalcond[5]=(x466+new_r11);
6080std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
6081vinfos[0].jointtype = 1;
6082vinfos[0].foffset = j0;
6083vinfos[0].indices[0] = _ij0[0];
6084vinfos[0].indices[1] = _ij0[1];
6085vinfos[0].maxsolutions = _nj0;
6086vinfos[1].jointtype = 1;
6087vinfos[1].foffset = j1;
6088vinfos[1].indices[0] = _ij1[0];
6089vinfos[1].indices[1] = _ij1[1];
6090vinfos[1].maxsolutions = _nj1;
6091vinfos[2].jointtype = 1;
6092vinfos[2].foffset = j2;
6093vinfos[2].indices[0] = _ij2[0];
6094vinfos[2].indices[1] = _ij2[1];
6095vinfos[2].maxsolutions = _nj2;
6096vinfos[3].jointtype = 1;
6097vinfos[3].foffset = j3;
6098vinfos[3].indices[0] = _ij3[0];
6099vinfos[3].indices[1] = _ij3[1];
6100vinfos[3].maxsolutions = _nj3;
6101vinfos[4].jointtype = 1;
6102vinfos[4].foffset = j4;
6103vinfos[4].indices[0] = _ij4[0];
6104vinfos[4].indices[1] = _ij4[1];
6105vinfos[4].maxsolutions = _nj4;
6106vinfos[5].jointtype = 1;
6107vinfos[5].foffset = j5;
6108vinfos[5].indices[0] = _ij5[0];
6109vinfos[5].indices[1] = _ij5[1];
6110vinfos[5].maxsolutions = _nj5;
6111std::vector<int> vfree(0);
6124IkReal j3array[2], cj3array[2], sj3array[2];
6125bool j3valid[2]={
false};
6131sj3array[0]=((-1.0)*gconst1*(x467.
value));
6134 j3valid[0] = j3valid[1] =
true;
6135 j3array[0] =
IKasin(sj3array[0]);
6136 cj3array[0] =
IKcos(j3array[0]);
6137 sj3array[1] = sj3array[0];
6138 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
6139 cj3array[1] = -cj3array[0];
6141else if( isnan(sj3array[0]) )
6145 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
6147for(
int ij3 = 0; ij3 < 2; ++ij3)
6153_ij3[0] = ij3; _ij3[1] = -1;
6154for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
6158 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
6161j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
6164IkReal x468=
IKcos(j3);
6165IkReal x469=
IKsin(j3);
6166IkReal x470=(gconst1*x469);
6167evalcond[0]=(gconst1*x468);
6168evalcond[1]=(new_r00*x468);
6169evalcond[2]=((-1.0)*new_r11*x468);
6170evalcond[3]=(((new_r11*x469))+gconst1);
6171evalcond[4]=(x470+new_r00);
6172evalcond[5]=(x470+new_r11);
6180std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
6181vinfos[0].jointtype = 1;
6182vinfos[0].foffset = j0;
6183vinfos[0].indices[0] = _ij0[0];
6184vinfos[0].indices[1] = _ij0[1];
6185vinfos[0].maxsolutions = _nj0;
6186vinfos[1].jointtype = 1;
6187vinfos[1].foffset = j1;
6188vinfos[1].indices[0] = _ij1[0];
6189vinfos[1].indices[1] = _ij1[1];
6190vinfos[1].maxsolutions = _nj1;
6191vinfos[2].jointtype = 1;
6192vinfos[2].foffset = j2;
6193vinfos[2].indices[0] = _ij2[0];
6194vinfos[2].indices[1] = _ij2[1];
6195vinfos[2].maxsolutions = _nj2;
6196vinfos[3].jointtype = 1;
6197vinfos[3].foffset = j3;
6198vinfos[3].indices[0] = _ij3[0];
6199vinfos[3].indices[1] = _ij3[1];
6200vinfos[3].maxsolutions = _nj3;
6201vinfos[4].jointtype = 1;
6202vinfos[4].foffset = j4;
6203vinfos[4].indices[0] = _ij4[0];
6204vinfos[4].indices[1] = _ij4[1];
6205vinfos[4].maxsolutions = _nj4;
6206vinfos[5].jointtype = 1;
6207vinfos[5].foffset = j5;
6208vinfos[5].indices[0] = _ij5[0];
6209vinfos[5].indices[1] = _ij5[1];
6210vinfos[5].maxsolutions = _nj5;
6211std::vector<int> vfree(0);
6223if( bgotonextstatement )
6225bool bgotonextstatement =
true;
6228evalcond[0]=
IKabs(new_r11);
6229if(
IKabs(evalcond[0]) < 0.0000050000000000 )
6231bgotonextstatement=
false;
6234IkReal x471=((-1.0)*new_r01);
6239IkReal x472=((-1.0)*(x473.
value));
6249IkReal x474 = new_r01*new_r01;
6253IkReal gconst2=(x471*(pow(x474,-0.5)));
6254j3eval[0]=((
IKabs(new_r10))+(
IKabs(new_r00)));
6255if(
IKabs(j3eval[0]) < 0.0000010000000000 )
6259IkReal x475=((-1.0)*new_r01);
6264IkReal x476=((-1.0)*(x477.
value));
6274IkReal x478 = new_r01*new_r01;
6278IkReal gconst2=(x475*(pow(x478,-0.5)));
6279j3eval[0]=((
IKabs(new_r00))+(
IKabs(new_r01)));
6280if(
IKabs(j3eval[0]) < 0.0000010000000000 )
6284IkReal x479=((-1.0)*new_r01);
6289IkReal x480=((-1.0)*(x481.
value));
6299IkReal x482 = new_r01*new_r01;
6303IkReal gconst2=(x479*(pow(x482,-0.5)));
6305if(
IKabs(j3eval[0]) < 0.0000010000000000 )
6312IkReal j3array[1], cj3array[1], sj3array[1];
6313bool j3valid[1]={
false};
6326sj3array[0]=
IKsin(j3array[0]);
6327cj3array[0]=
IKcos(j3array[0]);
6328if( j3array[0] >
IKPI )
6332else if( j3array[0] < -
IKPI )
6336for(
int ij3 = 0; ij3 < 1; ++ij3)
6342_ij3[0] = ij3; _ij3[1] = -1;
6343for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
6347 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
6350j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
6353IkReal x485=
IKcos(j3);
6354IkReal x486=
IKsin(j3);
6355IkReal x487=((1.0)*gconst2);
6356IkReal x488=(gconst2*x486);
6357evalcond[0]=(new_r01*x485);
6358evalcond[1]=((-1.0)*gconst2*x485);
6359evalcond[2]=(gconst2+((new_r01*x486)));
6360evalcond[3]=(x488+new_r01);
6361evalcond[4]=(new_r00+(((-1.0)*x485*x487)));
6362evalcond[5]=((((-1.0)*x486*x487))+new_r10);
6363evalcond[6]=((((-1.0)*new_r10*x485))+((new_r00*x486)));
6364evalcond[7]=((((-1.0)*x487))+((new_r10*x486))+((new_r00*x485)));
6372std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
6373vinfos[0].jointtype = 1;
6374vinfos[0].foffset = j0;
6375vinfos[0].indices[0] = _ij0[0];
6376vinfos[0].indices[1] = _ij0[1];
6377vinfos[0].maxsolutions = _nj0;
6378vinfos[1].jointtype = 1;
6379vinfos[1].foffset = j1;
6380vinfos[1].indices[0] = _ij1[0];
6381vinfos[1].indices[1] = _ij1[1];
6382vinfos[1].maxsolutions = _nj1;
6383vinfos[2].jointtype = 1;
6384vinfos[2].foffset = j2;
6385vinfos[2].indices[0] = _ij2[0];
6386vinfos[2].indices[1] = _ij2[1];
6387vinfos[2].maxsolutions = _nj2;
6388vinfos[3].jointtype = 1;
6389vinfos[3].foffset = j3;
6390vinfos[3].indices[0] = _ij3[0];
6391vinfos[3].indices[1] = _ij3[1];
6392vinfos[3].maxsolutions = _nj3;
6393vinfos[4].jointtype = 1;
6394vinfos[4].foffset = j4;
6395vinfos[4].indices[0] = _ij4[0];
6396vinfos[4].indices[1] = _ij4[1];
6397vinfos[4].maxsolutions = _nj4;
6398vinfos[5].jointtype = 1;
6399vinfos[5].foffset = j5;
6400vinfos[5].indices[0] = _ij5[0];
6401vinfos[5].indices[1] = _ij5[1];
6402vinfos[5].maxsolutions = _nj5;
6403std::vector<int> vfree(0);
6416IkReal j3array[1], cj3array[1], sj3array[1];
6417bool j3valid[1]={
false};
6427j3array[0]=((-1.5707963267949)+(x489.
value)+(((1.5707963267949)*(x490.
value))));
6428sj3array[0]=
IKsin(j3array[0]);
6429cj3array[0]=
IKcos(j3array[0]);
6430if( j3array[0] >
IKPI )
6434else if( j3array[0] < -
IKPI )
6438for(
int ij3 = 0; ij3 < 1; ++ij3)
6444_ij3[0] = ij3; _ij3[1] = -1;
6445for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
6449 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
6452j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
6455IkReal x491=
IKcos(j3);
6456IkReal x492=
IKsin(j3);
6457IkReal x493=((1.0)*gconst2);
6458IkReal x494=(gconst2*x492);
6459evalcond[0]=(new_r01*x491);
6460evalcond[1]=((-1.0)*gconst2*x491);
6461evalcond[2]=(gconst2+((new_r01*x492)));
6462evalcond[3]=(x494+new_r01);
6463evalcond[4]=((((-1.0)*x491*x493))+new_r00);
6464evalcond[5]=(new_r10+(((-1.0)*x492*x493)));
6465evalcond[6]=((((-1.0)*new_r10*x491))+((new_r00*x492)));
6466evalcond[7]=((((-1.0)*x493))+((new_r10*x492))+((new_r00*x491)));
6474std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
6475vinfos[0].jointtype = 1;
6476vinfos[0].foffset = j0;
6477vinfos[0].indices[0] = _ij0[0];
6478vinfos[0].indices[1] = _ij0[1];
6479vinfos[0].maxsolutions = _nj0;
6480vinfos[1].jointtype = 1;
6481vinfos[1].foffset = j1;
6482vinfos[1].indices[0] = _ij1[0];
6483vinfos[1].indices[1] = _ij1[1];
6484vinfos[1].maxsolutions = _nj1;
6485vinfos[2].jointtype = 1;
6486vinfos[2].foffset = j2;
6487vinfos[2].indices[0] = _ij2[0];
6488vinfos[2].indices[1] = _ij2[1];
6489vinfos[2].maxsolutions = _nj2;
6490vinfos[3].jointtype = 1;
6491vinfos[3].foffset = j3;
6492vinfos[3].indices[0] = _ij3[0];
6493vinfos[3].indices[1] = _ij3[1];
6494vinfos[3].maxsolutions = _nj3;
6495vinfos[4].jointtype = 1;
6496vinfos[4].foffset = j4;
6497vinfos[4].indices[0] = _ij4[0];
6498vinfos[4].indices[1] = _ij4[1];
6499vinfos[4].maxsolutions = _nj4;
6500vinfos[5].jointtype = 1;
6501vinfos[5].foffset = j5;
6502vinfos[5].indices[0] = _ij5[0];
6503vinfos[5].indices[1] = _ij5[1];
6504vinfos[5].maxsolutions = _nj5;
6505std::vector<int> vfree(0);
6518IkReal j3array[1], cj3array[1], sj3array[1];
6519bool j3valid[1]={
false};
6529j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x495.
value)))+(x496.
value));
6530sj3array[0]=
IKsin(j3array[0]);
6531cj3array[0]=
IKcos(j3array[0]);
6532if( j3array[0] >
IKPI )
6536else if( j3array[0] < -
IKPI )
6540for(
int ij3 = 0; ij3 < 1; ++ij3)
6546_ij3[0] = ij3; _ij3[1] = -1;
6547for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
6551 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
6554j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
6557IkReal x497=
IKcos(j3);
6558IkReal x498=
IKsin(j3);
6559IkReal x499=((1.0)*gconst2);
6560IkReal x500=(gconst2*x498);
6561evalcond[0]=(new_r01*x497);
6562evalcond[1]=((-1.0)*gconst2*x497);
6563evalcond[2]=(gconst2+((new_r01*x498)));
6564evalcond[3]=(x500+new_r01);
6565evalcond[4]=((((-1.0)*x497*x499))+new_r00);
6566evalcond[5]=((((-1.0)*x498*x499))+new_r10);
6567evalcond[6]=((((-1.0)*new_r10*x497))+((new_r00*x498)));
6568evalcond[7]=((((-1.0)*x499))+((new_r10*x498))+((new_r00*x497)));
6576std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
6577vinfos[0].jointtype = 1;
6578vinfos[0].foffset = j0;
6579vinfos[0].indices[0] = _ij0[0];
6580vinfos[0].indices[1] = _ij0[1];
6581vinfos[0].maxsolutions = _nj0;
6582vinfos[1].jointtype = 1;
6583vinfos[1].foffset = j1;
6584vinfos[1].indices[0] = _ij1[0];
6585vinfos[1].indices[1] = _ij1[1];
6586vinfos[1].maxsolutions = _nj1;
6587vinfos[2].jointtype = 1;
6588vinfos[2].foffset = j2;
6589vinfos[2].indices[0] = _ij2[0];
6590vinfos[2].indices[1] = _ij2[1];
6591vinfos[2].maxsolutions = _nj2;
6592vinfos[3].jointtype = 1;
6593vinfos[3].foffset = j3;
6594vinfos[3].indices[0] = _ij3[0];
6595vinfos[3].indices[1] = _ij3[1];
6596vinfos[3].maxsolutions = _nj3;
6597vinfos[4].jointtype = 1;
6598vinfos[4].foffset = j4;
6599vinfos[4].indices[0] = _ij4[0];
6600vinfos[4].indices[1] = _ij4[1];
6601vinfos[4].maxsolutions = _nj4;
6602vinfos[5].jointtype = 1;
6603vinfos[5].foffset = j5;
6604vinfos[5].indices[0] = _ij5[0];
6605vinfos[5].indices[1] = _ij5[1];
6606vinfos[5].maxsolutions = _nj5;
6607std::vector<int> vfree(0);
6619if( bgotonextstatement )
6621bool bgotonextstatement =
true;
6626bgotonextstatement=
false;
6631if( bgotonextstatement )
6643IkReal j3array[1], cj3array[1], sj3array[1];
6644bool j3valid[1]={
false};
6646IkReal x501=((1.0)*new_r01);
6655j3array[0]=((-1.5707963267949)+(x502.
value)+(((1.5707963267949)*(x503.
value))));
6656sj3array[0]=
IKsin(j3array[0]);
6657cj3array[0]=
IKcos(j3array[0]);
6658if( j3array[0] >
IKPI )
6662else if( j3array[0] < -
IKPI )
6666for(
int ij3 = 0; ij3 < 1; ++ij3)
6672_ij3[0] = ij3; _ij3[1] = -1;
6673for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
6677 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
6680j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
6683IkReal x504=
IKcos(j3);
6684IkReal x505=
IKsin(j3);
6685IkReal x506=((1.0)*gconst2);
6686IkReal x507=(gconst1*x505);
6687IkReal x508=(gconst2*x505);
6688IkReal x509=(gconst1*x504);
6689IkReal x510=((1.0)*x504);
6690IkReal x511=(x504*x506);
6691evalcond[0]=(gconst1+((new_r11*x505))+((new_r01*x504)));
6692evalcond[1]=(x508+x509+new_r01);
6693evalcond[2]=((((-1.0)*new_r10*x510))+gconst1+((new_r00*x505)));
6694evalcond[3]=((((-1.0)*new_r11*x510))+gconst2+((new_r01*x505)));
6695evalcond[4]=(x507+new_r00+(((-1.0)*x511)));
6696evalcond[5]=(x507+new_r11+(((-1.0)*x511)));
6697evalcond[6]=((((-1.0)*x506))+((new_r10*x505))+((new_r00*x504)));
6698evalcond[7]=((((-1.0)*x505*x506))+new_r10+(((-1.0)*x509)));
6706std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
6707vinfos[0].jointtype = 1;
6708vinfos[0].foffset = j0;
6709vinfos[0].indices[0] = _ij0[0];
6710vinfos[0].indices[1] = _ij0[1];
6711vinfos[0].maxsolutions = _nj0;
6712vinfos[1].jointtype = 1;
6713vinfos[1].foffset = j1;
6714vinfos[1].indices[0] = _ij1[0];
6715vinfos[1].indices[1] = _ij1[1];
6716vinfos[1].maxsolutions = _nj1;
6717vinfos[2].jointtype = 1;
6718vinfos[2].foffset = j2;
6719vinfos[2].indices[0] = _ij2[0];
6720vinfos[2].indices[1] = _ij2[1];
6721vinfos[2].maxsolutions = _nj2;
6722vinfos[3].jointtype = 1;
6723vinfos[3].foffset = j3;
6724vinfos[3].indices[0] = _ij3[0];
6725vinfos[3].indices[1] = _ij3[1];
6726vinfos[3].maxsolutions = _nj3;
6727vinfos[4].jointtype = 1;
6728vinfos[4].foffset = j4;
6729vinfos[4].indices[0] = _ij4[0];
6730vinfos[4].indices[1] = _ij4[1];
6731vinfos[4].maxsolutions = _nj4;
6732vinfos[5].jointtype = 1;
6733vinfos[5].foffset = j5;
6734vinfos[5].indices[0] = _ij5[0];
6735vinfos[5].indices[1] = _ij5[1];
6736vinfos[5].maxsolutions = _nj5;
6737std::vector<int> vfree(0);
6750IkReal j3array[1], cj3array[1], sj3array[1];
6751bool j3valid[1]={
false};
6753IkReal x512=((1.0)*gconst2);
6762j3array[0]=((-1.5707963267949)+(x513.
value)+(((1.5707963267949)*(x514.
value))));
6763sj3array[0]=
IKsin(j3array[0]);
6764cj3array[0]=
IKcos(j3array[0]);
6765if( j3array[0] >
IKPI )
6769else if( j3array[0] < -
IKPI )
6773for(
int ij3 = 0; ij3 < 1; ++ij3)
6779_ij3[0] = ij3; _ij3[1] = -1;
6780for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
6784 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
6787j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
6790IkReal x515=
IKcos(j3);
6791IkReal x516=
IKsin(j3);
6792IkReal x517=((1.0)*gconst2);
6793IkReal x518=(gconst1*x516);
6794IkReal x519=(gconst2*x516);
6795IkReal x520=(gconst1*x515);
6796IkReal x521=((1.0)*x515);
6797IkReal x522=(x515*x517);
6798evalcond[0]=(((new_r01*x515))+((new_r11*x516))+gconst1);
6799evalcond[1]=(x520+x519+new_r01);
6800evalcond[2]=(((new_r00*x516))+gconst1+(((-1.0)*new_r10*x521)));
6801evalcond[3]=(((new_r01*x516))+gconst2+(((-1.0)*new_r11*x521)));
6802evalcond[4]=((((-1.0)*x522))+x518+new_r00);
6803evalcond[5]=((((-1.0)*x522))+x518+new_r11);
6804evalcond[6]=(((new_r00*x515))+((new_r10*x516))+(((-1.0)*x517)));
6805evalcond[7]=((((-1.0)*x520))+(((-1.0)*x516*x517))+new_r10);
6813std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
6814vinfos[0].jointtype = 1;
6815vinfos[0].foffset = j0;
6816vinfos[0].indices[0] = _ij0[0];
6817vinfos[0].indices[1] = _ij0[1];
6818vinfos[0].maxsolutions = _nj0;
6819vinfos[1].jointtype = 1;
6820vinfos[1].foffset = j1;
6821vinfos[1].indices[0] = _ij1[0];
6822vinfos[1].indices[1] = _ij1[1];
6823vinfos[1].maxsolutions = _nj1;
6824vinfos[2].jointtype = 1;
6825vinfos[2].foffset = j2;
6826vinfos[2].indices[0] = _ij2[0];
6827vinfos[2].indices[1] = _ij2[1];
6828vinfos[2].maxsolutions = _nj2;
6829vinfos[3].jointtype = 1;
6830vinfos[3].foffset = j3;
6831vinfos[3].indices[0] = _ij3[0];
6832vinfos[3].indices[1] = _ij3[1];
6833vinfos[3].maxsolutions = _nj3;
6834vinfos[4].jointtype = 1;
6835vinfos[4].foffset = j4;
6836vinfos[4].indices[0] = _ij4[0];
6837vinfos[4].indices[1] = _ij4[1];
6838vinfos[4].maxsolutions = _nj4;
6839vinfos[5].jointtype = 1;
6840vinfos[5].foffset = j5;
6841vinfos[5].indices[0] = _ij5[0];
6842vinfos[5].indices[1] = _ij5[1];
6843vinfos[5].maxsolutions = _nj5;
6844std::vector<int> vfree(0);
6857IkReal j3array[1], cj3array[1], sj3array[1];
6858bool j3valid[1]={
false};
6860IkReal x523=((1.0)*new_r11);
6869j3array[0]=((-1.5707963267949)+(x524.
value)+(((1.5707963267949)*(x525.
value))));
6870sj3array[0]=
IKsin(j3array[0]);
6871cj3array[0]=
IKcos(j3array[0]);
6872if( j3array[0] >
IKPI )
6876else if( j3array[0] < -
IKPI )
6880for(
int ij3 = 0; ij3 < 1; ++ij3)
6886_ij3[0] = ij3; _ij3[1] = -1;
6887for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
6891 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
6894j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
6897IkReal x526=
IKcos(j3);
6898IkReal x527=
IKsin(j3);
6899IkReal x528=((1.0)*gconst2);
6900IkReal x529=(gconst1*x527);
6901IkReal x530=(gconst2*x527);
6902IkReal x531=(gconst1*x526);
6903IkReal x532=((1.0)*x526);
6904IkReal x533=(x526*x528);
6905evalcond[0]=(((new_r01*x526))+gconst1+((new_r11*x527)));
6906evalcond[1]=(x531+x530+new_r01);
6907evalcond[2]=(gconst1+(((-1.0)*new_r10*x532))+((new_r00*x527)));
6908evalcond[3]=(((new_r01*x527))+gconst2+(((-1.0)*new_r11*x532)));
6909evalcond[4]=((((-1.0)*x533))+x529+new_r00);
6910evalcond[5]=((((-1.0)*x533))+x529+new_r11);
6911evalcond[6]=((((-1.0)*x528))+((new_r10*x527))+((new_r00*x526)));
6912evalcond[7]=((((-1.0)*x527*x528))+(((-1.0)*x531))+new_r10);
6920std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
6921vinfos[0].jointtype = 1;
6922vinfos[0].foffset = j0;
6923vinfos[0].indices[0] = _ij0[0];
6924vinfos[0].indices[1] = _ij0[1];
6925vinfos[0].maxsolutions = _nj0;
6926vinfos[1].jointtype = 1;
6927vinfos[1].foffset = j1;
6928vinfos[1].indices[0] = _ij1[0];
6929vinfos[1].indices[1] = _ij1[1];
6930vinfos[1].maxsolutions = _nj1;
6931vinfos[2].jointtype = 1;
6932vinfos[2].foffset = j2;
6933vinfos[2].indices[0] = _ij2[0];
6934vinfos[2].indices[1] = _ij2[1];
6935vinfos[2].maxsolutions = _nj2;
6936vinfos[3].jointtype = 1;
6937vinfos[3].foffset = j3;
6938vinfos[3].indices[0] = _ij3[0];
6939vinfos[3].indices[1] = _ij3[1];
6940vinfos[3].maxsolutions = _nj3;
6941vinfos[4].jointtype = 1;
6942vinfos[4].foffset = j4;
6943vinfos[4].indices[0] = _ij4[0];
6944vinfos[4].indices[1] = _ij4[1];
6945vinfos[4].maxsolutions = _nj4;
6946vinfos[5].jointtype = 1;
6947vinfos[5].foffset = j5;
6948vinfos[5].indices[0] = _ij5[0];
6949vinfos[5].indices[1] = _ij5[1];
6950vinfos[5].maxsolutions = _nj5;
6951std::vector<int> vfree(0);
6963if( bgotonextstatement )
6965bool bgotonextstatement =
true;
6968IkReal x534=((-1.0)*new_r11);
6969IkReal x536 = ((new_r01*new_r01)+(new_r11*new_r11));
6973IkReal x535=pow(x536,-0.5);
6978IkReal gconst3=((3.14159265358979)+(((-1.0)*(x537.
value))));
6979IkReal gconst4=(x534*x535);
6980IkReal gconst5=((1.0)*new_r01*x535);
6985evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-3.14159265358979)+(x538.
value)+j5)))), 6.28318530717959)));
6986if(
IKabs(evalcond[0]) < 0.0000050000000000 )
6988bgotonextstatement=
false;
6991IkReal x539=((-1.0)*new_r11);
6996IkReal x540=((1.0)*(x542.
value));
7003j5=((3.14159265)+(((-1.0)*x540)));
7004IkReal gconst3=((3.14159265358979)+(((-1.0)*x540)));
7005IkReal gconst4=(x539*x541);
7006IkReal gconst5=((1.0)*new_r01*x541);
7007IkReal x543=new_r11*new_r11;
7008IkReal x544=((1.0)*new_r01);
7009IkReal x545=((1.0)*new_r10);
7010IkReal x546=((((-1.0)*new_r00*x544))+(((-1.0)*new_r11*x545)));
7012IkReal x548=(new_r11*x547);
7014j3eval[1]=((
IKabs((((x543*x547))+(((-1.0)*new_r00*x548)))))+(
IKabs(((((-1.0)*x544*x548))+(((-1.0)*x545*x548))))));
7016if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
7020IkReal x549=((-1.0)*new_r11);
7025IkReal x550=((1.0)*(x552.
value));
7032j5=((3.14159265)+(((-1.0)*x550)));
7033IkReal gconst3=((3.14159265358979)+(((-1.0)*x550)));
7034IkReal gconst4=(x549*x551);
7035IkReal gconst5=((1.0)*new_r01*x551);
7036IkReal x553=new_r11*new_r11;
7037IkReal x554=new_r01*new_r01*new_r01;
7042IkReal x555=x558.
value;
7043IkReal x556=(x553*x555);
7044IkReal x557=(x554*x555);
7045j3eval[0]=((
IKabs((((new_r10*x557))+x556+((new_r01*new_r10*x556)))))+(
IKabs((((new_r00*new_r01*x556))+((new_r01*new_r11*x555))+((new_r00*x557))))));
7046if(
IKabs(j3eval[0]) < 0.0000010000000000 )
7050IkReal x559=((-1.0)*new_r11);
7055IkReal x560=((1.0)*(x562.
value));
7062j5=((3.14159265)+(((-1.0)*x560)));
7063IkReal gconst3=((3.14159265358979)+(((-1.0)*x560)));
7064IkReal gconst4=(x559*x561);
7065IkReal gconst5=((1.0)*new_r01*x561);
7066IkReal x563=new_r01*new_r01;
7067IkReal x564=new_r11*new_r11;
7072IkReal x565=x571.
value;
7073IkReal x566=(x564*x565);
7078IkReal x567=x572.
value;
7079IkReal x568=((1.0)*x567);
7080IkReal x569=(new_r11*x568);
7081IkReal x570=(new_r01*x568);
7082j3eval[0]=((
IKabs((((x563*x566))+((x565*(x563*x563)))+(((-1.0)*x566)))))+(
IKabs(((((-1.0)*new_r01*x569*(new_r11*new_r11)))+(((-1.0)*x569*(new_r01*new_r01*new_r01)))+(((-1.0)*new_r01*x569))))));
7083if(
IKabs(j3eval[0]) < 0.0000010000000000 )
7087bool bgotonextstatement =
true;
7090evalcond[0]=((
IKabs(new_r11))+(
IKabs(new_r00)));
7091if(
IKabs(evalcond[0]) < 0.0000050000000000 )
7093bgotonextstatement=
false;
7095IkReal j3array[2], cj3array[2], sj3array[2];
7096bool j3valid[2]={
false};
7102sj3array[0]=(new_r10*(x573.
value));
7105 j3valid[0] = j3valid[1] =
true;
7106 j3array[0] =
IKasin(sj3array[0]);
7107 cj3array[0] =
IKcos(j3array[0]);
7108 sj3array[1] = sj3array[0];
7109 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
7110 cj3array[1] = -cj3array[0];
7112else if( isnan(sj3array[0]) )
7116 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
7118for(
int ij3 = 0; ij3 < 2; ++ij3)
7124_ij3[0] = ij3; _ij3[1] = -1;
7125for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
7129 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
7132j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
7135IkReal x574=
IKcos(j3);
7136IkReal x575=
IKsin(j3);
7137IkReal x576=((-1.0)*x574);
7138evalcond[0]=(new_r01*x574);
7139evalcond[1]=(new_r10*x576);
7140evalcond[2]=(gconst5*x576);
7141evalcond[3]=(((new_r01*x575))+gconst5);
7142evalcond[4]=(((gconst5*x575))+new_r01);
7143evalcond[5]=(((new_r10*x575))+(((-1.0)*gconst5)));
7151std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
7152vinfos[0].jointtype = 1;
7153vinfos[0].foffset = j0;
7154vinfos[0].indices[0] = _ij0[0];
7155vinfos[0].indices[1] = _ij0[1];
7156vinfos[0].maxsolutions = _nj0;
7157vinfos[1].jointtype = 1;
7158vinfos[1].foffset = j1;
7159vinfos[1].indices[0] = _ij1[0];
7160vinfos[1].indices[1] = _ij1[1];
7161vinfos[1].maxsolutions = _nj1;
7162vinfos[2].jointtype = 1;
7163vinfos[2].foffset = j2;
7164vinfos[2].indices[0] = _ij2[0];
7165vinfos[2].indices[1] = _ij2[1];
7166vinfos[2].maxsolutions = _nj2;
7167vinfos[3].jointtype = 1;
7168vinfos[3].foffset = j3;
7169vinfos[3].indices[0] = _ij3[0];
7170vinfos[3].indices[1] = _ij3[1];
7171vinfos[3].maxsolutions = _nj3;
7172vinfos[4].jointtype = 1;
7173vinfos[4].foffset = j4;
7174vinfos[4].indices[0] = _ij4[0];
7175vinfos[4].indices[1] = _ij4[1];
7176vinfos[4].maxsolutions = _nj4;
7177vinfos[5].jointtype = 1;
7178vinfos[5].foffset = j5;
7179vinfos[5].indices[0] = _ij5[0];
7180vinfos[5].indices[1] = _ij5[1];
7181vinfos[5].maxsolutions = _nj5;
7182std::vector<int> vfree(0);
7190if( bgotonextstatement )
7192bool bgotonextstatement =
true;
7195evalcond[0]=((
IKabs(new_r10))+(
IKabs(new_r00)));
7198if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 &&
IKabs(evalcond[2]) < 0.0000050000000000 )
7200bgotonextstatement=
false;
7203IkReal x577=((-1.0)*new_r11);
7208IkReal x578=((1.0)*(x579.
value));
7214j5=((3.14159265)+(((-1.0)*x578)));
7219IkReal gconst3=((3.14159265358979)+(((-1.0)*x578)));
7221IkReal gconst5=((1.0)*new_r01);
7224j3eval[2]=((
IKabs(((1.0)+(((-1.0)*(new_r01*new_r01))))))+(
IKabs(((1.0)*new_r01*new_r11))));
7225if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
7229IkReal x580=((-1.0)*new_r11);
7234IkReal x581=((1.0)*(x582.
value));
7240j5=((3.14159265)+(((-1.0)*x581)));
7245IkReal gconst3=((3.14159265358979)+(((-1.0)*x581)));
7247IkReal gconst5=((1.0)*new_r01);
7252if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 ||
IKabs(j3eval[3]) < 0.0000010000000000 )
7256IkReal x583=((-1.0)*new_r11);
7261IkReal x584=((1.0)*(x585.
value));
7267j5=((3.14159265)+(((-1.0)*x584)));
7272IkReal gconst3=((3.14159265358979)+(((-1.0)*x584)));
7274IkReal gconst5=((1.0)*new_r01);
7277j3eval[2]=((
IKabs(((2.0)*new_r01*new_r11)))+(
IKabs(((-1.0)+(((2.0)*(new_r01*new_r01)))))));
7278if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
7285IkReal j3array[1], cj3array[1], sj3array[1];
7286bool j3valid[1]={
false};
7288IkReal x586=((1.0)*new_r01);
7297j3array[0]=((-1.5707963267949)+(x587.
value)+(((1.5707963267949)*(x588.
value))));
7298sj3array[0]=
IKsin(j3array[0]);
7299cj3array[0]=
IKcos(j3array[0]);
7300if( j3array[0] >
IKPI )
7304else if( j3array[0] < -
IKPI )
7308for(
int ij3 = 0; ij3 < 1; ++ij3)
7314_ij3[0] = ij3; _ij3[1] = -1;
7315for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
7319 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
7322j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
7325IkReal x589=
IKsin(j3);
7326IkReal x590=
IKcos(j3);
7327IkReal x591=(gconst4*x589);
7328IkReal x592=(gconst4*x590);
7329IkReal x593=((1.0)*x590);
7330IkReal x594=(gconst5*x589);
7331IkReal x595=(gconst5*x593);
7332evalcond[0]=(gconst4+((new_r01*x590))+((new_r11*x589)));
7333evalcond[1]=(x594+x592+new_r01);
7334evalcond[2]=((((-1.0)*x595))+x591);
7335evalcond[3]=((((-1.0)*new_r11*x593))+gconst5+((new_r01*x589)));
7336evalcond[4]=((((-1.0)*x595))+x591+new_r11);
7337evalcond[5]=((((-1.0)*x594))+(((-1.0)*x592)));
7345std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
7346vinfos[0].jointtype = 1;
7347vinfos[0].foffset = j0;
7348vinfos[0].indices[0] = _ij0[0];
7349vinfos[0].indices[1] = _ij0[1];
7350vinfos[0].maxsolutions = _nj0;
7351vinfos[1].jointtype = 1;
7352vinfos[1].foffset = j1;
7353vinfos[1].indices[0] = _ij1[0];
7354vinfos[1].indices[1] = _ij1[1];
7355vinfos[1].maxsolutions = _nj1;
7356vinfos[2].jointtype = 1;
7357vinfos[2].foffset = j2;
7358vinfos[2].indices[0] = _ij2[0];
7359vinfos[2].indices[1] = _ij2[1];
7360vinfos[2].maxsolutions = _nj2;
7361vinfos[3].jointtype = 1;
7362vinfos[3].foffset = j3;
7363vinfos[3].indices[0] = _ij3[0];
7364vinfos[3].indices[1] = _ij3[1];
7365vinfos[3].maxsolutions = _nj3;
7366vinfos[4].jointtype = 1;
7367vinfos[4].foffset = j4;
7368vinfos[4].indices[0] = _ij4[0];
7369vinfos[4].indices[1] = _ij4[1];
7370vinfos[4].maxsolutions = _nj4;
7371vinfos[5].jointtype = 1;
7372vinfos[5].foffset = j5;
7373vinfos[5].indices[0] = _ij5[0];
7374vinfos[5].indices[1] = _ij5[1];
7375vinfos[5].maxsolutions = _nj5;
7376std::vector<int> vfree(0);
7389IkReal j3array[1], cj3array[1], sj3array[1];
7390bool j3valid[1]={
false};
7400j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x596.
value)))+(x597.
value));
7401sj3array[0]=
IKsin(j3array[0]);
7402cj3array[0]=
IKcos(j3array[0]);
7403if( j3array[0] >
IKPI )
7407else if( j3array[0] < -
IKPI )
7411for(
int ij3 = 0; ij3 < 1; ++ij3)
7417_ij3[0] = ij3; _ij3[1] = -1;
7418for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
7422 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
7425j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
7428IkReal x598=
IKsin(j3);
7429IkReal x599=
IKcos(j3);
7430IkReal x600=(gconst4*x598);
7431IkReal x601=(gconst4*x599);
7432IkReal x602=((1.0)*x599);
7433IkReal x603=(gconst5*x598);
7434IkReal x604=(gconst5*x602);
7435evalcond[0]=(((new_r11*x598))+gconst4+((new_r01*x599)));
7436evalcond[1]=(x603+x601+new_r01);
7437evalcond[2]=(x600+(((-1.0)*x604)));
7438evalcond[3]=((((-1.0)*new_r11*x602))+gconst5+((new_r01*x598)));
7439evalcond[4]=(x600+(((-1.0)*x604))+new_r11);
7440evalcond[5]=((((-1.0)*x601))+(((-1.0)*x603)));
7448std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
7449vinfos[0].jointtype = 1;
7450vinfos[0].foffset = j0;
7451vinfos[0].indices[0] = _ij0[0];
7452vinfos[0].indices[1] = _ij0[1];
7453vinfos[0].maxsolutions = _nj0;
7454vinfos[1].jointtype = 1;
7455vinfos[1].foffset = j1;
7456vinfos[1].indices[0] = _ij1[0];
7457vinfos[1].indices[1] = _ij1[1];
7458vinfos[1].maxsolutions = _nj1;
7459vinfos[2].jointtype = 1;
7460vinfos[2].foffset = j2;
7461vinfos[2].indices[0] = _ij2[0];
7462vinfos[2].indices[1] = _ij2[1];
7463vinfos[2].maxsolutions = _nj2;
7464vinfos[3].jointtype = 1;
7465vinfos[3].foffset = j3;
7466vinfos[3].indices[0] = _ij3[0];
7467vinfos[3].indices[1] = _ij3[1];
7468vinfos[3].maxsolutions = _nj3;
7469vinfos[4].jointtype = 1;
7470vinfos[4].foffset = j4;
7471vinfos[4].indices[0] = _ij4[0];
7472vinfos[4].indices[1] = _ij4[1];
7473vinfos[4].maxsolutions = _nj4;
7474vinfos[5].jointtype = 1;
7475vinfos[5].foffset = j5;
7476vinfos[5].indices[0] = _ij5[0];
7477vinfos[5].indices[1] = _ij5[1];
7478vinfos[5].maxsolutions = _nj5;
7479std::vector<int> vfree(0);
7492IkReal j3array[1], cj3array[1], sj3array[1];
7493bool j3valid[1]={
false};
7503j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x605.
value)))+(x606.
value));
7504sj3array[0]=
IKsin(j3array[0]);
7505cj3array[0]=
IKcos(j3array[0]);
7506if( j3array[0] >
IKPI )
7510else if( j3array[0] < -
IKPI )
7514for(
int ij3 = 0; ij3 < 1; ++ij3)
7520_ij3[0] = ij3; _ij3[1] = -1;
7521for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
7525 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
7528j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
7531IkReal x607=
IKsin(j3);
7532IkReal x608=
IKcos(j3);
7533IkReal x609=(gconst4*x607);
7534IkReal x610=(gconst4*x608);
7535IkReal x611=((1.0)*x608);
7536IkReal x612=(gconst5*x607);
7537IkReal x613=(gconst5*x611);
7538evalcond[0]=(gconst4+((new_r11*x607))+((new_r01*x608)));
7539evalcond[1]=(x610+x612+new_r01);
7540evalcond[2]=((((-1.0)*x613))+x609);
7541evalcond[3]=(gconst5+(((-1.0)*new_r11*x611))+((new_r01*x607)));
7542evalcond[4]=((((-1.0)*x613))+x609+new_r11);
7543evalcond[5]=((((-1.0)*x610))+(((-1.0)*x612)));
7551std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
7552vinfos[0].jointtype = 1;
7553vinfos[0].foffset = j0;
7554vinfos[0].indices[0] = _ij0[0];
7555vinfos[0].indices[1] = _ij0[1];
7556vinfos[0].maxsolutions = _nj0;
7557vinfos[1].jointtype = 1;
7558vinfos[1].foffset = j1;
7559vinfos[1].indices[0] = _ij1[0];
7560vinfos[1].indices[1] = _ij1[1];
7561vinfos[1].maxsolutions = _nj1;
7562vinfos[2].jointtype = 1;
7563vinfos[2].foffset = j2;
7564vinfos[2].indices[0] = _ij2[0];
7565vinfos[2].indices[1] = _ij2[1];
7566vinfos[2].maxsolutions = _nj2;
7567vinfos[3].jointtype = 1;
7568vinfos[3].foffset = j3;
7569vinfos[3].indices[0] = _ij3[0];
7570vinfos[3].indices[1] = _ij3[1];
7571vinfos[3].maxsolutions = _nj3;
7572vinfos[4].jointtype = 1;
7573vinfos[4].foffset = j4;
7574vinfos[4].indices[0] = _ij4[0];
7575vinfos[4].indices[1] = _ij4[1];
7576vinfos[4].maxsolutions = _nj4;
7577vinfos[5].jointtype = 1;
7578vinfos[5].foffset = j5;
7579vinfos[5].indices[0] = _ij5[0];
7580vinfos[5].indices[1] = _ij5[1];
7581vinfos[5].maxsolutions = _nj5;
7582std::vector<int> vfree(0);
7594if( bgotonextstatement )
7596bool bgotonextstatement =
true;
7599evalcond[0]=((
IKabs(new_r10))+(
IKabs(new_r01)));
7600if(
IKabs(evalcond[0]) < 0.0000050000000000 )
7602bgotonextstatement=
false;
7605IkReal x614=((-1.0)*new_r11);
7610IkReal x615=((1.0)*(x616.
value));
7616j5=((3.14159265)+(((-1.0)*x615)));
7619IkReal gconst3=((3.14159265358979)+(((-1.0)*x615)));
7620IkReal x617 = new_r11*new_r11;
7624IkReal gconst4=(x614*(pow(x617,-0.5)));
7627if(
IKabs(j3eval[0]) < 0.0000010000000000 )
7631IkReal x618=((-1.0)*new_r11);
7636IkReal x619=((1.0)*(x620.
value));
7642j5=((3.14159265)+(((-1.0)*x619)));
7645IkReal gconst3=((3.14159265358979)+(((-1.0)*x619)));
7646IkReal x621 = new_r11*new_r11;
7650IkReal gconst4=(x618*(pow(x621,-0.5)));
7653if(
IKabs(j3eval[0]) < 0.0000010000000000 )
7656IkReal j3array[2], cj3array[2], sj3array[2];
7657bool j3valid[2]={
false};
7663sj3array[0]=((-1.0)*new_r00*(x622.
value));
7666 j3valid[0] = j3valid[1] =
true;
7667 j3array[0] =
IKasin(sj3array[0]);
7668 cj3array[0] =
IKcos(j3array[0]);
7669 sj3array[1] = sj3array[0];
7670 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
7671 cj3array[1] = -cj3array[0];
7673else if( isnan(sj3array[0]) )
7677 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
7679for(
int ij3 = 0; ij3 < 2; ++ij3)
7685_ij3[0] = ij3; _ij3[1] = -1;
7686for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
7690 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
7693j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
7696IkReal x623=
IKcos(j3);
7697IkReal x624=
IKsin(j3);
7698evalcond[0]=(gconst4*x623);
7699evalcond[1]=(new_r00*x623);
7700evalcond[2]=((-1.0)*new_r11*x623);
7701evalcond[3]=(gconst4+((new_r00*x624)));
7702evalcond[4]=(gconst4+((new_r11*x624)));
7703evalcond[5]=(((gconst4*x624))+new_r11);
7711std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
7712vinfos[0].jointtype = 1;
7713vinfos[0].foffset = j0;
7714vinfos[0].indices[0] = _ij0[0];
7715vinfos[0].indices[1] = _ij0[1];
7716vinfos[0].maxsolutions = _nj0;
7717vinfos[1].jointtype = 1;
7718vinfos[1].foffset = j1;
7719vinfos[1].indices[0] = _ij1[0];
7720vinfos[1].indices[1] = _ij1[1];
7721vinfos[1].maxsolutions = _nj1;
7722vinfos[2].jointtype = 1;
7723vinfos[2].foffset = j2;
7724vinfos[2].indices[0] = _ij2[0];
7725vinfos[2].indices[1] = _ij2[1];
7726vinfos[2].maxsolutions = _nj2;
7727vinfos[3].jointtype = 1;
7728vinfos[3].foffset = j3;
7729vinfos[3].indices[0] = _ij3[0];
7730vinfos[3].indices[1] = _ij3[1];
7731vinfos[3].maxsolutions = _nj3;
7732vinfos[4].jointtype = 1;
7733vinfos[4].foffset = j4;
7734vinfos[4].indices[0] = _ij4[0];
7735vinfos[4].indices[1] = _ij4[1];
7736vinfos[4].maxsolutions = _nj4;
7737vinfos[5].jointtype = 1;
7738vinfos[5].foffset = j5;
7739vinfos[5].indices[0] = _ij5[0];
7740vinfos[5].indices[1] = _ij5[1];
7741vinfos[5].maxsolutions = _nj5;
7742std::vector<int> vfree(0);
7751IkReal j3array[2], cj3array[2], sj3array[2];
7752bool j3valid[2]={
false};
7758sj3array[0]=((-1.0)*gconst4*(x625.
value));
7761 j3valid[0] = j3valid[1] =
true;
7762 j3array[0] =
IKasin(sj3array[0]);
7763 cj3array[0] =
IKcos(j3array[0]);
7764 sj3array[1] = sj3array[0];
7765 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
7766 cj3array[1] = -cj3array[0];
7768else if( isnan(sj3array[0]) )
7772 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
7774for(
int ij3 = 0; ij3 < 2; ++ij3)
7780_ij3[0] = ij3; _ij3[1] = -1;
7781for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
7785 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
7788j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
7791IkReal x626=
IKcos(j3);
7792IkReal x627=
IKsin(j3);
7793IkReal x628=(gconst4*x627);
7794evalcond[0]=(gconst4*x626);
7795evalcond[1]=(new_r00*x626);
7796evalcond[2]=((-1.0)*new_r11*x626);
7797evalcond[3]=(gconst4+((new_r00*x627)));
7798evalcond[4]=(x628+new_r00);
7799evalcond[5]=(x628+new_r11);
7807std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
7808vinfos[0].jointtype = 1;
7809vinfos[0].foffset = j0;
7810vinfos[0].indices[0] = _ij0[0];
7811vinfos[0].indices[1] = _ij0[1];
7812vinfos[0].maxsolutions = _nj0;
7813vinfos[1].jointtype = 1;
7814vinfos[1].foffset = j1;
7815vinfos[1].indices[0] = _ij1[0];
7816vinfos[1].indices[1] = _ij1[1];
7817vinfos[1].maxsolutions = _nj1;
7818vinfos[2].jointtype = 1;
7819vinfos[2].foffset = j2;
7820vinfos[2].indices[0] = _ij2[0];
7821vinfos[2].indices[1] = _ij2[1];
7822vinfos[2].maxsolutions = _nj2;
7823vinfos[3].jointtype = 1;
7824vinfos[3].foffset = j3;
7825vinfos[3].indices[0] = _ij3[0];
7826vinfos[3].indices[1] = _ij3[1];
7827vinfos[3].maxsolutions = _nj3;
7828vinfos[4].jointtype = 1;
7829vinfos[4].foffset = j4;
7830vinfos[4].indices[0] = _ij4[0];
7831vinfos[4].indices[1] = _ij4[1];
7832vinfos[4].maxsolutions = _nj4;
7833vinfos[5].jointtype = 1;
7834vinfos[5].foffset = j5;
7835vinfos[5].indices[0] = _ij5[0];
7836vinfos[5].indices[1] = _ij5[1];
7837vinfos[5].maxsolutions = _nj5;
7838std::vector<int> vfree(0);
7851IkReal j3array[2], cj3array[2], sj3array[2];
7852bool j3valid[2]={
false};
7858sj3array[0]=((-1.0)*gconst4*(x629.
value));
7861 j3valid[0] = j3valid[1] =
true;
7862 j3array[0] =
IKasin(sj3array[0]);
7863 cj3array[0] =
IKcos(j3array[0]);
7864 sj3array[1] = sj3array[0];
7865 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
7866 cj3array[1] = -cj3array[0];
7868else if( isnan(sj3array[0]) )
7872 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
7874for(
int ij3 = 0; ij3 < 2; ++ij3)
7880_ij3[0] = ij3; _ij3[1] = -1;
7881for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
7885 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
7888j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
7891IkReal x630=
IKcos(j3);
7892IkReal x631=
IKsin(j3);
7893IkReal x632=(gconst4*x631);
7894evalcond[0]=(gconst4*x630);
7895evalcond[1]=(new_r00*x630);
7896evalcond[2]=((-1.0)*new_r11*x630);
7897evalcond[3]=(gconst4+((new_r11*x631)));
7898evalcond[4]=(x632+new_r00);
7899evalcond[5]=(x632+new_r11);
7907std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
7908vinfos[0].jointtype = 1;
7909vinfos[0].foffset = j0;
7910vinfos[0].indices[0] = _ij0[0];
7911vinfos[0].indices[1] = _ij0[1];
7912vinfos[0].maxsolutions = _nj0;
7913vinfos[1].jointtype = 1;
7914vinfos[1].foffset = j1;
7915vinfos[1].indices[0] = _ij1[0];
7916vinfos[1].indices[1] = _ij1[1];
7917vinfos[1].maxsolutions = _nj1;
7918vinfos[2].jointtype = 1;
7919vinfos[2].foffset = j2;
7920vinfos[2].indices[0] = _ij2[0];
7921vinfos[2].indices[1] = _ij2[1];
7922vinfos[2].maxsolutions = _nj2;
7923vinfos[3].jointtype = 1;
7924vinfos[3].foffset = j3;
7925vinfos[3].indices[0] = _ij3[0];
7926vinfos[3].indices[1] = _ij3[1];
7927vinfos[3].maxsolutions = _nj3;
7928vinfos[4].jointtype = 1;
7929vinfos[4].foffset = j4;
7930vinfos[4].indices[0] = _ij4[0];
7931vinfos[4].indices[1] = _ij4[1];
7932vinfos[4].maxsolutions = _nj4;
7933vinfos[5].jointtype = 1;
7934vinfos[5].foffset = j5;
7935vinfos[5].indices[0] = _ij5[0];
7936vinfos[5].indices[1] = _ij5[1];
7937vinfos[5].maxsolutions = _nj5;
7938std::vector<int> vfree(0);
7950if( bgotonextstatement )
7952bool bgotonextstatement =
true;
7955evalcond[0]=
IKabs(new_r11);
7956if(
IKabs(evalcond[0]) < 0.0000050000000000 )
7958bgotonextstatement=
false;
7965IkReal x633=((1.0)*(x634.
value));
7971j5=((3.14159265)+(((-1.0)*x633)));
7973IkReal gconst3=((3.14159265358979)+(((-1.0)*x633)));
7975IkReal x635 = new_r01*new_r01;
7979IkReal gconst5=((1.0)*new_r01*(pow(x635,-0.5)));
7980j3eval[0]=((
IKabs(new_r10))+(
IKabs(new_r00)));
7981if(
IKabs(j3eval[0]) < 0.0000010000000000 )
7989IkReal x636=((1.0)*(x637.
value));
7995j5=((3.14159265)+(((-1.0)*x636)));
7997IkReal gconst3=((3.14159265358979)+(((-1.0)*x636)));
7999IkReal x638 = new_r01*new_r01;
8003IkReal gconst5=((1.0)*new_r01*(pow(x638,-0.5)));
8004j3eval[0]=((
IKabs(new_r00))+(
IKabs(new_r01)));
8005if(
IKabs(j3eval[0]) < 0.0000010000000000 )
8013IkReal x639=((1.0)*(x640.
value));
8019j5=((3.14159265)+(((-1.0)*x639)));
8021IkReal gconst3=((3.14159265358979)+(((-1.0)*x639)));
8023IkReal x641 = new_r01*new_r01;
8027IkReal gconst5=((1.0)*new_r01*(pow(x641,-0.5)));
8029if(
IKabs(j3eval[0]) < 0.0000010000000000 )
8036IkReal j3array[1], cj3array[1], sj3array[1];
8037bool j3valid[1]={
false};
8050sj3array[0]=
IKsin(j3array[0]);
8051cj3array[0]=
IKcos(j3array[0]);
8052if( j3array[0] >
IKPI )
8056else if( j3array[0] < -
IKPI )
8060for(
int ij3 = 0; ij3 < 1; ++ij3)
8066_ij3[0] = ij3; _ij3[1] = -1;
8067for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
8071 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
8074j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
8077IkReal x644=
IKcos(j3);
8078IkReal x645=
IKsin(j3);
8079IkReal x646=((1.0)*gconst5);
8080evalcond[0]=(new_r01*x644);
8081evalcond[1]=((-1.0)*gconst5*x644);
8082evalcond[2]=(gconst5+((new_r01*x645)));
8083evalcond[3]=(new_r01+((gconst5*x645)));
8084evalcond[4]=((((-1.0)*x644*x646))+new_r00);
8085evalcond[5]=((((-1.0)*x645*x646))+new_r10);
8086evalcond[6]=((((-1.0)*new_r10*x644))+((new_r00*x645)));
8087evalcond[7]=((((-1.0)*x646))+((new_r10*x645))+((new_r00*x644)));
8095std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
8096vinfos[0].jointtype = 1;
8097vinfos[0].foffset = j0;
8098vinfos[0].indices[0] = _ij0[0];
8099vinfos[0].indices[1] = _ij0[1];
8100vinfos[0].maxsolutions = _nj0;
8101vinfos[1].jointtype = 1;
8102vinfos[1].foffset = j1;
8103vinfos[1].indices[0] = _ij1[0];
8104vinfos[1].indices[1] = _ij1[1];
8105vinfos[1].maxsolutions = _nj1;
8106vinfos[2].jointtype = 1;
8107vinfos[2].foffset = j2;
8108vinfos[2].indices[0] = _ij2[0];
8109vinfos[2].indices[1] = _ij2[1];
8110vinfos[2].maxsolutions = _nj2;
8111vinfos[3].jointtype = 1;
8112vinfos[3].foffset = j3;
8113vinfos[3].indices[0] = _ij3[0];
8114vinfos[3].indices[1] = _ij3[1];
8115vinfos[3].maxsolutions = _nj3;
8116vinfos[4].jointtype = 1;
8117vinfos[4].foffset = j4;
8118vinfos[4].indices[0] = _ij4[0];
8119vinfos[4].indices[1] = _ij4[1];
8120vinfos[4].maxsolutions = _nj4;
8121vinfos[5].jointtype = 1;
8122vinfos[5].foffset = j5;
8123vinfos[5].indices[0] = _ij5[0];
8124vinfos[5].indices[1] = _ij5[1];
8125vinfos[5].maxsolutions = _nj5;
8126std::vector<int> vfree(0);
8139IkReal j3array[1], cj3array[1], sj3array[1];
8140bool j3valid[1]={
false};
8150j3array[0]=((-1.5707963267949)+(x647.
value)+(((1.5707963267949)*(x648.
value))));
8151sj3array[0]=
IKsin(j3array[0]);
8152cj3array[0]=
IKcos(j3array[0]);
8153if( j3array[0] >
IKPI )
8157else if( j3array[0] < -
IKPI )
8161for(
int ij3 = 0; ij3 < 1; ++ij3)
8167_ij3[0] = ij3; _ij3[1] = -1;
8168for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
8172 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
8175j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
8178IkReal x649=
IKcos(j3);
8179IkReal x650=
IKsin(j3);
8180IkReal x651=((1.0)*gconst5);
8181evalcond[0]=(new_r01*x649);
8182evalcond[1]=((-1.0)*gconst5*x649);
8183evalcond[2]=(gconst5+((new_r01*x650)));
8184evalcond[3]=(new_r01+((gconst5*x650)));
8185evalcond[4]=((((-1.0)*x649*x651))+new_r00);
8186evalcond[5]=((((-1.0)*x650*x651))+new_r10);
8187evalcond[6]=((((-1.0)*new_r10*x649))+((new_r00*x650)));
8188evalcond[7]=((((-1.0)*x651))+((new_r00*x649))+((new_r10*x650)));
8196std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
8197vinfos[0].jointtype = 1;
8198vinfos[0].foffset = j0;
8199vinfos[0].indices[0] = _ij0[0];
8200vinfos[0].indices[1] = _ij0[1];
8201vinfos[0].maxsolutions = _nj0;
8202vinfos[1].jointtype = 1;
8203vinfos[1].foffset = j1;
8204vinfos[1].indices[0] = _ij1[0];
8205vinfos[1].indices[1] = _ij1[1];
8206vinfos[1].maxsolutions = _nj1;
8207vinfos[2].jointtype = 1;
8208vinfos[2].foffset = j2;
8209vinfos[2].indices[0] = _ij2[0];
8210vinfos[2].indices[1] = _ij2[1];
8211vinfos[2].maxsolutions = _nj2;
8212vinfos[3].jointtype = 1;
8213vinfos[3].foffset = j3;
8214vinfos[3].indices[0] = _ij3[0];
8215vinfos[3].indices[1] = _ij3[1];
8216vinfos[3].maxsolutions = _nj3;
8217vinfos[4].jointtype = 1;
8218vinfos[4].foffset = j4;
8219vinfos[4].indices[0] = _ij4[0];
8220vinfos[4].indices[1] = _ij4[1];
8221vinfos[4].maxsolutions = _nj4;
8222vinfos[5].jointtype = 1;
8223vinfos[5].foffset = j5;
8224vinfos[5].indices[0] = _ij5[0];
8225vinfos[5].indices[1] = _ij5[1];
8226vinfos[5].maxsolutions = _nj5;
8227std::vector<int> vfree(0);
8240IkReal j3array[1], cj3array[1], sj3array[1];
8241bool j3valid[1]={
false};
8251j3array[0]=((-1.5707963267949)+(x652.
value)+(((1.5707963267949)*(x653.
value))));
8252sj3array[0]=
IKsin(j3array[0]);
8253cj3array[0]=
IKcos(j3array[0]);
8254if( j3array[0] >
IKPI )
8258else if( j3array[0] < -
IKPI )
8262for(
int ij3 = 0; ij3 < 1; ++ij3)
8268_ij3[0] = ij3; _ij3[1] = -1;
8269for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
8273 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
8276j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
8279IkReal x654=
IKcos(j3);
8280IkReal x655=
IKsin(j3);
8281IkReal x656=((1.0)*gconst5);
8282evalcond[0]=(new_r01*x654);
8283evalcond[1]=((-1.0)*gconst5*x654);
8284evalcond[2]=(gconst5+((new_r01*x655)));
8285evalcond[3]=(new_r01+((gconst5*x655)));
8286evalcond[4]=(new_r00+(((-1.0)*x654*x656)));
8287evalcond[5]=((((-1.0)*x655*x656))+new_r10);
8288evalcond[6]=((((-1.0)*new_r10*x654))+((new_r00*x655)));
8289evalcond[7]=((((-1.0)*x656))+((new_r10*x655))+((new_r00*x654)));
8297std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
8298vinfos[0].jointtype = 1;
8299vinfos[0].foffset = j0;
8300vinfos[0].indices[0] = _ij0[0];
8301vinfos[0].indices[1] = _ij0[1];
8302vinfos[0].maxsolutions = _nj0;
8303vinfos[1].jointtype = 1;
8304vinfos[1].foffset = j1;
8305vinfos[1].indices[0] = _ij1[0];
8306vinfos[1].indices[1] = _ij1[1];
8307vinfos[1].maxsolutions = _nj1;
8308vinfos[2].jointtype = 1;
8309vinfos[2].foffset = j2;
8310vinfos[2].indices[0] = _ij2[0];
8311vinfos[2].indices[1] = _ij2[1];
8312vinfos[2].maxsolutions = _nj2;
8313vinfos[3].jointtype = 1;
8314vinfos[3].foffset = j3;
8315vinfos[3].indices[0] = _ij3[0];
8316vinfos[3].indices[1] = _ij3[1];
8317vinfos[3].maxsolutions = _nj3;
8318vinfos[4].jointtype = 1;
8319vinfos[4].foffset = j4;
8320vinfos[4].indices[0] = _ij4[0];
8321vinfos[4].indices[1] = _ij4[1];
8322vinfos[4].maxsolutions = _nj4;
8323vinfos[5].jointtype = 1;
8324vinfos[5].foffset = j5;
8325vinfos[5].indices[0] = _ij5[0];
8326vinfos[5].indices[1] = _ij5[1];
8327vinfos[5].maxsolutions = _nj5;
8328std::vector<int> vfree(0);
8340if( bgotonextstatement )
8342bool bgotonextstatement =
true;
8347bgotonextstatement=
false;
8352if( bgotonextstatement )
8364IkReal j3array[1], cj3array[1], sj3array[1];
8365bool j3valid[1]={
false};
8367IkReal x657=((1.0)*new_r01);
8376j3array[0]=((-1.5707963267949)+(x658.
value)+(((1.5707963267949)*(x659.
value))));
8377sj3array[0]=
IKsin(j3array[0]);
8378cj3array[0]=
IKcos(j3array[0]);
8379if( j3array[0] >
IKPI )
8383else if( j3array[0] < -
IKPI )
8387for(
int ij3 = 0; ij3 < 1; ++ij3)
8393_ij3[0] = ij3; _ij3[1] = -1;
8394for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
8398 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
8401j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
8404IkReal x660=
IKsin(j3);
8405IkReal x661=
IKcos(j3);
8406IkReal x662=((1.0)*gconst5);
8407IkReal x663=(gconst4*x660);
8408IkReal x664=(gconst4*x661);
8409IkReal x665=((1.0)*x661);
8410IkReal x666=(x661*x662);
8411evalcond[0]=(gconst4+((new_r11*x660))+((new_r01*x661)));
8412evalcond[1]=(((gconst5*x660))+x664+new_r01);
8413evalcond[2]=(gconst4+(((-1.0)*new_r10*x665))+((new_r00*x660)));
8414evalcond[3]=(gconst5+(((-1.0)*new_r11*x665))+((new_r01*x660)));
8415evalcond[4]=((((-1.0)*x666))+x663+new_r00);
8416evalcond[5]=((((-1.0)*x666))+x663+new_r11);
8417evalcond[6]=(((new_r10*x660))+(((-1.0)*x662))+((new_r00*x661)));
8418evalcond[7]=((((-1.0)*x660*x662))+(((-1.0)*x664))+new_r10);
8426std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
8427vinfos[0].jointtype = 1;
8428vinfos[0].foffset = j0;
8429vinfos[0].indices[0] = _ij0[0];
8430vinfos[0].indices[1] = _ij0[1];
8431vinfos[0].maxsolutions = _nj0;
8432vinfos[1].jointtype = 1;
8433vinfos[1].foffset = j1;
8434vinfos[1].indices[0] = _ij1[0];
8435vinfos[1].indices[1] = _ij1[1];
8436vinfos[1].maxsolutions = _nj1;
8437vinfos[2].jointtype = 1;
8438vinfos[2].foffset = j2;
8439vinfos[2].indices[0] = _ij2[0];
8440vinfos[2].indices[1] = _ij2[1];
8441vinfos[2].maxsolutions = _nj2;
8442vinfos[3].jointtype = 1;
8443vinfos[3].foffset = j3;
8444vinfos[3].indices[0] = _ij3[0];
8445vinfos[3].indices[1] = _ij3[1];
8446vinfos[3].maxsolutions = _nj3;
8447vinfos[4].jointtype = 1;
8448vinfos[4].foffset = j4;
8449vinfos[4].indices[0] = _ij4[0];
8450vinfos[4].indices[1] = _ij4[1];
8451vinfos[4].maxsolutions = _nj4;
8452vinfos[5].jointtype = 1;
8453vinfos[5].foffset = j5;
8454vinfos[5].indices[0] = _ij5[0];
8455vinfos[5].indices[1] = _ij5[1];
8456vinfos[5].maxsolutions = _nj5;
8457std::vector<int> vfree(0);
8470IkReal j3array[1], cj3array[1], sj3array[1];
8471bool j3valid[1]={
false};
8473IkReal x667=((1.0)*gconst4);
8482j3array[0]=((-1.5707963267949)+(x668.
value)+(((1.5707963267949)*(x669.
value))));
8483sj3array[0]=
IKsin(j3array[0]);
8484cj3array[0]=
IKcos(j3array[0]);
8485if( j3array[0] >
IKPI )
8489else if( j3array[0] < -
IKPI )
8493for(
int ij3 = 0; ij3 < 1; ++ij3)
8499_ij3[0] = ij3; _ij3[1] = -1;
8500for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
8504 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
8507j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
8510IkReal x670=
IKsin(j3);
8511IkReal x671=
IKcos(j3);
8512IkReal x672=((1.0)*gconst5);
8513IkReal x673=(gconst4*x670);
8514IkReal x674=(gconst4*x671);
8515IkReal x675=((1.0)*x671);
8516IkReal x676=(x671*x672);
8517evalcond[0]=(((new_r11*x670))+((new_r01*x671))+gconst4);
8518evalcond[1]=(((gconst5*x670))+x674+new_r01);
8519evalcond[2]=(((new_r00*x670))+gconst4+(((-1.0)*new_r10*x675)));
8520evalcond[3]=(((new_r01*x670))+gconst5+(((-1.0)*new_r11*x675)));
8521evalcond[4]=(x673+new_r00+(((-1.0)*x676)));
8522evalcond[5]=(x673+new_r11+(((-1.0)*x676)));
8523evalcond[6]=(((new_r00*x671))+((new_r10*x670))+(((-1.0)*x672)));
8524evalcond[7]=((((-1.0)*x670*x672))+(((-1.0)*x674))+new_r10);
8532std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
8533vinfos[0].jointtype = 1;
8534vinfos[0].foffset = j0;
8535vinfos[0].indices[0] = _ij0[0];
8536vinfos[0].indices[1] = _ij0[1];
8537vinfos[0].maxsolutions = _nj0;
8538vinfos[1].jointtype = 1;
8539vinfos[1].foffset = j1;
8540vinfos[1].indices[0] = _ij1[0];
8541vinfos[1].indices[1] = _ij1[1];
8542vinfos[1].maxsolutions = _nj1;
8543vinfos[2].jointtype = 1;
8544vinfos[2].foffset = j2;
8545vinfos[2].indices[0] = _ij2[0];
8546vinfos[2].indices[1] = _ij2[1];
8547vinfos[2].maxsolutions = _nj2;
8548vinfos[3].jointtype = 1;
8549vinfos[3].foffset = j3;
8550vinfos[3].indices[0] = _ij3[0];
8551vinfos[3].indices[1] = _ij3[1];
8552vinfos[3].maxsolutions = _nj3;
8553vinfos[4].jointtype = 1;
8554vinfos[4].foffset = j4;
8555vinfos[4].indices[0] = _ij4[0];
8556vinfos[4].indices[1] = _ij4[1];
8557vinfos[4].maxsolutions = _nj4;
8558vinfos[5].jointtype = 1;
8559vinfos[5].foffset = j5;
8560vinfos[5].indices[0] = _ij5[0];
8561vinfos[5].indices[1] = _ij5[1];
8562vinfos[5].maxsolutions = _nj5;
8563std::vector<int> vfree(0);
8576IkReal j3array[1], cj3array[1], sj3array[1];
8577bool j3valid[1]={
false};
8579IkReal x677=((1.0)*new_r11);
8588j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x678.
value)))+(x679.
value));
8589sj3array[0]=
IKsin(j3array[0]);
8590cj3array[0]=
IKcos(j3array[0]);
8591if( j3array[0] >
IKPI )
8595else if( j3array[0] < -
IKPI )
8599for(
int ij3 = 0; ij3 < 1; ++ij3)
8605_ij3[0] = ij3; _ij3[1] = -1;
8606for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
8610 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
8613j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
8616IkReal x680=
IKsin(j3);
8617IkReal x681=
IKcos(j3);
8618IkReal x682=((1.0)*gconst5);
8619IkReal x683=(gconst4*x680);
8620IkReal x684=(gconst4*x681);
8621IkReal x685=((1.0)*x681);
8622IkReal x686=(x681*x682);
8623evalcond[0]=(gconst4+((new_r01*x681))+((new_r11*x680)));
8624evalcond[1]=(((gconst5*x680))+x684+new_r01);
8625evalcond[2]=((((-1.0)*new_r10*x685))+gconst4+((new_r00*x680)));
8626evalcond[3]=(gconst5+((new_r01*x680))+(((-1.0)*new_r11*x685)));
8627evalcond[4]=((((-1.0)*x686))+x683+new_r00);
8628evalcond[5]=((((-1.0)*x686))+x683+new_r11);
8629evalcond[6]=((((-1.0)*x682))+((new_r00*x681))+((new_r10*x680)));
8630evalcond[7]=((((-1.0)*x680*x682))+new_r10+(((-1.0)*x684)));
8638std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
8639vinfos[0].jointtype = 1;
8640vinfos[0].foffset = j0;
8641vinfos[0].indices[0] = _ij0[0];
8642vinfos[0].indices[1] = _ij0[1];
8643vinfos[0].maxsolutions = _nj0;
8644vinfos[1].jointtype = 1;
8645vinfos[1].foffset = j1;
8646vinfos[1].indices[0] = _ij1[0];
8647vinfos[1].indices[1] = _ij1[1];
8648vinfos[1].maxsolutions = _nj1;
8649vinfos[2].jointtype = 1;
8650vinfos[2].foffset = j2;
8651vinfos[2].indices[0] = _ij2[0];
8652vinfos[2].indices[1] = _ij2[1];
8653vinfos[2].maxsolutions = _nj2;
8654vinfos[3].jointtype = 1;
8655vinfos[3].foffset = j3;
8656vinfos[3].indices[0] = _ij3[0];
8657vinfos[3].indices[1] = _ij3[1];
8658vinfos[3].maxsolutions = _nj3;
8659vinfos[4].jointtype = 1;
8660vinfos[4].foffset = j4;
8661vinfos[4].indices[0] = _ij4[0];
8662vinfos[4].indices[1] = _ij4[1];
8663vinfos[4].maxsolutions = _nj4;
8664vinfos[5].jointtype = 1;
8665vinfos[5].foffset = j5;
8666vinfos[5].indices[0] = _ij5[0];
8667vinfos[5].indices[1] = _ij5[1];
8668vinfos[5].maxsolutions = _nj5;
8669std::vector<int> vfree(0);
8681if( bgotonextstatement )
8683bool bgotonextstatement =
true;
8686evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(j5))), 6.28318530717959)));
8687if(
IKabs(evalcond[0]) < 0.0000050000000000 )
8689bgotonextstatement=
false;
8691IkReal j3array[1], cj3array[1], sj3array[1];
8692bool j3valid[1]={
false};
8696j3array[0]=
IKatan2(((-1.0)*new_r01), new_r00);
8697sj3array[0]=
IKsin(j3array[0]);
8698cj3array[0]=
IKcos(j3array[0]);
8699if( j3array[0] >
IKPI )
8703else if( j3array[0] < -
IKPI )
8707for(
int ij3 = 0; ij3 < 1; ++ij3)
8713_ij3[0] = ij3; _ij3[1] = -1;
8714for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
8718 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
8721j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
8724IkReal x687=
IKsin(j3);
8725IkReal x688=
IKcos(j3);
8726IkReal x689=((1.0)*x688);
8727evalcond[0]=(x687+new_r01);
8728evalcond[1]=((((-1.0)*x689))+new_r00);
8729evalcond[2]=((((-1.0)*x689))+new_r11);
8730evalcond[3]=(new_r10+(((-1.0)*x687)));
8731evalcond[4]=(((new_r01*x688))+((new_r11*x687)));
8732evalcond[5]=((((-1.0)*new_r10*x689))+((new_r00*x687)));
8733evalcond[6]=((-1.0)+((new_r00*x688))+((new_r10*x687)));
8734evalcond[7]=((1.0)+((new_r01*x687))+(((-1.0)*new_r11*x689)));
8742std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
8743vinfos[0].jointtype = 1;
8744vinfos[0].foffset = j0;
8745vinfos[0].indices[0] = _ij0[0];
8746vinfos[0].indices[1] = _ij0[1];
8747vinfos[0].maxsolutions = _nj0;
8748vinfos[1].jointtype = 1;
8749vinfos[1].foffset = j1;
8750vinfos[1].indices[0] = _ij1[0];
8751vinfos[1].indices[1] = _ij1[1];
8752vinfos[1].maxsolutions = _nj1;
8753vinfos[2].jointtype = 1;
8754vinfos[2].foffset = j2;
8755vinfos[2].indices[0] = _ij2[0];
8756vinfos[2].indices[1] = _ij2[1];
8757vinfos[2].maxsolutions = _nj2;
8758vinfos[3].jointtype = 1;
8759vinfos[3].foffset = j3;
8760vinfos[3].indices[0] = _ij3[0];
8761vinfos[3].indices[1] = _ij3[1];
8762vinfos[3].maxsolutions = _nj3;
8763vinfos[4].jointtype = 1;
8764vinfos[4].foffset = j4;
8765vinfos[4].indices[0] = _ij4[0];
8766vinfos[4].indices[1] = _ij4[1];
8767vinfos[4].maxsolutions = _nj4;
8768vinfos[5].jointtype = 1;
8769vinfos[5].foffset = j5;
8770vinfos[5].indices[0] = _ij5[0];
8771vinfos[5].indices[1] = _ij5[1];
8772vinfos[5].maxsolutions = _nj5;
8773std::vector<int> vfree(0);
8781if( bgotonextstatement )
8783bool bgotonextstatement =
true;
8786evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-3.14159265358979)+j5)))), 6.28318530717959)));
8787if(
IKabs(evalcond[0]) < 0.0000050000000000 )
8789bgotonextstatement=
false;
8791IkReal j3array[1], cj3array[1], sj3array[1];
8792bool j3valid[1]={
false};
8796j3array[0]=
IKatan2(((-1.0)*new_r10), ((-1.0)*new_r00));
8797sj3array[0]=
IKsin(j3array[0]);
8798cj3array[0]=
IKcos(j3array[0]);
8799if( j3array[0] >
IKPI )
8803else if( j3array[0] < -
IKPI )
8807for(
int ij3 = 0; ij3 < 1; ++ij3)
8813_ij3[0] = ij3; _ij3[1] = -1;
8814for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
8818 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
8821j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
8824IkReal x690=
IKcos(j3);
8825IkReal x691=
IKsin(j3);
8826IkReal x692=((1.0)*x690);
8827evalcond[0]=(x690+new_r00);
8828evalcond[1]=(x690+new_r11);
8829evalcond[2]=(x691+new_r10);
8830evalcond[3]=(new_r01+(((-1.0)*x691)));
8831evalcond[4]=(((new_r11*x691))+((new_r01*x690)));
8832evalcond[5]=((((-1.0)*new_r10*x692))+((new_r00*x691)));
8833evalcond[6]=((1.0)+((new_r10*x691))+((new_r00*x690)));
8834evalcond[7]=((-1.0)+(((-1.0)*new_r11*x692))+((new_r01*x691)));
8842std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
8843vinfos[0].jointtype = 1;
8844vinfos[0].foffset = j0;
8845vinfos[0].indices[0] = _ij0[0];
8846vinfos[0].indices[1] = _ij0[1];
8847vinfos[0].maxsolutions = _nj0;
8848vinfos[1].jointtype = 1;
8849vinfos[1].foffset = j1;
8850vinfos[1].indices[0] = _ij1[0];
8851vinfos[1].indices[1] = _ij1[1];
8852vinfos[1].maxsolutions = _nj1;
8853vinfos[2].jointtype = 1;
8854vinfos[2].foffset = j2;
8855vinfos[2].indices[0] = _ij2[0];
8856vinfos[2].indices[1] = _ij2[1];
8857vinfos[2].maxsolutions = _nj2;
8858vinfos[3].jointtype = 1;
8859vinfos[3].foffset = j3;
8860vinfos[3].indices[0] = _ij3[0];
8861vinfos[3].indices[1] = _ij3[1];
8862vinfos[3].maxsolutions = _nj3;
8863vinfos[4].jointtype = 1;
8864vinfos[4].foffset = j4;
8865vinfos[4].indices[0] = _ij4[0];
8866vinfos[4].indices[1] = _ij4[1];
8867vinfos[4].maxsolutions = _nj4;
8868vinfos[5].jointtype = 1;
8869vinfos[5].foffset = j5;
8870vinfos[5].indices[0] = _ij5[0];
8871vinfos[5].indices[1] = _ij5[1];
8872vinfos[5].maxsolutions = _nj5;
8873std::vector<int> vfree(0);
8881if( bgotonextstatement )
8883bool bgotonextstatement =
true;
8886evalcond[0]=((
IKabs(new_r11))+(
IKabs(new_r00)));
8887if(
IKabs(evalcond[0]) < 0.0000050000000000 )
8889bgotonextstatement=
false;
8898j3eval[1]=
IKsign(new_r01);
8900if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
8911if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 )
8922if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 )
8926bool bgotonextstatement =
true;
8929evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(j5))), 6.28318530717959)));
8930if(
IKabs(evalcond[0]) < 0.0000050000000000 )
8932bgotonextstatement=
false;
8934IkReal j3array[2], cj3array[2], sj3array[2];
8935bool j3valid[2]={
false};
8940 j3valid[0] = j3valid[1] =
true;
8941 j3array[0] =
IKasin(sj3array[0]);
8942 cj3array[0] =
IKcos(j3array[0]);
8943 sj3array[1] = sj3array[0];
8944 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
8945 cj3array[1] = -cj3array[0];
8947else if( isnan(sj3array[0]) )
8951 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
8953for(
int ij3 = 0; ij3 < 2; ++ij3)
8959_ij3[0] = ij3; _ij3[1] = -1;
8960for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
8964 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
8967j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
8970IkReal x693=
IKcos(j3);
8971IkReal x694=
IKsin(j3);
8972IkReal x695=((-1.0)*x693);
8973evalcond[0]=(new_r01*x693);
8974evalcond[1]=(x694+new_r01);
8976evalcond[3]=(new_r10*x695);
8977evalcond[4]=((1.0)+((new_r01*x694)));
8978evalcond[5]=((-1.0)+((new_r10*x694)));
8986std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
8987vinfos[0].jointtype = 1;
8988vinfos[0].foffset = j0;
8989vinfos[0].indices[0] = _ij0[0];
8990vinfos[0].indices[1] = _ij0[1];
8991vinfos[0].maxsolutions = _nj0;
8992vinfos[1].jointtype = 1;
8993vinfos[1].foffset = j1;
8994vinfos[1].indices[0] = _ij1[0];
8995vinfos[1].indices[1] = _ij1[1];
8996vinfos[1].maxsolutions = _nj1;
8997vinfos[2].jointtype = 1;
8998vinfos[2].foffset = j2;
8999vinfos[2].indices[0] = _ij2[0];
9000vinfos[2].indices[1] = _ij2[1];
9001vinfos[2].maxsolutions = _nj2;
9002vinfos[3].jointtype = 1;
9003vinfos[3].foffset = j3;
9004vinfos[3].indices[0] = _ij3[0];
9005vinfos[3].indices[1] = _ij3[1];
9006vinfos[3].maxsolutions = _nj3;
9007vinfos[4].jointtype = 1;
9008vinfos[4].foffset = j4;
9009vinfos[4].indices[0] = _ij4[0];
9010vinfos[4].indices[1] = _ij4[1];
9011vinfos[4].maxsolutions = _nj4;
9012vinfos[5].jointtype = 1;
9013vinfos[5].foffset = j5;
9014vinfos[5].indices[0] = _ij5[0];
9015vinfos[5].indices[1] = _ij5[1];
9016vinfos[5].maxsolutions = _nj5;
9017std::vector<int> vfree(0);
9025if( bgotonextstatement )
9027bool bgotonextstatement =
true;
9030evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-3.14159265358979)+j5)))), 6.28318530717959)));
9031if(
IKabs(evalcond[0]) < 0.0000050000000000 )
9033bgotonextstatement=
false;
9035IkReal j3array[2], cj3array[2], sj3array[2];
9036bool j3valid[2]={
false};
9041 j3valid[0] = j3valid[1] =
true;
9042 j3array[0] =
IKasin(sj3array[0]);
9043 cj3array[0] =
IKcos(j3array[0]);
9044 sj3array[1] = sj3array[0];
9045 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
9046 cj3array[1] = -cj3array[0];
9048else if( isnan(sj3array[0]) )
9052 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
9054for(
int ij3 = 0; ij3 < 2; ++ij3)
9060_ij3[0] = ij3; _ij3[1] = -1;
9061for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
9065 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
9068j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
9071IkReal x696=
IKcos(j3);
9072IkReal x697=
IKsin(j3);
9074evalcond[1]=(new_r01*x696);
9075evalcond[2]=(x697+new_r10);
9076evalcond[3]=((-1.0)*new_r10*x696);
9077evalcond[4]=((-1.0)+((new_r01*x697)));
9078evalcond[5]=((1.0)+((new_r10*x697)));
9086std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
9087vinfos[0].jointtype = 1;
9088vinfos[0].foffset = j0;
9089vinfos[0].indices[0] = _ij0[0];
9090vinfos[0].indices[1] = _ij0[1];
9091vinfos[0].maxsolutions = _nj0;
9092vinfos[1].jointtype = 1;
9093vinfos[1].foffset = j1;
9094vinfos[1].indices[0] = _ij1[0];
9095vinfos[1].indices[1] = _ij1[1];
9096vinfos[1].maxsolutions = _nj1;
9097vinfos[2].jointtype = 1;
9098vinfos[2].foffset = j2;
9099vinfos[2].indices[0] = _ij2[0];
9100vinfos[2].indices[1] = _ij2[1];
9101vinfos[2].maxsolutions = _nj2;
9102vinfos[3].jointtype = 1;
9103vinfos[3].foffset = j3;
9104vinfos[3].indices[0] = _ij3[0];
9105vinfos[3].indices[1] = _ij3[1];
9106vinfos[3].maxsolutions = _nj3;
9107vinfos[4].jointtype = 1;
9108vinfos[4].foffset = j4;
9109vinfos[4].indices[0] = _ij4[0];
9110vinfos[4].indices[1] = _ij4[1];
9111vinfos[4].maxsolutions = _nj4;
9112vinfos[5].jointtype = 1;
9113vinfos[5].foffset = j5;
9114vinfos[5].indices[0] = _ij5[0];
9115vinfos[5].indices[1] = _ij5[1];
9116vinfos[5].maxsolutions = _nj5;
9117std::vector<int> vfree(0);
9125if( bgotonextstatement )
9127bool bgotonextstatement =
true;
9132bgotonextstatement=
false;
9137if( bgotonextstatement )
9147IkReal j3array[1], cj3array[1], sj3array[1];
9148bool j3valid[1]={
false};
9154IkReal x698=x699.
value;
9165j3array[0]=
IKatan2(((-1.0)*cj5*x698), (x698*(x700.
value)*(((((-1.0)*(x701.
value)))+(cj5*cj5)))));
9166sj3array[0]=
IKsin(j3array[0]);
9167cj3array[0]=
IKcos(j3array[0]);
9168if( j3array[0] >
IKPI )
9172else if( j3array[0] < -
IKPI )
9176for(
int ij3 = 0; ij3 < 1; ++ij3)
9182_ij3[0] = ij3; _ij3[1] = -1;
9183for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
9187 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
9190j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
9193IkReal x702=
IKcos(j3);
9194IkReal x703=
IKsin(j3);
9195IkReal x704=((1.0)*cj5);
9196IkReal x705=(sj5*x702);
9197evalcond[0]=(cj5+((new_r01*x703)));
9198evalcond[1]=(sj5+((new_r01*x702)));
9199evalcond[2]=(sj5+(((-1.0)*new_r10*x702)));
9200evalcond[3]=((((-1.0)*x704))+((new_r10*x703)));
9201evalcond[4]=(((cj5*x703))+x705+new_r01);
9202evalcond[5]=((((-1.0)*x702*x704))+((sj5*x703)));
9203evalcond[6]=((((-1.0)*x705))+(((-1.0)*x703*x704))+new_r10);
9211std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
9212vinfos[0].jointtype = 1;
9213vinfos[0].foffset = j0;
9214vinfos[0].indices[0] = _ij0[0];
9215vinfos[0].indices[1] = _ij0[1];
9216vinfos[0].maxsolutions = _nj0;
9217vinfos[1].jointtype = 1;
9218vinfos[1].foffset = j1;
9219vinfos[1].indices[0] = _ij1[0];
9220vinfos[1].indices[1] = _ij1[1];
9221vinfos[1].maxsolutions = _nj1;
9222vinfos[2].jointtype = 1;
9223vinfos[2].foffset = j2;
9224vinfos[2].indices[0] = _ij2[0];
9225vinfos[2].indices[1] = _ij2[1];
9226vinfos[2].maxsolutions = _nj2;
9227vinfos[3].jointtype = 1;
9228vinfos[3].foffset = j3;
9229vinfos[3].indices[0] = _ij3[0];
9230vinfos[3].indices[1] = _ij3[1];
9231vinfos[3].maxsolutions = _nj3;
9232vinfos[4].jointtype = 1;
9233vinfos[4].foffset = j4;
9234vinfos[4].indices[0] = _ij4[0];
9235vinfos[4].indices[1] = _ij4[1];
9236vinfos[4].maxsolutions = _nj4;
9237vinfos[5].jointtype = 1;
9238vinfos[5].foffset = j5;
9239vinfos[5].indices[0] = _ij5[0];
9240vinfos[5].indices[1] = _ij5[1];
9241vinfos[5].maxsolutions = _nj5;
9242std::vector<int> vfree(0);
9255IkReal j3array[1], cj3array[1], sj3array[1];
9256bool j3valid[1]={
false};
9269sj3array[0]=
IKsin(j3array[0]);
9270cj3array[0]=
IKcos(j3array[0]);
9271if( j3array[0] >
IKPI )
9275else if( j3array[0] < -
IKPI )
9279for(
int ij3 = 0; ij3 < 1; ++ij3)
9285_ij3[0] = ij3; _ij3[1] = -1;
9286for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
9290 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
9293j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
9296IkReal x708=
IKcos(j3);
9297IkReal x709=
IKsin(j3);
9298IkReal x710=((1.0)*cj5);
9299IkReal x711=(sj5*x708);
9300evalcond[0]=(cj5+((new_r01*x709)));
9301evalcond[1]=(sj5+((new_r01*x708)));
9302evalcond[2]=(sj5+(((-1.0)*new_r10*x708)));
9303evalcond[3]=((((-1.0)*x710))+((new_r10*x709)));
9304evalcond[4]=(((cj5*x709))+x711+new_r01);
9305evalcond[5]=(((sj5*x709))+(((-1.0)*x708*x710)));
9306evalcond[6]=((((-1.0)*x709*x710))+(((-1.0)*x711))+new_r10);
9314std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
9315vinfos[0].jointtype = 1;
9316vinfos[0].foffset = j0;
9317vinfos[0].indices[0] = _ij0[0];
9318vinfos[0].indices[1] = _ij0[1];
9319vinfos[0].maxsolutions = _nj0;
9320vinfos[1].jointtype = 1;
9321vinfos[1].foffset = j1;
9322vinfos[1].indices[0] = _ij1[0];
9323vinfos[1].indices[1] = _ij1[1];
9324vinfos[1].maxsolutions = _nj1;
9325vinfos[2].jointtype = 1;
9326vinfos[2].foffset = j2;
9327vinfos[2].indices[0] = _ij2[0];
9328vinfos[2].indices[1] = _ij2[1];
9329vinfos[2].maxsolutions = _nj2;
9330vinfos[3].jointtype = 1;
9331vinfos[3].foffset = j3;
9332vinfos[3].indices[0] = _ij3[0];
9333vinfos[3].indices[1] = _ij3[1];
9334vinfos[3].maxsolutions = _nj3;
9335vinfos[4].jointtype = 1;
9336vinfos[4].foffset = j4;
9337vinfos[4].indices[0] = _ij4[0];
9338vinfos[4].indices[1] = _ij4[1];
9339vinfos[4].maxsolutions = _nj4;
9340vinfos[5].jointtype = 1;
9341vinfos[5].foffset = j5;
9342vinfos[5].indices[0] = _ij5[0];
9343vinfos[5].indices[1] = _ij5[1];
9344vinfos[5].maxsolutions = _nj5;
9345std::vector<int> vfree(0);
9358IkReal j3array[1], cj3array[1], sj3array[1];
9359bool j3valid[1]={
false};
9369j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x712.
value)))+(x713.
value));
9370sj3array[0]=
IKsin(j3array[0]);
9371cj3array[0]=
IKcos(j3array[0]);
9372if( j3array[0] >
IKPI )
9376else if( j3array[0] < -
IKPI )
9380for(
int ij3 = 0; ij3 < 1; ++ij3)
9386_ij3[0] = ij3; _ij3[1] = -1;
9387for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
9391 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
9394j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
9397IkReal x714=
IKcos(j3);
9398IkReal x715=
IKsin(j3);
9399IkReal x716=((1.0)*cj5);
9400IkReal x717=(sj5*x714);
9401evalcond[0]=(cj5+((new_r01*x715)));
9402evalcond[1]=(sj5+((new_r01*x714)));
9403evalcond[2]=(sj5+(((-1.0)*new_r10*x714)));
9404evalcond[3]=((((-1.0)*x716))+((new_r10*x715)));
9405evalcond[4]=(((cj5*x715))+x717+new_r01);
9406evalcond[5]=((((-1.0)*x714*x716))+((sj5*x715)));
9407evalcond[6]=((((-1.0)*x717))+new_r10+(((-1.0)*x715*x716)));
9415std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
9416vinfos[0].jointtype = 1;
9417vinfos[0].foffset = j0;
9418vinfos[0].indices[0] = _ij0[0];
9419vinfos[0].indices[1] = _ij0[1];
9420vinfos[0].maxsolutions = _nj0;
9421vinfos[1].jointtype = 1;
9422vinfos[1].foffset = j1;
9423vinfos[1].indices[0] = _ij1[0];
9424vinfos[1].indices[1] = _ij1[1];
9425vinfos[1].maxsolutions = _nj1;
9426vinfos[2].jointtype = 1;
9427vinfos[2].foffset = j2;
9428vinfos[2].indices[0] = _ij2[0];
9429vinfos[2].indices[1] = _ij2[1];
9430vinfos[2].maxsolutions = _nj2;
9431vinfos[3].jointtype = 1;
9432vinfos[3].foffset = j3;
9433vinfos[3].indices[0] = _ij3[0];
9434vinfos[3].indices[1] = _ij3[1];
9435vinfos[3].maxsolutions = _nj3;
9436vinfos[4].jointtype = 1;
9437vinfos[4].foffset = j4;
9438vinfos[4].indices[0] = _ij4[0];
9439vinfos[4].indices[1] = _ij4[1];
9440vinfos[4].maxsolutions = _nj4;
9441vinfos[5].jointtype = 1;
9442vinfos[5].foffset = j5;
9443vinfos[5].indices[0] = _ij5[0];
9444vinfos[5].indices[1] = _ij5[1];
9445vinfos[5].maxsolutions = _nj5;
9446std::vector<int> vfree(0);
9458if( bgotonextstatement )
9460bool bgotonextstatement =
true;
9463evalcond[0]=((
IKabs(new_r11))+(
IKabs(new_r01)));
9464if(
IKabs(evalcond[0]) < 0.0000050000000000 )
9466bgotonextstatement=
false;
9476j3eval[0]=((
IKabs(new_r10))+(
IKabs(new_r00)));
9477if(
IKabs(j3eval[0]) < 0.0000010000000000 )
9484IkReal j3array[2], cj3array[2], sj3array[2];
9485bool j3valid[2]={
false};
9491IkReal x718=x719.
value;
9492j3array[0]=((-1.0)*x718);
9493sj3array[0]=
IKsin(j3array[0]);
9494cj3array[0]=
IKcos(j3array[0]);
9495j3array[1]=((3.14159265358979)+(((-1.0)*x718)));
9496sj3array[1]=
IKsin(j3array[1]);
9497cj3array[1]=
IKcos(j3array[1]);
9498if( j3array[0] >
IKPI )
9502else if( j3array[0] < -
IKPI )
9506if( j3array[1] >
IKPI )
9510else if( j3array[1] < -
IKPI )
9514for(
int ij3 = 0; ij3 < 2; ++ij3)
9520_ij3[0] = ij3; _ij3[1] = -1;
9521for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
9525 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
9528j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
9531evalcond[0]=(((new_r00*(
IKsin(j3))))+(((-1.0)*new_r10*(
IKcos(j3)))));
9539std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
9540vinfos[0].jointtype = 1;
9541vinfos[0].foffset = j0;
9542vinfos[0].indices[0] = _ij0[0];
9543vinfos[0].indices[1] = _ij0[1];
9544vinfos[0].maxsolutions = _nj0;
9545vinfos[1].jointtype = 1;
9546vinfos[1].foffset = j1;
9547vinfos[1].indices[0] = _ij1[0];
9548vinfos[1].indices[1] = _ij1[1];
9549vinfos[1].maxsolutions = _nj1;
9550vinfos[2].jointtype = 1;
9551vinfos[2].foffset = j2;
9552vinfos[2].indices[0] = _ij2[0];
9553vinfos[2].indices[1] = _ij2[1];
9554vinfos[2].maxsolutions = _nj2;
9555vinfos[3].jointtype = 1;
9556vinfos[3].foffset = j3;
9557vinfos[3].indices[0] = _ij3[0];
9558vinfos[3].indices[1] = _ij3[1];
9559vinfos[3].maxsolutions = _nj3;
9560vinfos[4].jointtype = 1;
9561vinfos[4].foffset = j4;
9562vinfos[4].indices[0] = _ij4[0];
9563vinfos[4].indices[1] = _ij4[1];
9564vinfos[4].maxsolutions = _nj4;
9565vinfos[5].jointtype = 1;
9566vinfos[5].foffset = j5;
9567vinfos[5].indices[0] = _ij5[0];
9568vinfos[5].indices[1] = _ij5[1];
9569vinfos[5].maxsolutions = _nj5;
9570std::vector<int> vfree(0);
9582if( bgotonextstatement )
9584bool bgotonextstatement =
true;
9587evalcond[0]=((
IKabs(new_r10))+(
IKabs(new_r00)));
9588if(
IKabs(evalcond[0]) < 0.0000050000000000 )
9590bgotonextstatement=
false;
9600j3eval[0]=((
IKabs(new_r11))+(
IKabs(new_r01)));
9601if(
IKabs(j3eval[0]) < 0.0000010000000000 )
9608IkReal j3array[2], cj3array[2], sj3array[2];
9609bool j3valid[2]={
false};
9615IkReal x720=x721.
value;
9616j3array[0]=((-1.0)*x720);
9617sj3array[0]=
IKsin(j3array[0]);
9618cj3array[0]=
IKcos(j3array[0]);
9619j3array[1]=((3.14159265358979)+(((-1.0)*x720)));
9620sj3array[1]=
IKsin(j3array[1]);
9621cj3array[1]=
IKcos(j3array[1]);
9622if( j3array[0] >
IKPI )
9626else if( j3array[0] < -
IKPI )
9630if( j3array[1] >
IKPI )
9634else if( j3array[1] < -
IKPI )
9638for(
int ij3 = 0; ij3 < 2; ++ij3)
9644_ij3[0] = ij3; _ij3[1] = -1;
9645for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
9649 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
9652j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
9655evalcond[0]=(((new_r01*(
IKsin(j3))))+(((-1.0)*new_r11*(
IKcos(j3)))));
9663std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
9664vinfos[0].jointtype = 1;
9665vinfos[0].foffset = j0;
9666vinfos[0].indices[0] = _ij0[0];
9667vinfos[0].indices[1] = _ij0[1];
9668vinfos[0].maxsolutions = _nj0;
9669vinfos[1].jointtype = 1;
9670vinfos[1].foffset = j1;
9671vinfos[1].indices[0] = _ij1[0];
9672vinfos[1].indices[1] = _ij1[1];
9673vinfos[1].maxsolutions = _nj1;
9674vinfos[2].jointtype = 1;
9675vinfos[2].foffset = j2;
9676vinfos[2].indices[0] = _ij2[0];
9677vinfos[2].indices[1] = _ij2[1];
9678vinfos[2].maxsolutions = _nj2;
9679vinfos[3].jointtype = 1;
9680vinfos[3].foffset = j3;
9681vinfos[3].indices[0] = _ij3[0];
9682vinfos[3].indices[1] = _ij3[1];
9683vinfos[3].maxsolutions = _nj3;
9684vinfos[4].jointtype = 1;
9685vinfos[4].foffset = j4;
9686vinfos[4].indices[0] = _ij4[0];
9687vinfos[4].indices[1] = _ij4[1];
9688vinfos[4].maxsolutions = _nj4;
9689vinfos[5].jointtype = 1;
9690vinfos[5].foffset = j5;
9691vinfos[5].indices[0] = _ij5[0];
9692vinfos[5].indices[1] = _ij5[1];
9693vinfos[5].maxsolutions = _nj5;
9694std::vector<int> vfree(0);
9706if( bgotonextstatement )
9708bool bgotonextstatement =
true;
9711evalcond[0]=((
IKabs(new_r10))+(
IKabs(new_r01)));
9712if(
IKabs(evalcond[0]) < 0.0000050000000000 )
9714bgotonextstatement=
false;
9723j3eval[1]=
IKsign(new_r11);
9725if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
9736j3eval[2]=
IKsign(new_r00);
9737if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
9748if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 )
9755IkReal j3array[1], cj3array[1], sj3array[1];
9756bool j3valid[1]={
false};
9769sj3array[0]=
IKsin(j3array[0]);
9770cj3array[0]=
IKcos(j3array[0]);
9771if( j3array[0] >
IKPI )
9775else if( j3array[0] < -
IKPI )
9779for(
int ij3 = 0; ij3 < 1; ++ij3)
9785_ij3[0] = ij3; _ij3[1] = -1;
9786for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
9790 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
9793j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
9796IkReal x724=
IKsin(j3);
9797IkReal x725=
IKcos(j3);
9798IkReal x726=(sj5*x724);
9799IkReal x727=((1.0)*x725);
9800IkReal x728=(cj5*x727);
9801evalcond[0]=(sj5+((new_r00*x724)));
9802evalcond[1]=(sj5+((new_r11*x724)));
9803evalcond[2]=(cj5+(((-1.0)*new_r11*x727)));
9804evalcond[3]=(((new_r00*x725))+(((-1.0)*cj5)));
9805evalcond[4]=(((cj5*x724))+((sj5*x725)));
9806evalcond[5]=((((-1.0)*x728))+x726+new_r00);
9807evalcond[6]=((((-1.0)*x728))+x726+new_r11);
9815std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
9816vinfos[0].jointtype = 1;
9817vinfos[0].foffset = j0;
9818vinfos[0].indices[0] = _ij0[0];
9819vinfos[0].indices[1] = _ij0[1];
9820vinfos[0].maxsolutions = _nj0;
9821vinfos[1].jointtype = 1;
9822vinfos[1].foffset = j1;
9823vinfos[1].indices[0] = _ij1[0];
9824vinfos[1].indices[1] = _ij1[1];
9825vinfos[1].maxsolutions = _nj1;
9826vinfos[2].jointtype = 1;
9827vinfos[2].foffset = j2;
9828vinfos[2].indices[0] = _ij2[0];
9829vinfos[2].indices[1] = _ij2[1];
9830vinfos[2].maxsolutions = _nj2;
9831vinfos[3].jointtype = 1;
9832vinfos[3].foffset = j3;
9833vinfos[3].indices[0] = _ij3[0];
9834vinfos[3].indices[1] = _ij3[1];
9835vinfos[3].maxsolutions = _nj3;
9836vinfos[4].jointtype = 1;
9837vinfos[4].foffset = j4;
9838vinfos[4].indices[0] = _ij4[0];
9839vinfos[4].indices[1] = _ij4[1];
9840vinfos[4].maxsolutions = _nj4;
9841vinfos[5].jointtype = 1;
9842vinfos[5].foffset = j5;
9843vinfos[5].indices[0] = _ij5[0];
9844vinfos[5].indices[1] = _ij5[1];
9845vinfos[5].maxsolutions = _nj5;
9846std::vector<int> vfree(0);
9859IkReal j3array[1], cj3array[1], sj3array[1];
9860bool j3valid[1]={
false};
9870j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x729.
value)))+(x730.
value));
9871sj3array[0]=
IKsin(j3array[0]);
9872cj3array[0]=
IKcos(j3array[0]);
9873if( j3array[0] >
IKPI )
9877else if( j3array[0] < -
IKPI )
9881for(
int ij3 = 0; ij3 < 1; ++ij3)
9887_ij3[0] = ij3; _ij3[1] = -1;
9888for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
9892 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
9895j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
9898IkReal x731=
IKsin(j3);
9899IkReal x732=
IKcos(j3);
9900IkReal x733=(sj5*x731);
9901IkReal x734=((1.0)*x732);
9902IkReal x735=(cj5*x734);
9903evalcond[0]=(sj5+((new_r00*x731)));
9904evalcond[1]=(sj5+((new_r11*x731)));
9905evalcond[2]=(cj5+(((-1.0)*new_r11*x734)));
9906evalcond[3]=(((new_r00*x732))+(((-1.0)*cj5)));
9907evalcond[4]=(((cj5*x731))+((sj5*x732)));
9908evalcond[5]=((((-1.0)*x735))+x733+new_r00);
9909evalcond[6]=((((-1.0)*x735))+x733+new_r11);
9917std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
9918vinfos[0].jointtype = 1;
9919vinfos[0].foffset = j0;
9920vinfos[0].indices[0] = _ij0[0];
9921vinfos[0].indices[1] = _ij0[1];
9922vinfos[0].maxsolutions = _nj0;
9923vinfos[1].jointtype = 1;
9924vinfos[1].foffset = j1;
9925vinfos[1].indices[0] = _ij1[0];
9926vinfos[1].indices[1] = _ij1[1];
9927vinfos[1].maxsolutions = _nj1;
9928vinfos[2].jointtype = 1;
9929vinfos[2].foffset = j2;
9930vinfos[2].indices[0] = _ij2[0];
9931vinfos[2].indices[1] = _ij2[1];
9932vinfos[2].maxsolutions = _nj2;
9933vinfos[3].jointtype = 1;
9934vinfos[3].foffset = j3;
9935vinfos[3].indices[0] = _ij3[0];
9936vinfos[3].indices[1] = _ij3[1];
9937vinfos[3].maxsolutions = _nj3;
9938vinfos[4].jointtype = 1;
9939vinfos[4].foffset = j4;
9940vinfos[4].indices[0] = _ij4[0];
9941vinfos[4].indices[1] = _ij4[1];
9942vinfos[4].maxsolutions = _nj4;
9943vinfos[5].jointtype = 1;
9944vinfos[5].foffset = j5;
9945vinfos[5].indices[0] = _ij5[0];
9946vinfos[5].indices[1] = _ij5[1];
9947vinfos[5].maxsolutions = _nj5;
9948std::vector<int> vfree(0);
9961IkReal j3array[1], cj3array[1], sj3array[1];
9962bool j3valid[1]={
false};
9972j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x736.
value)))+(x737.
value));
9973sj3array[0]=
IKsin(j3array[0]);
9974cj3array[0]=
IKcos(j3array[0]);
9975if( j3array[0] >
IKPI )
9979else if( j3array[0] < -
IKPI )
9983for(
int ij3 = 0; ij3 < 1; ++ij3)
9989_ij3[0] = ij3; _ij3[1] = -1;
9990for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
9994 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
9997j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
10000IkReal x738=
IKsin(j3);
10001IkReal x739=
IKcos(j3);
10002IkReal x740=(sj5*x738);
10003IkReal x741=((1.0)*x739);
10004IkReal x742=(cj5*x741);
10005evalcond[0]=(sj5+((new_r00*x738)));
10006evalcond[1]=(sj5+((new_r11*x738)));
10007evalcond[2]=(cj5+(((-1.0)*new_r11*x741)));
10008evalcond[3]=(((new_r00*x739))+(((-1.0)*cj5)));
10009evalcond[4]=(((cj5*x738))+((sj5*x739)));
10010evalcond[5]=(x740+new_r00+(((-1.0)*x742)));
10011evalcond[6]=(x740+new_r11+(((-1.0)*x742)));
10019std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
10020vinfos[0].jointtype = 1;
10021vinfos[0].foffset = j0;
10022vinfos[0].indices[0] = _ij0[0];
10023vinfos[0].indices[1] = _ij0[1];
10024vinfos[0].maxsolutions = _nj0;
10025vinfos[1].jointtype = 1;
10026vinfos[1].foffset = j1;
10027vinfos[1].indices[0] = _ij1[0];
10028vinfos[1].indices[1] = _ij1[1];
10029vinfos[1].maxsolutions = _nj1;
10030vinfos[2].jointtype = 1;
10031vinfos[2].foffset = j2;
10032vinfos[2].indices[0] = _ij2[0];
10033vinfos[2].indices[1] = _ij2[1];
10034vinfos[2].maxsolutions = _nj2;
10035vinfos[3].jointtype = 1;
10036vinfos[3].foffset = j3;
10037vinfos[3].indices[0] = _ij3[0];
10038vinfos[3].indices[1] = _ij3[1];
10039vinfos[3].maxsolutions = _nj3;
10040vinfos[4].jointtype = 1;
10041vinfos[4].foffset = j4;
10042vinfos[4].indices[0] = _ij4[0];
10043vinfos[4].indices[1] = _ij4[1];
10044vinfos[4].maxsolutions = _nj4;
10045vinfos[5].jointtype = 1;
10046vinfos[5].foffset = j5;
10047vinfos[5].indices[0] = _ij5[0];
10048vinfos[5].indices[1] = _ij5[1];
10049vinfos[5].maxsolutions = _nj5;
10050std::vector<int> vfree(0);
10062if( bgotonextstatement )
10064bool bgotonextstatement =
true;
10069bgotonextstatement=
false;
10074if( bgotonextstatement )
10090IkReal j3array[1], cj3array[1], sj3array[1];
10091bool j3valid[1]={
false};
10093IkReal x743=((1.0)*new_r11);
10102j3array[0]=((-1.5707963267949)+(x744.
value)+(((1.5707963267949)*(x745.
value))));
10103sj3array[0]=
IKsin(j3array[0]);
10104cj3array[0]=
IKcos(j3array[0]);
10105if( j3array[0] >
IKPI )
10109else if( j3array[0] < -
IKPI )
10110{ j3array[0]+=
IK2PI;
10113for(
int ij3 = 0; ij3 < 1; ++ij3)
10119_ij3[0] = ij3; _ij3[1] = -1;
10120for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
10124 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
10127j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
10130IkReal x746=
IKcos(j3);
10131IkReal x747=
IKsin(j3);
10132IkReal x748=(sj5*x747);
10133IkReal x749=(cj5*x747);
10134IkReal x750=(sj5*x746);
10135IkReal x751=((1.0)*x746);
10136IkReal x752=(cj5*x751);
10137evalcond[0]=(sj5+((new_r01*x746))+((new_r11*x747)));
10138evalcond[1]=(x750+x749+new_r01);
10139evalcond[2]=(sj5+(((-1.0)*new_r10*x751))+((new_r00*x747)));
10140evalcond[3]=(cj5+(((-1.0)*new_r11*x751))+((new_r01*x747)));
10141evalcond[4]=(x748+new_r00+(((-1.0)*x752)));
10142evalcond[5]=(x748+new_r11+(((-1.0)*x752)));
10143evalcond[6]=(((new_r10*x747))+((new_r00*x746))+(((-1.0)*cj5)));
10144evalcond[7]=((((-1.0)*x750))+(((-1.0)*x749))+new_r10);
10152std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
10153vinfos[0].jointtype = 1;
10154vinfos[0].foffset = j0;
10155vinfos[0].indices[0] = _ij0[0];
10156vinfos[0].indices[1] = _ij0[1];
10157vinfos[0].maxsolutions = _nj0;
10158vinfos[1].jointtype = 1;
10159vinfos[1].foffset = j1;
10160vinfos[1].indices[0] = _ij1[0];
10161vinfos[1].indices[1] = _ij1[1];
10162vinfos[1].maxsolutions = _nj1;
10163vinfos[2].jointtype = 1;
10164vinfos[2].foffset = j2;
10165vinfos[2].indices[0] = _ij2[0];
10166vinfos[2].indices[1] = _ij2[1];
10167vinfos[2].maxsolutions = _nj2;
10168vinfos[3].jointtype = 1;
10169vinfos[3].foffset = j3;
10170vinfos[3].indices[0] = _ij3[0];
10171vinfos[3].indices[1] = _ij3[1];
10172vinfos[3].maxsolutions = _nj3;
10173vinfos[4].jointtype = 1;
10174vinfos[4].foffset = j4;
10175vinfos[4].indices[0] = _ij4[0];
10176vinfos[4].indices[1] = _ij4[1];
10177vinfos[4].maxsolutions = _nj4;
10178vinfos[5].jointtype = 1;
10179vinfos[5].foffset = j5;
10180vinfos[5].indices[0] = _ij5[0];
10181vinfos[5].indices[1] = _ij5[1];
10182vinfos[5].maxsolutions = _nj5;
10183std::vector<int> vfree(0);
10196IkReal j3array[1], cj3array[1], sj3array[1];
10197bool j3valid[1]={
false};
10207j3array[0]=((-1.5707963267949)+(x753.
value)+(((1.5707963267949)*(x754.
value))));
10208sj3array[0]=
IKsin(j3array[0]);
10209cj3array[0]=
IKcos(j3array[0]);
10210if( j3array[0] >
IKPI )
10214else if( j3array[0] < -
IKPI )
10215{ j3array[0]+=
IK2PI;
10218for(
int ij3 = 0; ij3 < 1; ++ij3)
10224_ij3[0] = ij3; _ij3[1] = -1;
10225for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
10229 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
10232j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
10235IkReal x755=
IKcos(j3);
10236IkReal x756=
IKsin(j3);
10237IkReal x757=(sj5*x756);
10238IkReal x758=(cj5*x756);
10239IkReal x759=(sj5*x755);
10240IkReal x760=((1.0)*x755);
10241IkReal x761=(cj5*x760);
10242evalcond[0]=(sj5+((new_r11*x756))+((new_r01*x755)));
10243evalcond[1]=(x759+x758+new_r01);
10244evalcond[2]=(sj5+(((-1.0)*new_r10*x760))+((new_r00*x756)));
10245evalcond[3]=(cj5+(((-1.0)*new_r11*x760))+((new_r01*x756)));
10246evalcond[4]=((((-1.0)*x761))+x757+new_r00);
10247evalcond[5]=((((-1.0)*x761))+x757+new_r11);
10248evalcond[6]=(((new_r00*x755))+((new_r10*x756))+(((-1.0)*cj5)));
10249evalcond[7]=((((-1.0)*x759))+(((-1.0)*x758))+new_r10);
10257std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
10258vinfos[0].jointtype = 1;
10259vinfos[0].foffset = j0;
10260vinfos[0].indices[0] = _ij0[0];
10261vinfos[0].indices[1] = _ij0[1];
10262vinfos[0].maxsolutions = _nj0;
10263vinfos[1].jointtype = 1;
10264vinfos[1].foffset = j1;
10265vinfos[1].indices[0] = _ij1[0];
10266vinfos[1].indices[1] = _ij1[1];
10267vinfos[1].maxsolutions = _nj1;
10268vinfos[2].jointtype = 1;
10269vinfos[2].foffset = j2;
10270vinfos[2].indices[0] = _ij2[0];
10271vinfos[2].indices[1] = _ij2[1];
10272vinfos[2].maxsolutions = _nj2;
10273vinfos[3].jointtype = 1;
10274vinfos[3].foffset = j3;
10275vinfos[3].indices[0] = _ij3[0];
10276vinfos[3].indices[1] = _ij3[1];
10277vinfos[3].maxsolutions = _nj3;
10278vinfos[4].jointtype = 1;
10279vinfos[4].foffset = j4;
10280vinfos[4].indices[0] = _ij4[0];
10281vinfos[4].indices[1] = _ij4[1];
10282vinfos[4].maxsolutions = _nj4;
10283vinfos[5].jointtype = 1;
10284vinfos[5].foffset = j5;
10285vinfos[5].indices[0] = _ij5[0];
10286vinfos[5].indices[1] = _ij5[1];
10287vinfos[5].maxsolutions = _nj5;
10288std::vector<int> vfree(0);
10301IkReal j3array[1], cj3array[1], sj3array[1];
10302bool j3valid[1]={
false};
10304IkReal x762=((1.0)*new_r11);
10313j3array[0]=((-1.5707963267949)+(x763.
value)+(((1.5707963267949)*(x764.
value))));
10314sj3array[0]=
IKsin(j3array[0]);
10315cj3array[0]=
IKcos(j3array[0]);
10316if( j3array[0] >
IKPI )
10320else if( j3array[0] < -
IKPI )
10321{ j3array[0]+=
IK2PI;
10324for(
int ij3 = 0; ij3 < 1; ++ij3)
10330_ij3[0] = ij3; _ij3[1] = -1;
10331for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
10335 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
10338j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
10341IkReal x765=
IKcos(j3);
10342IkReal x766=
IKsin(j3);
10343IkReal x767=(sj5*x766);
10344IkReal x768=(cj5*x766);
10345IkReal x769=(sj5*x765);
10346IkReal x770=((1.0)*x765);
10347IkReal x771=(cj5*x770);
10348evalcond[0]=(sj5+((new_r11*x766))+((new_r01*x765)));
10349evalcond[1]=(x768+x769+new_r01);
10350evalcond[2]=(sj5+((new_r00*x766))+(((-1.0)*new_r10*x770)));
10351evalcond[3]=(cj5+((new_r01*x766))+(((-1.0)*new_r11*x770)));
10352evalcond[4]=(x767+(((-1.0)*x771))+new_r00);
10353evalcond[5]=(x767+(((-1.0)*x771))+new_r11);
10354evalcond[6]=(((new_r10*x766))+((new_r00*x765))+(((-1.0)*cj5)));
10355evalcond[7]=((((-1.0)*x769))+(((-1.0)*x768))+new_r10);
10363std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
10364vinfos[0].jointtype = 1;
10365vinfos[0].foffset = j0;
10366vinfos[0].indices[0] = _ij0[0];
10367vinfos[0].indices[1] = _ij0[1];
10368vinfos[0].maxsolutions = _nj0;
10369vinfos[1].jointtype = 1;
10370vinfos[1].foffset = j1;
10371vinfos[1].indices[0] = _ij1[0];
10372vinfos[1].indices[1] = _ij1[1];
10373vinfos[1].maxsolutions = _nj1;
10374vinfos[2].jointtype = 1;
10375vinfos[2].foffset = j2;
10376vinfos[2].indices[0] = _ij2[0];
10377vinfos[2].indices[1] = _ij2[1];
10378vinfos[2].maxsolutions = _nj2;
10379vinfos[3].jointtype = 1;
10380vinfos[3].foffset = j3;
10381vinfos[3].indices[0] = _ij3[0];
10382vinfos[3].indices[1] = _ij3[1];
10383vinfos[3].maxsolutions = _nj3;
10384vinfos[4].jointtype = 1;
10385vinfos[4].foffset = j4;
10386vinfos[4].indices[0] = _ij4[0];
10387vinfos[4].indices[1] = _ij4[1];
10388vinfos[4].maxsolutions = _nj4;
10389vinfos[5].jointtype = 1;
10390vinfos[5].foffset = j5;
10391vinfos[5].indices[0] = _ij5[0];
10392vinfos[5].indices[1] = _ij5[1];
10393vinfos[5].maxsolutions = _nj5;
10394std::vector<int> vfree(0);
10406if( bgotonextstatement )
10408bool bgotonextstatement =
true;
10411evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-3.14159265358979)+j4)))), 6.28318530717959)));
10412evalcond[1]=new_r02;
10413evalcond[2]=new_r12;
10414evalcond[3]=new_r21;
10415evalcond[4]=new_r20;
10416if(
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 )
10418bgotonextstatement=
false;
10423j4=3.14159265358979;
10424IkReal x772=((1.0)*new_r10);
10425IkReal x773=((((-1.0)*new_r11*x772))+(((-1.0)*new_r00*new_r01)));
10427j3eval[1]=((
IKabs((((cj5*new_r11))+((cj5*new_r00)))))+(
IKabs((((cj5*new_r01))+(((-1.0)*cj5*x772))))));
10429if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
10435j4=3.14159265358979;
10436IkReal x774=((1.0)*new_r10);
10437IkReal x775=((((-1.0)*cj5*new_r00))+(((-1.0)*sj5*x774)));
10440j3eval[2]=((
IKabs((((new_r00*new_r01))+((cj5*sj5)))))+(
IKabs(((((-1.0)*new_r01*x774))+(cj5*cj5)))));
10441if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
10447j4=3.14159265358979;
10448IkReal x776=((1.0)*new_r00);
10449IkReal x777=((((-1.0)*sj5*x776))+((cj5*new_r10)));
10451j3eval[1]=((
IKabs((((cj5*sj5))+(((-1.0)*new_r10*x776)))))+(
IKabs(((((-1.0)*(cj5*cj5)))+(new_r00*new_r00)))));
10453if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
10457bool bgotonextstatement =
true;
10460IkReal x778=((-1.0)*new_r00);
10461IkReal x780 = ((new_r10*new_r10)+(new_r00*new_r00));
10465IkReal x779=pow(x780,-0.5);
10470IkReal gconst6=((-1.0)*(x781.
value));
10471IkReal gconst7=((-1.0)*new_r10*x779);
10472IkReal gconst8=(x778*x779);
10477evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs((j5+(x782.
value))))), 6.28318530717959)));
10478if(
IKabs(evalcond[0]) < 0.0000050000000000 )
10480bgotonextstatement=
false;
10483IkReal x783=((-1.0)*new_r00);
10488IkReal x784=((-1.0)*(x786.
value));
10492j4=3.14159265358979;
10496IkReal gconst6=x784;
10497IkReal gconst7=((-1.0)*new_r10*x785);
10498IkReal gconst8=(x783*x785);
10499IkReal x787=new_r00*new_r00;
10500IkReal x788=((1.0)*new_r11);
10501IkReal x789=((1.0)*new_r00*new_r01);
10502IkReal x790=((((-1.0)*x789))+(((-1.0)*new_r10*x788)));
10504IkReal x792=(new_r00*x791);
10506j3eval[1]=((
IKabs(((((-1.0)*x788*x792))+(((-1.0)*x787*x791)))))+(
IKabs((((new_r10*x792))+(((-1.0)*x789*x791))))));
10508if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
10512IkReal x793=((-1.0)*new_r00);
10517IkReal x794=((-1.0)*(x796.
value));
10521j4=3.14159265358979;
10525IkReal gconst6=x794;
10526IkReal gconst7=((-1.0)*new_r10*x795);
10527IkReal gconst8=(x793*x795);
10528IkReal x797=new_r10*new_r10;
10529IkReal x798=new_r00*new_r00;
10534IkReal x799=x801.
value;
10535IkReal x800=(new_r00*x799);
10536j3eval[0]=((
IKabs((((new_r01*x797*x800))+((new_r10*x800))+((new_r01*x800*(new_r00*new_r00))))))+(
IKabs((((x798*x799))+(((-1.0)*new_r01*new_r10))))));
10537if(
IKabs(j3eval[0]) < 0.0000010000000000 )
10541IkReal x802=((-1.0)*new_r00);
10546IkReal x803=((-1.0)*(x805.
value));
10550j4=3.14159265358979;
10554IkReal gconst6=x803;
10555IkReal gconst7=((-1.0)*new_r10*x804);
10556IkReal gconst8=(x802*x804);
10557IkReal x806=new_r00*new_r00;
10558IkReal x807=new_r10*new_r10;
10563IkReal x808=x811.
value;
10564IkReal x809=(new_r10*x808);
10565IkReal x810=((1.0)*x808);
10566j3eval[0]=((
IKabs((((new_r00*x809*(new_r10*new_r10)))+((new_r00*x809))+((x809*(new_r00*new_r00*new_r00))))))+(
IKabs((((x806*x808))+(((-1.0)*x810*(x807*x807)))+(((-1.0)*x806*x807*x810))))));
10567if(
IKabs(j3eval[0]) < 0.0000010000000000 )
10571bool bgotonextstatement =
true;
10574evalcond[0]=((
IKabs(new_r11))+(
IKabs(new_r00)));
10575if(
IKabs(evalcond[0]) < 0.0000050000000000 )
10577bgotonextstatement=
false;
10584IkReal x812=((-1.0)*(x813.
value));
10587j4=3.14159265358979;
10593IkReal gconst6=x812;
10594IkReal x814 = new_r10*new_r10;
10598IkReal gconst7=((-1.0)*new_r10*(pow(x814,-0.5)));
10601if(
IKabs(j3eval[0]) < 0.0000010000000000 )
10604IkReal j3array[2], cj3array[2], sj3array[2];
10605bool j3valid[2]={
false};
10611cj3array[0]=(new_r01*(x815.
value));
10614 j3valid[0] = j3valid[1] =
true;
10615 j3array[0] =
IKacos(cj3array[0]);
10616 sj3array[0] =
IKsin(j3array[0]);
10617 cj3array[1] = cj3array[0];
10618 j3array[1] = -j3array[0];
10619 sj3array[1] = -sj3array[0];
10621else if( isnan(cj3array[0]) )
10625 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
10627for(
int ij3 = 0; ij3 < 2; ++ij3)
10633_ij3[0] = ij3; _ij3[1] = -1;
10634for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
10638 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
10641j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
10644IkReal x816=
IKsin(j3);
10645IkReal x817=
IKcos(j3);
10646IkReal x818=((1.0)*gconst7);
10647evalcond[0]=(new_r01*x816);
10648evalcond[1]=(new_r10*x816);
10649evalcond[2]=(gconst7*x816);
10650evalcond[3]=((((-1.0)*new_r10*x817))+gconst7);
10651evalcond[4]=((((-1.0)*x817*x818))+new_r10);
10652evalcond[5]=(((new_r01*x817))+(((-1.0)*x818)));
10660std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
10661vinfos[0].jointtype = 1;
10662vinfos[0].foffset = j0;
10663vinfos[0].indices[0] = _ij0[0];
10664vinfos[0].indices[1] = _ij0[1];
10665vinfos[0].maxsolutions = _nj0;
10666vinfos[1].jointtype = 1;
10667vinfos[1].foffset = j1;
10668vinfos[1].indices[0] = _ij1[0];
10669vinfos[1].indices[1] = _ij1[1];
10670vinfos[1].maxsolutions = _nj1;
10671vinfos[2].jointtype = 1;
10672vinfos[2].foffset = j2;
10673vinfos[2].indices[0] = _ij2[0];
10674vinfos[2].indices[1] = _ij2[1];
10675vinfos[2].maxsolutions = _nj2;
10676vinfos[3].jointtype = 1;
10677vinfos[3].foffset = j3;
10678vinfos[3].indices[0] = _ij3[0];
10679vinfos[3].indices[1] = _ij3[1];
10680vinfos[3].maxsolutions = _nj3;
10681vinfos[4].jointtype = 1;
10682vinfos[4].foffset = j4;
10683vinfos[4].indices[0] = _ij4[0];
10684vinfos[4].indices[1] = _ij4[1];
10685vinfos[4].maxsolutions = _nj4;
10686vinfos[5].jointtype = 1;
10687vinfos[5].foffset = j5;
10688vinfos[5].indices[0] = _ij5[0];
10689vinfos[5].indices[1] = _ij5[1];
10690vinfos[5].maxsolutions = _nj5;
10691std::vector<int> vfree(0);
10700IkReal j3array[2], cj3array[2], sj3array[2];
10701bool j3valid[2]={
false};
10707cj3array[0]=(gconst7*(x819.
value));
10710 j3valid[0] = j3valid[1] =
true;
10711 j3array[0] =
IKacos(cj3array[0]);
10712 sj3array[0] =
IKsin(j3array[0]);
10713 cj3array[1] = cj3array[0];
10714 j3array[1] = -j3array[0];
10715 sj3array[1] = -sj3array[0];
10717else if( isnan(cj3array[0]) )
10721 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
10723for(
int ij3 = 0; ij3 < 2; ++ij3)
10729_ij3[0] = ij3; _ij3[1] = -1;
10730for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
10734 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
10737j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
10740IkReal x820=
IKsin(j3);
10741IkReal x821=
IKcos(j3);
10742IkReal x822=((1.0)*gconst7);
10743IkReal x823=(x821*x822);
10744evalcond[0]=(new_r01*x820);
10745evalcond[1]=(new_r10*x820);
10746evalcond[2]=(gconst7*x820);
10747evalcond[3]=((((-1.0)*x823))+new_r01);
10748evalcond[4]=((((-1.0)*x823))+new_r10);
10749evalcond[5]=(((new_r01*x821))+(((-1.0)*x822)));
10757std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
10758vinfos[0].jointtype = 1;
10759vinfos[0].foffset = j0;
10760vinfos[0].indices[0] = _ij0[0];
10761vinfos[0].indices[1] = _ij0[1];
10762vinfos[0].maxsolutions = _nj0;
10763vinfos[1].jointtype = 1;
10764vinfos[1].foffset = j1;
10765vinfos[1].indices[0] = _ij1[0];
10766vinfos[1].indices[1] = _ij1[1];
10767vinfos[1].maxsolutions = _nj1;
10768vinfos[2].jointtype = 1;
10769vinfos[2].foffset = j2;
10770vinfos[2].indices[0] = _ij2[0];
10771vinfos[2].indices[1] = _ij2[1];
10772vinfos[2].maxsolutions = _nj2;
10773vinfos[3].jointtype = 1;
10774vinfos[3].foffset = j3;
10775vinfos[3].indices[0] = _ij3[0];
10776vinfos[3].indices[1] = _ij3[1];
10777vinfos[3].maxsolutions = _nj3;
10778vinfos[4].jointtype = 1;
10779vinfos[4].foffset = j4;
10780vinfos[4].indices[0] = _ij4[0];
10781vinfos[4].indices[1] = _ij4[1];
10782vinfos[4].maxsolutions = _nj4;
10783vinfos[5].jointtype = 1;
10784vinfos[5].foffset = j5;
10785vinfos[5].indices[0] = _ij5[0];
10786vinfos[5].indices[1] = _ij5[1];
10787vinfos[5].maxsolutions = _nj5;
10788std::vector<int> vfree(0);
10800if( bgotonextstatement )
10802bool bgotonextstatement =
true;
10805evalcond[0]=((
IKabs(new_r11))+(
IKabs(new_r01)));
10806evalcond[1]=gconst8;
10807if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 )
10809bgotonextstatement=
false;
10812IkReal x824=((-1.0)*new_r00);
10817IkReal x825=((-1.0)*(x826.
value));
10820j4=3.14159265358979;
10828IkReal gconst6=x825;
10829IkReal gconst7=((-1.0)*new_r10);
10830IkReal gconst8=x824;
10833j3eval[2]=((
IKabs(((1.0)+(((-1.0)*(new_r10*new_r10))))))+(
IKabs((new_r00*new_r10))));
10834if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
10838IkReal x827=((-1.0)*new_r00);
10843IkReal x828=((-1.0)*(x829.
value));
10846j4=3.14159265358979;
10854IkReal gconst6=x828;
10855IkReal gconst7=((-1.0)*new_r10);
10856IkReal gconst8=x827;
10858j3eval[1]=((
IKabs(((-1.0)+(new_r10*new_r10))))+(
IKabs((new_r00*new_r10))));
10860if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
10864IkReal x830=((-1.0)*new_r00);
10869IkReal x831=((-1.0)*(x832.
value));
10872j4=3.14159265358979;
10880IkReal gconst6=x831;
10881IkReal gconst7=((-1.0)*new_r10);
10882IkReal gconst8=x830;
10884j3eval[1]=((((0.5)*(
IKabs(((1.0)+(((-2.0)*(new_r10*new_r10))))))))+(
IKabs((new_r00*new_r10))));
10886if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
10893IkReal j3array[1], cj3array[1], sj3array[1];
10894bool j3valid[1]={
false};
10904j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x833.
value)))+(x834.
value));
10905sj3array[0]=
IKsin(j3array[0]);
10906cj3array[0]=
IKcos(j3array[0]);
10907if( j3array[0] >
IKPI )
10911else if( j3array[0] < -
IKPI )
10912{ j3array[0]+=
IK2PI;
10915for(
int ij3 = 0; ij3 < 1; ++ij3)
10921_ij3[0] = ij3; _ij3[1] = -1;
10922for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
10926 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
10929j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
10932IkReal x835=
IKsin(j3);
10933IkReal x836=
IKcos(j3);
10934IkReal x837=(gconst8*x835);
10935IkReal x838=(gconst7*x835);
10936IkReal x839=(gconst8*x836);
10937IkReal x840=((1.0)*x836);
10938IkReal x841=(gconst7*x840);
10939evalcond[0]=((((-1.0)*x841))+x837);
10940evalcond[1]=(gconst8+((new_r00*x836))+((new_r10*x835)));
10941evalcond[2]=(new_r00+x838+x839);
10942evalcond[3]=((((-1.0)*new_r10*x840))+gconst7+((new_r00*x835)));
10943evalcond[4]=((((-1.0)*x838))+(((-1.0)*x839)));
10944evalcond[5]=((((-1.0)*x841))+new_r10+x837);
10952std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
10953vinfos[0].jointtype = 1;
10954vinfos[0].foffset = j0;
10955vinfos[0].indices[0] = _ij0[0];
10956vinfos[0].indices[1] = _ij0[1];
10957vinfos[0].maxsolutions = _nj0;
10958vinfos[1].jointtype = 1;
10959vinfos[1].foffset = j1;
10960vinfos[1].indices[0] = _ij1[0];
10961vinfos[1].indices[1] = _ij1[1];
10962vinfos[1].maxsolutions = _nj1;
10963vinfos[2].jointtype = 1;
10964vinfos[2].foffset = j2;
10965vinfos[2].indices[0] = _ij2[0];
10966vinfos[2].indices[1] = _ij2[1];
10967vinfos[2].maxsolutions = _nj2;
10968vinfos[3].jointtype = 1;
10969vinfos[3].foffset = j3;
10970vinfos[3].indices[0] = _ij3[0];
10971vinfos[3].indices[1] = _ij3[1];
10972vinfos[3].maxsolutions = _nj3;
10973vinfos[4].jointtype = 1;
10974vinfos[4].foffset = j4;
10975vinfos[4].indices[0] = _ij4[0];
10976vinfos[4].indices[1] = _ij4[1];
10977vinfos[4].maxsolutions = _nj4;
10978vinfos[5].jointtype = 1;
10979vinfos[5].foffset = j5;
10980vinfos[5].indices[0] = _ij5[0];
10981vinfos[5].indices[1] = _ij5[1];
10982vinfos[5].maxsolutions = _nj5;
10983std::vector<int> vfree(0);
10996IkReal j3array[1], cj3array[1], sj3array[1];
10997bool j3valid[1]={
false};
11007j3array[0]=((-1.5707963267949)+(x842.
value)+(((1.5707963267949)*(x843.
value))));
11008sj3array[0]=
IKsin(j3array[0]);
11009cj3array[0]=
IKcos(j3array[0]);
11010if( j3array[0] >
IKPI )
11014else if( j3array[0] < -
IKPI )
11015{ j3array[0]+=
IK2PI;
11018for(
int ij3 = 0; ij3 < 1; ++ij3)
11024_ij3[0] = ij3; _ij3[1] = -1;
11025for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
11029 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
11032j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
11035IkReal x844=
IKsin(j3);
11036IkReal x845=
IKcos(j3);
11037IkReal x846=(gconst8*x844);
11038IkReal x847=(gconst7*x844);
11039IkReal x848=(gconst8*x845);
11040IkReal x849=((1.0)*x845);
11041IkReal x850=(gconst7*x849);
11042evalcond[0]=((((-1.0)*x850))+x846);
11043evalcond[1]=(((new_r10*x844))+gconst8+((new_r00*x845)));
11044evalcond[2]=(new_r00+x847+x848);
11045evalcond[3]=((((-1.0)*new_r10*x849))+gconst7+((new_r00*x844)));
11046evalcond[4]=((((-1.0)*x848))+(((-1.0)*x847)));
11047evalcond[5]=((((-1.0)*x850))+new_r10+x846);
11055std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
11056vinfos[0].jointtype = 1;
11057vinfos[0].foffset = j0;
11058vinfos[0].indices[0] = _ij0[0];
11059vinfos[0].indices[1] = _ij0[1];
11060vinfos[0].maxsolutions = _nj0;
11061vinfos[1].jointtype = 1;
11062vinfos[1].foffset = j1;
11063vinfos[1].indices[0] = _ij1[0];
11064vinfos[1].indices[1] = _ij1[1];
11065vinfos[1].maxsolutions = _nj1;
11066vinfos[2].jointtype = 1;
11067vinfos[2].foffset = j2;
11068vinfos[2].indices[0] = _ij2[0];
11069vinfos[2].indices[1] = _ij2[1];
11070vinfos[2].maxsolutions = _nj2;
11071vinfos[3].jointtype = 1;
11072vinfos[3].foffset = j3;
11073vinfos[3].indices[0] = _ij3[0];
11074vinfos[3].indices[1] = _ij3[1];
11075vinfos[3].maxsolutions = _nj3;
11076vinfos[4].jointtype = 1;
11077vinfos[4].foffset = j4;
11078vinfos[4].indices[0] = _ij4[0];
11079vinfos[4].indices[1] = _ij4[1];
11080vinfos[4].maxsolutions = _nj4;
11081vinfos[5].jointtype = 1;
11082vinfos[5].foffset = j5;
11083vinfos[5].indices[0] = _ij5[0];
11084vinfos[5].indices[1] = _ij5[1];
11085vinfos[5].maxsolutions = _nj5;
11086std::vector<int> vfree(0);
11099IkReal j3array[1], cj3array[1], sj3array[1];
11100bool j3valid[1]={
false};
11110j3array[0]=((-1.5707963267949)+(x851.
value)+(((1.5707963267949)*(x852.
value))));
11111sj3array[0]=
IKsin(j3array[0]);
11112cj3array[0]=
IKcos(j3array[0]);
11113if( j3array[0] >
IKPI )
11117else if( j3array[0] < -
IKPI )
11118{ j3array[0]+=
IK2PI;
11121for(
int ij3 = 0; ij3 < 1; ++ij3)
11127_ij3[0] = ij3; _ij3[1] = -1;
11128for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
11132 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
11135j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
11138IkReal x853=
IKsin(j3);
11139IkReal x854=
IKcos(j3);
11140IkReal x855=(gconst8*x853);
11141IkReal x856=(gconst7*x853);
11142IkReal x857=(gconst8*x854);
11143IkReal x858=((1.0)*x854);
11144IkReal x859=(gconst7*x858);
11145evalcond[0]=((((-1.0)*x859))+x855);
11146evalcond[1]=(gconst8+((new_r10*x853))+((new_r00*x854)));
11147evalcond[2]=(new_r00+x856+x857);
11148evalcond[3]=(gconst7+(((-1.0)*new_r10*x858))+((new_r00*x853)));
11149evalcond[4]=((((-1.0)*x856))+(((-1.0)*x857)));
11150evalcond[5]=((((-1.0)*x859))+new_r10+x855);
11158std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
11159vinfos[0].jointtype = 1;
11160vinfos[0].foffset = j0;
11161vinfos[0].indices[0] = _ij0[0];
11162vinfos[0].indices[1] = _ij0[1];
11163vinfos[0].maxsolutions = _nj0;
11164vinfos[1].jointtype = 1;
11165vinfos[1].foffset = j1;
11166vinfos[1].indices[0] = _ij1[0];
11167vinfos[1].indices[1] = _ij1[1];
11168vinfos[1].maxsolutions = _nj1;
11169vinfos[2].jointtype = 1;
11170vinfos[2].foffset = j2;
11171vinfos[2].indices[0] = _ij2[0];
11172vinfos[2].indices[1] = _ij2[1];
11173vinfos[2].maxsolutions = _nj2;
11174vinfos[3].jointtype = 1;
11175vinfos[3].foffset = j3;
11176vinfos[3].indices[0] = _ij3[0];
11177vinfos[3].indices[1] = _ij3[1];
11178vinfos[3].maxsolutions = _nj3;
11179vinfos[4].jointtype = 1;
11180vinfos[4].foffset = j4;
11181vinfos[4].indices[0] = _ij4[0];
11182vinfos[4].indices[1] = _ij4[1];
11183vinfos[4].maxsolutions = _nj4;
11184vinfos[5].jointtype = 1;
11185vinfos[5].foffset = j5;
11186vinfos[5].indices[0] = _ij5[0];
11187vinfos[5].indices[1] = _ij5[1];
11188vinfos[5].maxsolutions = _nj5;
11189std::vector<int> vfree(0);
11201if( bgotonextstatement )
11203bool bgotonextstatement =
true;
11206evalcond[0]=((
IKabs(new_r10))+(
IKabs(new_r01)));
11207if(
IKabs(evalcond[0]) < 0.0000050000000000 )
11209bgotonextstatement=
false;
11212IkReal x860=((-1.0)*new_r00);
11217IkReal x861=((-1.0)*(x862.
value));
11220j4=3.14159265358979;
11226IkReal gconst6=x861;
11228IkReal x863 = new_r00*new_r00;
11232IkReal gconst8=(x860*(pow(x863,-0.5)));
11234if(
IKabs(j3eval[0]) < 0.0000010000000000 )
11237IkReal j3array[2], cj3array[2], sj3array[2];
11238bool j3valid[2]={
false};
11244cj3array[0]=(new_r11*(x864.
value));
11247 j3valid[0] = j3valid[1] =
true;
11248 j3array[0] =
IKacos(cj3array[0]);
11249 sj3array[0] =
IKsin(j3array[0]);
11250 cj3array[1] = cj3array[0];
11251 j3array[1] = -j3array[0];
11252 sj3array[1] = -sj3array[0];
11254else if( isnan(cj3array[0]) )
11258 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
11260for(
int ij3 = 0; ij3 < 2; ++ij3)
11266_ij3[0] = ij3; _ij3[1] = -1;
11267for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
11271 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
11274j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
11277IkReal x865=
IKsin(j3);
11278IkReal x866=
IKcos(j3);
11279evalcond[0]=(new_r00*x865);
11280evalcond[1]=(new_r11*x865);
11281evalcond[2]=(gconst8*x865);
11282evalcond[3]=(((new_r00*x866))+gconst8);
11283evalcond[4]=(((gconst8*x866))+new_r00);
11284evalcond[5]=(gconst8+(((-1.0)*new_r11*x866)));
11292std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
11293vinfos[0].jointtype = 1;
11294vinfos[0].foffset = j0;
11295vinfos[0].indices[0] = _ij0[0];
11296vinfos[0].indices[1] = _ij0[1];
11297vinfos[0].maxsolutions = _nj0;
11298vinfos[1].jointtype = 1;
11299vinfos[1].foffset = j1;
11300vinfos[1].indices[0] = _ij1[0];
11301vinfos[1].indices[1] = _ij1[1];
11302vinfos[1].maxsolutions = _nj1;
11303vinfos[2].jointtype = 1;
11304vinfos[2].foffset = j2;
11305vinfos[2].indices[0] = _ij2[0];
11306vinfos[2].indices[1] = _ij2[1];
11307vinfos[2].maxsolutions = _nj2;
11308vinfos[3].jointtype = 1;
11309vinfos[3].foffset = j3;
11310vinfos[3].indices[0] = _ij3[0];
11311vinfos[3].indices[1] = _ij3[1];
11312vinfos[3].maxsolutions = _nj3;
11313vinfos[4].jointtype = 1;
11314vinfos[4].foffset = j4;
11315vinfos[4].indices[0] = _ij4[0];
11316vinfos[4].indices[1] = _ij4[1];
11317vinfos[4].maxsolutions = _nj4;
11318vinfos[5].jointtype = 1;
11319vinfos[5].foffset = j5;
11320vinfos[5].indices[0] = _ij5[0];
11321vinfos[5].indices[1] = _ij5[1];
11322vinfos[5].maxsolutions = _nj5;
11323std::vector<int> vfree(0);
11332IkReal j3array[2], cj3array[2], sj3array[2];
11333bool j3valid[2]={
false};
11339cj3array[0]=(gconst8*(x867.
value));
11342 j3valid[0] = j3valid[1] =
true;
11343 j3array[0] =
IKacos(cj3array[0]);
11344 sj3array[0] =
IKsin(j3array[0]);
11345 cj3array[1] = cj3array[0];
11346 j3array[1] = -j3array[0];
11347 sj3array[1] = -sj3array[0];
11349else if( isnan(cj3array[0]) )
11353 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
11355for(
int ij3 = 0; ij3 < 2; ++ij3)
11361_ij3[0] = ij3; _ij3[1] = -1;
11362for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
11366 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
11369j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
11372IkReal x868=
IKsin(j3);
11373IkReal x869=
IKcos(j3);
11374IkReal x870=(gconst8*x869);
11375evalcond[0]=(new_r00*x868);
11376evalcond[1]=(new_r11*x868);
11377evalcond[2]=(gconst8*x868);
11378evalcond[3]=(((new_r00*x869))+gconst8);
11379evalcond[4]=(new_r00+x870);
11380evalcond[5]=((((-1.0)*x870))+new_r11);
11388std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
11389vinfos[0].jointtype = 1;
11390vinfos[0].foffset = j0;
11391vinfos[0].indices[0] = _ij0[0];
11392vinfos[0].indices[1] = _ij0[1];
11393vinfos[0].maxsolutions = _nj0;
11394vinfos[1].jointtype = 1;
11395vinfos[1].foffset = j1;
11396vinfos[1].indices[0] = _ij1[0];
11397vinfos[1].indices[1] = _ij1[1];
11398vinfos[1].maxsolutions = _nj1;
11399vinfos[2].jointtype = 1;
11400vinfos[2].foffset = j2;
11401vinfos[2].indices[0] = _ij2[0];
11402vinfos[2].indices[1] = _ij2[1];
11403vinfos[2].maxsolutions = _nj2;
11404vinfos[3].jointtype = 1;
11405vinfos[3].foffset = j3;
11406vinfos[3].indices[0] = _ij3[0];
11407vinfos[3].indices[1] = _ij3[1];
11408vinfos[3].maxsolutions = _nj3;
11409vinfos[4].jointtype = 1;
11410vinfos[4].foffset = j4;
11411vinfos[4].indices[0] = _ij4[0];
11412vinfos[4].indices[1] = _ij4[1];
11413vinfos[4].maxsolutions = _nj4;
11414vinfos[5].jointtype = 1;
11415vinfos[5].foffset = j5;
11416vinfos[5].indices[0] = _ij5[0];
11417vinfos[5].indices[1] = _ij5[1];
11418vinfos[5].maxsolutions = _nj5;
11419std::vector<int> vfree(0);
11431if( bgotonextstatement )
11433bool bgotonextstatement =
true;
11436evalcond[0]=
IKabs(new_r00);
11437if(
IKabs(evalcond[0]) < 0.0000050000000000 )
11439bgotonextstatement=
false;
11446IkReal x871=((-1.0)*(x872.
value));
11449j4=3.14159265358979;
11454IkReal gconst6=x871;
11455IkReal x873 = new_r10*new_r10;
11459IkReal gconst7=((-1.0)*new_r10*(pow(x873,-0.5)));
11461j3eval[0]=((
IKabs(new_r11))+(
IKabs(new_r01)));
11462if(
IKabs(j3eval[0]) < 0.0000010000000000 )
11470IkReal x874=((-1.0)*(x875.
value));
11473j4=3.14159265358979;
11478IkReal gconst6=x874;
11479IkReal x876 = new_r10*new_r10;
11483IkReal gconst7=((-1.0)*new_r10*(pow(x876,-0.5)));
11485j3eval[0]=((
IKabs(new_r11))+(
IKabs(new_r10)));
11486if(
IKabs(j3eval[0]) < 0.0000010000000000 )
11494IkReal x877=((-1.0)*(x878.
value));
11497j4=3.14159265358979;
11502IkReal gconst6=x877;
11503IkReal x879 = new_r10*new_r10;
11507IkReal gconst7=((-1.0)*new_r10*(pow(x879,-0.5)));
11510if(
IKabs(j3eval[0]) < 0.0000010000000000 )
11517IkReal j3array[1], cj3array[1], sj3array[1];
11518bool j3valid[1]={
false};
11531sj3array[0]=
IKsin(j3array[0]);
11532cj3array[0]=
IKcos(j3array[0]);
11533if( j3array[0] >
IKPI )
11537else if( j3array[0] < -
IKPI )
11538{ j3array[0]+=
IK2PI;
11541for(
int ij3 = 0; ij3 < 1; ++ij3)
11547_ij3[0] = ij3; _ij3[1] = -1;
11548for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
11552 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
11555j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
11558IkReal x882=
IKsin(j3);
11559IkReal x883=
IKcos(j3);
11560IkReal x884=((1.0)*gconst7);
11561IkReal x885=((1.0)*x883);
11562IkReal x886=(x883*x884);
11563evalcond[0]=(new_r10*x882);
11564evalcond[1]=(gconst7*x882);
11565evalcond[2]=((((-1.0)*new_r10*x885))+gconst7);
11566evalcond[3]=((((-1.0)*x886))+new_r01);
11567evalcond[4]=((((-1.0)*x882*x884))+new_r11);
11568evalcond[5]=((((-1.0)*x886))+new_r10);
11569evalcond[6]=(((new_r01*x882))+(((-1.0)*new_r11*x885)));
11570evalcond[7]=(((new_r01*x883))+((new_r11*x882))+(((-1.0)*x884)));
11578std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
11579vinfos[0].jointtype = 1;
11580vinfos[0].foffset = j0;
11581vinfos[0].indices[0] = _ij0[0];
11582vinfos[0].indices[1] = _ij0[1];
11583vinfos[0].maxsolutions = _nj0;
11584vinfos[1].jointtype = 1;
11585vinfos[1].foffset = j1;
11586vinfos[1].indices[0] = _ij1[0];
11587vinfos[1].indices[1] = _ij1[1];
11588vinfos[1].maxsolutions = _nj1;
11589vinfos[2].jointtype = 1;
11590vinfos[2].foffset = j2;
11591vinfos[2].indices[0] = _ij2[0];
11592vinfos[2].indices[1] = _ij2[1];
11593vinfos[2].maxsolutions = _nj2;
11594vinfos[3].jointtype = 1;
11595vinfos[3].foffset = j3;
11596vinfos[3].indices[0] = _ij3[0];
11597vinfos[3].indices[1] = _ij3[1];
11598vinfos[3].maxsolutions = _nj3;
11599vinfos[4].jointtype = 1;
11600vinfos[4].foffset = j4;
11601vinfos[4].indices[0] = _ij4[0];
11602vinfos[4].indices[1] = _ij4[1];
11603vinfos[4].maxsolutions = _nj4;
11604vinfos[5].jointtype = 1;
11605vinfos[5].foffset = j5;
11606vinfos[5].indices[0] = _ij5[0];
11607vinfos[5].indices[1] = _ij5[1];
11608vinfos[5].maxsolutions = _nj5;
11609std::vector<int> vfree(0);
11622IkReal j3array[1], cj3array[1], sj3array[1];
11623bool j3valid[1]={
false};
11633j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x887.
value)))+(x888.
value));
11634sj3array[0]=
IKsin(j3array[0]);
11635cj3array[0]=
IKcos(j3array[0]);
11636if( j3array[0] >
IKPI )
11640else if( j3array[0] < -
IKPI )
11641{ j3array[0]+=
IK2PI;
11644for(
int ij3 = 0; ij3 < 1; ++ij3)
11650_ij3[0] = ij3; _ij3[1] = -1;
11651for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
11655 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
11658j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
11661IkReal x889=
IKsin(j3);
11662IkReal x890=
IKcos(j3);
11663IkReal x891=((1.0)*gconst7);
11664IkReal x892=((1.0)*x890);
11665IkReal x893=(x890*x891);
11666evalcond[0]=(new_r10*x889);
11667evalcond[1]=(gconst7*x889);
11668evalcond[2]=(gconst7+(((-1.0)*new_r10*x892)));
11669evalcond[3]=((((-1.0)*x893))+new_r01);
11670evalcond[4]=((((-1.0)*x889*x891))+new_r11);
11671evalcond[5]=((((-1.0)*x893))+new_r10);
11672evalcond[6]=(((new_r01*x889))+(((-1.0)*new_r11*x892)));
11673evalcond[7]=(((new_r11*x889))+((new_r01*x890))+(((-1.0)*x891)));
11681std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
11682vinfos[0].jointtype = 1;
11683vinfos[0].foffset = j0;
11684vinfos[0].indices[0] = _ij0[0];
11685vinfos[0].indices[1] = _ij0[1];
11686vinfos[0].maxsolutions = _nj0;
11687vinfos[1].jointtype = 1;
11688vinfos[1].foffset = j1;
11689vinfos[1].indices[0] = _ij1[0];
11690vinfos[1].indices[1] = _ij1[1];
11691vinfos[1].maxsolutions = _nj1;
11692vinfos[2].jointtype = 1;
11693vinfos[2].foffset = j2;
11694vinfos[2].indices[0] = _ij2[0];
11695vinfos[2].indices[1] = _ij2[1];
11696vinfos[2].maxsolutions = _nj2;
11697vinfos[3].jointtype = 1;
11698vinfos[3].foffset = j3;
11699vinfos[3].indices[0] = _ij3[0];
11700vinfos[3].indices[1] = _ij3[1];
11701vinfos[3].maxsolutions = _nj3;
11702vinfos[4].jointtype = 1;
11703vinfos[4].foffset = j4;
11704vinfos[4].indices[0] = _ij4[0];
11705vinfos[4].indices[1] = _ij4[1];
11706vinfos[4].maxsolutions = _nj4;
11707vinfos[5].jointtype = 1;
11708vinfos[5].foffset = j5;
11709vinfos[5].indices[0] = _ij5[0];
11710vinfos[5].indices[1] = _ij5[1];
11711vinfos[5].maxsolutions = _nj5;
11712std::vector<int> vfree(0);
11725IkReal j3array[1], cj3array[1], sj3array[1];
11726bool j3valid[1]={
false};
11736j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x894.
value)))+(x895.
value));
11737sj3array[0]=
IKsin(j3array[0]);
11738cj3array[0]=
IKcos(j3array[0]);
11739if( j3array[0] >
IKPI )
11743else if( j3array[0] < -
IKPI )
11744{ j3array[0]+=
IK2PI;
11747for(
int ij3 = 0; ij3 < 1; ++ij3)
11753_ij3[0] = ij3; _ij3[1] = -1;
11754for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
11758 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
11761j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
11764IkReal x896=
IKsin(j3);
11765IkReal x897=
IKcos(j3);
11766IkReal x898=((1.0)*gconst7);
11767IkReal x899=((1.0)*x897);
11768IkReal x900=(x897*x898);
11769evalcond[0]=(new_r10*x896);
11770evalcond[1]=(gconst7*x896);
11771evalcond[2]=(gconst7+(((-1.0)*new_r10*x899)));
11772evalcond[3]=((((-1.0)*x900))+new_r01);
11773evalcond[4]=((((-1.0)*x896*x898))+new_r11);
11774evalcond[5]=((((-1.0)*x900))+new_r10);
11775evalcond[6]=(((new_r01*x896))+(((-1.0)*new_r11*x899)));
11776evalcond[7]=(((new_r11*x896))+((new_r01*x897))+(((-1.0)*x898)));
11784std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
11785vinfos[0].jointtype = 1;
11786vinfos[0].foffset = j0;
11787vinfos[0].indices[0] = _ij0[0];
11788vinfos[0].indices[1] = _ij0[1];
11789vinfos[0].maxsolutions = _nj0;
11790vinfos[1].jointtype = 1;
11791vinfos[1].foffset = j1;
11792vinfos[1].indices[0] = _ij1[0];
11793vinfos[1].indices[1] = _ij1[1];
11794vinfos[1].maxsolutions = _nj1;
11795vinfos[2].jointtype = 1;
11796vinfos[2].foffset = j2;
11797vinfos[2].indices[0] = _ij2[0];
11798vinfos[2].indices[1] = _ij2[1];
11799vinfos[2].maxsolutions = _nj2;
11800vinfos[3].jointtype = 1;
11801vinfos[3].foffset = j3;
11802vinfos[3].indices[0] = _ij3[0];
11803vinfos[3].indices[1] = _ij3[1];
11804vinfos[3].maxsolutions = _nj3;
11805vinfos[4].jointtype = 1;
11806vinfos[4].foffset = j4;
11807vinfos[4].indices[0] = _ij4[0];
11808vinfos[4].indices[1] = _ij4[1];
11809vinfos[4].maxsolutions = _nj4;
11810vinfos[5].jointtype = 1;
11811vinfos[5].foffset = j5;
11812vinfos[5].indices[0] = _ij5[0];
11813vinfos[5].indices[1] = _ij5[1];
11814vinfos[5].maxsolutions = _nj5;
11815std::vector<int> vfree(0);
11827if( bgotonextstatement )
11829bool bgotonextstatement =
true;
11834bgotonextstatement=
false;
11839if( bgotonextstatement )
11851IkReal j3array[1], cj3array[1], sj3array[1];
11852bool j3valid[1]={
false};
11862j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x901.
value)))+(x902.
value));
11863sj3array[0]=
IKsin(j3array[0]);
11864cj3array[0]=
IKcos(j3array[0]);
11865if( j3array[0] >
IKPI )
11869else if( j3array[0] < -
IKPI )
11870{ j3array[0]+=
IK2PI;
11873for(
int ij3 = 0; ij3 < 1; ++ij3)
11879_ij3[0] = ij3; _ij3[1] = -1;
11880for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
11884 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
11887j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
11890IkReal x903=
IKcos(j3);
11891IkReal x904=
IKsin(j3);
11892IkReal x905=(gconst8*x904);
11893IkReal x906=(gconst7*x904);
11894IkReal x907=((1.0)*x903);
11895IkReal x908=(gconst7*x907);
11896evalcond[0]=(gconst8+((new_r10*x904))+((new_r00*x903)));
11897evalcond[1]=(new_r00+((gconst8*x903))+x906);
11898evalcond[2]=(gconst7+((new_r00*x904))+(((-1.0)*new_r10*x907)));
11899evalcond[3]=((((-1.0)*new_r11*x907))+gconst8+((new_r01*x904)));
11900evalcond[4]=((((-1.0)*x908))+new_r01+x905);
11901evalcond[5]=((((-1.0)*x908))+new_r10+x905);
11902evalcond[6]=((((-1.0)*gconst7))+((new_r11*x904))+((new_r01*x903)));
11903evalcond[7]=((((-1.0)*gconst8*x907))+(((-1.0)*x906))+new_r11);
11911std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
11912vinfos[0].jointtype = 1;
11913vinfos[0].foffset = j0;
11914vinfos[0].indices[0] = _ij0[0];
11915vinfos[0].indices[1] = _ij0[1];
11916vinfos[0].maxsolutions = _nj0;
11917vinfos[1].jointtype = 1;
11918vinfos[1].foffset = j1;
11919vinfos[1].indices[0] = _ij1[0];
11920vinfos[1].indices[1] = _ij1[1];
11921vinfos[1].maxsolutions = _nj1;
11922vinfos[2].jointtype = 1;
11923vinfos[2].foffset = j2;
11924vinfos[2].indices[0] = _ij2[0];
11925vinfos[2].indices[1] = _ij2[1];
11926vinfos[2].maxsolutions = _nj2;
11927vinfos[3].jointtype = 1;
11928vinfos[3].foffset = j3;
11929vinfos[3].indices[0] = _ij3[0];
11930vinfos[3].indices[1] = _ij3[1];
11931vinfos[3].maxsolutions = _nj3;
11932vinfos[4].jointtype = 1;
11933vinfos[4].foffset = j4;
11934vinfos[4].indices[0] = _ij4[0];
11935vinfos[4].indices[1] = _ij4[1];
11936vinfos[4].maxsolutions = _nj4;
11937vinfos[5].jointtype = 1;
11938vinfos[5].foffset = j5;
11939vinfos[5].indices[0] = _ij5[0];
11940vinfos[5].indices[1] = _ij5[1];
11941vinfos[5].maxsolutions = _nj5;
11942std::vector<int> vfree(0);
11955IkReal j3array[1], cj3array[1], sj3array[1];
11956bool j3valid[1]={
false};
11958IkReal x909=((1.0)*new_r10);
11967j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x910.
value)))+(x911.
value));
11968sj3array[0]=
IKsin(j3array[0]);
11969cj3array[0]=
IKcos(j3array[0]);
11970if( j3array[0] >
IKPI )
11974else if( j3array[0] < -
IKPI )
11975{ j3array[0]+=
IK2PI;
11978for(
int ij3 = 0; ij3 < 1; ++ij3)
11984_ij3[0] = ij3; _ij3[1] = -1;
11985for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
11989 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
11992j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
11995IkReal x912=
IKcos(j3);
11996IkReal x913=
IKsin(j3);
11997IkReal x914=(gconst8*x913);
11998IkReal x915=(gconst7*x913);
11999IkReal x916=((1.0)*x912);
12000IkReal x917=(gconst7*x916);
12001evalcond[0]=(gconst8+((new_r10*x913))+((new_r00*x912)));
12002evalcond[1]=(((gconst8*x912))+new_r00+x915);
12003evalcond[2]=(gconst7+((new_r00*x913))+(((-1.0)*new_r10*x916)));
12004evalcond[3]=(gconst8+((new_r01*x913))+(((-1.0)*new_r11*x916)));
12005evalcond[4]=((((-1.0)*x917))+new_r01+x914);
12006evalcond[5]=((((-1.0)*x917))+new_r10+x914);
12007evalcond[6]=(((new_r11*x913))+(((-1.0)*gconst7))+((new_r01*x912)));
12008evalcond[7]=((((-1.0)*gconst8*x916))+(((-1.0)*x915))+new_r11);
12016std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
12017vinfos[0].jointtype = 1;
12018vinfos[0].foffset = j0;
12019vinfos[0].indices[0] = _ij0[0];
12020vinfos[0].indices[1] = _ij0[1];
12021vinfos[0].maxsolutions = _nj0;
12022vinfos[1].jointtype = 1;
12023vinfos[1].foffset = j1;
12024vinfos[1].indices[0] = _ij1[0];
12025vinfos[1].indices[1] = _ij1[1];
12026vinfos[1].maxsolutions = _nj1;
12027vinfos[2].jointtype = 1;
12028vinfos[2].foffset = j2;
12029vinfos[2].indices[0] = _ij2[0];
12030vinfos[2].indices[1] = _ij2[1];
12031vinfos[2].maxsolutions = _nj2;
12032vinfos[3].jointtype = 1;
12033vinfos[3].foffset = j3;
12034vinfos[3].indices[0] = _ij3[0];
12035vinfos[3].indices[1] = _ij3[1];
12036vinfos[3].maxsolutions = _nj3;
12037vinfos[4].jointtype = 1;
12038vinfos[4].foffset = j4;
12039vinfos[4].indices[0] = _ij4[0];
12040vinfos[4].indices[1] = _ij4[1];
12041vinfos[4].maxsolutions = _nj4;
12042vinfos[5].jointtype = 1;
12043vinfos[5].foffset = j5;
12044vinfos[5].indices[0] = _ij5[0];
12045vinfos[5].indices[1] = _ij5[1];
12046vinfos[5].maxsolutions = _nj5;
12047std::vector<int> vfree(0);
12060IkReal j3array[1], cj3array[1], sj3array[1];
12061bool j3valid[1]={
false};
12063IkReal x918=((1.0)*new_r10);
12072j3array[0]=((-1.5707963267949)+(x919.
value)+(((1.5707963267949)*(x920.
value))));
12073sj3array[0]=
IKsin(j3array[0]);
12074cj3array[0]=
IKcos(j3array[0]);
12075if( j3array[0] >
IKPI )
12079else if( j3array[0] < -
IKPI )
12080{ j3array[0]+=
IK2PI;
12083for(
int ij3 = 0; ij3 < 1; ++ij3)
12089_ij3[0] = ij3; _ij3[1] = -1;
12090for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
12094 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
12097j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
12100IkReal x921=
IKcos(j3);
12101IkReal x922=
IKsin(j3);
12102IkReal x923=(gconst8*x922);
12103IkReal x924=(gconst7*x922);
12104IkReal x925=((1.0)*x921);
12105IkReal x926=(gconst7*x925);
12106evalcond[0]=(gconst8+((new_r00*x921))+((new_r10*x922)));
12107evalcond[1]=(((gconst8*x921))+new_r00+x924);
12108evalcond[2]=(gconst7+(((-1.0)*new_r10*x925))+((new_r00*x922)));
12109evalcond[3]=((((-1.0)*new_r11*x925))+gconst8+((new_r01*x922)));
12110evalcond[4]=((((-1.0)*x926))+new_r01+x923);
12111evalcond[5]=((((-1.0)*x926))+new_r10+x923);
12112evalcond[6]=((((-1.0)*gconst7))+((new_r01*x921))+((new_r11*x922)));
12113evalcond[7]=((((-1.0)*gconst8*x925))+(((-1.0)*x924))+new_r11);
12121std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
12122vinfos[0].jointtype = 1;
12123vinfos[0].foffset = j0;
12124vinfos[0].indices[0] = _ij0[0];
12125vinfos[0].indices[1] = _ij0[1];
12126vinfos[0].maxsolutions = _nj0;
12127vinfos[1].jointtype = 1;
12128vinfos[1].foffset = j1;
12129vinfos[1].indices[0] = _ij1[0];
12130vinfos[1].indices[1] = _ij1[1];
12131vinfos[1].maxsolutions = _nj1;
12132vinfos[2].jointtype = 1;
12133vinfos[2].foffset = j2;
12134vinfos[2].indices[0] = _ij2[0];
12135vinfos[2].indices[1] = _ij2[1];
12136vinfos[2].maxsolutions = _nj2;
12137vinfos[3].jointtype = 1;
12138vinfos[3].foffset = j3;
12139vinfos[3].indices[0] = _ij3[0];
12140vinfos[3].indices[1] = _ij3[1];
12141vinfos[3].maxsolutions = _nj3;
12142vinfos[4].jointtype = 1;
12143vinfos[4].foffset = j4;
12144vinfos[4].indices[0] = _ij4[0];
12145vinfos[4].indices[1] = _ij4[1];
12146vinfos[4].maxsolutions = _nj4;
12147vinfos[5].jointtype = 1;
12148vinfos[5].foffset = j5;
12149vinfos[5].indices[0] = _ij5[0];
12150vinfos[5].indices[1] = _ij5[1];
12151vinfos[5].maxsolutions = _nj5;
12152std::vector<int> vfree(0);
12164if( bgotonextstatement )
12166bool bgotonextstatement =
true;
12169IkReal x929 = ((new_r10*new_r10)+(new_r00*new_r00));
12173IkReal x927=pow(x929,-0.5);
12174IkReal x928=((1.0)*x927);
12179IkReal gconst9=((3.14159265358979)+(((-1.0)*(x930.
value))));
12180IkReal gconst10=(new_r10*x928);
12181IkReal gconst11=(new_r00*x928);
12186evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-3.14159265358979)+j5+(x931.
value))))), 6.28318530717959)));
12187if(
IKabs(evalcond[0]) < 0.0000050000000000 )
12189bgotonextstatement=
false;
12196IkReal x932=((1.0)*(x935.
value));
12198IkReal x934=((1.0)*x933);
12201j4=3.14159265358979;
12204j5=((3.14159265)+(((-1.0)*x932)));
12205IkReal gconst9=((3.14159265358979)+(((-1.0)*x932)));
12206IkReal gconst10=(new_r10*x934);
12207IkReal gconst11=(new_r00*x934);
12208IkReal x936=new_r00*new_r00;
12209IkReal x937=((1.0)*new_r00);
12210IkReal x938=((((-1.0)*new_r01*x937))+(((-1.0)*new_r10*new_r11)));
12212IkReal x940=(new_r00*x939);
12214j3eval[1]=((
IKabs((((new_r01*x940))+(((-1.0)*new_r10*x937*x939)))))+(
IKabs((((x936*x939))+((new_r11*x940))))));
12216if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
12224IkReal x941=((1.0)*(x944.
value));
12226IkReal x943=((1.0)*x942);
12229j4=3.14159265358979;
12232j5=((3.14159265)+(((-1.0)*x941)));
12233IkReal gconst9=((3.14159265358979)+(((-1.0)*x941)));
12234IkReal gconst10=(new_r10*x943);
12235IkReal gconst11=(new_r00*x943);
12236IkReal x945=new_r10*new_r10;
12237IkReal x946=new_r00*new_r00;
12238IkReal x947=((1.0)*new_r01);
12243IkReal x948=x951.
value;
12244IkReal x949=(new_r10*x948);
12245IkReal x950=(new_r01*x948);
12246j3eval[0]=((
IKabs((((new_r00*x949))+((new_r00*x945*x950))+((x950*(new_r00*new_r00*new_r00))))))+(
IKabs((((x946*x948))+(((-1.0)*x947*x949*(new_r10*new_r10)))+(((-1.0)*x946*x947*x949))))));
12247if(
IKabs(j3eval[0]) < 0.0000010000000000 )
12255IkReal x952=((1.0)*(x955.
value));
12257IkReal x954=((1.0)*x953);
12260j4=3.14159265358979;
12263j5=((3.14159265)+(((-1.0)*x952)));
12264IkReal gconst9=((3.14159265358979)+(((-1.0)*x952)));
12265IkReal gconst10=(new_r10*x954);
12266IkReal gconst11=(new_r00*x954);
12267IkReal x956=new_r00*new_r00;
12268IkReal x957=new_r10*new_r10;
12273IkReal x958=x961.
value;
12274IkReal x959=(new_r10*x958);
12275IkReal x960=((1.0)*x958);
12276j3eval[0]=((
IKabs(((((-1.0)*x956*x957*x960))+((x956*x958))+(((-1.0)*x960*(x957*x957))))))+(
IKabs((((new_r00*x959))+((x959*(new_r00*new_r00*new_r00)))+((new_r00*x959*(new_r10*new_r10)))))));
12277if(
IKabs(j3eval[0]) < 0.0000010000000000 )
12281bool bgotonextstatement =
true;
12284evalcond[0]=((
IKabs(new_r11))+(
IKabs(new_r00)));
12285if(
IKabs(evalcond[0]) < 0.0000050000000000 )
12287bgotonextstatement=
false;
12294IkReal x962=((1.0)*(x963.
value));
12297j4=3.14159265358979;
12300j5=((3.14159265)+(((-1.0)*x962)));
12303IkReal gconst9=((3.14159265358979)+(((-1.0)*x962)));
12304IkReal x964 = new_r10*new_r10;
12308IkReal gconst10=((1.0)*new_r10*(pow(x964,-0.5)));
12311if(
IKabs(j3eval[0]) < 0.0000010000000000 )
12314IkReal j3array[2], cj3array[2], sj3array[2];
12315bool j3valid[2]={
false};
12321cj3array[0]=(new_r01*(x965.
value));
12324 j3valid[0] = j3valid[1] =
true;
12325 j3array[0] =
IKacos(cj3array[0]);
12326 sj3array[0] =
IKsin(j3array[0]);
12327 cj3array[1] = cj3array[0];
12328 j3array[1] = -j3array[0];
12329 sj3array[1] = -sj3array[0];
12331else if( isnan(cj3array[0]) )
12335 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
12337for(
int ij3 = 0; ij3 < 2; ++ij3)
12343_ij3[0] = ij3; _ij3[1] = -1;
12344for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
12348 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
12351j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
12354IkReal x966=
IKsin(j3);
12355IkReal x967=
IKcos(j3);
12356IkReal x968=((1.0)*gconst10);
12357evalcond[0]=(new_r01*x966);
12358evalcond[1]=(new_r10*x966);
12359evalcond[2]=(gconst10*x966);
12360evalcond[3]=(gconst10+(((-1.0)*new_r10*x967)));
12361evalcond[4]=((((-1.0)*x967*x968))+new_r10);
12362evalcond[5]=(((new_r01*x967))+(((-1.0)*x968)));
12370std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
12371vinfos[0].jointtype = 1;
12372vinfos[0].foffset = j0;
12373vinfos[0].indices[0] = _ij0[0];
12374vinfos[0].indices[1] = _ij0[1];
12375vinfos[0].maxsolutions = _nj0;
12376vinfos[1].jointtype = 1;
12377vinfos[1].foffset = j1;
12378vinfos[1].indices[0] = _ij1[0];
12379vinfos[1].indices[1] = _ij1[1];
12380vinfos[1].maxsolutions = _nj1;
12381vinfos[2].jointtype = 1;
12382vinfos[2].foffset = j2;
12383vinfos[2].indices[0] = _ij2[0];
12384vinfos[2].indices[1] = _ij2[1];
12385vinfos[2].maxsolutions = _nj2;
12386vinfos[3].jointtype = 1;
12387vinfos[3].foffset = j3;
12388vinfos[3].indices[0] = _ij3[0];
12389vinfos[3].indices[1] = _ij3[1];
12390vinfos[3].maxsolutions = _nj3;
12391vinfos[4].jointtype = 1;
12392vinfos[4].foffset = j4;
12393vinfos[4].indices[0] = _ij4[0];
12394vinfos[4].indices[1] = _ij4[1];
12395vinfos[4].maxsolutions = _nj4;
12396vinfos[5].jointtype = 1;
12397vinfos[5].foffset = j5;
12398vinfos[5].indices[0] = _ij5[0];
12399vinfos[5].indices[1] = _ij5[1];
12400vinfos[5].maxsolutions = _nj5;
12401std::vector<int> vfree(0);
12410IkReal j3array[2], cj3array[2], sj3array[2];
12411bool j3valid[2]={
false};
12417cj3array[0]=(gconst10*(x969.
value));
12420 j3valid[0] = j3valid[1] =
true;
12421 j3array[0] =
IKacos(cj3array[0]);
12422 sj3array[0] =
IKsin(j3array[0]);
12423 cj3array[1] = cj3array[0];
12424 j3array[1] = -j3array[0];
12425 sj3array[1] = -sj3array[0];
12427else if( isnan(cj3array[0]) )
12431 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
12433for(
int ij3 = 0; ij3 < 2; ++ij3)
12439_ij3[0] = ij3; _ij3[1] = -1;
12440for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
12444 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
12447j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
12450IkReal x970=
IKsin(j3);
12451IkReal x971=
IKcos(j3);
12452IkReal x972=((1.0)*gconst10);
12453IkReal x973=(x971*x972);
12454evalcond[0]=(new_r01*x970);
12455evalcond[1]=(new_r10*x970);
12456evalcond[2]=(gconst10*x970);
12457evalcond[3]=(new_r01+(((-1.0)*x973)));
12458evalcond[4]=(new_r10+(((-1.0)*x973)));
12459evalcond[5]=(((new_r01*x971))+(((-1.0)*x972)));
12467std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
12468vinfos[0].jointtype = 1;
12469vinfos[0].foffset = j0;
12470vinfos[0].indices[0] = _ij0[0];
12471vinfos[0].indices[1] = _ij0[1];
12472vinfos[0].maxsolutions = _nj0;
12473vinfos[1].jointtype = 1;
12474vinfos[1].foffset = j1;
12475vinfos[1].indices[0] = _ij1[0];
12476vinfos[1].indices[1] = _ij1[1];
12477vinfos[1].maxsolutions = _nj1;
12478vinfos[2].jointtype = 1;
12479vinfos[2].foffset = j2;
12480vinfos[2].indices[0] = _ij2[0];
12481vinfos[2].indices[1] = _ij2[1];
12482vinfos[2].maxsolutions = _nj2;
12483vinfos[3].jointtype = 1;
12484vinfos[3].foffset = j3;
12485vinfos[3].indices[0] = _ij3[0];
12486vinfos[3].indices[1] = _ij3[1];
12487vinfos[3].maxsolutions = _nj3;
12488vinfos[4].jointtype = 1;
12489vinfos[4].foffset = j4;
12490vinfos[4].indices[0] = _ij4[0];
12491vinfos[4].indices[1] = _ij4[1];
12492vinfos[4].maxsolutions = _nj4;
12493vinfos[5].jointtype = 1;
12494vinfos[5].foffset = j5;
12495vinfos[5].indices[0] = _ij5[0];
12496vinfos[5].indices[1] = _ij5[1];
12497vinfos[5].maxsolutions = _nj5;
12498std::vector<int> vfree(0);
12510if( bgotonextstatement )
12512bool bgotonextstatement =
true;
12515evalcond[0]=((
IKabs(new_r11))+(
IKabs(new_r01)));
12516evalcond[1]=gconst11;
12517if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 )
12519bgotonextstatement=
false;
12526IkReal x974=((1.0)*(x975.
value));
12529j4=3.14159265358979;
12532j5=((3.14159265)+(((-1.0)*x974)));
12537IkReal gconst9=((3.14159265358979)+(((-1.0)*x974)));
12538IkReal gconst10=((1.0)*new_r10);
12539IkReal gconst11=((1.0)*new_r00);
12542j3eval[2]=((
IKabs(((1.0)+(((-1.0)*(new_r10*new_r10))))))+(
IKabs(((1.0)*new_r00*new_r10))));
12543if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
12551IkReal x976=((1.0)*(x977.
value));
12554j4=3.14159265358979;
12557j5=((3.14159265)+(((-1.0)*x976)));
12562IkReal gconst9=((3.14159265358979)+(((-1.0)*x976)));
12563IkReal gconst10=((1.0)*new_r10);
12564IkReal gconst11=((1.0)*new_r00);
12567j3eval[2]=((
IKabs(((1.0)+(((-1.0)*(new_r10*new_r10))))))+(
IKabs(((1.0)*new_r00*new_r10))));
12568if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
12576IkReal x978=((1.0)*(x979.
value));
12579j4=3.14159265358979;
12582j5=((3.14159265)+(((-1.0)*x978)));
12587IkReal gconst9=((3.14159265358979)+(((-1.0)*x978)));
12588IkReal gconst10=((1.0)*new_r10);
12589IkReal gconst11=((1.0)*new_r00);
12592j3eval[2]=((
IKabs(((1.0)+(((-2.0)*(new_r10*new_r10))))))+(
IKabs(((2.0)*new_r00*new_r10))));
12593if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
12600IkReal j3array[1], cj3array[1], sj3array[1];
12601bool j3valid[1]={
false};
12611j3array[0]=((-1.5707963267949)+(x980.
value)+(((1.5707963267949)*(x981.
value))));
12612sj3array[0]=
IKsin(j3array[0]);
12613cj3array[0]=
IKcos(j3array[0]);
12614if( j3array[0] >
IKPI )
12618else if( j3array[0] < -
IKPI )
12619{ j3array[0]+=
IK2PI;
12622for(
int ij3 = 0; ij3 < 1; ++ij3)
12628_ij3[0] = ij3; _ij3[1] = -1;
12629for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
12633 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
12636j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
12639IkReal x982=
IKsin(j3);
12640IkReal x983=
IKcos(j3);
12641IkReal x984=(gconst11*x982);
12642IkReal x985=(gconst10*x982);
12643IkReal x986=(gconst11*x983);
12644IkReal x987=((1.0)*x983);
12645IkReal x988=(gconst10*x987);
12646evalcond[0]=((((-1.0)*x988))+x984);
12647evalcond[1]=(((new_r00*x983))+gconst11+((new_r10*x982)));
12648evalcond[2]=(new_r00+x985+x986);
12649evalcond[3]=(((new_r00*x982))+gconst10+(((-1.0)*new_r10*x987)));
12650evalcond[4]=((((-1.0)*x985))+(((-1.0)*x986)));
12651evalcond[5]=((((-1.0)*x988))+new_r10+x984);
12659std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
12660vinfos[0].jointtype = 1;
12661vinfos[0].foffset = j0;
12662vinfos[0].indices[0] = _ij0[0];
12663vinfos[0].indices[1] = _ij0[1];
12664vinfos[0].maxsolutions = _nj0;
12665vinfos[1].jointtype = 1;
12666vinfos[1].foffset = j1;
12667vinfos[1].indices[0] = _ij1[0];
12668vinfos[1].indices[1] = _ij1[1];
12669vinfos[1].maxsolutions = _nj1;
12670vinfos[2].jointtype = 1;
12671vinfos[2].foffset = j2;
12672vinfos[2].indices[0] = _ij2[0];
12673vinfos[2].indices[1] = _ij2[1];
12674vinfos[2].maxsolutions = _nj2;
12675vinfos[3].jointtype = 1;
12676vinfos[3].foffset = j3;
12677vinfos[3].indices[0] = _ij3[0];
12678vinfos[3].indices[1] = _ij3[1];
12679vinfos[3].maxsolutions = _nj3;
12680vinfos[4].jointtype = 1;
12681vinfos[4].foffset = j4;
12682vinfos[4].indices[0] = _ij4[0];
12683vinfos[4].indices[1] = _ij4[1];
12684vinfos[4].maxsolutions = _nj4;
12685vinfos[5].jointtype = 1;
12686vinfos[5].foffset = j5;
12687vinfos[5].indices[0] = _ij5[0];
12688vinfos[5].indices[1] = _ij5[1];
12689vinfos[5].maxsolutions = _nj5;
12690std::vector<int> vfree(0);
12703IkReal j3array[1], cj3array[1], sj3array[1];
12704bool j3valid[1]={
false};
12714j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x989.
value)))+(x990.
value));
12715sj3array[0]=
IKsin(j3array[0]);
12716cj3array[0]=
IKcos(j3array[0]);
12717if( j3array[0] >
IKPI )
12721else if( j3array[0] < -
IKPI )
12722{ j3array[0]+=
IK2PI;
12725for(
int ij3 = 0; ij3 < 1; ++ij3)
12731_ij3[0] = ij3; _ij3[1] = -1;
12732for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
12736 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
12739j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
12742IkReal x991=
IKsin(j3);
12743IkReal x992=
IKcos(j3);
12744IkReal x993=(gconst11*x991);
12745IkReal x994=(gconst10*x991);
12746IkReal x995=(gconst11*x992);
12747IkReal x996=((1.0)*x992);
12748IkReal x997=(gconst10*x996);
12749evalcond[0]=((((-1.0)*x997))+x993);
12750evalcond[1]=(((new_r10*x991))+gconst11+((new_r00*x992)));
12751evalcond[2]=(new_r00+x995+x994);
12752evalcond[3]=((((-1.0)*new_r10*x996))+gconst10+((new_r00*x991)));
12753evalcond[4]=((((-1.0)*x994))+(((-1.0)*x995)));
12754evalcond[5]=((((-1.0)*x997))+new_r10+x993);
12762std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
12763vinfos[0].jointtype = 1;
12764vinfos[0].foffset = j0;
12765vinfos[0].indices[0] = _ij0[0];
12766vinfos[0].indices[1] = _ij0[1];
12767vinfos[0].maxsolutions = _nj0;
12768vinfos[1].jointtype = 1;
12769vinfos[1].foffset = j1;
12770vinfos[1].indices[0] = _ij1[0];
12771vinfos[1].indices[1] = _ij1[1];
12772vinfos[1].maxsolutions = _nj1;
12773vinfos[2].jointtype = 1;
12774vinfos[2].foffset = j2;
12775vinfos[2].indices[0] = _ij2[0];
12776vinfos[2].indices[1] = _ij2[1];
12777vinfos[2].maxsolutions = _nj2;
12778vinfos[3].jointtype = 1;
12779vinfos[3].foffset = j3;
12780vinfos[3].indices[0] = _ij3[0];
12781vinfos[3].indices[1] = _ij3[1];
12782vinfos[3].maxsolutions = _nj3;
12783vinfos[4].jointtype = 1;
12784vinfos[4].foffset = j4;
12785vinfos[4].indices[0] = _ij4[0];
12786vinfos[4].indices[1] = _ij4[1];
12787vinfos[4].maxsolutions = _nj4;
12788vinfos[5].jointtype = 1;
12789vinfos[5].foffset = j5;
12790vinfos[5].indices[0] = _ij5[0];
12791vinfos[5].indices[1] = _ij5[1];
12792vinfos[5].maxsolutions = _nj5;
12793std::vector<int> vfree(0);
12806IkReal j3array[1], cj3array[1], sj3array[1];
12807bool j3valid[1]={
false};
12817j3array[0]=((-1.5707963267949)+(x998.
value)+(((1.5707963267949)*(x999.
value))));
12818sj3array[0]=
IKsin(j3array[0]);
12819cj3array[0]=
IKcos(j3array[0]);
12820if( j3array[0] >
IKPI )
12824else if( j3array[0] < -
IKPI )
12825{ j3array[0]+=
IK2PI;
12828for(
int ij3 = 0; ij3 < 1; ++ij3)
12834_ij3[0] = ij3; _ij3[1] = -1;
12835for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
12839 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
12842j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
12845IkReal x1000=
IKsin(j3);
12846IkReal x1001=
IKcos(j3);
12847IkReal x1002=(gconst11*x1000);
12848IkReal x1003=(gconst10*x1000);
12849IkReal x1004=(gconst11*x1001);
12850IkReal x1005=((1.0)*x1001);
12851IkReal x1006=(gconst10*x1005);
12852evalcond[0]=(x1002+(((-1.0)*x1006)));
12853evalcond[1]=(gconst11+((new_r10*x1000))+((new_r00*x1001)));
12854evalcond[2]=(x1004+x1003+new_r00);
12855evalcond[3]=(gconst10+(((-1.0)*new_r10*x1005))+((new_r00*x1000)));
12856evalcond[4]=((((-1.0)*x1003))+(((-1.0)*x1004)));
12857evalcond[5]=(x1002+(((-1.0)*x1006))+new_r10);
12865std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
12866vinfos[0].jointtype = 1;
12867vinfos[0].foffset = j0;
12868vinfos[0].indices[0] = _ij0[0];
12869vinfos[0].indices[1] = _ij0[1];
12870vinfos[0].maxsolutions = _nj0;
12871vinfos[1].jointtype = 1;
12872vinfos[1].foffset = j1;
12873vinfos[1].indices[0] = _ij1[0];
12874vinfos[1].indices[1] = _ij1[1];
12875vinfos[1].maxsolutions = _nj1;
12876vinfos[2].jointtype = 1;
12877vinfos[2].foffset = j2;
12878vinfos[2].indices[0] = _ij2[0];
12879vinfos[2].indices[1] = _ij2[1];
12880vinfos[2].maxsolutions = _nj2;
12881vinfos[3].jointtype = 1;
12882vinfos[3].foffset = j3;
12883vinfos[3].indices[0] = _ij3[0];
12884vinfos[3].indices[1] = _ij3[1];
12885vinfos[3].maxsolutions = _nj3;
12886vinfos[4].jointtype = 1;
12887vinfos[4].foffset = j4;
12888vinfos[4].indices[0] = _ij4[0];
12889vinfos[4].indices[1] = _ij4[1];
12890vinfos[4].maxsolutions = _nj4;
12891vinfos[5].jointtype = 1;
12892vinfos[5].foffset = j5;
12893vinfos[5].indices[0] = _ij5[0];
12894vinfos[5].indices[1] = _ij5[1];
12895vinfos[5].maxsolutions = _nj5;
12896std::vector<int> vfree(0);
12908if( bgotonextstatement )
12910bool bgotonextstatement =
true;
12913evalcond[0]=((
IKabs(new_r10))+(
IKabs(new_r01)));
12914if(
IKabs(evalcond[0]) < 0.0000050000000000 )
12916bgotonextstatement=
false;
12923IkReal x1007=((1.0)*(x1008.
value));
12926j4=3.14159265358979;
12929j5=((3.14159265)+(((-1.0)*x1007)));
12932IkReal gconst9=((3.14159265358979)+(((-1.0)*x1007)));
12934IkReal x1009 = new_r00*new_r00;
12935if(
IKabs(x1009)==0){
12938IkReal gconst11=((1.0)*new_r00*(pow(x1009,-0.5)));
12940if(
IKabs(j3eval[0]) < 0.0000010000000000 )
12943IkReal j3array[2], cj3array[2], sj3array[2];
12944bool j3valid[2]={
false};
12950cj3array[0]=(new_r11*(x1010.
value));
12953 j3valid[0] = j3valid[1] =
true;
12954 j3array[0] =
IKacos(cj3array[0]);
12955 sj3array[0] =
IKsin(j3array[0]);
12956 cj3array[1] = cj3array[0];
12957 j3array[1] = -j3array[0];
12958 sj3array[1] = -sj3array[0];
12960else if( isnan(cj3array[0]) )
12964 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
12966for(
int ij3 = 0; ij3 < 2; ++ij3)
12972_ij3[0] = ij3; _ij3[1] = -1;
12973for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
12977 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
12980j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
12983IkReal x1011=
IKsin(j3);
12984IkReal x1012=
IKcos(j3);
12985evalcond[0]=(new_r00*x1011);
12986evalcond[1]=(new_r11*x1011);
12987evalcond[2]=(gconst11*x1011);
12988evalcond[3]=(gconst11+((new_r00*x1012)));
12989evalcond[4]=(((gconst11*x1012))+new_r00);
12990evalcond[5]=((((-1.0)*new_r11*x1012))+gconst11);
12998std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
12999vinfos[0].jointtype = 1;
13000vinfos[0].foffset = j0;
13001vinfos[0].indices[0] = _ij0[0];
13002vinfos[0].indices[1] = _ij0[1];
13003vinfos[0].maxsolutions = _nj0;
13004vinfos[1].jointtype = 1;
13005vinfos[1].foffset = j1;
13006vinfos[1].indices[0] = _ij1[0];
13007vinfos[1].indices[1] = _ij1[1];
13008vinfos[1].maxsolutions = _nj1;
13009vinfos[2].jointtype = 1;
13010vinfos[2].foffset = j2;
13011vinfos[2].indices[0] = _ij2[0];
13012vinfos[2].indices[1] = _ij2[1];
13013vinfos[2].maxsolutions = _nj2;
13014vinfos[3].jointtype = 1;
13015vinfos[3].foffset = j3;
13016vinfos[3].indices[0] = _ij3[0];
13017vinfos[3].indices[1] = _ij3[1];
13018vinfos[3].maxsolutions = _nj3;
13019vinfos[4].jointtype = 1;
13020vinfos[4].foffset = j4;
13021vinfos[4].indices[0] = _ij4[0];
13022vinfos[4].indices[1] = _ij4[1];
13023vinfos[4].maxsolutions = _nj4;
13024vinfos[5].jointtype = 1;
13025vinfos[5].foffset = j5;
13026vinfos[5].indices[0] = _ij5[0];
13027vinfos[5].indices[1] = _ij5[1];
13028vinfos[5].maxsolutions = _nj5;
13029std::vector<int> vfree(0);
13038IkReal j3array[2], cj3array[2], sj3array[2];
13039bool j3valid[2]={
false};
13045cj3array[0]=(gconst11*(x1013.
value));
13048 j3valid[0] = j3valid[1] =
true;
13049 j3array[0] =
IKacos(cj3array[0]);
13050 sj3array[0] =
IKsin(j3array[0]);
13051 cj3array[1] = cj3array[0];
13052 j3array[1] = -j3array[0];
13053 sj3array[1] = -sj3array[0];
13055else if( isnan(cj3array[0]) )
13059 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
13061for(
int ij3 = 0; ij3 < 2; ++ij3)
13067_ij3[0] = ij3; _ij3[1] = -1;
13068for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
13072 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
13075j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
13078IkReal x1014=
IKsin(j3);
13079IkReal x1015=
IKcos(j3);
13080IkReal x1016=(gconst11*x1015);
13081evalcond[0]=(new_r00*x1014);
13082evalcond[1]=(new_r11*x1014);
13083evalcond[2]=(gconst11*x1014);
13084evalcond[3]=(gconst11+((new_r00*x1015)));
13085evalcond[4]=(x1016+new_r00);
13086evalcond[5]=(new_r11+(((-1.0)*x1016)));
13094std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
13095vinfos[0].jointtype = 1;
13096vinfos[0].foffset = j0;
13097vinfos[0].indices[0] = _ij0[0];
13098vinfos[0].indices[1] = _ij0[1];
13099vinfos[0].maxsolutions = _nj0;
13100vinfos[1].jointtype = 1;
13101vinfos[1].foffset = j1;
13102vinfos[1].indices[0] = _ij1[0];
13103vinfos[1].indices[1] = _ij1[1];
13104vinfos[1].maxsolutions = _nj1;
13105vinfos[2].jointtype = 1;
13106vinfos[2].foffset = j2;
13107vinfos[2].indices[0] = _ij2[0];
13108vinfos[2].indices[1] = _ij2[1];
13109vinfos[2].maxsolutions = _nj2;
13110vinfos[3].jointtype = 1;
13111vinfos[3].foffset = j3;
13112vinfos[3].indices[0] = _ij3[0];
13113vinfos[3].indices[1] = _ij3[1];
13114vinfos[3].maxsolutions = _nj3;
13115vinfos[4].jointtype = 1;
13116vinfos[4].foffset = j4;
13117vinfos[4].indices[0] = _ij4[0];
13118vinfos[4].indices[1] = _ij4[1];
13119vinfos[4].maxsolutions = _nj4;
13120vinfos[5].jointtype = 1;
13121vinfos[5].foffset = j5;
13122vinfos[5].indices[0] = _ij5[0];
13123vinfos[5].indices[1] = _ij5[1];
13124vinfos[5].maxsolutions = _nj5;
13125std::vector<int> vfree(0);
13137if( bgotonextstatement )
13139bool bgotonextstatement =
true;
13142evalcond[0]=
IKabs(new_r00);
13143if(
IKabs(evalcond[0]) < 0.0000050000000000 )
13145bgotonextstatement=
false;
13152IkReal x1017=((1.0)*(x1018.
value));
13155j4=3.14159265358979;
13158j5=((3.14159265)+(((-1.0)*x1017)));
13160IkReal gconst9=((3.14159265358979)+(((-1.0)*x1017)));
13161IkReal x1019 = new_r10*new_r10;
13162if(
IKabs(x1019)==0){
13165IkReal gconst10=((1.0)*new_r10*(pow(x1019,-0.5)));
13167j3eval[0]=((
IKabs(new_r11))+(
IKabs(new_r01)));
13168if(
IKabs(j3eval[0]) < 0.0000010000000000 )
13176IkReal x1020=((1.0)*(x1021.
value));
13179j4=3.14159265358979;
13182j5=((3.14159265)+(((-1.0)*x1020)));
13184IkReal gconst9=((3.14159265358979)+(((-1.0)*x1020)));
13185IkReal x1022 = new_r10*new_r10;
13186if(
IKabs(x1022)==0){
13189IkReal gconst10=((1.0)*new_r10*(pow(x1022,-0.5)));
13191j3eval[0]=((
IKabs(new_r11))+(
IKabs(new_r10)));
13192if(
IKabs(j3eval[0]) < 0.0000010000000000 )
13200IkReal x1023=((1.0)*(x1024.
value));
13203j4=3.14159265358979;
13206j5=((3.14159265)+(((-1.0)*x1023)));
13208IkReal gconst9=((3.14159265358979)+(((-1.0)*x1023)));
13209IkReal x1025 = new_r10*new_r10;
13210if(
IKabs(x1025)==0){
13213IkReal gconst10=((1.0)*new_r10*(pow(x1025,-0.5)));
13216if(
IKabs(j3eval[0]) < 0.0000010000000000 )
13223IkReal j3array[1], cj3array[1], sj3array[1];
13224bool j3valid[1]={
false};
13237sj3array[0]=
IKsin(j3array[0]);
13238cj3array[0]=
IKcos(j3array[0]);
13239if( j3array[0] >
IKPI )
13243else if( j3array[0] < -
IKPI )
13244{ j3array[0]+=
IK2PI;
13247for(
int ij3 = 0; ij3 < 1; ++ij3)
13253_ij3[0] = ij3; _ij3[1] = -1;
13254for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
13258 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
13261j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
13264IkReal x1028=
IKsin(j3);
13265IkReal x1029=
IKcos(j3);
13266IkReal x1030=(gconst10*x1028);
13267IkReal x1031=((1.0)*x1029);
13268IkReal x1032=(gconst10*x1031);
13269evalcond[0]=(new_r10*x1028);
13271evalcond[2]=(gconst10+(((-1.0)*new_r10*x1031)));
13272evalcond[3]=((((-1.0)*x1032))+new_r01);
13273evalcond[4]=((((-1.0)*x1030))+new_r11);
13274evalcond[5]=((((-1.0)*x1032))+new_r10);
13275evalcond[6]=((((-1.0)*new_r11*x1031))+((new_r01*x1028)));
13276evalcond[7]=(((new_r11*x1028))+(((-1.0)*gconst10))+((new_r01*x1029)));
13284std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
13285vinfos[0].jointtype = 1;
13286vinfos[0].foffset = j0;
13287vinfos[0].indices[0] = _ij0[0];
13288vinfos[0].indices[1] = _ij0[1];
13289vinfos[0].maxsolutions = _nj0;
13290vinfos[1].jointtype = 1;
13291vinfos[1].foffset = j1;
13292vinfos[1].indices[0] = _ij1[0];
13293vinfos[1].indices[1] = _ij1[1];
13294vinfos[1].maxsolutions = _nj1;
13295vinfos[2].jointtype = 1;
13296vinfos[2].foffset = j2;
13297vinfos[2].indices[0] = _ij2[0];
13298vinfos[2].indices[1] = _ij2[1];
13299vinfos[2].maxsolutions = _nj2;
13300vinfos[3].jointtype = 1;
13301vinfos[3].foffset = j3;
13302vinfos[3].indices[0] = _ij3[0];
13303vinfos[3].indices[1] = _ij3[1];
13304vinfos[3].maxsolutions = _nj3;
13305vinfos[4].jointtype = 1;
13306vinfos[4].foffset = j4;
13307vinfos[4].indices[0] = _ij4[0];
13308vinfos[4].indices[1] = _ij4[1];
13309vinfos[4].maxsolutions = _nj4;
13310vinfos[5].jointtype = 1;
13311vinfos[5].foffset = j5;
13312vinfos[5].indices[0] = _ij5[0];
13313vinfos[5].indices[1] = _ij5[1];
13314vinfos[5].maxsolutions = _nj5;
13315std::vector<int> vfree(0);
13328IkReal j3array[1], cj3array[1], sj3array[1];
13329bool j3valid[1]={
false};
13339j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1033.
value)))+(x1034.
value));
13340sj3array[0]=
IKsin(j3array[0]);
13341cj3array[0]=
IKcos(j3array[0]);
13342if( j3array[0] >
IKPI )
13346else if( j3array[0] < -
IKPI )
13347{ j3array[0]+=
IK2PI;
13350for(
int ij3 = 0; ij3 < 1; ++ij3)
13356_ij3[0] = ij3; _ij3[1] = -1;
13357for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
13361 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
13364j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
13367IkReal x1035=
IKsin(j3);
13368IkReal x1036=
IKcos(j3);
13369IkReal x1037=(gconst10*x1035);
13370IkReal x1038=((1.0)*x1036);
13371IkReal x1039=(gconst10*x1038);
13372evalcond[0]=(new_r10*x1035);
13374evalcond[2]=(gconst10+(((-1.0)*new_r10*x1038)));
13375evalcond[3]=((((-1.0)*x1039))+new_r01);
13376evalcond[4]=((((-1.0)*x1037))+new_r11);
13377evalcond[5]=((((-1.0)*x1039))+new_r10);
13378evalcond[6]=((((-1.0)*new_r11*x1038))+((new_r01*x1035)));
13379evalcond[7]=(((new_r11*x1035))+(((-1.0)*gconst10))+((new_r01*x1036)));
13387std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
13388vinfos[0].jointtype = 1;
13389vinfos[0].foffset = j0;
13390vinfos[0].indices[0] = _ij0[0];
13391vinfos[0].indices[1] = _ij0[1];
13392vinfos[0].maxsolutions = _nj0;
13393vinfos[1].jointtype = 1;
13394vinfos[1].foffset = j1;
13395vinfos[1].indices[0] = _ij1[0];
13396vinfos[1].indices[1] = _ij1[1];
13397vinfos[1].maxsolutions = _nj1;
13398vinfos[2].jointtype = 1;
13399vinfos[2].foffset = j2;
13400vinfos[2].indices[0] = _ij2[0];
13401vinfos[2].indices[1] = _ij2[1];
13402vinfos[2].maxsolutions = _nj2;
13403vinfos[3].jointtype = 1;
13404vinfos[3].foffset = j3;
13405vinfos[3].indices[0] = _ij3[0];
13406vinfos[3].indices[1] = _ij3[1];
13407vinfos[3].maxsolutions = _nj3;
13408vinfos[4].jointtype = 1;
13409vinfos[4].foffset = j4;
13410vinfos[4].indices[0] = _ij4[0];
13411vinfos[4].indices[1] = _ij4[1];
13412vinfos[4].maxsolutions = _nj4;
13413vinfos[5].jointtype = 1;
13414vinfos[5].foffset = j5;
13415vinfos[5].indices[0] = _ij5[0];
13416vinfos[5].indices[1] = _ij5[1];
13417vinfos[5].maxsolutions = _nj5;
13418std::vector<int> vfree(0);
13431IkReal j3array[1], cj3array[1], sj3array[1];
13432bool j3valid[1]={
false};
13442j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1040.
value)))+(x1041.
value));
13443sj3array[0]=
IKsin(j3array[0]);
13444cj3array[0]=
IKcos(j3array[0]);
13445if( j3array[0] >
IKPI )
13449else if( j3array[0] < -
IKPI )
13450{ j3array[0]+=
IK2PI;
13453for(
int ij3 = 0; ij3 < 1; ++ij3)
13459_ij3[0] = ij3; _ij3[1] = -1;
13460for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
13464 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
13467j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
13470IkReal x1042=
IKsin(j3);
13471IkReal x1043=
IKcos(j3);
13472IkReal x1044=(gconst10*x1042);
13473IkReal x1045=((1.0)*x1043);
13474IkReal x1046=(gconst10*x1045);
13475evalcond[0]=(new_r10*x1042);
13477evalcond[2]=(gconst10+(((-1.0)*new_r10*x1045)));
13478evalcond[3]=(new_r01+(((-1.0)*x1046)));
13479evalcond[4]=((((-1.0)*x1044))+new_r11);
13480evalcond[5]=(new_r10+(((-1.0)*x1046)));
13481evalcond[6]=(((new_r01*x1042))+(((-1.0)*new_r11*x1045)));
13482evalcond[7]=(((new_r11*x1042))+((new_r01*x1043))+(((-1.0)*gconst10)));
13490std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
13491vinfos[0].jointtype = 1;
13492vinfos[0].foffset = j0;
13493vinfos[0].indices[0] = _ij0[0];
13494vinfos[0].indices[1] = _ij0[1];
13495vinfos[0].maxsolutions = _nj0;
13496vinfos[1].jointtype = 1;
13497vinfos[1].foffset = j1;
13498vinfos[1].indices[0] = _ij1[0];
13499vinfos[1].indices[1] = _ij1[1];
13500vinfos[1].maxsolutions = _nj1;
13501vinfos[2].jointtype = 1;
13502vinfos[2].foffset = j2;
13503vinfos[2].indices[0] = _ij2[0];
13504vinfos[2].indices[1] = _ij2[1];
13505vinfos[2].maxsolutions = _nj2;
13506vinfos[3].jointtype = 1;
13507vinfos[3].foffset = j3;
13508vinfos[3].indices[0] = _ij3[0];
13509vinfos[3].indices[1] = _ij3[1];
13510vinfos[3].maxsolutions = _nj3;
13511vinfos[4].jointtype = 1;
13512vinfos[4].foffset = j4;
13513vinfos[4].indices[0] = _ij4[0];
13514vinfos[4].indices[1] = _ij4[1];
13515vinfos[4].maxsolutions = _nj4;
13516vinfos[5].jointtype = 1;
13517vinfos[5].foffset = j5;
13518vinfos[5].indices[0] = _ij5[0];
13519vinfos[5].indices[1] = _ij5[1];
13520vinfos[5].maxsolutions = _nj5;
13521std::vector<int> vfree(0);
13533if( bgotonextstatement )
13535bool bgotonextstatement =
true;
13540bgotonextstatement=
false;
13545if( bgotonextstatement )
13557IkReal j3array[1], cj3array[1], sj3array[1];
13558bool j3valid[1]={
false};
13568j3array[0]=((-1.5707963267949)+(x1047.
value)+(((1.5707963267949)*(x1048.
value))));
13569sj3array[0]=
IKsin(j3array[0]);
13570cj3array[0]=
IKcos(j3array[0]);
13571if( j3array[0] >
IKPI )
13575else if( j3array[0] < -
IKPI )
13576{ j3array[0]+=
IK2PI;
13579for(
int ij3 = 0; ij3 < 1; ++ij3)
13585_ij3[0] = ij3; _ij3[1] = -1;
13586for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
13590 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
13593j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
13596IkReal x1049=
IKcos(j3);
13597IkReal x1050=
IKsin(j3);
13598IkReal x1051=((1.0)*gconst10);
13599IkReal x1052=(gconst11*x1050);
13600IkReal x1053=(gconst10*x1050);
13601IkReal x1054=(gconst11*x1049);
13602IkReal x1055=((1.0)*x1049);
13603IkReal x1056=(x1049*x1051);
13604evalcond[0]=(gconst11+((new_r00*x1049))+((new_r10*x1050)));
13605evalcond[1]=(x1053+x1054+new_r00);
13606evalcond[2]=(gconst10+((new_r00*x1050))+(((-1.0)*new_r10*x1055)));
13607evalcond[3]=(gconst11+((new_r01*x1050))+(((-1.0)*new_r11*x1055)));
13608evalcond[4]=((((-1.0)*x1056))+x1052+new_r01);
13609evalcond[5]=((((-1.0)*x1056))+x1052+new_r10);
13610evalcond[6]=((((-1.0)*x1051))+((new_r01*x1049))+((new_r11*x1050)));
13611evalcond[7]=((((-1.0)*x1054))+new_r11+(((-1.0)*x1050*x1051)));
13619std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
13620vinfos[0].jointtype = 1;
13621vinfos[0].foffset = j0;
13622vinfos[0].indices[0] = _ij0[0];
13623vinfos[0].indices[1] = _ij0[1];
13624vinfos[0].maxsolutions = _nj0;
13625vinfos[1].jointtype = 1;
13626vinfos[1].foffset = j1;
13627vinfos[1].indices[0] = _ij1[0];
13628vinfos[1].indices[1] = _ij1[1];
13629vinfos[1].maxsolutions = _nj1;
13630vinfos[2].jointtype = 1;
13631vinfos[2].foffset = j2;
13632vinfos[2].indices[0] = _ij2[0];
13633vinfos[2].indices[1] = _ij2[1];
13634vinfos[2].maxsolutions = _nj2;
13635vinfos[3].jointtype = 1;
13636vinfos[3].foffset = j3;
13637vinfos[3].indices[0] = _ij3[0];
13638vinfos[3].indices[1] = _ij3[1];
13639vinfos[3].maxsolutions = _nj3;
13640vinfos[4].jointtype = 1;
13641vinfos[4].foffset = j4;
13642vinfos[4].indices[0] = _ij4[0];
13643vinfos[4].indices[1] = _ij4[1];
13644vinfos[4].maxsolutions = _nj4;
13645vinfos[5].jointtype = 1;
13646vinfos[5].foffset = j5;
13647vinfos[5].indices[0] = _ij5[0];
13648vinfos[5].indices[1] = _ij5[1];
13649vinfos[5].maxsolutions = _nj5;
13650std::vector<int> vfree(0);
13663IkReal j3array[1], cj3array[1], sj3array[1];
13664bool j3valid[1]={
false};
13666IkReal x1057=((1.0)*new_r10);
13675j3array[0]=((-1.5707963267949)+(x1058.
value)+(((1.5707963267949)*(x1059.
value))));
13676sj3array[0]=
IKsin(j3array[0]);
13677cj3array[0]=
IKcos(j3array[0]);
13678if( j3array[0] >
IKPI )
13682else if( j3array[0] < -
IKPI )
13683{ j3array[0]+=
IK2PI;
13686for(
int ij3 = 0; ij3 < 1; ++ij3)
13692_ij3[0] = ij3; _ij3[1] = -1;
13693for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
13697 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
13700j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
13703IkReal x1060=
IKcos(j3);
13704IkReal x1061=
IKsin(j3);
13705IkReal x1062=((1.0)*gconst10);
13706IkReal x1063=(gconst11*x1061);
13707IkReal x1064=(gconst10*x1061);
13708IkReal x1065=(gconst11*x1060);
13709IkReal x1066=((1.0)*x1060);
13710IkReal x1067=(x1060*x1062);
13711evalcond[0]=(gconst11+((new_r00*x1060))+((new_r10*x1061)));
13712evalcond[1]=(x1065+x1064+new_r00);
13713evalcond[2]=((((-1.0)*new_r10*x1066))+gconst10+((new_r00*x1061)));
13714evalcond[3]=(gconst11+((new_r01*x1061))+(((-1.0)*new_r11*x1066)));
13715evalcond[4]=(x1063+new_r01+(((-1.0)*x1067)));
13716evalcond[5]=(x1063+new_r10+(((-1.0)*x1067)));
13717evalcond[6]=(((new_r01*x1060))+((new_r11*x1061))+(((-1.0)*x1062)));
13718evalcond[7]=((((-1.0)*x1061*x1062))+new_r11+(((-1.0)*x1065)));
13726std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
13727vinfos[0].jointtype = 1;
13728vinfos[0].foffset = j0;
13729vinfos[0].indices[0] = _ij0[0];
13730vinfos[0].indices[1] = _ij0[1];
13731vinfos[0].maxsolutions = _nj0;
13732vinfos[1].jointtype = 1;
13733vinfos[1].foffset = j1;
13734vinfos[1].indices[0] = _ij1[0];
13735vinfos[1].indices[1] = _ij1[1];
13736vinfos[1].maxsolutions = _nj1;
13737vinfos[2].jointtype = 1;
13738vinfos[2].foffset = j2;
13739vinfos[2].indices[0] = _ij2[0];
13740vinfos[2].indices[1] = _ij2[1];
13741vinfos[2].maxsolutions = _nj2;
13742vinfos[3].jointtype = 1;
13743vinfos[3].foffset = j3;
13744vinfos[3].indices[0] = _ij3[0];
13745vinfos[3].indices[1] = _ij3[1];
13746vinfos[3].maxsolutions = _nj3;
13747vinfos[4].jointtype = 1;
13748vinfos[4].foffset = j4;
13749vinfos[4].indices[0] = _ij4[0];
13750vinfos[4].indices[1] = _ij4[1];
13751vinfos[4].maxsolutions = _nj4;
13752vinfos[5].jointtype = 1;
13753vinfos[5].foffset = j5;
13754vinfos[5].indices[0] = _ij5[0];
13755vinfos[5].indices[1] = _ij5[1];
13756vinfos[5].maxsolutions = _nj5;
13757std::vector<int> vfree(0);
13770IkReal j3array[1], cj3array[1], sj3array[1];
13771bool j3valid[1]={
false};
13773IkReal x1068=((1.0)*new_r10);
13782j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1069.
value)))+(x1070.
value));
13783sj3array[0]=
IKsin(j3array[0]);
13784cj3array[0]=
IKcos(j3array[0]);
13785if( j3array[0] >
IKPI )
13789else if( j3array[0] < -
IKPI )
13790{ j3array[0]+=
IK2PI;
13793for(
int ij3 = 0; ij3 < 1; ++ij3)
13799_ij3[0] = ij3; _ij3[1] = -1;
13800for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
13804 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
13807j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
13810IkReal x1071=
IKcos(j3);
13811IkReal x1072=
IKsin(j3);
13812IkReal x1073=((1.0)*gconst10);
13813IkReal x1074=(gconst11*x1072);
13814IkReal x1075=(gconst10*x1072);
13815IkReal x1076=(gconst11*x1071);
13816IkReal x1077=((1.0)*x1071);
13817IkReal x1078=(x1071*x1073);
13818evalcond[0]=(gconst11+((new_r00*x1071))+((new_r10*x1072)));
13819evalcond[1]=(x1076+x1075+new_r00);
13820evalcond[2]=(gconst10+((new_r00*x1072))+(((-1.0)*new_r10*x1077)));
13821evalcond[3]=((((-1.0)*new_r11*x1077))+gconst11+((new_r01*x1072)));
13822evalcond[4]=(x1074+new_r01+(((-1.0)*x1078)));
13823evalcond[5]=(x1074+new_r10+(((-1.0)*x1078)));
13824evalcond[6]=(((new_r01*x1071))+((new_r11*x1072))+(((-1.0)*x1073)));
13825evalcond[7]=((((-1.0)*x1076))+(((-1.0)*x1072*x1073))+new_r11);
13833std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
13834vinfos[0].jointtype = 1;
13835vinfos[0].foffset = j0;
13836vinfos[0].indices[0] = _ij0[0];
13837vinfos[0].indices[1] = _ij0[1];
13838vinfos[0].maxsolutions = _nj0;
13839vinfos[1].jointtype = 1;
13840vinfos[1].foffset = j1;
13841vinfos[1].indices[0] = _ij1[0];
13842vinfos[1].indices[1] = _ij1[1];
13843vinfos[1].maxsolutions = _nj1;
13844vinfos[2].jointtype = 1;
13845vinfos[2].foffset = j2;
13846vinfos[2].indices[0] = _ij2[0];
13847vinfos[2].indices[1] = _ij2[1];
13848vinfos[2].maxsolutions = _nj2;
13849vinfos[3].jointtype = 1;
13850vinfos[3].foffset = j3;
13851vinfos[3].indices[0] = _ij3[0];
13852vinfos[3].indices[1] = _ij3[1];
13853vinfos[3].maxsolutions = _nj3;
13854vinfos[4].jointtype = 1;
13855vinfos[4].foffset = j4;
13856vinfos[4].indices[0] = _ij4[0];
13857vinfos[4].indices[1] = _ij4[1];
13858vinfos[4].maxsolutions = _nj4;
13859vinfos[5].jointtype = 1;
13860vinfos[5].foffset = j5;
13861vinfos[5].indices[0] = _ij5[0];
13862vinfos[5].indices[1] = _ij5[1];
13863vinfos[5].maxsolutions = _nj5;
13864std::vector<int> vfree(0);
13876if( bgotonextstatement )
13878bool bgotonextstatement =
true;
13881IkReal x1079=((-1.0)*new_r10);
13882IkReal x1081 = ((new_r10*new_r10)+(new_r00*new_r00));
13883if(
IKabs(x1081)==0){
13886IkReal x1080=pow(x1081,-0.5);
13891IkReal gconst12=((-1.0)*(x1082.
value));
13892IkReal gconst13=(new_r00*x1080);
13893IkReal gconst14=(x1079*x1080);
13898evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((x1083.
value)+j5)))), 6.28318530717959)));
13899if(
IKabs(evalcond[0]) < 0.0000050000000000 )
13901bgotonextstatement=
false;
13904IkReal x1084=((-1.0)*new_r10);
13909IkReal x1085=((-1.0)*(x1087.
value));
13913j4=3.14159265358979;
13917IkReal gconst12=x1085;
13918IkReal gconst13=(new_r00*x1086);
13919IkReal gconst14=(x1084*x1086);
13920IkReal x1088=new_r10*new_r10;
13921IkReal x1089=((1.0)*new_r00);
13922IkReal x1090=((1.0)*new_r10*new_r11);
13923IkReal x1091=((((-1.0)*x1090))+(((-1.0)*new_r01*x1089)));
13925IkReal x1093=(new_r10*x1092);
13927j3eval[1]=((
IKabs((((x1088*x1092))+(((-1.0)*new_r01*x1093)))))+(
IKabs(((((-1.0)*x1090*x1092))+(((-1.0)*x1089*x1093))))));
13929if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
13933IkReal x1094=((-1.0)*new_r10);
13938IkReal x1095=((-1.0)*(x1097.
value));
13942j4=3.14159265358979;
13946IkReal gconst12=x1095;
13947IkReal gconst13=(new_r00*x1096);
13948IkReal gconst14=(x1094*x1096);
13949IkReal x1098=new_r10*new_r10;
13954IkReal x1099=x1101.
value;
13955IkReal x1100=(new_r00*x1099);
13956j3eval[0]=((
IKabs((((new_r00*new_r11))+((x1098*x1099)))))+(
IKabs((((new_r01*x1098*x1100))+((new_r10*x1100))+((new_r01*x1100*(new_r00*new_r00)))))));
13957if(
IKabs(j3eval[0]) < 0.0000010000000000 )
13961IkReal x1102=((-1.0)*new_r10);
13966IkReal x1103=((-1.0)*(x1105.
value));
13970j4=3.14159265358979;
13974IkReal gconst12=x1103;
13975IkReal gconst13=(new_r00*x1104);
13976IkReal gconst14=(x1102*x1104);
13977IkReal x1106=new_r10*new_r10;
13978IkReal x1107=new_r00*new_r00;
13983IkReal x1108=x1111.
value;
13984IkReal x1109=(new_r10*x1108);
13985IkReal x1110=(x1106*x1108);
13986j3eval[0]=((
IKabs((x1110+(((-1.0)*x1108*(x1107*x1107)))+(((-1.0)*x1107*x1110)))))+(
IKabs((((x1109*(new_r00*new_r00*new_r00)))+((new_r00*x1109))+((new_r00*x1109*(new_r10*new_r10)))))));
13987if(
IKabs(j3eval[0]) < 0.0000010000000000 )
13991bool bgotonextstatement =
true;
13994evalcond[0]=((
IKabs(new_r11))+(
IKabs(new_r00)));
13995if(
IKabs(evalcond[0]) < 0.0000050000000000 )
13997bgotonextstatement=
false;
14000IkReal x1112=((-1.0)*new_r10);
14005IkReal x1113=((-1.0)*(x1114.
value));
14008j4=3.14159265358979;
14014IkReal gconst12=x1113;
14016IkReal x1115 = new_r10*new_r10;
14017if(
IKabs(x1115)==0){
14020IkReal gconst14=(x1112*(pow(x1115,-0.5)));
14022if(
IKabs(j3eval[0]) < 0.0000010000000000 )
14025IkReal j3array[2], cj3array[2], sj3array[2];
14026bool j3valid[2]={
false};
14032sj3array[0]=((-1.0)*new_r01*(x1116.
value));
14035 j3valid[0] = j3valid[1] =
true;
14036 j3array[0] =
IKasin(sj3array[0]);
14037 cj3array[0] =
IKcos(j3array[0]);
14038 sj3array[1] = sj3array[0];
14039 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
14040 cj3array[1] = -cj3array[0];
14042else if( isnan(sj3array[0]) )
14046 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
14048for(
int ij3 = 0; ij3 < 2; ++ij3)
14054_ij3[0] = ij3; _ij3[1] = -1;
14055for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
14059 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
14062j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
14065IkReal x1117=
IKcos(j3);
14066IkReal x1118=
IKsin(j3);
14067evalcond[0]=(new_r01*x1117);
14068evalcond[1]=(gconst14*x1117);
14069evalcond[2]=((-1.0)*new_r10*x1117);
14070evalcond[3]=(gconst14+((new_r01*x1118)));
14071evalcond[4]=(gconst14+((new_r10*x1118)));
14072evalcond[5]=(((gconst14*x1118))+new_r10);
14080std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
14081vinfos[0].jointtype = 1;
14082vinfos[0].foffset = j0;
14083vinfos[0].indices[0] = _ij0[0];
14084vinfos[0].indices[1] = _ij0[1];
14085vinfos[0].maxsolutions = _nj0;
14086vinfos[1].jointtype = 1;
14087vinfos[1].foffset = j1;
14088vinfos[1].indices[0] = _ij1[0];
14089vinfos[1].indices[1] = _ij1[1];
14090vinfos[1].maxsolutions = _nj1;
14091vinfos[2].jointtype = 1;
14092vinfos[2].foffset = j2;
14093vinfos[2].indices[0] = _ij2[0];
14094vinfos[2].indices[1] = _ij2[1];
14095vinfos[2].maxsolutions = _nj2;
14096vinfos[3].jointtype = 1;
14097vinfos[3].foffset = j3;
14098vinfos[3].indices[0] = _ij3[0];
14099vinfos[3].indices[1] = _ij3[1];
14100vinfos[3].maxsolutions = _nj3;
14101vinfos[4].jointtype = 1;
14102vinfos[4].foffset = j4;
14103vinfos[4].indices[0] = _ij4[0];
14104vinfos[4].indices[1] = _ij4[1];
14105vinfos[4].maxsolutions = _nj4;
14106vinfos[5].jointtype = 1;
14107vinfos[5].foffset = j5;
14108vinfos[5].indices[0] = _ij5[0];
14109vinfos[5].indices[1] = _ij5[1];
14110vinfos[5].maxsolutions = _nj5;
14111std::vector<int> vfree(0);
14120IkReal j3array[2], cj3array[2], sj3array[2];
14121bool j3valid[2]={
false};
14127sj3array[0]=((-1.0)*gconst14*(x1119.
value));
14130 j3valid[0] = j3valid[1] =
true;
14131 j3array[0] =
IKasin(sj3array[0]);
14132 cj3array[0] =
IKcos(j3array[0]);
14133 sj3array[1] = sj3array[0];
14134 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
14135 cj3array[1] = -cj3array[0];
14137else if( isnan(sj3array[0]) )
14141 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
14143for(
int ij3 = 0; ij3 < 2; ++ij3)
14149_ij3[0] = ij3; _ij3[1] = -1;
14150for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
14154 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
14157j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
14160IkReal x1120=
IKcos(j3);
14161IkReal x1121=
IKsin(j3);
14162IkReal x1122=(gconst14*x1121);
14163evalcond[0]=(new_r01*x1120);
14164evalcond[1]=(gconst14*x1120);
14165evalcond[2]=((-1.0)*new_r10*x1120);
14166evalcond[3]=(x1122+new_r01);
14167evalcond[4]=(gconst14+((new_r10*x1121)));
14168evalcond[5]=(x1122+new_r10);
14176std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
14177vinfos[0].jointtype = 1;
14178vinfos[0].foffset = j0;
14179vinfos[0].indices[0] = _ij0[0];
14180vinfos[0].indices[1] = _ij0[1];
14181vinfos[0].maxsolutions = _nj0;
14182vinfos[1].jointtype = 1;
14183vinfos[1].foffset = j1;
14184vinfos[1].indices[0] = _ij1[0];
14185vinfos[1].indices[1] = _ij1[1];
14186vinfos[1].maxsolutions = _nj1;
14187vinfos[2].jointtype = 1;
14188vinfos[2].foffset = j2;
14189vinfos[2].indices[0] = _ij2[0];
14190vinfos[2].indices[1] = _ij2[1];
14191vinfos[2].maxsolutions = _nj2;
14192vinfos[3].jointtype = 1;
14193vinfos[3].foffset = j3;
14194vinfos[3].indices[0] = _ij3[0];
14195vinfos[3].indices[1] = _ij3[1];
14196vinfos[3].maxsolutions = _nj3;
14197vinfos[4].jointtype = 1;
14198vinfos[4].foffset = j4;
14199vinfos[4].indices[0] = _ij4[0];
14200vinfos[4].indices[1] = _ij4[1];
14201vinfos[4].maxsolutions = _nj4;
14202vinfos[5].jointtype = 1;
14203vinfos[5].foffset = j5;
14204vinfos[5].indices[0] = _ij5[0];
14205vinfos[5].indices[1] = _ij5[1];
14206vinfos[5].maxsolutions = _nj5;
14207std::vector<int> vfree(0);
14219if( bgotonextstatement )
14221bool bgotonextstatement =
true;
14224evalcond[0]=((
IKabs(new_r11))+(
IKabs(new_r01)));
14225evalcond[1]=gconst14;
14226if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 )
14228bgotonextstatement=
false;
14231IkReal x1123=((-1.0)*new_r10);
14236IkReal x1124=((-1.0)*(x1125.
value));
14239j4=3.14159265358979;
14247IkReal gconst12=x1124;
14248IkReal gconst13=new_r00;
14249IkReal gconst14=x1123;
14252j3eval[2]=((
IKabs(((1.0)+(((-1.0)*(new_r10*new_r10))))))+(
IKabs((new_r00*new_r10))));
14253if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
14257IkReal x1126=((-1.0)*new_r10);
14262IkReal x1127=((-1.0)*(x1128.
value));
14265j4=3.14159265358979;
14273IkReal gconst12=x1127;
14274IkReal gconst13=new_r00;
14275IkReal gconst14=x1126;
14278j3eval[2]=((
IKabs(((1.0)+(((-1.0)*(new_r10*new_r10))))))+(
IKabs((new_r00*new_r10))));
14279if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
14283IkReal x1129=((-1.0)*new_r10);
14288IkReal x1130=((-1.0)*(x1131.
value));
14291j4=3.14159265358979;
14299IkReal gconst12=x1130;
14300IkReal gconst13=new_r00;
14301IkReal gconst14=x1129;
14304j3eval[2]=((((0.5)*(
IKabs(((-1.0)+(((2.0)*(new_r10*new_r10))))))))+(
IKabs((new_r00*new_r10))));
14305if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
14312IkReal j3array[1], cj3array[1], sj3array[1];
14313bool j3valid[1]={
false};
14315IkReal x1132=((1.0)*gconst14);
14324j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1133.
value)))+(x1134.
value));
14325sj3array[0]=
IKsin(j3array[0]);
14326cj3array[0]=
IKcos(j3array[0]);
14327if( j3array[0] >
IKPI )
14331else if( j3array[0] < -
IKPI )
14332{ j3array[0]+=
IK2PI;
14335for(
int ij3 = 0; ij3 < 1; ++ij3)
14341_ij3[0] = ij3; _ij3[1] = -1;
14342for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
14346 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
14349j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
14352IkReal x1135=
IKsin(j3);
14353IkReal x1136=
IKcos(j3);
14354IkReal x1137=((1.0)*gconst13);
14355IkReal x1138=(gconst14*x1135);
14356IkReal x1139=(gconst14*x1136);
14357IkReal x1140=(x1136*x1137);
14358evalcond[0]=(x1138+(((-1.0)*x1140)));
14359evalcond[1]=(gconst14+((new_r00*x1136))+((new_r10*x1135)));
14360evalcond[2]=(x1139+((gconst13*x1135))+new_r00);
14361evalcond[3]=(gconst13+((new_r00*x1135))+(((-1.0)*new_r10*x1136)));
14362evalcond[4]=((((-1.0)*x1139))+(((-1.0)*x1135*x1137)));
14363evalcond[5]=(x1138+(((-1.0)*x1140))+new_r10);
14371std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
14372vinfos[0].jointtype = 1;
14373vinfos[0].foffset = j0;
14374vinfos[0].indices[0] = _ij0[0];
14375vinfos[0].indices[1] = _ij0[1];
14376vinfos[0].maxsolutions = _nj0;
14377vinfos[1].jointtype = 1;
14378vinfos[1].foffset = j1;
14379vinfos[1].indices[0] = _ij1[0];
14380vinfos[1].indices[1] = _ij1[1];
14381vinfos[1].maxsolutions = _nj1;
14382vinfos[2].jointtype = 1;
14383vinfos[2].foffset = j2;
14384vinfos[2].indices[0] = _ij2[0];
14385vinfos[2].indices[1] = _ij2[1];
14386vinfos[2].maxsolutions = _nj2;
14387vinfos[3].jointtype = 1;
14388vinfos[3].foffset = j3;
14389vinfos[3].indices[0] = _ij3[0];
14390vinfos[3].indices[1] = _ij3[1];
14391vinfos[3].maxsolutions = _nj3;
14392vinfos[4].jointtype = 1;
14393vinfos[4].foffset = j4;
14394vinfos[4].indices[0] = _ij4[0];
14395vinfos[4].indices[1] = _ij4[1];
14396vinfos[4].maxsolutions = _nj4;
14397vinfos[5].jointtype = 1;
14398vinfos[5].foffset = j5;
14399vinfos[5].indices[0] = _ij5[0];
14400vinfos[5].indices[1] = _ij5[1];
14401vinfos[5].maxsolutions = _nj5;
14402std::vector<int> vfree(0);
14415IkReal j3array[1], cj3array[1], sj3array[1];
14416bool j3valid[1]={
false};
14426j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1141.
value)))+(x1142.
value));
14427sj3array[0]=
IKsin(j3array[0]);
14428cj3array[0]=
IKcos(j3array[0]);
14429if( j3array[0] >
IKPI )
14433else if( j3array[0] < -
IKPI )
14434{ j3array[0]+=
IK2PI;
14437for(
int ij3 = 0; ij3 < 1; ++ij3)
14443_ij3[0] = ij3; _ij3[1] = -1;
14444for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
14448 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
14451j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
14454IkReal x1143=
IKsin(j3);
14455IkReal x1144=
IKcos(j3);
14456IkReal x1145=((1.0)*gconst13);
14457IkReal x1146=(gconst14*x1143);
14458IkReal x1147=(gconst14*x1144);
14459IkReal x1148=(x1144*x1145);
14460evalcond[0]=(x1146+(((-1.0)*x1148)));
14461evalcond[1]=(((new_r00*x1144))+gconst14+((new_r10*x1143)));
14462evalcond[2]=(x1147+((gconst13*x1143))+new_r00);
14463evalcond[3]=((((-1.0)*new_r10*x1144))+((new_r00*x1143))+gconst13);
14464evalcond[4]=((((-1.0)*x1143*x1145))+(((-1.0)*x1147)));
14465evalcond[5]=(x1146+(((-1.0)*x1148))+new_r10);
14473std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
14474vinfos[0].jointtype = 1;
14475vinfos[0].foffset = j0;
14476vinfos[0].indices[0] = _ij0[0];
14477vinfos[0].indices[1] = _ij0[1];
14478vinfos[0].maxsolutions = _nj0;
14479vinfos[1].jointtype = 1;
14480vinfos[1].foffset = j1;
14481vinfos[1].indices[0] = _ij1[0];
14482vinfos[1].indices[1] = _ij1[1];
14483vinfos[1].maxsolutions = _nj1;
14484vinfos[2].jointtype = 1;
14485vinfos[2].foffset = j2;
14486vinfos[2].indices[0] = _ij2[0];
14487vinfos[2].indices[1] = _ij2[1];
14488vinfos[2].maxsolutions = _nj2;
14489vinfos[3].jointtype = 1;
14490vinfos[3].foffset = j3;
14491vinfos[3].indices[0] = _ij3[0];
14492vinfos[3].indices[1] = _ij3[1];
14493vinfos[3].maxsolutions = _nj3;
14494vinfos[4].jointtype = 1;
14495vinfos[4].foffset = j4;
14496vinfos[4].indices[0] = _ij4[0];
14497vinfos[4].indices[1] = _ij4[1];
14498vinfos[4].maxsolutions = _nj4;
14499vinfos[5].jointtype = 1;
14500vinfos[5].foffset = j5;
14501vinfos[5].indices[0] = _ij5[0];
14502vinfos[5].indices[1] = _ij5[1];
14503vinfos[5].maxsolutions = _nj5;
14504std::vector<int> vfree(0);
14517IkReal j3array[1], cj3array[1], sj3array[1];
14518bool j3valid[1]={
false};
14528j3array[0]=((-1.5707963267949)+(x1149.
value)+(((1.5707963267949)*(x1150.
value))));
14529sj3array[0]=
IKsin(j3array[0]);
14530cj3array[0]=
IKcos(j3array[0]);
14531if( j3array[0] >
IKPI )
14535else if( j3array[0] < -
IKPI )
14536{ j3array[0]+=
IK2PI;
14539for(
int ij3 = 0; ij3 < 1; ++ij3)
14545_ij3[0] = ij3; _ij3[1] = -1;
14546for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
14550 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
14553j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
14556IkReal x1151=
IKsin(j3);
14557IkReal x1152=
IKcos(j3);
14558IkReal x1153=((1.0)*gconst13);
14559IkReal x1154=(gconst14*x1151);
14560IkReal x1155=(gconst14*x1152);
14561IkReal x1156=(x1152*x1153);
14562evalcond[0]=(x1154+(((-1.0)*x1156)));
14563evalcond[1]=(((new_r10*x1151))+gconst14+((new_r00*x1152)));
14564evalcond[2]=(x1155+((gconst13*x1151))+new_r00);
14565evalcond[3]=(gconst13+((new_r00*x1151))+(((-1.0)*new_r10*x1152)));
14566evalcond[4]=((((-1.0)*x1155))+(((-1.0)*x1151*x1153)));
14567evalcond[5]=(x1154+(((-1.0)*x1156))+new_r10);
14575std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
14576vinfos[0].jointtype = 1;
14577vinfos[0].foffset = j0;
14578vinfos[0].indices[0] = _ij0[0];
14579vinfos[0].indices[1] = _ij0[1];
14580vinfos[0].maxsolutions = _nj0;
14581vinfos[1].jointtype = 1;
14582vinfos[1].foffset = j1;
14583vinfos[1].indices[0] = _ij1[0];
14584vinfos[1].indices[1] = _ij1[1];
14585vinfos[1].maxsolutions = _nj1;
14586vinfos[2].jointtype = 1;
14587vinfos[2].foffset = j2;
14588vinfos[2].indices[0] = _ij2[0];
14589vinfos[2].indices[1] = _ij2[1];
14590vinfos[2].maxsolutions = _nj2;
14591vinfos[3].jointtype = 1;
14592vinfos[3].foffset = j3;
14593vinfos[3].indices[0] = _ij3[0];
14594vinfos[3].indices[1] = _ij3[1];
14595vinfos[3].maxsolutions = _nj3;
14596vinfos[4].jointtype = 1;
14597vinfos[4].foffset = j4;
14598vinfos[4].indices[0] = _ij4[0];
14599vinfos[4].indices[1] = _ij4[1];
14600vinfos[4].maxsolutions = _nj4;
14601vinfos[5].jointtype = 1;
14602vinfos[5].foffset = j5;
14603vinfos[5].indices[0] = _ij5[0];
14604vinfos[5].indices[1] = _ij5[1];
14605vinfos[5].maxsolutions = _nj5;
14606std::vector<int> vfree(0);
14618if( bgotonextstatement )
14620bool bgotonextstatement =
true;
14623evalcond[0]=((
IKabs(new_r10))+(
IKabs(new_r01)));
14624if(
IKabs(evalcond[0]) < 0.0000050000000000 )
14626bgotonextstatement=
false;
14628IkReal j3array[2], cj3array[2], sj3array[2];
14629bool j3valid[2]={
false};
14635sj3array[0]=(new_r11*(x1157.
value));
14638 j3valid[0] = j3valid[1] =
true;
14639 j3array[0] =
IKasin(sj3array[0]);
14640 cj3array[0] =
IKcos(j3array[0]);
14641 sj3array[1] = sj3array[0];
14642 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
14643 cj3array[1] = -cj3array[0];
14645else if( isnan(sj3array[0]) )
14649 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
14651for(
int ij3 = 0; ij3 < 2; ++ij3)
14657_ij3[0] = ij3; _ij3[1] = -1;
14658for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
14662 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
14665j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
14668IkReal x1158=
IKcos(j3);
14669IkReal x1159=
IKsin(j3);
14670IkReal x1160=((-1.0)*x1158);
14671evalcond[0]=(new_r00*x1158);
14672evalcond[1]=(new_r11*x1160);
14673evalcond[2]=(gconst13*x1160);
14674evalcond[3]=(gconst13+((new_r00*x1159)));
14675evalcond[4]=(((gconst13*x1159))+new_r00);
14676evalcond[5]=(((new_r11*x1159))+(((-1.0)*gconst13)));
14684std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
14685vinfos[0].jointtype = 1;
14686vinfos[0].foffset = j0;
14687vinfos[0].indices[0] = _ij0[0];
14688vinfos[0].indices[1] = _ij0[1];
14689vinfos[0].maxsolutions = _nj0;
14690vinfos[1].jointtype = 1;
14691vinfos[1].foffset = j1;
14692vinfos[1].indices[0] = _ij1[0];
14693vinfos[1].indices[1] = _ij1[1];
14694vinfos[1].maxsolutions = _nj1;
14695vinfos[2].jointtype = 1;
14696vinfos[2].foffset = j2;
14697vinfos[2].indices[0] = _ij2[0];
14698vinfos[2].indices[1] = _ij2[1];
14699vinfos[2].maxsolutions = _nj2;
14700vinfos[3].jointtype = 1;
14701vinfos[3].foffset = j3;
14702vinfos[3].indices[0] = _ij3[0];
14703vinfos[3].indices[1] = _ij3[1];
14704vinfos[3].maxsolutions = _nj3;
14705vinfos[4].jointtype = 1;
14706vinfos[4].foffset = j4;
14707vinfos[4].indices[0] = _ij4[0];
14708vinfos[4].indices[1] = _ij4[1];
14709vinfos[4].maxsolutions = _nj4;
14710vinfos[5].jointtype = 1;
14711vinfos[5].foffset = j5;
14712vinfos[5].indices[0] = _ij5[0];
14713vinfos[5].indices[1] = _ij5[1];
14714vinfos[5].maxsolutions = _nj5;
14715std::vector<int> vfree(0);
14723if( bgotonextstatement )
14725bool bgotonextstatement =
true;
14728evalcond[0]=((
IKabs(new_r11))+(
IKabs(new_r10)));
14729if(
IKabs(evalcond[0]) < 0.0000050000000000 )
14731bgotonextstatement=
false;
14738IkReal x1161=((-1.0)*(x1162.
value));
14741j4=3.14159265358979;
14749IkReal gconst12=x1161;
14750IkReal x1163 = ((1.0)+(((-1.0)*(new_r01*new_r01))));
14751if(
IKabs(x1163)==0){
14754IkReal gconst13=(new_r00*(pow(x1163,-0.5)));
14756j3eval[0]=((
IKabs(new_r00))+(
IKabs(new_r01)));
14757if(
IKabs(j3eval[0]) < 0.0000010000000000 )
14765IkReal x1164=((-1.0)*(x1165.
value));
14768j4=3.14159265358979;
14776IkReal gconst12=x1164;
14777IkReal x1166 = ((1.0)+(((-1.0)*(new_r01*new_r01))));
14778if(
IKabs(x1166)==0){
14781IkReal gconst13=(new_r00*(pow(x1166,-0.5)));
14784if(
IKabs(j3eval[0]) < 0.0000010000000000 )
14792IkReal x1167=((-1.0)*(x1168.
value));
14795j4=3.14159265358979;
14803IkReal gconst12=x1167;
14804IkReal x1169 = ((1.0)+(((-1.0)*(new_r01*new_r01))));
14805if(
IKabs(x1169)==0){
14808IkReal gconst13=(new_r00*(pow(x1169,-0.5)));
14812if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 )
14819IkReal j3array[1], cj3array[1], sj3array[1];
14820bool j3valid[1]={
false};
14833sj3array[0]=
IKsin(j3array[0]);
14834cj3array[0]=
IKcos(j3array[0]);
14835if( j3array[0] >
IKPI )
14839else if( j3array[0] < -
IKPI )
14840{ j3array[0]+=
IK2PI;
14843for(
int ij3 = 0; ij3 < 1; ++ij3)
14849_ij3[0] = ij3; _ij3[1] = -1;
14850for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
14854 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
14857j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
14860IkReal x1172=
IKsin(j3);
14861IkReal x1173=
IKcos(j3);
14862IkReal x1174=(gconst13*x1173);
14863IkReal x1175=(gconst13*x1172);
14864evalcond[0]=(new_r01*x1172);
14865evalcond[1]=(new_r00*x1173);
14866evalcond[2]=((-1.0)*x1175);
14867evalcond[3]=((-1.0)*x1174);
14868evalcond[4]=(gconst13+((new_r00*x1172)));
14869evalcond[5]=(x1175+new_r00);
14870evalcond[6]=(new_r01+(((-1.0)*x1174)));
14871evalcond[7]=((((-1.0)*gconst13))+((new_r01*x1173)));
14879std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
14880vinfos[0].jointtype = 1;
14881vinfos[0].foffset = j0;
14882vinfos[0].indices[0] = _ij0[0];
14883vinfos[0].indices[1] = _ij0[1];
14884vinfos[0].maxsolutions = _nj0;
14885vinfos[1].jointtype = 1;
14886vinfos[1].foffset = j1;
14887vinfos[1].indices[0] = _ij1[0];
14888vinfos[1].indices[1] = _ij1[1];
14889vinfos[1].maxsolutions = _nj1;
14890vinfos[2].jointtype = 1;
14891vinfos[2].foffset = j2;
14892vinfos[2].indices[0] = _ij2[0];
14893vinfos[2].indices[1] = _ij2[1];
14894vinfos[2].maxsolutions = _nj2;
14895vinfos[3].jointtype = 1;
14896vinfos[3].foffset = j3;
14897vinfos[3].indices[0] = _ij3[0];
14898vinfos[3].indices[1] = _ij3[1];
14899vinfos[3].maxsolutions = _nj3;
14900vinfos[4].jointtype = 1;
14901vinfos[4].foffset = j4;
14902vinfos[4].indices[0] = _ij4[0];
14903vinfos[4].indices[1] = _ij4[1];
14904vinfos[4].maxsolutions = _nj4;
14905vinfos[5].jointtype = 1;
14906vinfos[5].foffset = j5;
14907vinfos[5].indices[0] = _ij5[0];
14908vinfos[5].indices[1] = _ij5[1];
14909vinfos[5].maxsolutions = _nj5;
14910std::vector<int> vfree(0);
14923IkReal j3array[1], cj3array[1], sj3array[1];
14924bool j3valid[1]={
false};
14937sj3array[0]=
IKsin(j3array[0]);
14938cj3array[0]=
IKcos(j3array[0]);
14939if( j3array[0] >
IKPI )
14943else if( j3array[0] < -
IKPI )
14944{ j3array[0]+=
IK2PI;
14947for(
int ij3 = 0; ij3 < 1; ++ij3)
14953_ij3[0] = ij3; _ij3[1] = -1;
14954for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
14958 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
14961j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
14964IkReal x1178=
IKsin(j3);
14965IkReal x1179=
IKcos(j3);
14966IkReal x1180=(gconst13*x1179);
14967IkReal x1181=(gconst13*x1178);
14968evalcond[0]=(new_r01*x1178);
14969evalcond[1]=(new_r00*x1179);
14970evalcond[2]=((-1.0)*x1181);
14971evalcond[3]=((-1.0)*x1180);
14972evalcond[4]=(gconst13+((new_r00*x1178)));
14973evalcond[5]=(x1181+new_r00);
14974evalcond[6]=(new_r01+(((-1.0)*x1180)));
14975evalcond[7]=((((-1.0)*gconst13))+((new_r01*x1179)));
14983std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
14984vinfos[0].jointtype = 1;
14985vinfos[0].foffset = j0;
14986vinfos[0].indices[0] = _ij0[0];
14987vinfos[0].indices[1] = _ij0[1];
14988vinfos[0].maxsolutions = _nj0;
14989vinfos[1].jointtype = 1;
14990vinfos[1].foffset = j1;
14991vinfos[1].indices[0] = _ij1[0];
14992vinfos[1].indices[1] = _ij1[1];
14993vinfos[1].maxsolutions = _nj1;
14994vinfos[2].jointtype = 1;
14995vinfos[2].foffset = j2;
14996vinfos[2].indices[0] = _ij2[0];
14997vinfos[2].indices[1] = _ij2[1];
14998vinfos[2].maxsolutions = _nj2;
14999vinfos[3].jointtype = 1;
15000vinfos[3].foffset = j3;
15001vinfos[3].indices[0] = _ij3[0];
15002vinfos[3].indices[1] = _ij3[1];
15003vinfos[3].maxsolutions = _nj3;
15004vinfos[4].jointtype = 1;
15005vinfos[4].foffset = j4;
15006vinfos[4].indices[0] = _ij4[0];
15007vinfos[4].indices[1] = _ij4[1];
15008vinfos[4].maxsolutions = _nj4;
15009vinfos[5].jointtype = 1;
15010vinfos[5].foffset = j5;
15011vinfos[5].indices[0] = _ij5[0];
15012vinfos[5].indices[1] = _ij5[1];
15013vinfos[5].maxsolutions = _nj5;
15014std::vector<int> vfree(0);
15027IkReal j3array[1], cj3array[1], sj3array[1];
15028bool j3valid[1]={
false};
15038j3array[0]=((-1.5707963267949)+(x1182.
value)+(((1.5707963267949)*(x1183.
value))));
15039sj3array[0]=
IKsin(j3array[0]);
15040cj3array[0]=
IKcos(j3array[0]);
15041if( j3array[0] >
IKPI )
15045else if( j3array[0] < -
IKPI )
15046{ j3array[0]+=
IK2PI;
15049for(
int ij3 = 0; ij3 < 1; ++ij3)
15055_ij3[0] = ij3; _ij3[1] = -1;
15056for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
15060 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
15063j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
15066IkReal x1184=
IKsin(j3);
15067IkReal x1185=
IKcos(j3);
15068IkReal x1186=(gconst13*x1185);
15069IkReal x1187=(gconst13*x1184);
15070evalcond[0]=(new_r01*x1184);
15071evalcond[1]=(new_r00*x1185);
15072evalcond[2]=((-1.0)*x1187);
15073evalcond[3]=((-1.0)*x1186);
15074evalcond[4]=(gconst13+((new_r00*x1184)));
15075evalcond[5]=(x1187+new_r00);
15076evalcond[6]=(new_r01+(((-1.0)*x1186)));
15077evalcond[7]=(((new_r01*x1185))+(((-1.0)*gconst13)));
15085std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
15086vinfos[0].jointtype = 1;
15087vinfos[0].foffset = j0;
15088vinfos[0].indices[0] = _ij0[0];
15089vinfos[0].indices[1] = _ij0[1];
15090vinfos[0].maxsolutions = _nj0;
15091vinfos[1].jointtype = 1;
15092vinfos[1].foffset = j1;
15093vinfos[1].indices[0] = _ij1[0];
15094vinfos[1].indices[1] = _ij1[1];
15095vinfos[1].maxsolutions = _nj1;
15096vinfos[2].jointtype = 1;
15097vinfos[2].foffset = j2;
15098vinfos[2].indices[0] = _ij2[0];
15099vinfos[2].indices[1] = _ij2[1];
15100vinfos[2].maxsolutions = _nj2;
15101vinfos[3].jointtype = 1;
15102vinfos[3].foffset = j3;
15103vinfos[3].indices[0] = _ij3[0];
15104vinfos[3].indices[1] = _ij3[1];
15105vinfos[3].maxsolutions = _nj3;
15106vinfos[4].jointtype = 1;
15107vinfos[4].foffset = j4;
15108vinfos[4].indices[0] = _ij4[0];
15109vinfos[4].indices[1] = _ij4[1];
15110vinfos[4].maxsolutions = _nj4;
15111vinfos[5].jointtype = 1;
15112vinfos[5].foffset = j5;
15113vinfos[5].indices[0] = _ij5[0];
15114vinfos[5].indices[1] = _ij5[1];
15115vinfos[5].maxsolutions = _nj5;
15116std::vector<int> vfree(0);
15128if( bgotonextstatement )
15130bool bgotonextstatement =
true;
15133evalcond[0]=
IKabs(new_r10);
15134if(
IKabs(evalcond[0]) < 0.0000050000000000 )
15136bgotonextstatement=
false;
15143IkReal x1188=((-1.0)*(x1189.
value));
15146j4=3.14159265358979;
15151IkReal gconst12=x1188;
15152IkReal x1190 = new_r00*new_r00;
15153if(
IKabs(x1190)==0){
15156IkReal gconst13=(new_r00*(pow(x1190,-0.5)));
15158j3eval[0]=((
IKabs(new_r11))+(
IKabs(new_r01)));
15159if(
IKabs(j3eval[0]) < 0.0000010000000000 )
15167IkReal x1191=((-1.0)*(x1192.
value));
15170j4=3.14159265358979;
15175IkReal gconst12=x1191;
15176IkReal x1193 = new_r00*new_r00;
15177if(
IKabs(x1193)==0){
15180IkReal gconst13=(new_r00*(pow(x1193,-0.5)));
15182j3eval[0]=((
IKabs(new_r00))+(
IKabs(new_r01)));
15183if(
IKabs(j3eval[0]) < 0.0000010000000000 )
15191IkReal x1194=((-1.0)*(x1195.
value));
15194j4=3.14159265358979;
15199IkReal gconst12=x1194;
15200IkReal x1196 = new_r00*new_r00;
15201if(
IKabs(x1196)==0){
15204IkReal gconst13=(new_r00*(pow(x1196,-0.5)));
15207if(
IKabs(j3eval[0]) < 0.0000010000000000 )
15214IkReal j3array[1], cj3array[1], sj3array[1];
15215bool j3valid[1]={
false};
15228sj3array[0]=
IKsin(j3array[0]);
15229cj3array[0]=
IKcos(j3array[0]);
15230if( j3array[0] >
IKPI )
15234else if( j3array[0] < -
IKPI )
15235{ j3array[0]+=
IK2PI;
15238for(
int ij3 = 0; ij3 < 1; ++ij3)
15244_ij3[0] = ij3; _ij3[1] = -1;
15245for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
15249 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
15252j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
15255IkReal x1199=
IKcos(j3);
15256IkReal x1200=
IKsin(j3);
15257IkReal x1201=(gconst13*x1199);
15258IkReal x1202=(gconst13*x1200);
15259evalcond[0]=(new_r00*x1199);
15260evalcond[1]=((-1.0)*x1201);
15261evalcond[2]=(((new_r00*x1200))+gconst13);
15262evalcond[3]=(x1202+new_r00);
15263evalcond[4]=((((-1.0)*x1201))+new_r01);
15264evalcond[5]=((((-1.0)*x1202))+new_r11);
15265evalcond[6]=(((new_r01*x1200))+(((-1.0)*new_r11*x1199)));
15266evalcond[7]=(((new_r11*x1200))+(((-1.0)*gconst13))+((new_r01*x1199)));
15274std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
15275vinfos[0].jointtype = 1;
15276vinfos[0].foffset = j0;
15277vinfos[0].indices[0] = _ij0[0];
15278vinfos[0].indices[1] = _ij0[1];
15279vinfos[0].maxsolutions = _nj0;
15280vinfos[1].jointtype = 1;
15281vinfos[1].foffset = j1;
15282vinfos[1].indices[0] = _ij1[0];
15283vinfos[1].indices[1] = _ij1[1];
15284vinfos[1].maxsolutions = _nj1;
15285vinfos[2].jointtype = 1;
15286vinfos[2].foffset = j2;
15287vinfos[2].indices[0] = _ij2[0];
15288vinfos[2].indices[1] = _ij2[1];
15289vinfos[2].maxsolutions = _nj2;
15290vinfos[3].jointtype = 1;
15291vinfos[3].foffset = j3;
15292vinfos[3].indices[0] = _ij3[0];
15293vinfos[3].indices[1] = _ij3[1];
15294vinfos[3].maxsolutions = _nj3;
15295vinfos[4].jointtype = 1;
15296vinfos[4].foffset = j4;
15297vinfos[4].indices[0] = _ij4[0];
15298vinfos[4].indices[1] = _ij4[1];
15299vinfos[4].maxsolutions = _nj4;
15300vinfos[5].jointtype = 1;
15301vinfos[5].foffset = j5;
15302vinfos[5].indices[0] = _ij5[0];
15303vinfos[5].indices[1] = _ij5[1];
15304vinfos[5].maxsolutions = _nj5;
15305std::vector<int> vfree(0);
15318IkReal j3array[1], cj3array[1], sj3array[1];
15319bool j3valid[1]={
false};
15329j3array[0]=((-1.5707963267949)+(x1203.
value)+(((1.5707963267949)*(x1204.
value))));
15330sj3array[0]=
IKsin(j3array[0]);
15331cj3array[0]=
IKcos(j3array[0]);
15332if( j3array[0] >
IKPI )
15336else if( j3array[0] < -
IKPI )
15337{ j3array[0]+=
IK2PI;
15340for(
int ij3 = 0; ij3 < 1; ++ij3)
15346_ij3[0] = ij3; _ij3[1] = -1;
15347for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
15351 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
15354j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
15357IkReal x1205=
IKcos(j3);
15358IkReal x1206=
IKsin(j3);
15359IkReal x1207=(gconst13*x1205);
15360IkReal x1208=(gconst13*x1206);
15361evalcond[0]=(new_r00*x1205);
15362evalcond[1]=((-1.0)*x1207);
15363evalcond[2]=(((new_r00*x1206))+gconst13);
15364evalcond[3]=(x1208+new_r00);
15365evalcond[4]=((((-1.0)*x1207))+new_r01);
15366evalcond[5]=((((-1.0)*x1208))+new_r11);
15367evalcond[6]=(((new_r01*x1206))+(((-1.0)*new_r11*x1205)));
15368evalcond[7]=(((new_r11*x1206))+((new_r01*x1205))+(((-1.0)*gconst13)));
15376std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
15377vinfos[0].jointtype = 1;
15378vinfos[0].foffset = j0;
15379vinfos[0].indices[0] = _ij0[0];
15380vinfos[0].indices[1] = _ij0[1];
15381vinfos[0].maxsolutions = _nj0;
15382vinfos[1].jointtype = 1;
15383vinfos[1].foffset = j1;
15384vinfos[1].indices[0] = _ij1[0];
15385vinfos[1].indices[1] = _ij1[1];
15386vinfos[1].maxsolutions = _nj1;
15387vinfos[2].jointtype = 1;
15388vinfos[2].foffset = j2;
15389vinfos[2].indices[0] = _ij2[0];
15390vinfos[2].indices[1] = _ij2[1];
15391vinfos[2].maxsolutions = _nj2;
15392vinfos[3].jointtype = 1;
15393vinfos[3].foffset = j3;
15394vinfos[3].indices[0] = _ij3[0];
15395vinfos[3].indices[1] = _ij3[1];
15396vinfos[3].maxsolutions = _nj3;
15397vinfos[4].jointtype = 1;
15398vinfos[4].foffset = j4;
15399vinfos[4].indices[0] = _ij4[0];
15400vinfos[4].indices[1] = _ij4[1];
15401vinfos[4].maxsolutions = _nj4;
15402vinfos[5].jointtype = 1;
15403vinfos[5].foffset = j5;
15404vinfos[5].indices[0] = _ij5[0];
15405vinfos[5].indices[1] = _ij5[1];
15406vinfos[5].maxsolutions = _nj5;
15407std::vector<int> vfree(0);
15420IkReal j3array[1], cj3array[1], sj3array[1];
15421bool j3valid[1]={
false};
15431j3array[0]=((-1.5707963267949)+(x1209.
value)+(((1.5707963267949)*(x1210.
value))));
15432sj3array[0]=
IKsin(j3array[0]);
15433cj3array[0]=
IKcos(j3array[0]);
15434if( j3array[0] >
IKPI )
15438else if( j3array[0] < -
IKPI )
15439{ j3array[0]+=
IK2PI;
15442for(
int ij3 = 0; ij3 < 1; ++ij3)
15448_ij3[0] = ij3; _ij3[1] = -1;
15449for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
15453 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
15456j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
15459IkReal x1211=
IKcos(j3);
15460IkReal x1212=
IKsin(j3);
15461IkReal x1213=(gconst13*x1211);
15462IkReal x1214=(gconst13*x1212);
15463evalcond[0]=(new_r00*x1211);
15464evalcond[1]=((-1.0)*x1213);
15465evalcond[2]=(gconst13+((new_r00*x1212)));
15466evalcond[3]=(x1214+new_r00);
15467evalcond[4]=(new_r01+(((-1.0)*x1213)));
15468evalcond[5]=(new_r11+(((-1.0)*x1214)));
15469evalcond[6]=(((new_r01*x1212))+(((-1.0)*new_r11*x1211)));
15470evalcond[7]=(((new_r11*x1212))+((new_r01*x1211))+(((-1.0)*gconst13)));
15478std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
15479vinfos[0].jointtype = 1;
15480vinfos[0].foffset = j0;
15481vinfos[0].indices[0] = _ij0[0];
15482vinfos[0].indices[1] = _ij0[1];
15483vinfos[0].maxsolutions = _nj0;
15484vinfos[1].jointtype = 1;
15485vinfos[1].foffset = j1;
15486vinfos[1].indices[0] = _ij1[0];
15487vinfos[1].indices[1] = _ij1[1];
15488vinfos[1].maxsolutions = _nj1;
15489vinfos[2].jointtype = 1;
15490vinfos[2].foffset = j2;
15491vinfos[2].indices[0] = _ij2[0];
15492vinfos[2].indices[1] = _ij2[1];
15493vinfos[2].maxsolutions = _nj2;
15494vinfos[3].jointtype = 1;
15495vinfos[3].foffset = j3;
15496vinfos[3].indices[0] = _ij3[0];
15497vinfos[3].indices[1] = _ij3[1];
15498vinfos[3].maxsolutions = _nj3;
15499vinfos[4].jointtype = 1;
15500vinfos[4].foffset = j4;
15501vinfos[4].indices[0] = _ij4[0];
15502vinfos[4].indices[1] = _ij4[1];
15503vinfos[4].maxsolutions = _nj4;
15504vinfos[5].jointtype = 1;
15505vinfos[5].foffset = j5;
15506vinfos[5].indices[0] = _ij5[0];
15507vinfos[5].indices[1] = _ij5[1];
15508vinfos[5].maxsolutions = _nj5;
15509std::vector<int> vfree(0);
15521if( bgotonextstatement )
15523bool bgotonextstatement =
true;
15528bgotonextstatement=
false;
15533if( bgotonextstatement )
15546IkReal j3array[1], cj3array[1], sj3array[1];
15547bool j3valid[1]={
false};
15549IkReal x1215=((1.0)*gconst14);
15558j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1216.
value)))+(x1217.
value));
15559sj3array[0]=
IKsin(j3array[0]);
15560cj3array[0]=
IKcos(j3array[0]);
15561if( j3array[0] >
IKPI )
15565else if( j3array[0] < -
IKPI )
15566{ j3array[0]+=
IK2PI;
15569for(
int ij3 = 0; ij3 < 1; ++ij3)
15575_ij3[0] = ij3; _ij3[1] = -1;
15576for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
15580 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
15583j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
15586IkReal x1218=
IKsin(j3);
15587IkReal x1219=
IKcos(j3);
15588IkReal x1220=(gconst14*x1218);
15589IkReal x1221=((1.0)*x1219);
15590IkReal x1222=(gconst13*x1218);
15591IkReal x1223=(gconst13*x1221);
15592evalcond[0]=(((new_r10*x1218))+gconst14+((new_r00*x1219)));
15593evalcond[1]=(x1222+((gconst14*x1219))+new_r00);
15594evalcond[2]=(gconst13+((new_r00*x1218))+(((-1.0)*new_r10*x1221)));
15595evalcond[3]=(gconst14+((new_r01*x1218))+(((-1.0)*new_r11*x1221)));
15596evalcond[4]=(x1220+(((-1.0)*x1223))+new_r01);
15597evalcond[5]=(x1220+(((-1.0)*x1223))+new_r10);
15598evalcond[6]=(((new_r11*x1218))+((new_r01*x1219))+(((-1.0)*gconst13)));
15599evalcond[7]=((((-1.0)*x1222))+new_r11+(((-1.0)*gconst14*x1221)));
15607std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
15608vinfos[0].jointtype = 1;
15609vinfos[0].foffset = j0;
15610vinfos[0].indices[0] = _ij0[0];
15611vinfos[0].indices[1] = _ij0[1];
15612vinfos[0].maxsolutions = _nj0;
15613vinfos[1].jointtype = 1;
15614vinfos[1].foffset = j1;
15615vinfos[1].indices[0] = _ij1[0];
15616vinfos[1].indices[1] = _ij1[1];
15617vinfos[1].maxsolutions = _nj1;
15618vinfos[2].jointtype = 1;
15619vinfos[2].foffset = j2;
15620vinfos[2].indices[0] = _ij2[0];
15621vinfos[2].indices[1] = _ij2[1];
15622vinfos[2].maxsolutions = _nj2;
15623vinfos[3].jointtype = 1;
15624vinfos[3].foffset = j3;
15625vinfos[3].indices[0] = _ij3[0];
15626vinfos[3].indices[1] = _ij3[1];
15627vinfos[3].maxsolutions = _nj3;
15628vinfos[4].jointtype = 1;
15629vinfos[4].foffset = j4;
15630vinfos[4].indices[0] = _ij4[0];
15631vinfos[4].indices[1] = _ij4[1];
15632vinfos[4].maxsolutions = _nj4;
15633vinfos[5].jointtype = 1;
15634vinfos[5].foffset = j5;
15635vinfos[5].indices[0] = _ij5[0];
15636vinfos[5].indices[1] = _ij5[1];
15637vinfos[5].maxsolutions = _nj5;
15638std::vector<int> vfree(0);
15651IkReal j3array[1], cj3array[1], sj3array[1];
15652bool j3valid[1]={
false};
15654IkReal x1224=((1.0)*gconst14);
15663j3array[0]=((-1.5707963267949)+(x1225.
value)+(((1.5707963267949)*(x1226.
value))));
15664sj3array[0]=
IKsin(j3array[0]);
15665cj3array[0]=
IKcos(j3array[0]);
15666if( j3array[0] >
IKPI )
15670else if( j3array[0] < -
IKPI )
15671{ j3array[0]+=
IK2PI;
15674for(
int ij3 = 0; ij3 < 1; ++ij3)
15680_ij3[0] = ij3; _ij3[1] = -1;
15681for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
15685 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
15688j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
15691IkReal x1227=
IKsin(j3);
15692IkReal x1228=
IKcos(j3);
15693IkReal x1229=(gconst14*x1227);
15694IkReal x1230=((1.0)*x1228);
15695IkReal x1231=(gconst13*x1227);
15696IkReal x1232=(gconst13*x1230);
15697evalcond[0]=(gconst14+((new_r00*x1228))+((new_r10*x1227)));
15698evalcond[1]=(x1231+new_r00+((gconst14*x1228)));
15699evalcond[2]=(gconst13+((new_r00*x1227))+(((-1.0)*new_r10*x1230)));
15700evalcond[3]=(gconst14+((new_r01*x1227))+(((-1.0)*new_r11*x1230)));
15701evalcond[4]=(x1229+(((-1.0)*x1232))+new_r01);
15702evalcond[5]=(x1229+(((-1.0)*x1232))+new_r10);
15703evalcond[6]=(((new_r11*x1227))+((new_r01*x1228))+(((-1.0)*gconst13)));
15704evalcond[7]=((((-1.0)*x1231))+new_r11+(((-1.0)*gconst14*x1230)));
15712std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
15713vinfos[0].jointtype = 1;
15714vinfos[0].foffset = j0;
15715vinfos[0].indices[0] = _ij0[0];
15716vinfos[0].indices[1] = _ij0[1];
15717vinfos[0].maxsolutions = _nj0;
15718vinfos[1].jointtype = 1;
15719vinfos[1].foffset = j1;
15720vinfos[1].indices[0] = _ij1[0];
15721vinfos[1].indices[1] = _ij1[1];
15722vinfos[1].maxsolutions = _nj1;
15723vinfos[2].jointtype = 1;
15724vinfos[2].foffset = j2;
15725vinfos[2].indices[0] = _ij2[0];
15726vinfos[2].indices[1] = _ij2[1];
15727vinfos[2].maxsolutions = _nj2;
15728vinfos[3].jointtype = 1;
15729vinfos[3].foffset = j3;
15730vinfos[3].indices[0] = _ij3[0];
15731vinfos[3].indices[1] = _ij3[1];
15732vinfos[3].maxsolutions = _nj3;
15733vinfos[4].jointtype = 1;
15734vinfos[4].foffset = j4;
15735vinfos[4].indices[0] = _ij4[0];
15736vinfos[4].indices[1] = _ij4[1];
15737vinfos[4].maxsolutions = _nj4;
15738vinfos[5].jointtype = 1;
15739vinfos[5].foffset = j5;
15740vinfos[5].indices[0] = _ij5[0];
15741vinfos[5].indices[1] = _ij5[1];
15742vinfos[5].maxsolutions = _nj5;
15743std::vector<int> vfree(0);
15756IkReal j3array[1], cj3array[1], sj3array[1];
15757bool j3valid[1]={
false};
15759IkReal x1233=((1.0)*new_r10);
15768j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1234.
value)))+(x1235.
value));
15769sj3array[0]=
IKsin(j3array[0]);
15770cj3array[0]=
IKcos(j3array[0]);
15771if( j3array[0] >
IKPI )
15775else if( j3array[0] < -
IKPI )
15776{ j3array[0]+=
IK2PI;
15779for(
int ij3 = 0; ij3 < 1; ++ij3)
15785_ij3[0] = ij3; _ij3[1] = -1;
15786for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
15790 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
15793j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
15796IkReal x1236=
IKsin(j3);
15797IkReal x1237=
IKcos(j3);
15798IkReal x1238=(gconst14*x1236);
15799IkReal x1239=((1.0)*x1237);
15800IkReal x1240=(gconst13*x1236);
15801IkReal x1241=(gconst13*x1239);
15802evalcond[0]=(gconst14+((new_r10*x1236))+((new_r00*x1237)));
15803evalcond[1]=(((gconst14*x1237))+x1240+new_r00);
15804evalcond[2]=(gconst13+((new_r00*x1236))+(((-1.0)*new_r10*x1239)));
15805evalcond[3]=(gconst14+((new_r01*x1236))+(((-1.0)*new_r11*x1239)));
15806evalcond[4]=(x1238+(((-1.0)*x1241))+new_r01);
15807evalcond[5]=(x1238+(((-1.0)*x1241))+new_r10);
15808evalcond[6]=(((new_r01*x1237))+((new_r11*x1236))+(((-1.0)*gconst13)));
15809evalcond[7]=((((-1.0)*x1240))+new_r11+(((-1.0)*gconst14*x1239)));
15817std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
15818vinfos[0].jointtype = 1;
15819vinfos[0].foffset = j0;
15820vinfos[0].indices[0] = _ij0[0];
15821vinfos[0].indices[1] = _ij0[1];
15822vinfos[0].maxsolutions = _nj0;
15823vinfos[1].jointtype = 1;
15824vinfos[1].foffset = j1;
15825vinfos[1].indices[0] = _ij1[0];
15826vinfos[1].indices[1] = _ij1[1];
15827vinfos[1].maxsolutions = _nj1;
15828vinfos[2].jointtype = 1;
15829vinfos[2].foffset = j2;
15830vinfos[2].indices[0] = _ij2[0];
15831vinfos[2].indices[1] = _ij2[1];
15832vinfos[2].maxsolutions = _nj2;
15833vinfos[3].jointtype = 1;
15834vinfos[3].foffset = j3;
15835vinfos[3].indices[0] = _ij3[0];
15836vinfos[3].indices[1] = _ij3[1];
15837vinfos[3].maxsolutions = _nj3;
15838vinfos[4].jointtype = 1;
15839vinfos[4].foffset = j4;
15840vinfos[4].indices[0] = _ij4[0];
15841vinfos[4].indices[1] = _ij4[1];
15842vinfos[4].maxsolutions = _nj4;
15843vinfos[5].jointtype = 1;
15844vinfos[5].foffset = j5;
15845vinfos[5].indices[0] = _ij5[0];
15846vinfos[5].indices[1] = _ij5[1];
15847vinfos[5].maxsolutions = _nj5;
15848std::vector<int> vfree(0);
15860if( bgotonextstatement )
15862bool bgotonextstatement =
true;
15865IkReal x1242=((-1.0)*new_r00);
15866IkReal x1244 = ((new_r10*new_r10)+(new_r00*new_r00));
15867if(
IKabs(x1244)==0){
15870IkReal x1243=pow(x1244,-0.5);
15875IkReal gconst15=((3.14159265358979)+(((-1.0)*(x1245.
value))));
15876IkReal gconst16=(x1242*x1243);
15877IkReal gconst17=((1.0)*new_r10*x1243);
15882evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-3.14159265358979)+(x1246.
value)+j5)))), 6.28318530717959)));
15883if(
IKabs(evalcond[0]) < 0.0000050000000000 )
15885bgotonextstatement=
false;
15888IkReal x1247=((-1.0)*new_r00);
15893IkReal x1248=((1.0)*(x1250.
value));
15897j4=3.14159265358979;
15900j5=((3.14159265)+(((-1.0)*x1248)));
15901IkReal gconst15=((3.14159265358979)+(((-1.0)*x1248)));
15902IkReal gconst16=(x1247*x1249);
15903IkReal gconst17=((1.0)*new_r10*x1249);
15904IkReal x1251=new_r10*new_r10;
15905IkReal x1252=(new_r10*new_r11);
15906IkReal x1253=((((-1.0)*new_r00*new_r01))+(((-1.0)*x1252)));
15908IkReal x1255=(new_r10*x1254);
15910j3eval[1]=((
IKabs((((new_r01*x1255))+(((-1.0)*x1251*x1254)))))+(
IKabs((((new_r00*x1255))+((x1252*x1254))))));
15912if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
15916IkReal x1256=((-1.0)*new_r00);
15921IkReal x1257=((1.0)*(x1259.
value));
15925j4=3.14159265358979;
15928j5=((3.14159265)+(((-1.0)*x1257)));
15929IkReal gconst15=((3.14159265358979)+(((-1.0)*x1257)));
15930IkReal gconst16=(x1256*x1258);
15931IkReal gconst17=((1.0)*new_r10*x1258);
15932IkReal x1260=new_r10*new_r10;
15933IkReal x1261=new_r00*new_r00*new_r00;
15938IkReal x1262=x1265.
value;
15939IkReal x1263=(x1260*x1262);
15940IkReal x1264=(x1261*x1262);
15941j3eval[0]=((
IKabs((((new_r00*new_r10*x1262))+((new_r01*x1264))+((new_r00*new_r01*x1263)))))+(
IKabs((x1263+((new_r11*x1264))+((new_r00*new_r11*x1263))))));
15942if(
IKabs(j3eval[0]) < 0.0000010000000000 )
15946IkReal x1266=((-1.0)*new_r00);
15951IkReal x1267=((1.0)*(x1269.
value));
15955j4=3.14159265358979;
15958j5=((3.14159265)+(((-1.0)*x1267)));
15959IkReal gconst15=((3.14159265358979)+(((-1.0)*x1267)));
15960IkReal gconst16=(x1266*x1268);
15961IkReal gconst17=((1.0)*new_r10*x1268);
15962IkReal x1270=new_r10*new_r10;
15963IkReal x1271=new_r00*new_r00;
15968IkReal x1272=x1275.
value;
15969IkReal x1273=(new_r10*x1272);
15970IkReal x1274=(x1270*x1272);
15971j3eval[0]=((
IKabs(((((-1.0)*x1271*x1274))+x1274+(((-1.0)*x1272*(x1271*x1271))))))+(
IKabs((((new_r00*x1273))+((x1273*(new_r00*new_r00*new_r00)))+((new_r00*x1273*(new_r10*new_r10)))))));
15972if(
IKabs(j3eval[0]) < 0.0000010000000000 )
15976bool bgotonextstatement =
true;
15979evalcond[0]=((
IKabs(new_r11))+(
IKabs(new_r00)));
15980if(
IKabs(evalcond[0]) < 0.0000050000000000 )
15982bgotonextstatement=
false;
15989IkReal x1276=((1.0)*(x1277.
value));
15992j4=3.14159265358979;
15995j5=((3.14159265)+(((-1.0)*x1276)));
15998IkReal gconst15=((3.14159265358979)+(((-1.0)*x1276)));
16000IkReal x1278 = new_r10*new_r10;
16001if(
IKabs(x1278)==0){
16004IkReal gconst17=((1.0)*new_r10*(pow(x1278,-0.5)));
16006if(
IKabs(j3eval[0]) < 0.0000010000000000 )
16009IkReal j3array[2], cj3array[2], sj3array[2];
16010bool j3valid[2]={
false};
16016sj3array[0]=((-1.0)*new_r01*(x1279.
value));
16019 j3valid[0] = j3valid[1] =
true;
16020 j3array[0] =
IKasin(sj3array[0]);
16021 cj3array[0] =
IKcos(j3array[0]);
16022 sj3array[1] = sj3array[0];
16023 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
16024 cj3array[1] = -cj3array[0];
16026else if( isnan(sj3array[0]) )
16030 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
16032for(
int ij3 = 0; ij3 < 2; ++ij3)
16038_ij3[0] = ij3; _ij3[1] = -1;
16039for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
16043 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
16046j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
16049IkReal x1280=
IKcos(j3);
16050IkReal x1281=
IKsin(j3);
16051evalcond[0]=(new_r01*x1280);
16052evalcond[1]=(gconst17*x1280);
16053evalcond[2]=((-1.0)*new_r10*x1280);
16054evalcond[3]=(gconst17+((new_r01*x1281)));
16055evalcond[4]=(((new_r10*x1281))+gconst17);
16056evalcond[5]=(new_r10+((gconst17*x1281)));
16064std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
16065vinfos[0].jointtype = 1;
16066vinfos[0].foffset = j0;
16067vinfos[0].indices[0] = _ij0[0];
16068vinfos[0].indices[1] = _ij0[1];
16069vinfos[0].maxsolutions = _nj0;
16070vinfos[1].jointtype = 1;
16071vinfos[1].foffset = j1;
16072vinfos[1].indices[0] = _ij1[0];
16073vinfos[1].indices[1] = _ij1[1];
16074vinfos[1].maxsolutions = _nj1;
16075vinfos[2].jointtype = 1;
16076vinfos[2].foffset = j2;
16077vinfos[2].indices[0] = _ij2[0];
16078vinfos[2].indices[1] = _ij2[1];
16079vinfos[2].maxsolutions = _nj2;
16080vinfos[3].jointtype = 1;
16081vinfos[3].foffset = j3;
16082vinfos[3].indices[0] = _ij3[0];
16083vinfos[3].indices[1] = _ij3[1];
16084vinfos[3].maxsolutions = _nj3;
16085vinfos[4].jointtype = 1;
16086vinfos[4].foffset = j4;
16087vinfos[4].indices[0] = _ij4[0];
16088vinfos[4].indices[1] = _ij4[1];
16089vinfos[4].maxsolutions = _nj4;
16090vinfos[5].jointtype = 1;
16091vinfos[5].foffset = j5;
16092vinfos[5].indices[0] = _ij5[0];
16093vinfos[5].indices[1] = _ij5[1];
16094vinfos[5].maxsolutions = _nj5;
16095std::vector<int> vfree(0);
16104IkReal j3array[2], cj3array[2], sj3array[2];
16105bool j3valid[2]={
false};
16111sj3array[0]=((-1.0)*gconst17*(x1282.
value));
16114 j3valid[0] = j3valid[1] =
true;
16115 j3array[0] =
IKasin(sj3array[0]);
16116 cj3array[0] =
IKcos(j3array[0]);
16117 sj3array[1] = sj3array[0];
16118 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
16119 cj3array[1] = -cj3array[0];
16121else if( isnan(sj3array[0]) )
16125 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
16127for(
int ij3 = 0; ij3 < 2; ++ij3)
16133_ij3[0] = ij3; _ij3[1] = -1;
16134for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
16138 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
16141j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
16144IkReal x1283=
IKcos(j3);
16145IkReal x1284=
IKsin(j3);
16146IkReal x1285=(gconst17*x1284);
16147evalcond[0]=(new_r01*x1283);
16148evalcond[1]=(gconst17*x1283);
16149evalcond[2]=((-1.0)*new_r10*x1283);
16150evalcond[3]=(x1285+new_r01);
16151evalcond[4]=(((new_r10*x1284))+gconst17);
16152evalcond[5]=(x1285+new_r10);
16160std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
16161vinfos[0].jointtype = 1;
16162vinfos[0].foffset = j0;
16163vinfos[0].indices[0] = _ij0[0];
16164vinfos[0].indices[1] = _ij0[1];
16165vinfos[0].maxsolutions = _nj0;
16166vinfos[1].jointtype = 1;
16167vinfos[1].foffset = j1;
16168vinfos[1].indices[0] = _ij1[0];
16169vinfos[1].indices[1] = _ij1[1];
16170vinfos[1].maxsolutions = _nj1;
16171vinfos[2].jointtype = 1;
16172vinfos[2].foffset = j2;
16173vinfos[2].indices[0] = _ij2[0];
16174vinfos[2].indices[1] = _ij2[1];
16175vinfos[2].maxsolutions = _nj2;
16176vinfos[3].jointtype = 1;
16177vinfos[3].foffset = j3;
16178vinfos[3].indices[0] = _ij3[0];
16179vinfos[3].indices[1] = _ij3[1];
16180vinfos[3].maxsolutions = _nj3;
16181vinfos[4].jointtype = 1;
16182vinfos[4].foffset = j4;
16183vinfos[4].indices[0] = _ij4[0];
16184vinfos[4].indices[1] = _ij4[1];
16185vinfos[4].maxsolutions = _nj4;
16186vinfos[5].jointtype = 1;
16187vinfos[5].foffset = j5;
16188vinfos[5].indices[0] = _ij5[0];
16189vinfos[5].indices[1] = _ij5[1];
16190vinfos[5].maxsolutions = _nj5;
16191std::vector<int> vfree(0);
16203if( bgotonextstatement )
16205bool bgotonextstatement =
true;
16208evalcond[0]=((
IKabs(new_r11))+(
IKabs(new_r01)));
16209evalcond[1]=gconst17;
16210if(
IKabs(evalcond[0]) < 0.0000050000000000 &&
IKabs(evalcond[1]) < 0.0000050000000000 )
16212bgotonextstatement=
false;
16215IkReal x1286=((-1.0)*new_r00);
16220IkReal x1287=((1.0)*(x1288.
value));
16223j4=3.14159265358979;
16226j5=((3.14159265)+(((-1.0)*x1287)));
16231IkReal gconst15=((3.14159265358979)+(((-1.0)*x1287)));
16232IkReal gconst16=x1286;
16233IkReal gconst17=((1.0)*new_r10);
16236j3eval[2]=((
IKabs(((1.0)+(((-1.0)*(new_r10*new_r10))))))+(
IKabs(((1.0)*new_r00*new_r10))));
16237if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
16241IkReal x1289=((-1.0)*new_r00);
16246IkReal x1290=((1.0)*(x1291.
value));
16249j4=3.14159265358979;
16252j5=((3.14159265)+(((-1.0)*x1290)));
16257IkReal gconst15=((3.14159265358979)+(((-1.0)*x1290)));
16258IkReal gconst16=x1289;
16259IkReal gconst17=((1.0)*new_r10);
16262j3eval[2]=((
IKabs(((1.0)*new_r00*new_r10)))+(
IKabs(((-1.0)+(new_r10*new_r10)))));
16263if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
16267IkReal x1292=((-1.0)*new_r00);
16272IkReal x1293=((1.0)*(x1294.
value));
16275j4=3.14159265358979;
16278j5=((3.14159265)+(((-1.0)*x1293)));
16283IkReal gconst15=((3.14159265358979)+(((-1.0)*x1293)));
16284IkReal gconst16=x1292;
16285IkReal gconst17=((1.0)*new_r10);
16288j3eval[2]=((
IKabs(((-1.0)+(((2.0)*(new_r10*new_r10))))))+(
IKabs(((2.0)*new_r00*new_r10))));
16289if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
16296IkReal j3array[1], cj3array[1], sj3array[1];
16297bool j3valid[1]={
false};
16299IkReal x1295=((1.0)*gconst17);
16308j3array[0]=((-1.5707963267949)+(x1296.
value)+(((1.5707963267949)*(x1297.
value))));
16309sj3array[0]=
IKsin(j3array[0]);
16310cj3array[0]=
IKcos(j3array[0]);
16311if( j3array[0] >
IKPI )
16315else if( j3array[0] < -
IKPI )
16316{ j3array[0]+=
IK2PI;
16319for(
int ij3 = 0; ij3 < 1; ++ij3)
16325_ij3[0] = ij3; _ij3[1] = -1;
16326for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
16330 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
16333j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
16336IkReal x1298=
IKsin(j3);
16337IkReal x1299=
IKcos(j3);
16338IkReal x1300=(gconst17*x1298);
16339IkReal x1301=(gconst16*x1298);
16340IkReal x1302=(gconst17*x1299);
16341IkReal x1303=((1.0)*x1299);
16342IkReal x1304=(gconst16*x1303);
16343evalcond[0]=(x1300+(((-1.0)*x1304)));
16344evalcond[1]=(gconst17+((new_r10*x1298))+((new_r00*x1299)));
16345evalcond[2]=(x1301+x1302+new_r00);
16346evalcond[3]=((((-1.0)*new_r10*x1303))+gconst16+((new_r00*x1298)));
16347evalcond[4]=((((-1.0)*x1301))+(((-1.0)*x1302)));
16348evalcond[5]=(x1300+(((-1.0)*x1304))+new_r10);
16356std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
16357vinfos[0].jointtype = 1;
16358vinfos[0].foffset = j0;
16359vinfos[0].indices[0] = _ij0[0];
16360vinfos[0].indices[1] = _ij0[1];
16361vinfos[0].maxsolutions = _nj0;
16362vinfos[1].jointtype = 1;
16363vinfos[1].foffset = j1;
16364vinfos[1].indices[0] = _ij1[0];
16365vinfos[1].indices[1] = _ij1[1];
16366vinfos[1].maxsolutions = _nj1;
16367vinfos[2].jointtype = 1;
16368vinfos[2].foffset = j2;
16369vinfos[2].indices[0] = _ij2[0];
16370vinfos[2].indices[1] = _ij2[1];
16371vinfos[2].maxsolutions = _nj2;
16372vinfos[3].jointtype = 1;
16373vinfos[3].foffset = j3;
16374vinfos[3].indices[0] = _ij3[0];
16375vinfos[3].indices[1] = _ij3[1];
16376vinfos[3].maxsolutions = _nj3;
16377vinfos[4].jointtype = 1;
16378vinfos[4].foffset = j4;
16379vinfos[4].indices[0] = _ij4[0];
16380vinfos[4].indices[1] = _ij4[1];
16381vinfos[4].maxsolutions = _nj4;
16382vinfos[5].jointtype = 1;
16383vinfos[5].foffset = j5;
16384vinfos[5].indices[0] = _ij5[0];
16385vinfos[5].indices[1] = _ij5[1];
16386vinfos[5].maxsolutions = _nj5;
16387std::vector<int> vfree(0);
16400IkReal j3array[1], cj3array[1], sj3array[1];
16401bool j3valid[1]={
false};
16411j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1305.
value)))+(x1306.
value));
16412sj3array[0]=
IKsin(j3array[0]);
16413cj3array[0]=
IKcos(j3array[0]);
16414if( j3array[0] >
IKPI )
16418else if( j3array[0] < -
IKPI )
16419{ j3array[0]+=
IK2PI;
16422for(
int ij3 = 0; ij3 < 1; ++ij3)
16428_ij3[0] = ij3; _ij3[1] = -1;
16429for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
16433 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
16436j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
16439IkReal x1307=
IKsin(j3);
16440IkReal x1308=
IKcos(j3);
16441IkReal x1309=(gconst17*x1307);
16442IkReal x1310=(gconst16*x1307);
16443IkReal x1311=(gconst17*x1308);
16444IkReal x1312=((1.0)*x1308);
16445IkReal x1313=(gconst16*x1312);
16446evalcond[0]=(x1309+(((-1.0)*x1313)));
16447evalcond[1]=(gconst17+((new_r10*x1307))+((new_r00*x1308)));
16448evalcond[2]=(x1311+x1310+new_r00);
16449evalcond[3]=((((-1.0)*new_r10*x1312))+gconst16+((new_r00*x1307)));
16450evalcond[4]=((((-1.0)*x1310))+(((-1.0)*x1311)));
16451evalcond[5]=(x1309+(((-1.0)*x1313))+new_r10);
16459std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
16460vinfos[0].jointtype = 1;
16461vinfos[0].foffset = j0;
16462vinfos[0].indices[0] = _ij0[0];
16463vinfos[0].indices[1] = _ij0[1];
16464vinfos[0].maxsolutions = _nj0;
16465vinfos[1].jointtype = 1;
16466vinfos[1].foffset = j1;
16467vinfos[1].indices[0] = _ij1[0];
16468vinfos[1].indices[1] = _ij1[1];
16469vinfos[1].maxsolutions = _nj1;
16470vinfos[2].jointtype = 1;
16471vinfos[2].foffset = j2;
16472vinfos[2].indices[0] = _ij2[0];
16473vinfos[2].indices[1] = _ij2[1];
16474vinfos[2].maxsolutions = _nj2;
16475vinfos[3].jointtype = 1;
16476vinfos[3].foffset = j3;
16477vinfos[3].indices[0] = _ij3[0];
16478vinfos[3].indices[1] = _ij3[1];
16479vinfos[3].maxsolutions = _nj3;
16480vinfos[4].jointtype = 1;
16481vinfos[4].foffset = j4;
16482vinfos[4].indices[0] = _ij4[0];
16483vinfos[4].indices[1] = _ij4[1];
16484vinfos[4].maxsolutions = _nj4;
16485vinfos[5].jointtype = 1;
16486vinfos[5].foffset = j5;
16487vinfos[5].indices[0] = _ij5[0];
16488vinfos[5].indices[1] = _ij5[1];
16489vinfos[5].maxsolutions = _nj5;
16490std::vector<int> vfree(0);
16503IkReal j3array[1], cj3array[1], sj3array[1];
16504bool j3valid[1]={
false};
16514j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1314.
value)))+(x1315.
value));
16515sj3array[0]=
IKsin(j3array[0]);
16516cj3array[0]=
IKcos(j3array[0]);
16517if( j3array[0] >
IKPI )
16521else if( j3array[0] < -
IKPI )
16522{ j3array[0]+=
IK2PI;
16525for(
int ij3 = 0; ij3 < 1; ++ij3)
16531_ij3[0] = ij3; _ij3[1] = -1;
16532for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
16536 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
16539j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
16542IkReal x1316=
IKsin(j3);
16543IkReal x1317=
IKcos(j3);
16544IkReal x1318=(gconst17*x1316);
16545IkReal x1319=(gconst16*x1316);
16546IkReal x1320=(gconst17*x1317);
16547IkReal x1321=((1.0)*x1317);
16548IkReal x1322=(gconst16*x1321);
16549evalcond[0]=(x1318+(((-1.0)*x1322)));
16550evalcond[1]=(((new_r00*x1317))+gconst17+((new_r10*x1316)));
16551evalcond[2]=(x1319+x1320+new_r00);
16552evalcond[3]=(((new_r00*x1316))+(((-1.0)*new_r10*x1321))+gconst16);
16553evalcond[4]=((((-1.0)*x1319))+(((-1.0)*x1320)));
16554evalcond[5]=(x1318+(((-1.0)*x1322))+new_r10);
16562std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
16563vinfos[0].jointtype = 1;
16564vinfos[0].foffset = j0;
16565vinfos[0].indices[0] = _ij0[0];
16566vinfos[0].indices[1] = _ij0[1];
16567vinfos[0].maxsolutions = _nj0;
16568vinfos[1].jointtype = 1;
16569vinfos[1].foffset = j1;
16570vinfos[1].indices[0] = _ij1[0];
16571vinfos[1].indices[1] = _ij1[1];
16572vinfos[1].maxsolutions = _nj1;
16573vinfos[2].jointtype = 1;
16574vinfos[2].foffset = j2;
16575vinfos[2].indices[0] = _ij2[0];
16576vinfos[2].indices[1] = _ij2[1];
16577vinfos[2].maxsolutions = _nj2;
16578vinfos[3].jointtype = 1;
16579vinfos[3].foffset = j3;
16580vinfos[3].indices[0] = _ij3[0];
16581vinfos[3].indices[1] = _ij3[1];
16582vinfos[3].maxsolutions = _nj3;
16583vinfos[4].jointtype = 1;
16584vinfos[4].foffset = j4;
16585vinfos[4].indices[0] = _ij4[0];
16586vinfos[4].indices[1] = _ij4[1];
16587vinfos[4].maxsolutions = _nj4;
16588vinfos[5].jointtype = 1;
16589vinfos[5].foffset = j5;
16590vinfos[5].indices[0] = _ij5[0];
16591vinfos[5].indices[1] = _ij5[1];
16592vinfos[5].maxsolutions = _nj5;
16593std::vector<int> vfree(0);
16605if( bgotonextstatement )
16607bool bgotonextstatement =
true;
16610evalcond[0]=((
IKabs(new_r10))+(
IKabs(new_r01)));
16611if(
IKabs(evalcond[0]) < 0.0000050000000000 )
16613bgotonextstatement=
false;
16615IkReal j3array[2], cj3array[2], sj3array[2];
16616bool j3valid[2]={
false};
16622sj3array[0]=(new_r11*(x1323.
value));
16625 j3valid[0] = j3valid[1] =
true;
16626 j3array[0] =
IKasin(sj3array[0]);
16627 cj3array[0] =
IKcos(j3array[0]);
16628 sj3array[1] = sj3array[0];
16629 j3array[1] = j3array[0] > 0 ? (
IKPI-j3array[0]) : (-
IKPI-j3array[0]);
16630 cj3array[1] = -cj3array[0];
16632else if( isnan(sj3array[0]) )
16636 cj3array[0] = 1; sj3array[0] = 0; j3array[0] = 0;
16638for(
int ij3 = 0; ij3 < 2; ++ij3)
16644_ij3[0] = ij3; _ij3[1] = -1;
16645for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
16649 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
16652j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
16655IkReal x1324=
IKcos(j3);
16656IkReal x1325=
IKsin(j3);
16657IkReal x1326=((-1.0)*x1324);
16658evalcond[0]=(new_r00*x1324);
16659evalcond[1]=(new_r11*x1326);
16660evalcond[2]=(gconst16*x1326);
16661evalcond[3]=(((new_r00*x1325))+gconst16);
16662evalcond[4]=(((gconst16*x1325))+new_r00);
16663evalcond[5]=(((new_r11*x1325))+(((-1.0)*gconst16)));
16671std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
16672vinfos[0].jointtype = 1;
16673vinfos[0].foffset = j0;
16674vinfos[0].indices[0] = _ij0[0];
16675vinfos[0].indices[1] = _ij0[1];
16676vinfos[0].maxsolutions = _nj0;
16677vinfos[1].jointtype = 1;
16678vinfos[1].foffset = j1;
16679vinfos[1].indices[0] = _ij1[0];
16680vinfos[1].indices[1] = _ij1[1];
16681vinfos[1].maxsolutions = _nj1;
16682vinfos[2].jointtype = 1;
16683vinfos[2].foffset = j2;
16684vinfos[2].indices[0] = _ij2[0];
16685vinfos[2].indices[1] = _ij2[1];
16686vinfos[2].maxsolutions = _nj2;
16687vinfos[3].jointtype = 1;
16688vinfos[3].foffset = j3;
16689vinfos[3].indices[0] = _ij3[0];
16690vinfos[3].indices[1] = _ij3[1];
16691vinfos[3].maxsolutions = _nj3;
16692vinfos[4].jointtype = 1;
16693vinfos[4].foffset = j4;
16694vinfos[4].indices[0] = _ij4[0];
16695vinfos[4].indices[1] = _ij4[1];
16696vinfos[4].maxsolutions = _nj4;
16697vinfos[5].jointtype = 1;
16698vinfos[5].foffset = j5;
16699vinfos[5].indices[0] = _ij5[0];
16700vinfos[5].indices[1] = _ij5[1];
16701vinfos[5].maxsolutions = _nj5;
16702std::vector<int> vfree(0);
16710if( bgotonextstatement )
16712bool bgotonextstatement =
true;
16715evalcond[0]=((
IKabs(new_r11))+(
IKabs(new_r10)));
16716if(
IKabs(evalcond[0]) < 0.0000050000000000 )
16718bgotonextstatement=
false;
16721IkReal x1327=((-1.0)*new_r00);
16726IkReal x1328=((1.0)*(x1329.
value));
16729j4=3.14159265358979;
16732j5=((3.14159265)+(((-1.0)*x1328)));
16737IkReal gconst15=((3.14159265358979)+(((-1.0)*x1328)));
16738IkReal x1330 = ((1.0)+(((-1.0)*(new_r01*new_r01))));
16739if(
IKabs(x1330)==0){
16742IkReal gconst16=(x1327*(pow(x1330,-0.5)));
16744j3eval[0]=((
IKabs(new_r00))+(
IKabs(new_r01)));
16745if(
IKabs(j3eval[0]) < 0.0000010000000000 )
16749IkReal x1331=((-1.0)*new_r00);
16754IkReal x1332=((1.0)*(x1333.
value));
16757j4=3.14159265358979;
16760j5=((3.14159265)+(((-1.0)*x1332)));
16765IkReal gconst15=((3.14159265358979)+(((-1.0)*x1332)));
16766IkReal x1334 = ((1.0)+(((-1.0)*(new_r01*new_r01))));
16767if(
IKabs(x1334)==0){
16770IkReal gconst16=(x1331*(pow(x1334,-0.5)));
16773if(
IKabs(j3eval[0]) < 0.0000010000000000 )
16777IkReal x1335=((-1.0)*new_r00);
16782IkReal x1336=((1.0)*(x1337.
value));
16785j4=3.14159265358979;
16788j5=((3.14159265)+(((-1.0)*x1336)));
16793IkReal gconst15=((3.14159265358979)+(((-1.0)*x1336)));
16794IkReal x1338 = ((1.0)+(((-1.0)*(new_r01*new_r01))));
16795if(
IKabs(x1338)==0){
16798IkReal gconst16=(x1335*(pow(x1338,-0.5)));
16802if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 )
16809IkReal j3array[1], cj3array[1], sj3array[1];
16810bool j3valid[1]={
false};
16823sj3array[0]=
IKsin(j3array[0]);
16824cj3array[0]=
IKcos(j3array[0]);
16825if( j3array[0] >
IKPI )
16829else if( j3array[0] < -
IKPI )
16830{ j3array[0]+=
IK2PI;
16833for(
int ij3 = 0; ij3 < 1; ++ij3)
16839_ij3[0] = ij3; _ij3[1] = -1;
16840for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
16844 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
16847j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
16850IkReal x1341=
IKsin(j3);
16851IkReal x1342=
IKcos(j3);
16852IkReal x1343=((1.0)*gconst16);
16853IkReal x1344=((-1.0)*gconst16);
16854evalcond[0]=(new_r01*x1341);
16855evalcond[1]=(new_r00*x1342);
16856evalcond[2]=(x1341*x1344);
16857evalcond[3]=(x1342*x1344);
16858evalcond[4]=(gconst16+((new_r00*x1341)));
16859evalcond[5]=(((gconst16*x1341))+new_r00);
16860evalcond[6]=((((-1.0)*x1342*x1343))+new_r01);
16861evalcond[7]=((((-1.0)*x1343))+((new_r01*x1342)));
16869std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
16870vinfos[0].jointtype = 1;
16871vinfos[0].foffset = j0;
16872vinfos[0].indices[0] = _ij0[0];
16873vinfos[0].indices[1] = _ij0[1];
16874vinfos[0].maxsolutions = _nj0;
16875vinfos[1].jointtype = 1;
16876vinfos[1].foffset = j1;
16877vinfos[1].indices[0] = _ij1[0];
16878vinfos[1].indices[1] = _ij1[1];
16879vinfos[1].maxsolutions = _nj1;
16880vinfos[2].jointtype = 1;
16881vinfos[2].foffset = j2;
16882vinfos[2].indices[0] = _ij2[0];
16883vinfos[2].indices[1] = _ij2[1];
16884vinfos[2].maxsolutions = _nj2;
16885vinfos[3].jointtype = 1;
16886vinfos[3].foffset = j3;
16887vinfos[3].indices[0] = _ij3[0];
16888vinfos[3].indices[1] = _ij3[1];
16889vinfos[3].maxsolutions = _nj3;
16890vinfos[4].jointtype = 1;
16891vinfos[4].foffset = j4;
16892vinfos[4].indices[0] = _ij4[0];
16893vinfos[4].indices[1] = _ij4[1];
16894vinfos[4].maxsolutions = _nj4;
16895vinfos[5].jointtype = 1;
16896vinfos[5].foffset = j5;
16897vinfos[5].indices[0] = _ij5[0];
16898vinfos[5].indices[1] = _ij5[1];
16899vinfos[5].maxsolutions = _nj5;
16900std::vector<int> vfree(0);
16913IkReal j3array[1], cj3array[1], sj3array[1];
16914bool j3valid[1]={
false};
16927sj3array[0]=
IKsin(j3array[0]);
16928cj3array[0]=
IKcos(j3array[0]);
16929if( j3array[0] >
IKPI )
16933else if( j3array[0] < -
IKPI )
16934{ j3array[0]+=
IK2PI;
16937for(
int ij3 = 0; ij3 < 1; ++ij3)
16943_ij3[0] = ij3; _ij3[1] = -1;
16944for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
16948 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
16951j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
16954IkReal x1347=
IKsin(j3);
16955IkReal x1348=
IKcos(j3);
16956IkReal x1349=((1.0)*gconst16);
16957IkReal x1350=((-1.0)*gconst16);
16958evalcond[0]=(new_r01*x1347);
16959evalcond[1]=(new_r00*x1348);
16960evalcond[2]=(x1347*x1350);
16961evalcond[3]=(x1348*x1350);
16962evalcond[4]=(gconst16+((new_r00*x1347)));
16963evalcond[5]=(((gconst16*x1347))+new_r00);
16964evalcond[6]=((((-1.0)*x1348*x1349))+new_r01);
16965evalcond[7]=((((-1.0)*x1349))+((new_r01*x1348)));
16973std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
16974vinfos[0].jointtype = 1;
16975vinfos[0].foffset = j0;
16976vinfos[0].indices[0] = _ij0[0];
16977vinfos[0].indices[1] = _ij0[1];
16978vinfos[0].maxsolutions = _nj0;
16979vinfos[1].jointtype = 1;
16980vinfos[1].foffset = j1;
16981vinfos[1].indices[0] = _ij1[0];
16982vinfos[1].indices[1] = _ij1[1];
16983vinfos[1].maxsolutions = _nj1;
16984vinfos[2].jointtype = 1;
16985vinfos[2].foffset = j2;
16986vinfos[2].indices[0] = _ij2[0];
16987vinfos[2].indices[1] = _ij2[1];
16988vinfos[2].maxsolutions = _nj2;
16989vinfos[3].jointtype = 1;
16990vinfos[3].foffset = j3;
16991vinfos[3].indices[0] = _ij3[0];
16992vinfos[3].indices[1] = _ij3[1];
16993vinfos[3].maxsolutions = _nj3;
16994vinfos[4].jointtype = 1;
16995vinfos[4].foffset = j4;
16996vinfos[4].indices[0] = _ij4[0];
16997vinfos[4].indices[1] = _ij4[1];
16998vinfos[4].maxsolutions = _nj4;
16999vinfos[5].jointtype = 1;
17000vinfos[5].foffset = j5;
17001vinfos[5].indices[0] = _ij5[0];
17002vinfos[5].indices[1] = _ij5[1];
17003vinfos[5].maxsolutions = _nj5;
17004std::vector<int> vfree(0);
17017IkReal j3array[1], cj3array[1], sj3array[1];
17018bool j3valid[1]={
false};
17028j3array[0]=((-1.5707963267949)+(x1351.
value)+(((1.5707963267949)*(x1352.
value))));
17029sj3array[0]=
IKsin(j3array[0]);
17030cj3array[0]=
IKcos(j3array[0]);
17031if( j3array[0] >
IKPI )
17035else if( j3array[0] < -
IKPI )
17036{ j3array[0]+=
IK2PI;
17039for(
int ij3 = 0; ij3 < 1; ++ij3)
17045_ij3[0] = ij3; _ij3[1] = -1;
17046for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
17050 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
17053j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
17056IkReal x1353=
IKsin(j3);
17057IkReal x1354=
IKcos(j3);
17058IkReal x1355=((1.0)*gconst16);
17059IkReal x1356=((-1.0)*gconst16);
17060evalcond[0]=(new_r01*x1353);
17061evalcond[1]=(new_r00*x1354);
17062evalcond[2]=(x1353*x1356);
17063evalcond[3]=(x1354*x1356);
17064evalcond[4]=(gconst16+((new_r00*x1353)));
17065evalcond[5]=(new_r00+((gconst16*x1353)));
17066evalcond[6]=((((-1.0)*x1354*x1355))+new_r01);
17067evalcond[7]=((((-1.0)*x1355))+((new_r01*x1354)));
17075std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
17076vinfos[0].jointtype = 1;
17077vinfos[0].foffset = j0;
17078vinfos[0].indices[0] = _ij0[0];
17079vinfos[0].indices[1] = _ij0[1];
17080vinfos[0].maxsolutions = _nj0;
17081vinfos[1].jointtype = 1;
17082vinfos[1].foffset = j1;
17083vinfos[1].indices[0] = _ij1[0];
17084vinfos[1].indices[1] = _ij1[1];
17085vinfos[1].maxsolutions = _nj1;
17086vinfos[2].jointtype = 1;
17087vinfos[2].foffset = j2;
17088vinfos[2].indices[0] = _ij2[0];
17089vinfos[2].indices[1] = _ij2[1];
17090vinfos[2].maxsolutions = _nj2;
17091vinfos[3].jointtype = 1;
17092vinfos[3].foffset = j3;
17093vinfos[3].indices[0] = _ij3[0];
17094vinfos[3].indices[1] = _ij3[1];
17095vinfos[3].maxsolutions = _nj3;
17096vinfos[4].jointtype = 1;
17097vinfos[4].foffset = j4;
17098vinfos[4].indices[0] = _ij4[0];
17099vinfos[4].indices[1] = _ij4[1];
17100vinfos[4].maxsolutions = _nj4;
17101vinfos[5].jointtype = 1;
17102vinfos[5].foffset = j5;
17103vinfos[5].indices[0] = _ij5[0];
17104vinfos[5].indices[1] = _ij5[1];
17105vinfos[5].maxsolutions = _nj5;
17106std::vector<int> vfree(0);
17118if( bgotonextstatement )
17120bool bgotonextstatement =
true;
17123evalcond[0]=
IKabs(new_r10);
17124if(
IKabs(evalcond[0]) < 0.0000050000000000 )
17126bgotonextstatement=
false;
17129IkReal x1357=((-1.0)*new_r00);
17134IkReal x1358=((1.0)*(x1359.
value));
17137j4=3.14159265358979;
17140j5=((3.14159265)+(((-1.0)*x1358)));
17142IkReal gconst15=((3.14159265358979)+(((-1.0)*x1358)));
17143IkReal x1360 = new_r00*new_r00;
17144if(
IKabs(x1360)==0){
17147IkReal gconst16=(x1357*(pow(x1360,-0.5)));
17149j3eval[0]=((
IKabs(new_r11))+(
IKabs(new_r01)));
17150if(
IKabs(j3eval[0]) < 0.0000010000000000 )
17154IkReal x1361=((-1.0)*new_r00);
17159IkReal x1362=((1.0)*(x1363.
value));
17162j4=3.14159265358979;
17165j5=((3.14159265)+(((-1.0)*x1362)));
17167IkReal gconst15=((3.14159265358979)+(((-1.0)*x1362)));
17168IkReal x1364 = new_r00*new_r00;
17169if(
IKabs(x1364)==0){
17172IkReal gconst16=(x1361*(pow(x1364,-0.5)));
17174j3eval[0]=((
IKabs(new_r00))+(
IKabs(new_r01)));
17175if(
IKabs(j3eval[0]) < 0.0000010000000000 )
17179IkReal x1365=((-1.0)*new_r00);
17184IkReal x1366=((1.0)*(x1367.
value));
17187j4=3.14159265358979;
17190j5=((3.14159265)+(((-1.0)*x1366)));
17192IkReal gconst15=((3.14159265358979)+(((-1.0)*x1366)));
17193IkReal x1368 = new_r00*new_r00;
17194if(
IKabs(x1368)==0){
17197IkReal gconst16=(x1365*(pow(x1368,-0.5)));
17200if(
IKabs(j3eval[0]) < 0.0000010000000000 )
17207IkReal j3array[1], cj3array[1], sj3array[1];
17208bool j3valid[1]={
false};
17221sj3array[0]=
IKsin(j3array[0]);
17222cj3array[0]=
IKcos(j3array[0]);
17223if( j3array[0] >
IKPI )
17227else if( j3array[0] < -
IKPI )
17228{ j3array[0]+=
IK2PI;
17231for(
int ij3 = 0; ij3 < 1; ++ij3)
17237_ij3[0] = ij3; _ij3[1] = -1;
17238for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
17242 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
17245j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
17248IkReal x1371=
IKcos(j3);
17249IkReal x1372=
IKsin(j3);
17250IkReal x1373=((1.0)*gconst16);
17251evalcond[0]=(new_r00*x1371);
17252evalcond[1]=((-1.0)*gconst16*x1371);
17253evalcond[2]=(gconst16+((new_r00*x1372)));
17254evalcond[3]=(new_r00+((gconst16*x1372)));
17255evalcond[4]=((((-1.0)*x1371*x1373))+new_r01);
17256evalcond[5]=((((-1.0)*x1372*x1373))+new_r11);
17257evalcond[6]=(((new_r01*x1372))+(((-1.0)*new_r11*x1371)));
17258evalcond[7]=((((-1.0)*x1373))+((new_r11*x1372))+((new_r01*x1371)));
17266std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
17267vinfos[0].jointtype = 1;
17268vinfos[0].foffset = j0;
17269vinfos[0].indices[0] = _ij0[0];
17270vinfos[0].indices[1] = _ij0[1];
17271vinfos[0].maxsolutions = _nj0;
17272vinfos[1].jointtype = 1;
17273vinfos[1].foffset = j1;
17274vinfos[1].indices[0] = _ij1[0];
17275vinfos[1].indices[1] = _ij1[1];
17276vinfos[1].maxsolutions = _nj1;
17277vinfos[2].jointtype = 1;
17278vinfos[2].foffset = j2;
17279vinfos[2].indices[0] = _ij2[0];
17280vinfos[2].indices[1] = _ij2[1];
17281vinfos[2].maxsolutions = _nj2;
17282vinfos[3].jointtype = 1;
17283vinfos[3].foffset = j3;
17284vinfos[3].indices[0] = _ij3[0];
17285vinfos[3].indices[1] = _ij3[1];
17286vinfos[3].maxsolutions = _nj3;
17287vinfos[4].jointtype = 1;
17288vinfos[4].foffset = j4;
17289vinfos[4].indices[0] = _ij4[0];
17290vinfos[4].indices[1] = _ij4[1];
17291vinfos[4].maxsolutions = _nj4;
17292vinfos[5].jointtype = 1;
17293vinfos[5].foffset = j5;
17294vinfos[5].indices[0] = _ij5[0];
17295vinfos[5].indices[1] = _ij5[1];
17296vinfos[5].maxsolutions = _nj5;
17297std::vector<int> vfree(0);
17310IkReal j3array[1], cj3array[1], sj3array[1];
17311bool j3valid[1]={
false};
17321j3array[0]=((-1.5707963267949)+(x1374.
value)+(((1.5707963267949)*(x1375.
value))));
17322sj3array[0]=
IKsin(j3array[0]);
17323cj3array[0]=
IKcos(j3array[0]);
17324if( j3array[0] >
IKPI )
17328else if( j3array[0] < -
IKPI )
17329{ j3array[0]+=
IK2PI;
17332for(
int ij3 = 0; ij3 < 1; ++ij3)
17338_ij3[0] = ij3; _ij3[1] = -1;
17339for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
17343 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
17346j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
17349IkReal x1376=
IKcos(j3);
17350IkReal x1377=
IKsin(j3);
17351IkReal x1378=((1.0)*gconst16);
17352evalcond[0]=(new_r00*x1376);
17353evalcond[1]=((-1.0)*gconst16*x1376);
17354evalcond[2]=(gconst16+((new_r00*x1377)));
17355evalcond[3]=(new_r00+((gconst16*x1377)));
17356evalcond[4]=((((-1.0)*x1376*x1378))+new_r01);
17357evalcond[5]=((((-1.0)*x1377*x1378))+new_r11);
17358evalcond[6]=(((new_r01*x1377))+(((-1.0)*new_r11*x1376)));
17359evalcond[7]=((((-1.0)*x1378))+((new_r11*x1377))+((new_r01*x1376)));
17367std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
17368vinfos[0].jointtype = 1;
17369vinfos[0].foffset = j0;
17370vinfos[0].indices[0] = _ij0[0];
17371vinfos[0].indices[1] = _ij0[1];
17372vinfos[0].maxsolutions = _nj0;
17373vinfos[1].jointtype = 1;
17374vinfos[1].foffset = j1;
17375vinfos[1].indices[0] = _ij1[0];
17376vinfos[1].indices[1] = _ij1[1];
17377vinfos[1].maxsolutions = _nj1;
17378vinfos[2].jointtype = 1;
17379vinfos[2].foffset = j2;
17380vinfos[2].indices[0] = _ij2[0];
17381vinfos[2].indices[1] = _ij2[1];
17382vinfos[2].maxsolutions = _nj2;
17383vinfos[3].jointtype = 1;
17384vinfos[3].foffset = j3;
17385vinfos[3].indices[0] = _ij3[0];
17386vinfos[3].indices[1] = _ij3[1];
17387vinfos[3].maxsolutions = _nj3;
17388vinfos[4].jointtype = 1;
17389vinfos[4].foffset = j4;
17390vinfos[4].indices[0] = _ij4[0];
17391vinfos[4].indices[1] = _ij4[1];
17392vinfos[4].maxsolutions = _nj4;
17393vinfos[5].jointtype = 1;
17394vinfos[5].foffset = j5;
17395vinfos[5].indices[0] = _ij5[0];
17396vinfos[5].indices[1] = _ij5[1];
17397vinfos[5].maxsolutions = _nj5;
17398std::vector<int> vfree(0);
17411IkReal j3array[1], cj3array[1], sj3array[1];
17412bool j3valid[1]={
false};
17422j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1379.
value)))+(x1380.
value));
17423sj3array[0]=
IKsin(j3array[0]);
17424cj3array[0]=
IKcos(j3array[0]);
17425if( j3array[0] >
IKPI )
17429else if( j3array[0] < -
IKPI )
17430{ j3array[0]+=
IK2PI;
17433for(
int ij3 = 0; ij3 < 1; ++ij3)
17439_ij3[0] = ij3; _ij3[1] = -1;
17440for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
17444 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
17447j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
17450IkReal x1381=
IKcos(j3);
17451IkReal x1382=
IKsin(j3);
17452IkReal x1383=((1.0)*gconst16);
17453evalcond[0]=(new_r00*x1381);
17454evalcond[1]=((-1.0)*gconst16*x1381);
17455evalcond[2]=(gconst16+((new_r00*x1382)));
17456evalcond[3]=(((gconst16*x1382))+new_r00);
17457evalcond[4]=((((-1.0)*x1381*x1383))+new_r01);
17458evalcond[5]=((((-1.0)*x1382*x1383))+new_r11);
17459evalcond[6]=((((-1.0)*new_r11*x1381))+((new_r01*x1382)));
17460evalcond[7]=((((-1.0)*x1383))+((new_r11*x1382))+((new_r01*x1381)));
17468std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
17469vinfos[0].jointtype = 1;
17470vinfos[0].foffset = j0;
17471vinfos[0].indices[0] = _ij0[0];
17472vinfos[0].indices[1] = _ij0[1];
17473vinfos[0].maxsolutions = _nj0;
17474vinfos[1].jointtype = 1;
17475vinfos[1].foffset = j1;
17476vinfos[1].indices[0] = _ij1[0];
17477vinfos[1].indices[1] = _ij1[1];
17478vinfos[1].maxsolutions = _nj1;
17479vinfos[2].jointtype = 1;
17480vinfos[2].foffset = j2;
17481vinfos[2].indices[0] = _ij2[0];
17482vinfos[2].indices[1] = _ij2[1];
17483vinfos[2].maxsolutions = _nj2;
17484vinfos[3].jointtype = 1;
17485vinfos[3].foffset = j3;
17486vinfos[3].indices[0] = _ij3[0];
17487vinfos[3].indices[1] = _ij3[1];
17488vinfos[3].maxsolutions = _nj3;
17489vinfos[4].jointtype = 1;
17490vinfos[4].foffset = j4;
17491vinfos[4].indices[0] = _ij4[0];
17492vinfos[4].indices[1] = _ij4[1];
17493vinfos[4].maxsolutions = _nj4;
17494vinfos[5].jointtype = 1;
17495vinfos[5].foffset = j5;
17496vinfos[5].indices[0] = _ij5[0];
17497vinfos[5].indices[1] = _ij5[1];
17498vinfos[5].maxsolutions = _nj5;
17499std::vector<int> vfree(0);
17511if( bgotonextstatement )
17513bool bgotonextstatement =
true;
17518bgotonextstatement=
false;
17523if( bgotonextstatement )
17536IkReal j3array[1], cj3array[1], sj3array[1];
17537bool j3valid[1]={
false};
17539IkReal x1384=((1.0)*gconst17);
17548j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1385.
value)))+(x1386.
value));
17549sj3array[0]=
IKsin(j3array[0]);
17550cj3array[0]=
IKcos(j3array[0]);
17551if( j3array[0] >
IKPI )
17555else if( j3array[0] < -
IKPI )
17556{ j3array[0]+=
IK2PI;
17559for(
int ij3 = 0; ij3 < 1; ++ij3)
17565_ij3[0] = ij3; _ij3[1] = -1;
17566for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
17570 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
17573j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
17576IkReal x1387=
IKsin(j3);
17577IkReal x1388=
IKcos(j3);
17578IkReal x1389=((1.0)*gconst16);
17579IkReal x1390=(gconst17*x1387);
17580IkReal x1391=(gconst17*x1388);
17581IkReal x1392=((1.0)*x1388);
17582IkReal x1393=(x1388*x1389);
17583evalcond[0]=(((new_r10*x1387))+gconst17+((new_r00*x1388)));
17584evalcond[1]=(x1391+((gconst16*x1387))+new_r00);
17585evalcond[2]=(gconst16+((new_r00*x1387))+(((-1.0)*new_r10*x1392)));
17586evalcond[3]=(gconst17+((new_r01*x1387))+(((-1.0)*new_r11*x1392)));
17587evalcond[4]=(x1390+new_r01+(((-1.0)*x1393)));
17588evalcond[5]=(x1390+new_r10+(((-1.0)*x1393)));
17589evalcond[6]=((((-1.0)*x1389))+((new_r11*x1387))+((new_r01*x1388)));
17590evalcond[7]=((((-1.0)*x1391))+new_r11+(((-1.0)*x1387*x1389)));
17598std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
17599vinfos[0].jointtype = 1;
17600vinfos[0].foffset = j0;
17601vinfos[0].indices[0] = _ij0[0];
17602vinfos[0].indices[1] = _ij0[1];
17603vinfos[0].maxsolutions = _nj0;
17604vinfos[1].jointtype = 1;
17605vinfos[1].foffset = j1;
17606vinfos[1].indices[0] = _ij1[0];
17607vinfos[1].indices[1] = _ij1[1];
17608vinfos[1].maxsolutions = _nj1;
17609vinfos[2].jointtype = 1;
17610vinfos[2].foffset = j2;
17611vinfos[2].indices[0] = _ij2[0];
17612vinfos[2].indices[1] = _ij2[1];
17613vinfos[2].maxsolutions = _nj2;
17614vinfos[3].jointtype = 1;
17615vinfos[3].foffset = j3;
17616vinfos[3].indices[0] = _ij3[0];
17617vinfos[3].indices[1] = _ij3[1];
17618vinfos[3].maxsolutions = _nj3;
17619vinfos[4].jointtype = 1;
17620vinfos[4].foffset = j4;
17621vinfos[4].indices[0] = _ij4[0];
17622vinfos[4].indices[1] = _ij4[1];
17623vinfos[4].maxsolutions = _nj4;
17624vinfos[5].jointtype = 1;
17625vinfos[5].foffset = j5;
17626vinfos[5].indices[0] = _ij5[0];
17627vinfos[5].indices[1] = _ij5[1];
17628vinfos[5].maxsolutions = _nj5;
17629std::vector<int> vfree(0);
17642IkReal j3array[1], cj3array[1], sj3array[1];
17643bool j3valid[1]={
false};
17645IkReal x1394=((1.0)*gconst17);
17654j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1395.
value)))+(x1396.
value));
17655sj3array[0]=
IKsin(j3array[0]);
17656cj3array[0]=
IKcos(j3array[0]);
17657if( j3array[0] >
IKPI )
17661else if( j3array[0] < -
IKPI )
17662{ j3array[0]+=
IK2PI;
17665for(
int ij3 = 0; ij3 < 1; ++ij3)
17671_ij3[0] = ij3; _ij3[1] = -1;
17672for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
17676 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
17679j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
17682IkReal x1397=
IKsin(j3);
17683IkReal x1398=
IKcos(j3);
17684IkReal x1399=((1.0)*gconst16);
17685IkReal x1400=(gconst17*x1397);
17686IkReal x1401=(gconst17*x1398);
17687IkReal x1402=((1.0)*x1398);
17688IkReal x1403=(x1398*x1399);
17689evalcond[0]=(((new_r10*x1397))+gconst17+((new_r00*x1398)));
17690evalcond[1]=(x1401+new_r00+((gconst16*x1397)));
17691evalcond[2]=(gconst16+((new_r00*x1397))+(((-1.0)*new_r10*x1402)));
17692evalcond[3]=(gconst17+((new_r01*x1397))+(((-1.0)*new_r11*x1402)));
17693evalcond[4]=((((-1.0)*x1403))+x1400+new_r01);
17694evalcond[5]=((((-1.0)*x1403))+x1400+new_r10);
17695evalcond[6]=(((new_r11*x1397))+((new_r01*x1398))+(((-1.0)*x1399)));
17696evalcond[7]=((((-1.0)*x1401))+(((-1.0)*x1397*x1399))+new_r11);
17704std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
17705vinfos[0].jointtype = 1;
17706vinfos[0].foffset = j0;
17707vinfos[0].indices[0] = _ij0[0];
17708vinfos[0].indices[1] = _ij0[1];
17709vinfos[0].maxsolutions = _nj0;
17710vinfos[1].jointtype = 1;
17711vinfos[1].foffset = j1;
17712vinfos[1].indices[0] = _ij1[0];
17713vinfos[1].indices[1] = _ij1[1];
17714vinfos[1].maxsolutions = _nj1;
17715vinfos[2].jointtype = 1;
17716vinfos[2].foffset = j2;
17717vinfos[2].indices[0] = _ij2[0];
17718vinfos[2].indices[1] = _ij2[1];
17719vinfos[2].maxsolutions = _nj2;
17720vinfos[3].jointtype = 1;
17721vinfos[3].foffset = j3;
17722vinfos[3].indices[0] = _ij3[0];
17723vinfos[3].indices[1] = _ij3[1];
17724vinfos[3].maxsolutions = _nj3;
17725vinfos[4].jointtype = 1;
17726vinfos[4].foffset = j4;
17727vinfos[4].indices[0] = _ij4[0];
17728vinfos[4].indices[1] = _ij4[1];
17729vinfos[4].maxsolutions = _nj4;
17730vinfos[5].jointtype = 1;
17731vinfos[5].foffset = j5;
17732vinfos[5].indices[0] = _ij5[0];
17733vinfos[5].indices[1] = _ij5[1];
17734vinfos[5].maxsolutions = _nj5;
17735std::vector<int> vfree(0);
17748IkReal j3array[1], cj3array[1], sj3array[1];
17749bool j3valid[1]={
false};
17751IkReal x1404=((1.0)*new_r10);
17760j3array[0]=((-1.5707963267949)+(x1405.
value)+(((1.5707963267949)*(x1406.
value))));
17761sj3array[0]=
IKsin(j3array[0]);
17762cj3array[0]=
IKcos(j3array[0]);
17763if( j3array[0] >
IKPI )
17767else if( j3array[0] < -
IKPI )
17768{ j3array[0]+=
IK2PI;
17771for(
int ij3 = 0; ij3 < 1; ++ij3)
17777_ij3[0] = ij3; _ij3[1] = -1;
17778for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
17782 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
17785j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
17788IkReal x1407=
IKsin(j3);
17789IkReal x1408=
IKcos(j3);
17790IkReal x1409=((1.0)*gconst16);
17791IkReal x1410=(gconst17*x1407);
17792IkReal x1411=(gconst17*x1408);
17793IkReal x1412=((1.0)*x1408);
17794IkReal x1413=(x1408*x1409);
17795evalcond[0]=(gconst17+((new_r10*x1407))+((new_r00*x1408)));
17796evalcond[1]=(((gconst16*x1407))+x1411+new_r00);
17797evalcond[2]=((((-1.0)*new_r10*x1412))+gconst16+((new_r00*x1407)));
17798evalcond[3]=((((-1.0)*new_r11*x1412))+((new_r01*x1407))+gconst17);
17799evalcond[4]=((((-1.0)*x1413))+x1410+new_r01);
17800evalcond[5]=((((-1.0)*x1413))+x1410+new_r10);
17801evalcond[6]=(((new_r01*x1408))+((new_r11*x1407))+(((-1.0)*x1409)));
17802evalcond[7]=((((-1.0)*x1407*x1409))+new_r11+(((-1.0)*x1411)));
17810std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
17811vinfos[0].jointtype = 1;
17812vinfos[0].foffset = j0;
17813vinfos[0].indices[0] = _ij0[0];
17814vinfos[0].indices[1] = _ij0[1];
17815vinfos[0].maxsolutions = _nj0;
17816vinfos[1].jointtype = 1;
17817vinfos[1].foffset = j1;
17818vinfos[1].indices[0] = _ij1[0];
17819vinfos[1].indices[1] = _ij1[1];
17820vinfos[1].maxsolutions = _nj1;
17821vinfos[2].jointtype = 1;
17822vinfos[2].foffset = j2;
17823vinfos[2].indices[0] = _ij2[0];
17824vinfos[2].indices[1] = _ij2[1];
17825vinfos[2].maxsolutions = _nj2;
17826vinfos[3].jointtype = 1;
17827vinfos[3].foffset = j3;
17828vinfos[3].indices[0] = _ij3[0];
17829vinfos[3].indices[1] = _ij3[1];
17830vinfos[3].maxsolutions = _nj3;
17831vinfos[4].jointtype = 1;
17832vinfos[4].foffset = j4;
17833vinfos[4].indices[0] = _ij4[0];
17834vinfos[4].indices[1] = _ij4[1];
17835vinfos[4].maxsolutions = _nj4;
17836vinfos[5].jointtype = 1;
17837vinfos[5].foffset = j5;
17838vinfos[5].indices[0] = _ij5[0];
17839vinfos[5].indices[1] = _ij5[1];
17840vinfos[5].maxsolutions = _nj5;
17841std::vector<int> vfree(0);
17853if( bgotonextstatement )
17855bool bgotonextstatement =
true;
17858evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((-1.5707963267949)+j5)))), 6.28318530717959)));
17859if(
IKabs(evalcond[0]) < 0.0000050000000000 )
17861bgotonextstatement=
false;
17863IkReal j3array[1], cj3array[1], sj3array[1];
17864bool j3valid[1]={
false};
17868j3array[0]=
IKatan2(((-1.0)*new_r00), new_r01);
17869sj3array[0]=
IKsin(j3array[0]);
17870cj3array[0]=
IKcos(j3array[0]);
17871if( j3array[0] >
IKPI )
17875else if( j3array[0] < -
IKPI )
17876{ j3array[0]+=
IK2PI;
17879for(
int ij3 = 0; ij3 < 1; ++ij3)
17885_ij3[0] = ij3; _ij3[1] = -1;
17886for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
17890 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
17893j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
17896IkReal x1414=
IKsin(j3);
17897IkReal x1415=
IKcos(j3);
17898IkReal x1416=((1.0)*x1415);
17899evalcond[0]=(x1414+new_r00);
17900evalcond[1]=((((-1.0)*x1416))+new_r01);
17901evalcond[2]=(new_r11+(((-1.0)*x1414)));
17902evalcond[3]=((((-1.0)*x1416))+new_r10);
17903evalcond[4]=(((new_r00*x1415))+((new_r10*x1414)));
17904evalcond[5]=((((-1.0)*new_r11*x1416))+((new_r01*x1414)));
17905evalcond[6]=((-1.0)+((new_r01*x1415))+((new_r11*x1414)));
17906evalcond[7]=((1.0)+(((-1.0)*new_r10*x1416))+((new_r00*x1414)));
17914std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
17915vinfos[0].jointtype = 1;
17916vinfos[0].foffset = j0;
17917vinfos[0].indices[0] = _ij0[0];
17918vinfos[0].indices[1] = _ij0[1];
17919vinfos[0].maxsolutions = _nj0;
17920vinfos[1].jointtype = 1;
17921vinfos[1].foffset = j1;
17922vinfos[1].indices[0] = _ij1[0];
17923vinfos[1].indices[1] = _ij1[1];
17924vinfos[1].maxsolutions = _nj1;
17925vinfos[2].jointtype = 1;
17926vinfos[2].foffset = j2;
17927vinfos[2].indices[0] = _ij2[0];
17928vinfos[2].indices[1] = _ij2[1];
17929vinfos[2].maxsolutions = _nj2;
17930vinfos[3].jointtype = 1;
17931vinfos[3].foffset = j3;
17932vinfos[3].indices[0] = _ij3[0];
17933vinfos[3].indices[1] = _ij3[1];
17934vinfos[3].maxsolutions = _nj3;
17935vinfos[4].jointtype = 1;
17936vinfos[4].foffset = j4;
17937vinfos[4].indices[0] = _ij4[0];
17938vinfos[4].indices[1] = _ij4[1];
17939vinfos[4].maxsolutions = _nj4;
17940vinfos[5].jointtype = 1;
17941vinfos[5].foffset = j5;
17942vinfos[5].indices[0] = _ij5[0];
17943vinfos[5].indices[1] = _ij5[1];
17944vinfos[5].maxsolutions = _nj5;
17945std::vector<int> vfree(0);
17953if( bgotonextstatement )
17955bool bgotonextstatement =
true;
17958evalcond[0]=((-3.14159265358979)+(
IKfmod(((3.14159265358979)+(
IKabs(((1.5707963267949)+j5)))), 6.28318530717959)));
17959if(
IKabs(evalcond[0]) < 0.0000050000000000 )
17961bgotonextstatement=
false;
17963IkReal j3array[1], cj3array[1], sj3array[1];
17964bool j3valid[1]={
false};
17968j3array[0]=
IKatan2(((-1.0)*new_r11), ((-1.0)*new_r01));
17969sj3array[0]=
IKsin(j3array[0]);
17970cj3array[0]=
IKcos(j3array[0]);
17971if( j3array[0] >
IKPI )
17975else if( j3array[0] < -
IKPI )
17976{ j3array[0]+=
IK2PI;
17979for(
int ij3 = 0; ij3 < 1; ++ij3)
17985_ij3[0] = ij3; _ij3[1] = -1;
17986for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
17990 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
17993j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
17996IkReal x1417=
IKcos(j3);
17997IkReal x1418=
IKsin(j3);
17998IkReal x1419=((1.0)*x1417);
17999evalcond[0]=(x1417+new_r01);
18000evalcond[1]=(x1418+new_r11);
18001evalcond[2]=(x1417+new_r10);
18002evalcond[3]=(new_r00+(((-1.0)*x1418)));
18003evalcond[4]=(((new_r00*x1417))+((new_r10*x1418)));
18004evalcond[5]=((((-1.0)*new_r11*x1419))+((new_r01*x1418)));
18005evalcond[6]=((1.0)+((new_r01*x1417))+((new_r11*x1418)));
18006evalcond[7]=((-1.0)+(((-1.0)*new_r10*x1419))+((new_r00*x1418)));
18014std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
18015vinfos[0].jointtype = 1;
18016vinfos[0].foffset = j0;
18017vinfos[0].indices[0] = _ij0[0];
18018vinfos[0].indices[1] = _ij0[1];
18019vinfos[0].maxsolutions = _nj0;
18020vinfos[1].jointtype = 1;
18021vinfos[1].foffset = j1;
18022vinfos[1].indices[0] = _ij1[0];
18023vinfos[1].indices[1] = _ij1[1];
18024vinfos[1].maxsolutions = _nj1;
18025vinfos[2].jointtype = 1;
18026vinfos[2].foffset = j2;
18027vinfos[2].indices[0] = _ij2[0];
18028vinfos[2].indices[1] = _ij2[1];
18029vinfos[2].maxsolutions = _nj2;
18030vinfos[3].jointtype = 1;
18031vinfos[3].foffset = j3;
18032vinfos[3].indices[0] = _ij3[0];
18033vinfos[3].indices[1] = _ij3[1];
18034vinfos[3].maxsolutions = _nj3;
18035vinfos[4].jointtype = 1;
18036vinfos[4].foffset = j4;
18037vinfos[4].indices[0] = _ij4[0];
18038vinfos[4].indices[1] = _ij4[1];
18039vinfos[4].maxsolutions = _nj4;
18040vinfos[5].jointtype = 1;
18041vinfos[5].foffset = j5;
18042vinfos[5].indices[0] = _ij5[0];
18043vinfos[5].indices[1] = _ij5[1];
18044vinfos[5].maxsolutions = _nj5;
18045std::vector<int> vfree(0);
18053if( bgotonextstatement )
18055bool bgotonextstatement =
true;
18058evalcond[0]=((
IKabs(new_r11))+(
IKabs(new_r00)));
18059if(
IKabs(evalcond[0]) < 0.0000050000000000 )
18061bgotonextstatement=
false;
18066j4=3.14159265358979;
18070j3eval[1]=
IKsign(new_r10);
18072if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
18078j4=3.14159265358979;
18082j3eval[1]=
IKsign(new_r01);
18084if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
18090j4=3.14159265358979;
18095if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 )
18102IkReal j3array[1], cj3array[1], sj3array[1];
18103bool j3valid[1]={
false};
18116sj3array[0]=
IKsin(j3array[0]);
18117cj3array[0]=
IKcos(j3array[0]);
18118if( j3array[0] >
IKPI )
18122else if( j3array[0] < -
IKPI )
18123{ j3array[0]+=
IK2PI;
18126for(
int ij3 = 0; ij3 < 1; ++ij3)
18132_ij3[0] = ij3; _ij3[1] = -1;
18133for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
18137 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
18140j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
18143IkReal x1422=
IKsin(j3);
18144IkReal x1423=
IKcos(j3);
18145IkReal x1424=((1.0)*sj5);
18146IkReal x1425=(cj5*x1422);
18147IkReal x1426=(x1423*x1424);
18148evalcond[0]=(cj5+((new_r01*x1422)));
18149evalcond[1]=(cj5+((new_r10*x1422)));
18150evalcond[2]=(sj5+(((-1.0)*new_r10*x1423)));
18151evalcond[3]=(((new_r01*x1423))+(((-1.0)*x1424)));
18152evalcond[4]=(((sj5*x1422))+((cj5*x1423)));
18153evalcond[5]=(x1425+new_r01+(((-1.0)*x1426)));
18154evalcond[6]=(x1425+new_r10+(((-1.0)*x1426)));
18162std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
18163vinfos[0].jointtype = 1;
18164vinfos[0].foffset = j0;
18165vinfos[0].indices[0] = _ij0[0];
18166vinfos[0].indices[1] = _ij0[1];
18167vinfos[0].maxsolutions = _nj0;
18168vinfos[1].jointtype = 1;
18169vinfos[1].foffset = j1;
18170vinfos[1].indices[0] = _ij1[0];
18171vinfos[1].indices[1] = _ij1[1];
18172vinfos[1].maxsolutions = _nj1;
18173vinfos[2].jointtype = 1;
18174vinfos[2].foffset = j2;
18175vinfos[2].indices[0] = _ij2[0];
18176vinfos[2].indices[1] = _ij2[1];
18177vinfos[2].maxsolutions = _nj2;
18178vinfos[3].jointtype = 1;
18179vinfos[3].foffset = j3;
18180vinfos[3].indices[0] = _ij3[0];
18181vinfos[3].indices[1] = _ij3[1];
18182vinfos[3].maxsolutions = _nj3;
18183vinfos[4].jointtype = 1;
18184vinfos[4].foffset = j4;
18185vinfos[4].indices[0] = _ij4[0];
18186vinfos[4].indices[1] = _ij4[1];
18187vinfos[4].maxsolutions = _nj4;
18188vinfos[5].jointtype = 1;
18189vinfos[5].foffset = j5;
18190vinfos[5].indices[0] = _ij5[0];
18191vinfos[5].indices[1] = _ij5[1];
18192vinfos[5].maxsolutions = _nj5;
18193std::vector<int> vfree(0);
18206IkReal j3array[1], cj3array[1], sj3array[1];
18207bool j3valid[1]={
false};
18217j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1427.
value)))+(x1428.
value));
18218sj3array[0]=
IKsin(j3array[0]);
18219cj3array[0]=
IKcos(j3array[0]);
18220if( j3array[0] >
IKPI )
18224else if( j3array[0] < -
IKPI )
18225{ j3array[0]+=
IK2PI;
18228for(
int ij3 = 0; ij3 < 1; ++ij3)
18234_ij3[0] = ij3; _ij3[1] = -1;
18235for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
18239 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
18242j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
18245IkReal x1429=
IKsin(j3);
18246IkReal x1430=
IKcos(j3);
18247IkReal x1431=((1.0)*sj5);
18248IkReal x1432=(cj5*x1429);
18249IkReal x1433=(x1430*x1431);
18250evalcond[0]=(cj5+((new_r01*x1429)));
18251evalcond[1]=(cj5+((new_r10*x1429)));
18252evalcond[2]=(sj5+(((-1.0)*new_r10*x1430)));
18253evalcond[3]=(((new_r01*x1430))+(((-1.0)*x1431)));
18254evalcond[4]=(((cj5*x1430))+((sj5*x1429)));
18255evalcond[5]=((((-1.0)*x1433))+x1432+new_r01);
18256evalcond[6]=((((-1.0)*x1433))+x1432+new_r10);
18264std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
18265vinfos[0].jointtype = 1;
18266vinfos[0].foffset = j0;
18267vinfos[0].indices[0] = _ij0[0];
18268vinfos[0].indices[1] = _ij0[1];
18269vinfos[0].maxsolutions = _nj0;
18270vinfos[1].jointtype = 1;
18271vinfos[1].foffset = j1;
18272vinfos[1].indices[0] = _ij1[0];
18273vinfos[1].indices[1] = _ij1[1];
18274vinfos[1].maxsolutions = _nj1;
18275vinfos[2].jointtype = 1;
18276vinfos[2].foffset = j2;
18277vinfos[2].indices[0] = _ij2[0];
18278vinfos[2].indices[1] = _ij2[1];
18279vinfos[2].maxsolutions = _nj2;
18280vinfos[3].jointtype = 1;
18281vinfos[3].foffset = j3;
18282vinfos[3].indices[0] = _ij3[0];
18283vinfos[3].indices[1] = _ij3[1];
18284vinfos[3].maxsolutions = _nj3;
18285vinfos[4].jointtype = 1;
18286vinfos[4].foffset = j4;
18287vinfos[4].indices[0] = _ij4[0];
18288vinfos[4].indices[1] = _ij4[1];
18289vinfos[4].maxsolutions = _nj4;
18290vinfos[5].jointtype = 1;
18291vinfos[5].foffset = j5;
18292vinfos[5].indices[0] = _ij5[0];
18293vinfos[5].indices[1] = _ij5[1];
18294vinfos[5].maxsolutions = _nj5;
18295std::vector<int> vfree(0);
18308IkReal j3array[1], cj3array[1], sj3array[1];
18309bool j3valid[1]={
false};
18319j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1434.
value)))+(x1435.
value));
18320sj3array[0]=
IKsin(j3array[0]);
18321cj3array[0]=
IKcos(j3array[0]);
18322if( j3array[0] >
IKPI )
18326else if( j3array[0] < -
IKPI )
18327{ j3array[0]+=
IK2PI;
18330for(
int ij3 = 0; ij3 < 1; ++ij3)
18336_ij3[0] = ij3; _ij3[1] = -1;
18337for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
18341 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
18344j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
18347IkReal x1436=
IKsin(j3);
18348IkReal x1437=
IKcos(j3);
18349IkReal x1438=((1.0)*sj5);
18350IkReal x1439=(cj5*x1436);
18351IkReal x1440=(x1437*x1438);
18352evalcond[0]=(cj5+((new_r01*x1436)));
18353evalcond[1]=(cj5+((new_r10*x1436)));
18354evalcond[2]=(sj5+(((-1.0)*new_r10*x1437)));
18355evalcond[3]=(((new_r01*x1437))+(((-1.0)*x1438)));
18356evalcond[4]=(((sj5*x1436))+((cj5*x1437)));
18357evalcond[5]=(x1439+(((-1.0)*x1440))+new_r01);
18358evalcond[6]=(x1439+(((-1.0)*x1440))+new_r10);
18366std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
18367vinfos[0].jointtype = 1;
18368vinfos[0].foffset = j0;
18369vinfos[0].indices[0] = _ij0[0];
18370vinfos[0].indices[1] = _ij0[1];
18371vinfos[0].maxsolutions = _nj0;
18372vinfos[1].jointtype = 1;
18373vinfos[1].foffset = j1;
18374vinfos[1].indices[0] = _ij1[0];
18375vinfos[1].indices[1] = _ij1[1];
18376vinfos[1].maxsolutions = _nj1;
18377vinfos[2].jointtype = 1;
18378vinfos[2].foffset = j2;
18379vinfos[2].indices[0] = _ij2[0];
18380vinfos[2].indices[1] = _ij2[1];
18381vinfos[2].maxsolutions = _nj2;
18382vinfos[3].jointtype = 1;
18383vinfos[3].foffset = j3;
18384vinfos[3].indices[0] = _ij3[0];
18385vinfos[3].indices[1] = _ij3[1];
18386vinfos[3].maxsolutions = _nj3;
18387vinfos[4].jointtype = 1;
18388vinfos[4].foffset = j4;
18389vinfos[4].indices[0] = _ij4[0];
18390vinfos[4].indices[1] = _ij4[1];
18391vinfos[4].maxsolutions = _nj4;
18392vinfos[5].jointtype = 1;
18393vinfos[5].foffset = j5;
18394vinfos[5].indices[0] = _ij5[0];
18395vinfos[5].indices[1] = _ij5[1];
18396vinfos[5].maxsolutions = _nj5;
18397std::vector<int> vfree(0);
18409if( bgotonextstatement )
18411bool bgotonextstatement =
true;
18414evalcond[0]=((
IKabs(new_r11))+(
IKabs(new_r01)));
18415if(
IKabs(evalcond[0]) < 0.0000050000000000 )
18417bgotonextstatement=
false;
18422j4=3.14159265358979;
18427j3eval[0]=((
IKabs(new_r10))+(
IKabs(new_r00)));
18428if(
IKabs(j3eval[0]) < 0.0000010000000000 )
18435IkReal j3array[2], cj3array[2], sj3array[2];
18436bool j3valid[2]={
false};
18442IkReal x1441=x1442.
value;
18443j3array[0]=((-1.0)*x1441);
18444sj3array[0]=
IKsin(j3array[0]);
18445cj3array[0]=
IKcos(j3array[0]);
18446j3array[1]=((3.14159265358979)+(((-1.0)*x1441)));
18447sj3array[1]=
IKsin(j3array[1]);
18448cj3array[1]=
IKcos(j3array[1]);
18449if( j3array[0] >
IKPI )
18453else if( j3array[0] < -
IKPI )
18454{ j3array[0]+=
IK2PI;
18457if( j3array[1] >
IKPI )
18461else if( j3array[1] < -
IKPI )
18462{ j3array[1]+=
IK2PI;
18465for(
int ij3 = 0; ij3 < 2; ++ij3)
18471_ij3[0] = ij3; _ij3[1] = -1;
18472for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
18476 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
18479j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
18482evalcond[0]=(((new_r00*(
IKsin(j3))))+(((-1.0)*new_r10*(
IKcos(j3)))));
18490std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
18491vinfos[0].jointtype = 1;
18492vinfos[0].foffset = j0;
18493vinfos[0].indices[0] = _ij0[0];
18494vinfos[0].indices[1] = _ij0[1];
18495vinfos[0].maxsolutions = _nj0;
18496vinfos[1].jointtype = 1;
18497vinfos[1].foffset = j1;
18498vinfos[1].indices[0] = _ij1[0];
18499vinfos[1].indices[1] = _ij1[1];
18500vinfos[1].maxsolutions = _nj1;
18501vinfos[2].jointtype = 1;
18502vinfos[2].foffset = j2;
18503vinfos[2].indices[0] = _ij2[0];
18504vinfos[2].indices[1] = _ij2[1];
18505vinfos[2].maxsolutions = _nj2;
18506vinfos[3].jointtype = 1;
18507vinfos[3].foffset = j3;
18508vinfos[3].indices[0] = _ij3[0];
18509vinfos[3].indices[1] = _ij3[1];
18510vinfos[3].maxsolutions = _nj3;
18511vinfos[4].jointtype = 1;
18512vinfos[4].foffset = j4;
18513vinfos[4].indices[0] = _ij4[0];
18514vinfos[4].indices[1] = _ij4[1];
18515vinfos[4].maxsolutions = _nj4;
18516vinfos[5].jointtype = 1;
18517vinfos[5].foffset = j5;
18518vinfos[5].indices[0] = _ij5[0];
18519vinfos[5].indices[1] = _ij5[1];
18520vinfos[5].maxsolutions = _nj5;
18521std::vector<int> vfree(0);
18533if( bgotonextstatement )
18535bool bgotonextstatement =
true;
18538evalcond[0]=((
IKabs(new_r10))+(
IKabs(new_r00)));
18539if(
IKabs(evalcond[0]) < 0.0000050000000000 )
18541bgotonextstatement=
false;
18546j4=3.14159265358979;
18551j3eval[0]=((
IKabs(new_r11))+(
IKabs(new_r01)));
18552if(
IKabs(j3eval[0]) < 0.0000010000000000 )
18559IkReal j3array[2], cj3array[2], sj3array[2];
18560bool j3valid[2]={
false};
18566IkReal x1443=x1444.
value;
18567j3array[0]=((-1.0)*x1443);
18568sj3array[0]=
IKsin(j3array[0]);
18569cj3array[0]=
IKcos(j3array[0]);
18570j3array[1]=((3.14159265358979)+(((-1.0)*x1443)));
18571sj3array[1]=
IKsin(j3array[1]);
18572cj3array[1]=
IKcos(j3array[1]);
18573if( j3array[0] >
IKPI )
18577else if( j3array[0] < -
IKPI )
18578{ j3array[0]+=
IK2PI;
18581if( j3array[1] >
IKPI )
18585else if( j3array[1] < -
IKPI )
18586{ j3array[1]+=
IK2PI;
18589for(
int ij3 = 0; ij3 < 2; ++ij3)
18595_ij3[0] = ij3; _ij3[1] = -1;
18596for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
18600 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
18603j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
18606evalcond[0]=(((new_r01*(
IKsin(j3))))+(((-1.0)*new_r11*(
IKcos(j3)))));
18614std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
18615vinfos[0].jointtype = 1;
18616vinfos[0].foffset = j0;
18617vinfos[0].indices[0] = _ij0[0];
18618vinfos[0].indices[1] = _ij0[1];
18619vinfos[0].maxsolutions = _nj0;
18620vinfos[1].jointtype = 1;
18621vinfos[1].foffset = j1;
18622vinfos[1].indices[0] = _ij1[0];
18623vinfos[1].indices[1] = _ij1[1];
18624vinfos[1].maxsolutions = _nj1;
18625vinfos[2].jointtype = 1;
18626vinfos[2].foffset = j2;
18627vinfos[2].indices[0] = _ij2[0];
18628vinfos[2].indices[1] = _ij2[1];
18629vinfos[2].maxsolutions = _nj2;
18630vinfos[3].jointtype = 1;
18631vinfos[3].foffset = j3;
18632vinfos[3].indices[0] = _ij3[0];
18633vinfos[3].indices[1] = _ij3[1];
18634vinfos[3].maxsolutions = _nj3;
18635vinfos[4].jointtype = 1;
18636vinfos[4].foffset = j4;
18637vinfos[4].indices[0] = _ij4[0];
18638vinfos[4].indices[1] = _ij4[1];
18639vinfos[4].maxsolutions = _nj4;
18640vinfos[5].jointtype = 1;
18641vinfos[5].foffset = j5;
18642vinfos[5].indices[0] = _ij5[0];
18643vinfos[5].indices[1] = _ij5[1];
18644vinfos[5].maxsolutions = _nj5;
18645std::vector<int> vfree(0);
18657if( bgotonextstatement )
18659bool bgotonextstatement =
true;
18662evalcond[0]=((
IKabs(new_r10))+(
IKabs(new_r01)));
18663if(
IKabs(evalcond[0]) < 0.0000050000000000 )
18665bgotonextstatement=
false;
18670j4=3.14159265358979;
18674j3eval[1]=
IKsign(new_r00);
18676if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 ||
IKabs(j3eval[2]) < 0.0000010000000000 )
18682j4=3.14159265358979;
18687if(
IKabs(j3eval[0]) < 0.0000010000000000 ||
IKabs(j3eval[1]) < 0.0000010000000000 )
18694IkReal j3array[1], cj3array[1], sj3array[1];
18695bool j3valid[1]={
false};
18708sj3array[0]=
IKsin(j3array[0]);
18709cj3array[0]=
IKcos(j3array[0]);
18710if( j3array[0] >
IKPI )
18714else if( j3array[0] < -
IKPI )
18715{ j3array[0]+=
IK2PI;
18718for(
int ij3 = 0; ij3 < 1; ++ij3)
18724_ij3[0] = ij3; _ij3[1] = -1;
18725for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
18729 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
18732j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
18735IkReal x1447=
IKcos(j3);
18736IkReal x1448=
IKsin(j3);
18737IkReal x1449=((1.0)*sj5);
18738IkReal x1450=(cj5*x1447);
18739IkReal x1451=((1.0)*x1447);
18740evalcond[0]=(sj5+((new_r00*x1448)));
18741evalcond[1]=(cj5+((new_r00*x1447)));
18742evalcond[2]=(cj5+(((-1.0)*new_r11*x1451)));
18743evalcond[3]=(((new_r11*x1448))+(((-1.0)*x1449)));
18744evalcond[4]=((((-1.0)*x1447*x1449))+((cj5*x1448)));
18745evalcond[5]=(((sj5*x1448))+x1450+new_r00);
18746evalcond[6]=((((-1.0)*x1450))+new_r11+(((-1.0)*x1448*x1449)));
18754std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
18755vinfos[0].jointtype = 1;
18756vinfos[0].foffset = j0;
18757vinfos[0].indices[0] = _ij0[0];
18758vinfos[0].indices[1] = _ij0[1];
18759vinfos[0].maxsolutions = _nj0;
18760vinfos[1].jointtype = 1;
18761vinfos[1].foffset = j1;
18762vinfos[1].indices[0] = _ij1[0];
18763vinfos[1].indices[1] = _ij1[1];
18764vinfos[1].maxsolutions = _nj1;
18765vinfos[2].jointtype = 1;
18766vinfos[2].foffset = j2;
18767vinfos[2].indices[0] = _ij2[0];
18768vinfos[2].indices[1] = _ij2[1];
18769vinfos[2].maxsolutions = _nj2;
18770vinfos[3].jointtype = 1;
18771vinfos[3].foffset = j3;
18772vinfos[3].indices[0] = _ij3[0];
18773vinfos[3].indices[1] = _ij3[1];
18774vinfos[3].maxsolutions = _nj3;
18775vinfos[4].jointtype = 1;
18776vinfos[4].foffset = j4;
18777vinfos[4].indices[0] = _ij4[0];
18778vinfos[4].indices[1] = _ij4[1];
18779vinfos[4].maxsolutions = _nj4;
18780vinfos[5].jointtype = 1;
18781vinfos[5].foffset = j5;
18782vinfos[5].indices[0] = _ij5[0];
18783vinfos[5].indices[1] = _ij5[1];
18784vinfos[5].maxsolutions = _nj5;
18785std::vector<int> vfree(0);
18798IkReal j3array[1], cj3array[1], sj3array[1];
18799bool j3valid[1]={
false};
18809j3array[0]=((-1.5707963267949)+(x1452.
value)+(((1.5707963267949)*(x1453.
value))));
18810sj3array[0]=
IKsin(j3array[0]);
18811cj3array[0]=
IKcos(j3array[0]);
18812if( j3array[0] >
IKPI )
18816else if( j3array[0] < -
IKPI )
18817{ j3array[0]+=
IK2PI;
18820for(
int ij3 = 0; ij3 < 1; ++ij3)
18826_ij3[0] = ij3; _ij3[1] = -1;
18827for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
18831 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
18834j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
18837IkReal x1454=
IKcos(j3);
18838IkReal x1455=
IKsin(j3);
18839IkReal x1456=((1.0)*sj5);
18840IkReal x1457=(cj5*x1454);
18841IkReal x1458=((1.0)*x1454);
18842evalcond[0]=(sj5+((new_r00*x1455)));
18843evalcond[1]=(cj5+((new_r00*x1454)));
18844evalcond[2]=(cj5+(((-1.0)*new_r11*x1458)));
18845evalcond[3]=((((-1.0)*x1456))+((new_r11*x1455)));
18846evalcond[4]=(((cj5*x1455))+(((-1.0)*x1454*x1456)));
18847evalcond[5]=(((sj5*x1455))+x1457+new_r00);
18848evalcond[6]=((((-1.0)*x1457))+(((-1.0)*x1455*x1456))+new_r11);
18856std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
18857vinfos[0].jointtype = 1;
18858vinfos[0].foffset = j0;
18859vinfos[0].indices[0] = _ij0[0];
18860vinfos[0].indices[1] = _ij0[1];
18861vinfos[0].maxsolutions = _nj0;
18862vinfos[1].jointtype = 1;
18863vinfos[1].foffset = j1;
18864vinfos[1].indices[0] = _ij1[0];
18865vinfos[1].indices[1] = _ij1[1];
18866vinfos[1].maxsolutions = _nj1;
18867vinfos[2].jointtype = 1;
18868vinfos[2].foffset = j2;
18869vinfos[2].indices[0] = _ij2[0];
18870vinfos[2].indices[1] = _ij2[1];
18871vinfos[2].maxsolutions = _nj2;
18872vinfos[3].jointtype = 1;
18873vinfos[3].foffset = j3;
18874vinfos[3].indices[0] = _ij3[0];
18875vinfos[3].indices[1] = _ij3[1];
18876vinfos[3].maxsolutions = _nj3;
18877vinfos[4].jointtype = 1;
18878vinfos[4].foffset = j4;
18879vinfos[4].indices[0] = _ij4[0];
18880vinfos[4].indices[1] = _ij4[1];
18881vinfos[4].maxsolutions = _nj4;
18882vinfos[5].jointtype = 1;
18883vinfos[5].foffset = j5;
18884vinfos[5].indices[0] = _ij5[0];
18885vinfos[5].indices[1] = _ij5[1];
18886vinfos[5].maxsolutions = _nj5;
18887std::vector<int> vfree(0);
18899if( bgotonextstatement )
18901bool bgotonextstatement =
true;
18906bgotonextstatement=
false;
18911if( bgotonextstatement )
18929IkReal j3array[1], cj3array[1], sj3array[1];
18930bool j3valid[1]={
false};
18932IkReal x1459=((1.0)*new_r00);
18941j3array[0]=((-1.5707963267949)+(x1460.
value)+(((1.5707963267949)*(x1461.
value))));
18942sj3array[0]=
IKsin(j3array[0]);
18943cj3array[0]=
IKcos(j3array[0]);
18944if( j3array[0] >
IKPI )
18948else if( j3array[0] < -
IKPI )
18949{ j3array[0]+=
IK2PI;
18952for(
int ij3 = 0; ij3 < 1; ++ij3)
18958_ij3[0] = ij3; _ij3[1] = -1;
18959for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
18963 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
18966j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
18969IkReal x1462=
IKsin(j3);
18970IkReal x1463=
IKcos(j3);
18971IkReal x1464=((1.0)*sj5);
18972IkReal x1465=(cj5*x1462);
18973IkReal x1466=((1.0)*x1463);
18974IkReal x1467=(x1463*x1464);
18975evalcond[0]=(((new_r00*x1463))+cj5+((new_r10*x1462)));
18976evalcond[1]=(((cj5*x1463))+new_r00+((sj5*x1462)));
18977evalcond[2]=((((-1.0)*new_r10*x1466))+((new_r00*x1462))+sj5);
18978evalcond[3]=(((new_r01*x1462))+cj5+(((-1.0)*new_r11*x1466)));
18979evalcond[4]=((((-1.0)*x1467))+x1465+new_r01);
18980evalcond[5]=((((-1.0)*x1467))+x1465+new_r10);
18981evalcond[6]=(((new_r01*x1463))+(((-1.0)*x1464))+((new_r11*x1462)));
18982evalcond[7]=((((-1.0)*cj5*x1466))+(((-1.0)*x1462*x1464))+new_r11);
18990std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
18991vinfos[0].jointtype = 1;
18992vinfos[0].foffset = j0;
18993vinfos[0].indices[0] = _ij0[0];
18994vinfos[0].indices[1] = _ij0[1];
18995vinfos[0].maxsolutions = _nj0;
18996vinfos[1].jointtype = 1;
18997vinfos[1].foffset = j1;
18998vinfos[1].indices[0] = _ij1[0];
18999vinfos[1].indices[1] = _ij1[1];
19000vinfos[1].maxsolutions = _nj1;
19001vinfos[2].jointtype = 1;
19002vinfos[2].foffset = j2;
19003vinfos[2].indices[0] = _ij2[0];
19004vinfos[2].indices[1] = _ij2[1];
19005vinfos[2].maxsolutions = _nj2;
19006vinfos[3].jointtype = 1;
19007vinfos[3].foffset = j3;
19008vinfos[3].indices[0] = _ij3[0];
19009vinfos[3].indices[1] = _ij3[1];
19010vinfos[3].maxsolutions = _nj3;
19011vinfos[4].jointtype = 1;
19012vinfos[4].foffset = j4;
19013vinfos[4].indices[0] = _ij4[0];
19014vinfos[4].indices[1] = _ij4[1];
19015vinfos[4].maxsolutions = _nj4;
19016vinfos[5].jointtype = 1;
19017vinfos[5].foffset = j5;
19018vinfos[5].indices[0] = _ij5[0];
19019vinfos[5].indices[1] = _ij5[1];
19020vinfos[5].maxsolutions = _nj5;
19021std::vector<int> vfree(0);
19034IkReal j3array[1], cj3array[1], sj3array[1];
19035bool j3valid[1]={
false};
19037IkReal x1468=((1.0)*new_r10);
19046j3array[0]=((-1.5707963267949)+(x1469.
value)+(((1.5707963267949)*(x1470.
value))));
19047sj3array[0]=
IKsin(j3array[0]);
19048cj3array[0]=
IKcos(j3array[0]);
19049if( j3array[0] >
IKPI )
19053else if( j3array[0] < -
IKPI )
19054{ j3array[0]+=
IK2PI;
19057for(
int ij3 = 0; ij3 < 1; ++ij3)
19063_ij3[0] = ij3; _ij3[1] = -1;
19064for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
19068 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
19071j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
19074IkReal x1471=
IKsin(j3);
19075IkReal x1472=
IKcos(j3);
19076IkReal x1473=((1.0)*sj5);
19077IkReal x1474=(cj5*x1471);
19078IkReal x1475=((1.0)*x1472);
19079IkReal x1476=(x1472*x1473);
19080evalcond[0]=(((new_r10*x1471))+cj5+((new_r00*x1472)));
19081evalcond[1]=(((cj5*x1472))+((sj5*x1471))+new_r00);
19082evalcond[2]=(sj5+((new_r00*x1471))+(((-1.0)*new_r10*x1475)));
19083evalcond[3]=(cj5+(((-1.0)*new_r11*x1475))+((new_r01*x1471)));
19084evalcond[4]=(x1474+(((-1.0)*x1476))+new_r01);
19085evalcond[5]=(x1474+(((-1.0)*x1476))+new_r10);
19086evalcond[6]=(((new_r11*x1471))+((new_r01*x1472))+(((-1.0)*x1473)));
19087evalcond[7]=((((-1.0)*x1471*x1473))+(((-1.0)*cj5*x1475))+new_r11);
19095std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
19096vinfos[0].jointtype = 1;
19097vinfos[0].foffset = j0;
19098vinfos[0].indices[0] = _ij0[0];
19099vinfos[0].indices[1] = _ij0[1];
19100vinfos[0].maxsolutions = _nj0;
19101vinfos[1].jointtype = 1;
19102vinfos[1].foffset = j1;
19103vinfos[1].indices[0] = _ij1[0];
19104vinfos[1].indices[1] = _ij1[1];
19105vinfos[1].maxsolutions = _nj1;
19106vinfos[2].jointtype = 1;
19107vinfos[2].foffset = j2;
19108vinfos[2].indices[0] = _ij2[0];
19109vinfos[2].indices[1] = _ij2[1];
19110vinfos[2].maxsolutions = _nj2;
19111vinfos[3].jointtype = 1;
19112vinfos[3].foffset = j3;
19113vinfos[3].indices[0] = _ij3[0];
19114vinfos[3].indices[1] = _ij3[1];
19115vinfos[3].maxsolutions = _nj3;
19116vinfos[4].jointtype = 1;
19117vinfos[4].foffset = j4;
19118vinfos[4].indices[0] = _ij4[0];
19119vinfos[4].indices[1] = _ij4[1];
19120vinfos[4].maxsolutions = _nj4;
19121vinfos[5].jointtype = 1;
19122vinfos[5].foffset = j5;
19123vinfos[5].indices[0] = _ij5[0];
19124vinfos[5].indices[1] = _ij5[1];
19125vinfos[5].maxsolutions = _nj5;
19126std::vector<int> vfree(0);
19139IkReal j3array[1], cj3array[1], sj3array[1];
19140bool j3valid[1]={
false};
19142IkReal x1477=((1.0)*new_r10);
19151j3array[0]=((-1.5707963267949)+(x1478.
value)+(((1.5707963267949)*(x1479.
value))));
19152sj3array[0]=
IKsin(j3array[0]);
19153cj3array[0]=
IKcos(j3array[0]);
19154if( j3array[0] >
IKPI )
19158else if( j3array[0] < -
IKPI )
19159{ j3array[0]+=
IK2PI;
19162for(
int ij3 = 0; ij3 < 1; ++ij3)
19168_ij3[0] = ij3; _ij3[1] = -1;
19169for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
19173 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
19176j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
19179IkReal x1480=
IKsin(j3);
19180IkReal x1481=
IKcos(j3);
19181IkReal x1482=((1.0)*sj5);
19182IkReal x1483=(cj5*x1480);
19183IkReal x1484=((1.0)*x1481);
19184IkReal x1485=(x1481*x1482);
19185evalcond[0]=(cj5+((new_r00*x1481))+((new_r10*x1480)));
19186evalcond[1]=(((cj5*x1481))+new_r00+((sj5*x1480)));
19187evalcond[2]=(sj5+(((-1.0)*new_r10*x1484))+((new_r00*x1480)));
19188evalcond[3]=(cj5+(((-1.0)*new_r11*x1484))+((new_r01*x1480)));
19189evalcond[4]=((((-1.0)*x1485))+x1483+new_r01);
19190evalcond[5]=((((-1.0)*x1485))+x1483+new_r10);
19191evalcond[6]=((((-1.0)*x1482))+((new_r11*x1480))+((new_r01*x1481)));
19192evalcond[7]=((((-1.0)*x1480*x1482))+new_r11+(((-1.0)*cj5*x1484)));
19200std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
19201vinfos[0].jointtype = 1;
19202vinfos[0].foffset = j0;
19203vinfos[0].indices[0] = _ij0[0];
19204vinfos[0].indices[1] = _ij0[1];
19205vinfos[0].maxsolutions = _nj0;
19206vinfos[1].jointtype = 1;
19207vinfos[1].foffset = j1;
19208vinfos[1].indices[0] = _ij1[0];
19209vinfos[1].indices[1] = _ij1[1];
19210vinfos[1].maxsolutions = _nj1;
19211vinfos[2].jointtype = 1;
19212vinfos[2].foffset = j2;
19213vinfos[2].indices[0] = _ij2[0];
19214vinfos[2].indices[1] = _ij2[1];
19215vinfos[2].maxsolutions = _nj2;
19216vinfos[3].jointtype = 1;
19217vinfos[3].foffset = j3;
19218vinfos[3].indices[0] = _ij3[0];
19219vinfos[3].indices[1] = _ij3[1];
19220vinfos[3].maxsolutions = _nj3;
19221vinfos[4].jointtype = 1;
19222vinfos[4].foffset = j4;
19223vinfos[4].indices[0] = _ij4[0];
19224vinfos[4].indices[1] = _ij4[1];
19225vinfos[4].maxsolutions = _nj4;
19226vinfos[5].jointtype = 1;
19227vinfos[5].foffset = j5;
19228vinfos[5].indices[0] = _ij5[0];
19229vinfos[5].indices[1] = _ij5[1];
19230vinfos[5].maxsolutions = _nj5;
19231std::vector<int> vfree(0);
19243if( bgotonextstatement )
19245bool bgotonextstatement =
true;
19248evalcond[0]=((
IKabs(new_r12))+(
IKabs(new_r02)));
19249if(
IKabs(evalcond[0]) < 0.0000050000000000 )
19251bgotonextstatement=
false;
19258j3eval[0]=((
IKabs(new_r11))+(
IKabs(new_r01)));
19259if(
IKabs(j3eval[0]) < 0.0000010000000000 )
19267j3eval[0]=((
IKabs(new_r10))+(
IKabs(new_r00)));
19268if(
IKabs(j3eval[0]) < 0.0000010000000000 )
19276j3eval[0]=((
IKabs((new_r10*new_r22)))+(
IKabs((new_r00*new_r22))));
19277if(
IKabs(j3eval[0]) < 0.0000010000000000 )
19284IkReal j3array[2], cj3array[2], sj3array[2];
19285bool j3valid[2]={
false};
19287IkReal x1486=((-1.0)*new_r22);
19292IkReal x1487=x1488.
value;
19293j3array[0]=((-1.0)*x1487);
19294sj3array[0]=
IKsin(j3array[0]);
19295cj3array[0]=
IKcos(j3array[0]);
19296j3array[1]=((3.14159265358979)+(((-1.0)*x1487)));
19297sj3array[1]=
IKsin(j3array[1]);
19298cj3array[1]=
IKcos(j3array[1]);
19299if( j3array[0] >
IKPI )
19303else if( j3array[0] < -
IKPI )
19304{ j3array[0]+=
IK2PI;
19307if( j3array[1] >
IKPI )
19311else if( j3array[1] < -
IKPI )
19312{ j3array[1]+=
IK2PI;
19315for(
int ij3 = 0; ij3 < 2; ++ij3)
19321_ij3[0] = ij3; _ij3[1] = -1;
19322for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
19326 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
19329j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
19332IkReal x1489=
IKsin(j3);
19333IkReal x1490=
IKcos(j3);
19334IkReal x1491=((1.0)*new_r11);
19335IkReal x1492=(new_r01*x1490);
19336evalcond[0]=(((new_r11*x1489))+x1492);
19337evalcond[1]=(((new_r00*x1490))+((new_r10*x1489)));
19338evalcond[2]=(((new_r00*x1489))+(((-1.0)*new_r10*x1490)));
19339evalcond[3]=(((new_r01*x1489))+(((-1.0)*x1490*x1491)));
19340evalcond[4]=((((-1.0)*new_r22*x1492))+(((-1.0)*new_r22*x1489*x1491)));
19348std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
19349vinfos[0].jointtype = 1;
19350vinfos[0].foffset = j0;
19351vinfos[0].indices[0] = _ij0[0];
19352vinfos[0].indices[1] = _ij0[1];
19353vinfos[0].maxsolutions = _nj0;
19354vinfos[1].jointtype = 1;
19355vinfos[1].foffset = j1;
19356vinfos[1].indices[0] = _ij1[0];
19357vinfos[1].indices[1] = _ij1[1];
19358vinfos[1].maxsolutions = _nj1;
19359vinfos[2].jointtype = 1;
19360vinfos[2].foffset = j2;
19361vinfos[2].indices[0] = _ij2[0];
19362vinfos[2].indices[1] = _ij2[1];
19363vinfos[2].maxsolutions = _nj2;
19364vinfos[3].jointtype = 1;
19365vinfos[3].foffset = j3;
19366vinfos[3].indices[0] = _ij3[0];
19367vinfos[3].indices[1] = _ij3[1];
19368vinfos[3].maxsolutions = _nj3;
19369vinfos[4].jointtype = 1;
19370vinfos[4].foffset = j4;
19371vinfos[4].indices[0] = _ij4[0];
19372vinfos[4].indices[1] = _ij4[1];
19373vinfos[4].maxsolutions = _nj4;
19374vinfos[5].jointtype = 1;
19375vinfos[5].foffset = j5;
19376vinfos[5].indices[0] = _ij5[0];
19377vinfos[5].indices[1] = _ij5[1];
19378vinfos[5].maxsolutions = _nj5;
19379std::vector<int> vfree(0);
19392IkReal j3array[2], cj3array[2], sj3array[2];
19393bool j3valid[2]={
false};
19399IkReal x1493=x1494.
value;
19400j3array[0]=((-1.0)*x1493);
19401sj3array[0]=
IKsin(j3array[0]);
19402cj3array[0]=
IKcos(j3array[0]);
19403j3array[1]=((3.14159265358979)+(((-1.0)*x1493)));
19404sj3array[1]=
IKsin(j3array[1]);
19405cj3array[1]=
IKcos(j3array[1]);
19406if( j3array[0] >
IKPI )
19410else if( j3array[0] < -
IKPI )
19411{ j3array[0]+=
IK2PI;
19414if( j3array[1] >
IKPI )
19418else if( j3array[1] < -
IKPI )
19419{ j3array[1]+=
IK2PI;
19422for(
int ij3 = 0; ij3 < 2; ++ij3)
19428_ij3[0] = ij3; _ij3[1] = -1;
19429for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
19433 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
19436j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
19439IkReal x1495=
IKsin(j3);
19440IkReal x1496=
IKcos(j3);
19441IkReal x1497=((1.0)*x1496);
19442IkReal x1498=((1.0)*new_r22*x1495);
19443evalcond[0]=(((new_r01*x1496))+((new_r11*x1495)));
19444evalcond[1]=((((-1.0)*new_r10*x1497))+((new_r00*x1495)));
19445evalcond[2]=(((new_r01*x1495))+(((-1.0)*new_r11*x1497)));
19446evalcond[3]=((((-1.0)*new_r10*x1498))+(((-1.0)*new_r00*new_r22*x1497)));
19447evalcond[4]=((((-1.0)*new_r11*x1498))+(((-1.0)*new_r01*new_r22*x1497)));
19455std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
19456vinfos[0].jointtype = 1;
19457vinfos[0].foffset = j0;
19458vinfos[0].indices[0] = _ij0[0];
19459vinfos[0].indices[1] = _ij0[1];
19460vinfos[0].maxsolutions = _nj0;
19461vinfos[1].jointtype = 1;
19462vinfos[1].foffset = j1;
19463vinfos[1].indices[0] = _ij1[0];
19464vinfos[1].indices[1] = _ij1[1];
19465vinfos[1].maxsolutions = _nj1;
19466vinfos[2].jointtype = 1;
19467vinfos[2].foffset = j2;
19468vinfos[2].indices[0] = _ij2[0];
19469vinfos[2].indices[1] = _ij2[1];
19470vinfos[2].maxsolutions = _nj2;
19471vinfos[3].jointtype = 1;
19472vinfos[3].foffset = j3;
19473vinfos[3].indices[0] = _ij3[0];
19474vinfos[3].indices[1] = _ij3[1];
19475vinfos[3].maxsolutions = _nj3;
19476vinfos[4].jointtype = 1;
19477vinfos[4].foffset = j4;
19478vinfos[4].indices[0] = _ij4[0];
19479vinfos[4].indices[1] = _ij4[1];
19480vinfos[4].maxsolutions = _nj4;
19481vinfos[5].jointtype = 1;
19482vinfos[5].foffset = j5;
19483vinfos[5].indices[0] = _ij5[0];
19484vinfos[5].indices[1] = _ij5[1];
19485vinfos[5].maxsolutions = _nj5;
19486std::vector<int> vfree(0);
19499IkReal j3array[2], cj3array[2], sj3array[2];
19500bool j3valid[2]={
false};
19506IkReal x1499=x1500.
value;
19507j3array[0]=((-1.0)*x1499);
19508sj3array[0]=
IKsin(j3array[0]);
19509cj3array[0]=
IKcos(j3array[0]);
19510j3array[1]=((3.14159265358979)+(((-1.0)*x1499)));
19511sj3array[1]=
IKsin(j3array[1]);
19512cj3array[1]=
IKcos(j3array[1]);
19513if( j3array[0] >
IKPI )
19517else if( j3array[0] < -
IKPI )
19518{ j3array[0]+=
IK2PI;
19521if( j3array[1] >
IKPI )
19525else if( j3array[1] < -
IKPI )
19526{ j3array[1]+=
IK2PI;
19529for(
int ij3 = 0; ij3 < 2; ++ij3)
19535_ij3[0] = ij3; _ij3[1] = -1;
19536for(
int iij3 = ij3+1; iij3 < 2; ++iij3)
19540 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
19543j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
19546IkReal x1501=
IKsin(j3);
19547IkReal x1502=
IKcos(j3);
19548IkReal x1503=((1.0)*new_r22);
19549IkReal x1504=(new_r10*x1501);
19550IkReal x1505=((1.0)*x1502);
19551IkReal x1506=(new_r00*x1502);
19552evalcond[0]=(x1506+x1504);
19553evalcond[1]=((((-1.0)*new_r10*x1505))+((new_r00*x1501)));
19554evalcond[2]=((((-1.0)*new_r11*x1505))+((new_r01*x1501)));
19555evalcond[3]=((((-1.0)*x1503*x1506))+(((-1.0)*x1503*x1504)));
19556evalcond[4]=((((-1.0)*new_r11*x1501*x1503))+(((-1.0)*new_r01*x1502*x1503)));
19564std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
19565vinfos[0].jointtype = 1;
19566vinfos[0].foffset = j0;
19567vinfos[0].indices[0] = _ij0[0];
19568vinfos[0].indices[1] = _ij0[1];
19569vinfos[0].maxsolutions = _nj0;
19570vinfos[1].jointtype = 1;
19571vinfos[1].foffset = j1;
19572vinfos[1].indices[0] = _ij1[0];
19573vinfos[1].indices[1] = _ij1[1];
19574vinfos[1].maxsolutions = _nj1;
19575vinfos[2].jointtype = 1;
19576vinfos[2].foffset = j2;
19577vinfos[2].indices[0] = _ij2[0];
19578vinfos[2].indices[1] = _ij2[1];
19579vinfos[2].maxsolutions = _nj2;
19580vinfos[3].jointtype = 1;
19581vinfos[3].foffset = j3;
19582vinfos[3].indices[0] = _ij3[0];
19583vinfos[3].indices[1] = _ij3[1];
19584vinfos[3].maxsolutions = _nj3;
19585vinfos[4].jointtype = 1;
19586vinfos[4].foffset = j4;
19587vinfos[4].indices[0] = _ij4[0];
19588vinfos[4].indices[1] = _ij4[1];
19589vinfos[4].maxsolutions = _nj4;
19590vinfos[5].jointtype = 1;
19591vinfos[5].foffset = j5;
19592vinfos[5].indices[0] = _ij5[0];
19593vinfos[5].indices[1] = _ij5[1];
19594vinfos[5].maxsolutions = _nj5;
19595std::vector<int> vfree(0);
19607if( bgotonextstatement )
19609bool bgotonextstatement =
true;
19614bgotonextstatement=
false;
19619if( bgotonextstatement )
19630IkReal j3array[1], cj3array[1], sj3array[1];
19631bool j3valid[1]={
false};
19637IkReal x1507=x1508.
value;
19644j3array[0]=
IKatan2((x1507*(x1509.
value)*(((-1.0)+(new_r02*new_r02)+(cj4*cj4)))), ((-1.0)*new_r02*x1507));
19645sj3array[0]=
IKsin(j3array[0]);
19646cj3array[0]=
IKcos(j3array[0]);
19647if( j3array[0] >
IKPI )
19651else if( j3array[0] < -
IKPI )
19652{ j3array[0]+=
IK2PI;
19655for(
int ij3 = 0; ij3 < 1; ++ij3)
19661_ij3[0] = ij3; _ij3[1] = -1;
19662for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
19666 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
19669j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
19671IkReal evalcond[18];
19672IkReal x1510=
IKcos(j3);
19673IkReal x1511=
IKsin(j3);
19674IkReal x1512=(cj4*cj5);
19675IkReal x1513=(cj4*sj5);
19676IkReal x1514=((1.0)*new_r20);
19677IkReal x1515=((1.0)*cj4);
19678IkReal x1516=((1.0)*sj4);
19679IkReal x1517=(sj4*x1511);
19680IkReal x1518=((1.0)*x1510);
19681IkReal x1519=(sj4*x1510);
19682IkReal x1520=(x1511*x1515);
19683evalcond[0]=(x1519+new_r02);
19684evalcond[1]=(x1517+new_r12);
19685evalcond[2]=((((-1.0)*new_r02*x1511))+((new_r12*x1510)));
19686evalcond[3]=(sj4+((new_r02*x1510))+((new_r12*x1511)));
19687evalcond[4]=(sj5+(((-1.0)*new_r10*x1518))+((new_r00*x1511)));
19688evalcond[5]=((((-1.0)*new_r11*x1518))+cj5+((new_r01*x1511)));
19689evalcond[6]=(((x1510*x1513))+((cj5*x1511))+new_r01);
19690evalcond[7]=(x1513+((new_r01*x1510))+((new_r11*x1511)));
19691evalcond[8]=(((sj5*x1511))+(((-1.0)*x1512*x1518))+new_r00);
19692evalcond[9]=((((-1.0)*cj5*x1518))+new_r11+((x1511*x1513)));
19693evalcond[10]=(((new_r10*x1511))+(((-1.0)*x1512))+((new_r00*x1510)));
19694evalcond[11]=((((-1.0)*x1511*x1512))+(((-1.0)*sj5*x1518))+new_r10);
19695evalcond[12]=(((new_r10*x1517))+(((-1.0)*cj4*x1514))+((new_r00*x1519)));
19696evalcond[13]=((((-1.0)*new_r21*x1515))+((new_r01*x1519))+((new_r11*x1517)));
19697evalcond[14]=((1.0)+(((-1.0)*new_r22*x1515))+((new_r02*x1519))+((new_r12*x1517)));
19698evalcond[15]=((((-1.0)*new_r22*x1516))+(((-1.0)*new_r12*x1520))+(((-1.0)*new_r02*x1510*x1515)));
19699evalcond[16]=(cj5+(((-1.0)*new_r00*x1510*x1515))+(((-1.0)*sj4*x1514))+(((-1.0)*new_r10*x1520)));
19700evalcond[17]=((((-1.0)*sj5))+(((-1.0)*new_r11*x1520))+(((-1.0)*new_r21*x1516))+(((-1.0)*new_r01*x1510*x1515)));
19708std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
19709vinfos[0].jointtype = 1;
19710vinfos[0].foffset = j0;
19711vinfos[0].indices[0] = _ij0[0];
19712vinfos[0].indices[1] = _ij0[1];
19713vinfos[0].maxsolutions = _nj0;
19714vinfos[1].jointtype = 1;
19715vinfos[1].foffset = j1;
19716vinfos[1].indices[0] = _ij1[0];
19717vinfos[1].indices[1] = _ij1[1];
19718vinfos[1].maxsolutions = _nj1;
19719vinfos[2].jointtype = 1;
19720vinfos[2].foffset = j2;
19721vinfos[2].indices[0] = _ij2[0];
19722vinfos[2].indices[1] = _ij2[1];
19723vinfos[2].maxsolutions = _nj2;
19724vinfos[3].jointtype = 1;
19725vinfos[3].foffset = j3;
19726vinfos[3].indices[0] = _ij3[0];
19727vinfos[3].indices[1] = _ij3[1];
19728vinfos[3].maxsolutions = _nj3;
19729vinfos[4].jointtype = 1;
19730vinfos[4].foffset = j4;
19731vinfos[4].indices[0] = _ij4[0];
19732vinfos[4].indices[1] = _ij4[1];
19733vinfos[4].maxsolutions = _nj4;
19734vinfos[5].jointtype = 1;
19735vinfos[5].foffset = j5;
19736vinfos[5].indices[0] = _ij5[0];
19737vinfos[5].indices[1] = _ij5[1];
19738vinfos[5].maxsolutions = _nj5;
19739std::vector<int> vfree(0);
19752IkReal j3array[1], cj3array[1], sj3array[1];
19753bool j3valid[1]={
false};
19763j3array[0]=((-1.5707963267949)+(((1.5707963267949)*(x1521.
value)))+(x1522.
value));
19764sj3array[0]=
IKsin(j3array[0]);
19765cj3array[0]=
IKcos(j3array[0]);
19766if( j3array[0] >
IKPI )
19770else if( j3array[0] < -
IKPI )
19771{ j3array[0]+=
IK2PI;
19774for(
int ij3 = 0; ij3 < 1; ++ij3)
19780_ij3[0] = ij3; _ij3[1] = -1;
19781for(
int iij3 = ij3+1; iij3 < 1; ++iij3)
19785 j3valid[iij3]=
false; _ij3[1] = iij3;
break;
19788j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3];
19790IkReal evalcond[18];
19791IkReal x1523=
IKcos(j3);
19792IkReal x1524=
IKsin(j3);
19793IkReal x1525=(cj4*cj5);
19794IkReal x1526=(cj4*sj5);
19795IkReal x1527=((1.0)*new_r20);
19796IkReal x1528=((1.0)*cj4);
19797IkReal x1529=((1.0)*sj4);
19798IkReal x1530=(sj4*x1524);
19799IkReal x1531=((1.0)*x1523);
19800IkReal x1532=(sj4*x1523);
19801IkReal x1533=(x1524*x1528);
19802evalcond[0]=(x1532+new_r02);
19803evalcond[1]=(x1530+new_r12);
19804evalcond[2]=(((new_r12*x1523))+(((-1.0)*new_r02*x1524)));
19805evalcond[3]=(((new_r12*x1524))+sj4+((new_r02*x1523)));
19806evalcond[4]=((((-1.0)*new_r10*x1531))+sj5+((new_r00*x1524)));
19807evalcond[5]=(cj5+((new_r01*x1524))+(((-1.0)*new_r11*x1531)));
19808evalcond[6]=(((x1523*x1526))+((cj5*x1524))+new_r01);
19809evalcond[7]=(((new_r01*x1523))+x1526+((new_r11*x1524)));
19810evalcond[8]=(((sj5*x1524))+(((-1.0)*x1525*x1531))+new_r00);
19811evalcond[9]=(((x1524*x1526))+(((-1.0)*cj5*x1531))+new_r11);
19812evalcond[10]=(((new_r00*x1523))+((new_r10*x1524))+(((-1.0)*x1525)));
19813evalcond[11]=((((-1.0)*x1524*x1525))+new_r10+(((-1.0)*sj5*x1531)));
19814evalcond[12]=((((-1.0)*cj4*x1527))+((new_r00*x1532))+((new_r10*x1530)));
19815evalcond[13]=((((-1.0)*new_r21*x1528))+((new_r01*x1532))+((new_r11*x1530)));
19816evalcond[14]=((1.0)+((new_r02*x1532))+(((-1.0)*new_r22*x1528))+((new_r12*x1530)));
19817evalcond[15]=((((-1.0)*new_r02*x1523*x1528))+(((-1.0)*new_r22*x1529))+(((-1.0)*new_r12*x1533)));
19818evalcond[16]=((((-1.0)*new_r10*x1533))+(((-1.0)*sj4*x1527))+cj5+(((-1.0)*new_r00*x1523*x1528)));
19819evalcond[17]=((((-1.0)*sj5))+(((-1.0)*new_r21*x1529))+(((-1.0)*new_r01*x1523*x1528))+(((-1.0)*new_r11*x1533)));
19827std::vector<IkSingleDOFSolutionBase<IkReal> > vinfos(6);
19828vinfos[0].jointtype = 1;
19829vinfos[0].foffset = j0;
19830vinfos[0].indices[0] = _ij0[0];
19831vinfos[0].indices[1] = _ij0[1];
19832vinfos[0].maxsolutions = _nj0;
19833vinfos[1].jointtype = 1;
19834vinfos[1].foffset = j1;
19835vinfos[1].indices[0] = _ij1[0];
19836vinfos[1].indices[1] = _ij1[1];
19837vinfos[1].maxsolutions = _nj1;
19838vinfos[2].jointtype = 1;
19839vinfos[2].foffset = j2;
19840vinfos[2].indices[0] = _ij2[0];
19841vinfos[2].indices[1] = _ij2[1];
19842vinfos[2].maxsolutions = _nj2;
19843vinfos[3].jointtype = 1;
19844vinfos[3].foffset = j3;
19845vinfos[3].indices[0] = _ij3[0];
19846vinfos[3].indices[1] = _ij3[1];
19847vinfos[3].maxsolutions = _nj3;
19848vinfos[4].jointtype = 1;
19849vinfos[4].foffset = j4;
19850vinfos[4].indices[0] = _ij4[0];
19851vinfos[4].indices[1] = _ij4[1];
19852vinfos[4].maxsolutions = _nj4;
19853vinfos[5].jointtype = 1;
19854vinfos[5].foffset = j5;
19855vinfos[5].indices[0] = _ij5[0];
19856vinfos[5].indices[1] = _ij5[1];
19857vinfos[5].maxsolutions = _nj5;
19858std::vector<int> vfree(0);
19876}
static inline void polyroots3(IkReal rawcoeffs[3+1], IkReal rawroots[3],
int& numroots)