Use static arrays and a loop to initialize (accelerates compilation on VC++

This commit is contained in:
Andreas Fabri 2017-12-07 16:58:47 +00:00
parent 090a7b925e
commit 99617c37cb
3 changed files with 960 additions and 938 deletions

View File

@ -5217,6 +5217,297 @@ static const int O[1728][4] = {
{ 4,4,0,0 }
};
static const unsigned C[287] = {
1721,
1507,
1699,
1468,
1711,
1532,
1724,
1495,
1548,
1557,
1510,
1568,
1577,
1580,
1530,
1537,
1557,
1614,
1569,
1569,
1573,
1584,
1580,
1593,
1614,
1659,
1621,
1660,
1632,
1629,
1593,
1489,
1658,
1653,
1691,
1666,
1705,
1629,
1719,
1727,
1688,
1686,
1699,
1456,
1711,
1628,
1727,
1724,
839,
861,
855,
872,
788,
888,
881,
903,
637,
683,
681,
681,
658,
722,
677,
726,
726,
738,
679,
742,
549,
752,
723,
755,
738,
778,
697,
814,
666,
799,
723,
813,
813,
794,
814,
835,
800,
880,
777,
850,
806,
859,
821,
836,
871,
886,
881,
902,
1120,
1130,
1124,
1137,
1135,
1147,
1118,
1158,
908,
969,
950,
961,
907,
971,
932,
898,
978,
992,
950,
1001,
970,
1042,
1013,
1037,
1038,
1092,
924,
1094,
984,
1070,
1013,
1078,
1073,
1092,
1065,
1127,
1069,
1123,
1106,
1117,
1074,
1129,
1127,
1138,
1123,
1145,
1118,
1158,
1397,
1409,
1414,
1421,
1383,
1429,
1431,
1436,
1214,
1229,
1191,
1281,
1192,
1294,
1111,
1268,
1269,
1274,
1179,
1322,
1258,
1338,
1264,
1313,
1314,
1358,
1289,
1337,
1302,
1345,
1311,
1360,
1360,
1416,
1337,
1392,
1345,
1375,
1357,
1401,
1398,
1416,
1384,
1421,
1392,
1430,
1167,
1437,
1678,
1683,
1694,
1700,
1706,
1712,
1641,
1722,
1498,
1562,
1513,
1549,
1521,
1588,
1493,
1546,
1546,
1600,
1517,
1575,
1336,
1588,
1493,
1604,
1605,
1647,
1517,
1625,
1386,
1670,
1592,
1644,
1605,
1693,
1655,
1703,
1664,
1673,
1675,
1715,
1642,
1693,
1694,
1702,
1706,
1712,
1675,
1725,
1721,
1685,
1700,
1663,
1712,
1669,
1723,
1724,
1548,
1562,
1562,
1576,
1577,
1588,
1538,
1582,
1602,
1614,
1564,
1622,
1577,
1633,
1591,
1637,
1647,
1659,
1622,
1626,
1633,
1670,
1644,
1644,
1657,
1693,
1692,
1705,
1704,
1719,
1719,
1727,
1688,
1689,
1698,
1701,
1710,
1712,
1726,
1727
};
this->clear();
std::vector<Vertex_handle> vertices;
@ -5261,295 +5552,9 @@ static const int O[1728][4] = {
set_offsets(cells[i],O[i][0],O[i][1],O[i][2],O[i][3]);
}
vertices[0]->set_cell(cells[1721]);
vertices[1]->set_cell(cells[1507]);
vertices[2]->set_cell(cells[1699]);
vertices[3]->set_cell(cells[1468]);
vertices[4]->set_cell(cells[1711]);
vertices[5]->set_cell(cells[1532]);
vertices[6]->set_cell(cells[1724]);
vertices[7]->set_cell(cells[1495]);
vertices[8]->set_cell(cells[1548]);
vertices[9]->set_cell(cells[1557]);
vertices[10]->set_cell(cells[1510]);
vertices[11]->set_cell(cells[1568]);
vertices[12]->set_cell(cells[1577]);
vertices[13]->set_cell(cells[1580]);
vertices[14]->set_cell(cells[1530]);
vertices[15]->set_cell(cells[1537]);
vertices[16]->set_cell(cells[1557]);
vertices[17]->set_cell(cells[1614]);
vertices[18]->set_cell(cells[1569]);
vertices[19]->set_cell(cells[1569]);
vertices[20]->set_cell(cells[1573]);
vertices[21]->set_cell(cells[1584]);
vertices[22]->set_cell(cells[1580]);
vertices[23]->set_cell(cells[1593]);
vertices[24]->set_cell(cells[1614]);
vertices[25]->set_cell(cells[1659]);
vertices[26]->set_cell(cells[1621]);
vertices[27]->set_cell(cells[1660]);
vertices[28]->set_cell(cells[1632]);
vertices[29]->set_cell(cells[1629]);
vertices[30]->set_cell(cells[1593]);
vertices[31]->set_cell(cells[1489]);
vertices[32]->set_cell(cells[1658]);
vertices[33]->set_cell(cells[1653]);
vertices[34]->set_cell(cells[1691]);
vertices[35]->set_cell(cells[1666]);
vertices[36]->set_cell(cells[1705]);
vertices[37]->set_cell(cells[1629]);
vertices[38]->set_cell(cells[1719]);
vertices[39]->set_cell(cells[1727]);
vertices[40]->set_cell(cells[1688]);
vertices[41]->set_cell(cells[1686]);
vertices[42]->set_cell(cells[1699]);
vertices[43]->set_cell(cells[1456]);
vertices[44]->set_cell(cells[1711]);
vertices[45]->set_cell(cells[1628]);
vertices[46]->set_cell(cells[1727]);
vertices[47]->set_cell(cells[1724]);
vertices[48]->set_cell(cells[839]);
vertices[49]->set_cell(cells[861]);
vertices[50]->set_cell(cells[855]);
vertices[51]->set_cell(cells[872]);
vertices[52]->set_cell(cells[788]);
vertices[53]->set_cell(cells[888]);
vertices[54]->set_cell(cells[881]);
vertices[55]->set_cell(cells[903]);
vertices[56]->set_cell(cells[637]);
vertices[57]->set_cell(cells[683]);
vertices[58]->set_cell(cells[681]);
vertices[59]->set_cell(cells[681]);
vertices[60]->set_cell(cells[658]);
vertices[61]->set_cell(cells[722]);
vertices[62]->set_cell(cells[677]);
vertices[63]->set_cell(cells[726]);
vertices[64]->set_cell(cells[726]);
vertices[65]->set_cell(cells[738]);
vertices[66]->set_cell(cells[679]);
vertices[67]->set_cell(cells[742]);
vertices[68]->set_cell(cells[549]);
vertices[69]->set_cell(cells[752]);
vertices[70]->set_cell(cells[723]);
vertices[71]->set_cell(cells[755]);
vertices[72]->set_cell(cells[738]);
vertices[73]->set_cell(cells[778]);
vertices[74]->set_cell(cells[697]);
vertices[75]->set_cell(cells[814]);
vertices[76]->set_cell(cells[666]);
vertices[77]->set_cell(cells[799]);
vertices[78]->set_cell(cells[723]);
vertices[79]->set_cell(cells[813]);
vertices[80]->set_cell(cells[813]);
vertices[81]->set_cell(cells[794]);
vertices[82]->set_cell(cells[814]);
vertices[83]->set_cell(cells[835]);
vertices[84]->set_cell(cells[800]);
vertices[85]->set_cell(cells[880]);
vertices[86]->set_cell(cells[777]);
vertices[87]->set_cell(cells[850]);
vertices[88]->set_cell(cells[806]);
vertices[89]->set_cell(cells[859]);
vertices[90]->set_cell(cells[821]);
vertices[91]->set_cell(cells[836]);
vertices[92]->set_cell(cells[871]);
vertices[93]->set_cell(cells[886]);
vertices[94]->set_cell(cells[881]);
vertices[95]->set_cell(cells[902]);
vertices[96]->set_cell(cells[1120]);
vertices[97]->set_cell(cells[1130]);
vertices[98]->set_cell(cells[1124]);
vertices[99]->set_cell(cells[1137]);
vertices[100]->set_cell(cells[1135]);
vertices[101]->set_cell(cells[1147]);
vertices[102]->set_cell(cells[1118]);
vertices[103]->set_cell(cells[1158]);
vertices[104]->set_cell(cells[908]);
vertices[105]->set_cell(cells[969]);
vertices[106]->set_cell(cells[950]);
vertices[107]->set_cell(cells[961]);
vertices[108]->set_cell(cells[907]);
vertices[109]->set_cell(cells[971]);
vertices[110]->set_cell(cells[932]);
vertices[111]->set_cell(cells[898]);
vertices[112]->set_cell(cells[978]);
vertices[113]->set_cell(cells[992]);
vertices[114]->set_cell(cells[950]);
vertices[115]->set_cell(cells[1001]);
vertices[116]->set_cell(cells[970]);
vertices[117]->set_cell(cells[1042]);
vertices[118]->set_cell(cells[1013]);
vertices[119]->set_cell(cells[1037]);
vertices[120]->set_cell(cells[1038]);
vertices[121]->set_cell(cells[1092]);
vertices[122]->set_cell(cells[924]);
vertices[123]->set_cell(cells[1094]);
vertices[124]->set_cell(cells[984]);
vertices[125]->set_cell(cells[1070]);
vertices[126]->set_cell(cells[1013]);
vertices[127]->set_cell(cells[1078]);
vertices[128]->set_cell(cells[1073]);
vertices[129]->set_cell(cells[1092]);
vertices[130]->set_cell(cells[1065]);
vertices[131]->set_cell(cells[1127]);
vertices[132]->set_cell(cells[1069]);
vertices[133]->set_cell(cells[1123]);
vertices[134]->set_cell(cells[1106]);
vertices[135]->set_cell(cells[1117]);
vertices[136]->set_cell(cells[1074]);
vertices[137]->set_cell(cells[1129]);
vertices[138]->set_cell(cells[1127]);
vertices[139]->set_cell(cells[1138]);
vertices[140]->set_cell(cells[1123]);
vertices[141]->set_cell(cells[1145]);
vertices[142]->set_cell(cells[1118]);
vertices[143]->set_cell(cells[1158]);
vertices[144]->set_cell(cells[1397]);
vertices[145]->set_cell(cells[1409]);
vertices[146]->set_cell(cells[1414]);
vertices[147]->set_cell(cells[1421]);
vertices[148]->set_cell(cells[1383]);
vertices[149]->set_cell(cells[1429]);
vertices[150]->set_cell(cells[1431]);
vertices[151]->set_cell(cells[1436]);
vertices[152]->set_cell(cells[1214]);
vertices[153]->set_cell(cells[1229]);
vertices[154]->set_cell(cells[1191]);
vertices[155]->set_cell(cells[1281]);
vertices[156]->set_cell(cells[1192]);
vertices[157]->set_cell(cells[1294]);
vertices[158]->set_cell(cells[1111]);
vertices[159]->set_cell(cells[1268]);
vertices[160]->set_cell(cells[1269]);
vertices[161]->set_cell(cells[1274]);
vertices[162]->set_cell(cells[1179]);
vertices[163]->set_cell(cells[1322]);
vertices[164]->set_cell(cells[1258]);
vertices[165]->set_cell(cells[1338]);
vertices[166]->set_cell(cells[1264]);
vertices[167]->set_cell(cells[1313]);
vertices[168]->set_cell(cells[1314]);
vertices[169]->set_cell(cells[1358]);
vertices[170]->set_cell(cells[1289]);
vertices[171]->set_cell(cells[1337]);
vertices[172]->set_cell(cells[1302]);
vertices[173]->set_cell(cells[1345]);
vertices[174]->set_cell(cells[1311]);
vertices[175]->set_cell(cells[1360]);
vertices[176]->set_cell(cells[1360]);
vertices[177]->set_cell(cells[1416]);
vertices[178]->set_cell(cells[1337]);
vertices[179]->set_cell(cells[1392]);
vertices[180]->set_cell(cells[1345]);
vertices[181]->set_cell(cells[1375]);
vertices[182]->set_cell(cells[1357]);
vertices[183]->set_cell(cells[1401]);
vertices[184]->set_cell(cells[1398]);
vertices[185]->set_cell(cells[1416]);
vertices[186]->set_cell(cells[1384]);
vertices[187]->set_cell(cells[1421]);
vertices[188]->set_cell(cells[1392]);
vertices[189]->set_cell(cells[1430]);
vertices[190]->set_cell(cells[1167]);
vertices[191]->set_cell(cells[1437]);
vertices[192]->set_cell(cells[1678]);
vertices[193]->set_cell(cells[1683]);
vertices[194]->set_cell(cells[1694]);
vertices[195]->set_cell(cells[1700]);
vertices[196]->set_cell(cells[1706]);
vertices[197]->set_cell(cells[1712]);
vertices[198]->set_cell(cells[1641]);
vertices[199]->set_cell(cells[1722]);
vertices[200]->set_cell(cells[1498]);
vertices[201]->set_cell(cells[1562]);
vertices[202]->set_cell(cells[1513]);
vertices[203]->set_cell(cells[1549]);
vertices[204]->set_cell(cells[1521]);
vertices[205]->set_cell(cells[1588]);
vertices[206]->set_cell(cells[1493]);
vertices[207]->set_cell(cells[1546]);
vertices[208]->set_cell(cells[1546]);
vertices[209]->set_cell(cells[1600]);
vertices[210]->set_cell(cells[1517]);
vertices[211]->set_cell(cells[1575]);
vertices[212]->set_cell(cells[1336]);
vertices[213]->set_cell(cells[1588]);
vertices[214]->set_cell(cells[1493]);
vertices[215]->set_cell(cells[1604]);
vertices[216]->set_cell(cells[1605]);
vertices[217]->set_cell(cells[1647]);
vertices[218]->set_cell(cells[1517]);
vertices[219]->set_cell(cells[1625]);
vertices[220]->set_cell(cells[1386]);
vertices[221]->set_cell(cells[1670]);
vertices[222]->set_cell(cells[1592]);
vertices[223]->set_cell(cells[1644]);
vertices[224]->set_cell(cells[1605]);
vertices[225]->set_cell(cells[1693]);
vertices[226]->set_cell(cells[1655]);
vertices[227]->set_cell(cells[1703]);
vertices[228]->set_cell(cells[1664]);
vertices[229]->set_cell(cells[1673]);
vertices[230]->set_cell(cells[1675]);
vertices[231]->set_cell(cells[1715]);
vertices[232]->set_cell(cells[1642]);
vertices[233]->set_cell(cells[1693]);
vertices[234]->set_cell(cells[1694]);
vertices[235]->set_cell(cells[1702]);
vertices[236]->set_cell(cells[1706]);
vertices[237]->set_cell(cells[1712]);
vertices[238]->set_cell(cells[1675]);
vertices[239]->set_cell(cells[1725]);
vertices[240]->set_cell(cells[1721]);
vertices[241]->set_cell(cells[1685]);
vertices[242]->set_cell(cells[1700]);
vertices[243]->set_cell(cells[1663]);
vertices[244]->set_cell(cells[1712]);
vertices[245]->set_cell(cells[1669]);
vertices[246]->set_cell(cells[1723]);
vertices[247]->set_cell(cells[1724]);
vertices[248]->set_cell(cells[1548]);
vertices[249]->set_cell(cells[1562]);
vertices[250]->set_cell(cells[1562]);
vertices[251]->set_cell(cells[1576]);
vertices[252]->set_cell(cells[1577]);
vertices[253]->set_cell(cells[1588]);
vertices[254]->set_cell(cells[1538]);
vertices[255]->set_cell(cells[1582]);
vertices[256]->set_cell(cells[1602]);
vertices[257]->set_cell(cells[1614]);
vertices[258]->set_cell(cells[1564]);
vertices[259]->set_cell(cells[1622]);
vertices[260]->set_cell(cells[1577]);
vertices[261]->set_cell(cells[1633]);
vertices[262]->set_cell(cells[1591]);
vertices[263]->set_cell(cells[1637]);
vertices[264]->set_cell(cells[1647]);
vertices[265]->set_cell(cells[1659]);
vertices[266]->set_cell(cells[1622]);
vertices[267]->set_cell(cells[1626]);
vertices[268]->set_cell(cells[1633]);
vertices[269]->set_cell(cells[1670]);
vertices[270]->set_cell(cells[1644]);
vertices[271]->set_cell(cells[1644]);
vertices[272]->set_cell(cells[1657]);
vertices[273]->set_cell(cells[1693]);
vertices[274]->set_cell(cells[1692]);
vertices[275]->set_cell(cells[1705]);
vertices[276]->set_cell(cells[1704]);
vertices[277]->set_cell(cells[1719]);
vertices[278]->set_cell(cells[1719]);
vertices[279]->set_cell(cells[1727]);
vertices[280]->set_cell(cells[1688]);
vertices[281]->set_cell(cells[1689]);
vertices[282]->set_cell(cells[1698]);
vertices[283]->set_cell(cells[1701]);
vertices[284]->set_cell(cells[1710]);
vertices[285]->set_cell(cells[1712]);
vertices[286]->set_cell(cells[1726]);
vertices[287]->set_cell(cells[1727]);
for(unsigned int i = 0; i < 287; ++i){
vertices[i]->set_cell(cells[C[i]]);
}
tds().set_dimension(3);
this->set_cover(make_array(1,1,1));

View File

@ -1,3 +1,4 @@
#include <iostream>
#include <CGAL/Timer.h>