function setDesign(labels,floors,extern,data){
var s = 0.2;
var d = 10*s;
var h = 280*s;
var l = 500*s;
var L = l*Math.cos(Math.PI/6);
var D = l*Math.sin(Math.PI/6);
var H = 250*s;
var y = 200*s;
var A01 = [l/2,y+L,0], A02 = [-l/2,y+L,0], A03 = [-l/2-D,y+2*L,0],
A04 = [-l/2,y+3*L,0], A05 = [l/2,y+3*L,0], A06 = [l/2+D,y+2*L,0];
var A11 = [l/2,y+L,h], A12 = [-l/2,y+L,h], A13 = [-l/2-D,y+2*L,h],
A14 = [-l/2,y+3*L,h], A15 = [l/2,y+3*L,h], A16 = [l/2+D,y+2*L,h];
var A23 = [-l/2-D,y+2*L,h+H], A26 = [l/2+D,y+2*L,h+H],
A24 = setCoord(getMean(A02,A04,0.5),2,h+H), A25 = setCoord(getMean(A01,A05,0.5),2,h+H);
var A012 = getMean(A01,A02,1/3), A011 = getMean(A01,A02,2/3),
A112 = getMean(A11,A12,1/3), A111 = getMean(A11,A12,2/3),
A022 = getMean(A02,A03,1/3), A021 = getMean(A02,A03,2/3),
A122 = getMean(A12,A13,1/3), A121 = getMean(A12,A13,2/3),
A032 = getMean(A03,A04,1/3), A031 = getMean(A03,A04,2/3),
A132 = getMean(A13,A14,1/3), A131 = getMean(A13,A14,2/3),
A042 = getMean(A04,A05,1/3), A041 = getMean(A04,A05,2/3),
A142 = getMean(A14,A15,1/3), A141 = getMean(A14,A15,2/3),
A052 = getMean(A05,A06,1/3), A051 = getMean(A05,A06,2/3),
A152 = getMean(A15,A16,1/3), A151 = getMean(A15,A16,2/3),
A062 = getMean(A06,A01,1/3), A061 = getMean(A06,A01,2/3),
A162 = getMean(A16,A11,1/3), A161 = getMean(A16,A11,2/3),
A211 = getMean(A12,A23,1/3), A212 = getMean(A12,A23,2/3),
A411 = getMean(A14,A23,1/3), A412 = getMean(A14,A23,2/3),
A511 = getMean(A15,A26,1/3), A512 = getMean(A15,A26,2/3),
A611 = getMean(A11,A26,1/3), A612 = getMean(A11,A26,2/3),
A201 = getMean(A24,A25,1/2);
if(labels == 1){
data.push([1,[A01],[],'A01',0]); data.push([1,[A02],[],'A02',0]); data.push([1,[A03],[],'A03',0]);
data.push([1,[A04],[],'A04',0]); data.push([1,[A05],[],'A05',0]); data.push([1,[A06],[],'A06',0]);
data.push([1,[A11],[],'A11',0]); data.push([1,[A12],[],'A12',0]); data.push([1,[A13],[],'A13',0]);
data.push([1,[A14],[],'A14',0]); data.push([1,[A15],[],'A15',0]); data.push([1,[A16],[],'A16',0]);
data.push([1,[A23],[],'A23',0]); data.push([1,[A26],[],\'A26\',0]); data.push([1,[A24],[],\'A24\',0]); data.push([1,[A25],[],\'A25\',0]);
data.push([1,[A012],[],\'A012\',0]); data.push([1,[A011],[],\'A011\',0]);
data.push([1,[A112],[],\'A112\',0]); data.push([1,[A111],[],\'A111\',0]);
data.push([1,[A022],[],\'A022\',0]); data.push([1,[A021],[],\'A021\',0]);
data.push([1,[A122],[],\'A122\',0]); data.push([1,[A121],[],\'A121\',0]);
data.push([1,[A032],[],\'A032\',0]); data.push([1,[A031],[],\'A031\',0]);
data.push([1,[A132],[],\'A132\',0]); data.push([1,[A131],[],\'A131\',0]);
data.push([1,[A042],[],\'A042\',0]); data.push([1,[A041],[],\'A041\',0]);
data.push([1,[A142],[],\'A142\',0]); data.push([1,[A141],[],\'A141\',0]);
data.push([1,[A052],[],\'A052\',0]); data.push([1,[A051],[],\'A051\',0]);
data.push([1,[A152],[],\'A152\',0]); data.push([1,[A151],[],\'A151\',0]);
data.push([1,[A062],[],\'A062\',0]); data.push([1,[A061],[],\'A061\',0]);
data.push([1,[A162],[],\'A162\',0]); data.push([1,[A161],[],\'A161\',0]);
data.push([1,[A211],[],\'A211\',0]); data.push([1,[A212],[],\'A212\',0]);
data.push([1,[A411],[],\'A411\',0]); data.push([1,[A412],[],\'A412\',0]);
data.push([1,[A511],[],\'A511\',0]); data.push([1,[A512],[],\'A512\',0]);
data.push([1,[A611],[],\'A611\',0]); data.push([1,[A612],[],\'A612\',0]);
data.push([1,[A201],[],\'A201\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[A01,A02,A03],[],\'\',2]);
data.push([3,[A03,A04,A05],[],\'\',2]);
data.push([3,[A05,A06,A01],[],\'\',2]);
data.push([3,[A01,A03,A05],[],\'\',2]);
}
if(extern == 1){
data.push([3,[A14,A24,A23],[],\'\',1]);
data.push([3,[A14,A25,A24],[],\'\',1]);
data.push([3,[A15,A25,A14],[],\'\',1]);
data.push([3,[A15,A26,A25],[],\'\',1]);
data.push([3,[A23,A24,A12],[],\'\',1]);
data.push([3,[A24,A25,A11],[],\'\',1]);
data.push([3,[A11,A12,A24],[],\'\',1]);
data.push([3,[A25,A26,A11],[],\'\',1]);
data.push([3,[A26,A15,A16],[],\'\',2]);
data.push([3,[A23,A13,A14],[],\'\',2]);
}
var B01 = [-l/2-D,y,0], B02 = [-3*l/2-D,y,0], B03 = [-3*l/2-2*D,y+L,0], B04 = [-3*l/2-D,y+2*L,0];
var B11 = [-l/2-D,y,h], B12 = [-3*l/2-D,y,h], B13 = [-3*l/2-2*D,y+L,h], B14 = [-3*l/2-D,y+2*L,h];
var B22 = [-3*l/2-D,y,h+H],
B23 = setCoord(getMean(B01,B03,0.5),2,h+H), B24 = setCoord(getMean(A02,B04,0.5),2,h+H);
var B012 = getMean(A02,B01,1/3), B011 = getMean(A02,B01,2/3),
B112 = getMean(A12,B11,1/3), B111 = getMean(A12,B11,2/3),
B022 = getMean(B02,B03,1/3), B021 = getMean(B02,B03,2/3),
B122 = getMean(B12,B13,1/3), B121 = getMean(B12,B13,2/3),
B032 = getMean(B03,B04,1/3), B031 = getMean(B03,B04,2/3),
B132 = getMean(B13,B14,1/3), B131 = getMean(B13,B14,2/3),
B042 = getMean(B04,A03,1/3), B041 = getMean(B04,A03,2/3),
B142 = getMean(B14,A13,1/3), B141 = getMean(B14,A13,2/3),
B201 = getMean(B23,B24,1/3), B202 = getMean(B23,B24,2/3),
B000 = getMean(B02,A03,1/2), B100 = getMean(B12,A13,1/2),
B241 = getMean(B14,A23,1/3), B242 = getMean(B14,A23,2/3),
B221 = getMean(B13,B22,1/3), B222 = getMean(B13,B22,2/3),
B211 = getMean(B11,B22,1/3), B212 = getMean(B11,B22,2/3);
if(labels == 1){
data.push([1,[B01],[],\'B01\',0]); data.push([1,[B02],[],\'B02\',0]); data.push([1,[B03],[],\'B03\',0]); data.push([1,[B04],[],\'B04\',0]);
data.push([1,[B11],[],\'B11\',0]); data.push([1,[B12],[],\'B12\',0]); data.push([1,[B13],[],\'B13\',0]); data.push([1,[B14],[],\'B14\',0]);
data.push([1,[B22],[],\'B22\',0]); data.push([1,[B23],[],\'B23\',0]); data.push([1,[B24],[],\'B24\',0]);
data.push([1,[B012],[],\'B012\',0]); data.push([1,[B011],[],\'B011\',0]);
data.push([1,[B112],[],\'B112\',0]); data.push([1,[B111],[],\'B111\',0]);
data.push([1,[B022],[],\'B022\',0]); data.push([1,[B021],[],\'B021\',0]);
data.push([1,[B122],[],\'B122\',0]); data.push([1,[B121],[],\'B121\',0]);
data.push([1,[B032],[],\'B032\',0]); data.push([1,[B031],[],\'B031\',0]);
data.push([1,[B132],[],\'B132\',0]); data.push([1,[B131],[],\'B131\',0]);
data.push([1,[B042],[],\'B042\',0]); data.push([1,[B041],[],\'B041\',0]);
data.push([1,[B142],[],\'B142\',0]); data.push([1,[B141],[],\'B141\',0]);
data.push([1,[B201],[],\'B201\',0]); data.push([1,[B202],[],\'B202\',0]);
data.push([1,[B000],[],\'B000\',0]); data.push([1,[B100],[],\'B100\',0]);
data.push([1,[B241],[],\'B241\',0]); data.push([1,[B242],[],\'B242\',0]);
data.push([1,[B221],[],\'B221\',0]); data.push([1,[B222],[],\'B222\',0]);
data.push([1,[B211],[],\'B211\',0]); data.push([1,[B212],[],\'B212\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[B01,B02,B03],[],\'\',2]);
data.push([3,[B03,B04,A03],[],\'\',2]);
data.push([3,[A03,A02,B01],[],\'\',2]);
data.push([3,[B01,B03,A03],[],\'\',2]);
data.push([3,[B11,B12,B13],[],\'\',2]);
data.push([3,[B13,B14,A13],[],\'\',2]);
data.push([3,[A13,A12,B11],[],\'\',2]);
data.push([3,[B11,B13,A13],[],\'\',2]);
}
if(extern == 1){
data.push([3,[B13,B23,B22],[],\'\',1]);
data.push([3,[B13,B24,B23],[],\'\',1]);
data.push([3,[B14,B24,B13],[],\'\',1]);
data.push([3,[B14,A23,B24],[],\'\',1]);
data.push([3,[B22,B23,B11],[],\'\',1]);
data.push([3,[B23,B24,A12],[],\'\',1]);
data.push([3,[A12,B11,B23],[],\'\',1]);
data.push([3,[B24,A23,A12],[],\'\',1]);
data.push([3,[A23,B14,A13],[],\'\',2]);
data.push([3,[B22,B12,B13],[],\'\',2]);
data.push([3,[B14,B13,B03],[],\'\',2]);
data.push([3,[B03,B04,B14],[],\'\',2]);
data.push([3,[B13,B12,B02],[],\'\',2]);
data.push([3,[B02,B03,B13],[],\'\',2]);
}
var C01 = [l/2+D,y,0], C02 = [3*l/2+D,y,0], C03 = [3*l/2+2*D,y+L,0], C04 = [3*l/2+D,y+2*L,0];
var C11 = [l/2+D,y,h], C12 = [3*l/2+D,y,h], C13 = [3*l/2+2*D,y+L,h], C14 = [3*l/2+D,y+2*L,h];
var C22 = [3*l/2+D,y,h+H],
C23 = setCoord(getMean(C01,C03,0.5),2,h+H), C24 = setCoord(getMean(A01,C04,0.5),2,h+H);
var C012 = getMean(A01,C01,1/3), C011 = getMean(A01,C01,2/3),
C112 = getMean(A11,C11,1/3), C111 = getMean(A11,C11,2/3),
C022 = getMean(C01,C02,1/3), C021 = getMean(C01,C02,2/3),
C122 = getMean(C11,C12,1/3), C121 = getMean(C11,C12,2/3),
C032 = getMean(C02,C03,1/3), C031 = getMean(C02,C03,2/3),
C132 = getMean(C12,C13,1/3), C131 = getMean(C12,C13,2/3),
C042 = getMean(C03,C04,1/3), C041 = getMean(C03,C04,2/3),
C142 = getMean(C13,C14,1/3), C141 = getMean(C13,C14,2/3),
C052 = getMean(C04,A06,1/3), C051 = getMean(C04,A06,2/3),
C152 = getMean(C14,A16,1/3), C151 = getMean(C14,A16,2/3),
C201 = getMean(C23,C24,1/3), C202 = getMean(C23,C24,2/3),
C000 = getMean(A06,C02,1/2), C100 = getMean(A16,C12,1/2),
C221 = getMean(C11,C22,1/3), C222 = getMean(C11,C22,2/3),
C321 = getMean(C13,C22,1/3), C322 = getMean(C13,C22,2/3),
C521 = getMean(C14,A26,1/3), C522 = getMean(C14,A26,2/3);
if(labels == 1){
data.push([1,[C01],[],\'C01\',0]); data.push([1,[C02],[],\'C02\',0]); data.push([1,[C03],[],\'C03\',0]); data.push([1,[C04],[],\'C04\',0]);
data.push([1,[C11],[],\'C11\',0]); data.push([1,[C12],[],\'C12\',0]); data.push([1,[C13],[],\'C13\',0]); data.push([1,[C14],[],\'C14\',0]);
data.push([1,[C22],[],\'C22\',0]); data.push([1,[C23],[],\'C23\',0]); data.push([1,[C24],[],\'C24\',0]);
data.push([1,[C012],[],\'C012\',0]); data.push([1,[C011],[],\'C011\',0]);
data.push([1,[C112],[],\'C112\',0]); data.push([1,[C111],[],\'C111\',0]);
data.push([1,[C022],[],\'C022\',0]); data.push([1,[C021],[],\'C021\',0]);
data.push([1,[C122],[],\'C122\',0]); data.push([1,[C121],[],\'C121\',0]);
data.push([1,[C032],[],\'C032\',0]); data.push([1,[C031],[],\'C031\',0]);
data.push([1,[C132],[],\'C132\',0]); data.push([1,[C131],[],\'C131\',0]);
data.push([1,[C042],[],\'C042\',0]); data.push([1,[C041],[],\'C041\',0]);
data.push([1,[C142],[],\'C142\',0]); data.push([1,[C141],[],\'C141\',0]);
data.push([1,[C052],[],\'C052\',0]); data.push([1,[C051],[],\'C051\',0]);
data.push([1,[C152],[],\'C152\',0]); data.push([1,[C151],[],\'C151\',0]);
data.push([1,[C201],[],\'C201\',0]); data.push([1,[C202],[],\'C202\',0]);
data.push([1,[C000],[],\'C000\',0]); data.push([1,[C100],[],\'C100\',0]);
data.push([1,[C221],[],\'C221\',0]); data.push([1,[C222],[],\'C222\',0]);
data.push([1,[C321],[],\'C321\',0]); data.push([1,[C322],[],\'C322\',0]);
data.push([1,[C521],[],\'C521\',0]); data.push([1,[C522],[],\'C522\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[C03,C02,C01],[],\'\',2]);
data.push([3,[A06,C04,C03],[],\'\',2]);
data.push([3,[C01,A01,A06],[],\'\',2]);
data.push([3,[A06,C03,C01],[],\'\',2]);
data.push([3,[C13,C12,C11],[],\'\',2]);
data.push([3,[A16,C14,C13],[],\'\',2]);
data.push([3,[C11,A11,A16],[],\'\',2]);
data.push([3,[A16,C13,C11],[],\'\',2]);
}
if(extern == 1){
data.push([3,[A26,C24,A11],[],\'\',1]);
data.push([3,[C24,C23,C11],[],\'\',1]);
data.push([3,[C11,A11,C24],[],\'\',1]);
data.push([3,[C23,C22,C11],[],\'\',1]);
data.push([3,[C14,C24,A26],[],\'\',1]);
data.push([3,[C14,C23,C24],[],\'\',1]);
data.push([3,[C13,C23,C14],[],\'\',1]);
data.push([3,[C13,C22,C23],[],\'\',1]);
data.push([3,[C14,A26,A16],[],\'\',2]);
data.push([3,[C22,C13,C12],[],\'\',2]);
data.push([3,[C22,C12,C11],[],\'\',2]);
data.push([3,[A11,C11,A01],[],\'\',2]);
data.push([3,[C11,C01,A01],[],\'\',2]);
data.push([3,[C01,C11,C02],[],\'\',2]);
data.push([3,[C11,C12,C02],[],\'\',2]);
data.push([3,[C12,C13,C03],[],\'\',2]);
data.push([3,[C02,C12,C03],[],\'\',2]);
data.push([3,[C13,C14,C04],[],\'\',2]);
data.push([3,[C04,C03,C13],[],\'\',2]);
}
var D01 = [-l/2,-L+y,0], D02 = [-l/2-D,-2*L+y,0], D03 = [-3*l/2-D,-2*L+y,0], D04 = [-3*l/2-2*D,-L+y,0];
var D11 = [-l/2,-L+y,h], D12 = [-l/2-D,-2*L+y,h], D13 = [-3*l/2-D,-2*L+y,h], D14 = [-3*l/2-2*D,-L+y,h];
var D22 = [-l/2-D,-2*L+y,h+H],
D23 = setCoord(getMean(D01,D03,0.5),2,h+H), D24 = setCoord(getMean(B01,D04,0.5),2,h+H);
var D012 = getMean(B01,D01,1/3), D011 = getMean(B01,D01,2/3),
D112 = getMean(B11,D11,1/3), D111 = getMean(B11,D11,2/3),
D022 = getMean(D01,D02,1/3), D021 = getMean(D01,D02,2/3),
D122 = getMean(D11,D12,1/3), D121 = getMean(D11,D12,2/3),
D032 = getMean(D02,D03,1/3), D031 = getMean(D02,D03,2/3),
D132 = getMean(D12,D13,1/3), D131 = getMean(D12,D13,2/3),
D042 = getMean(D03,D04,1/3), D041 = getMean(D03,D04,2/3),
D142 = getMean(D13,D14,1/3), D141 = getMean(D13,D14,2/3),
D052 = getMean(D04,B02,1/3), D051 = getMean(D04,B02,2/3),
D152 = getMean(D14,B12,1/3), D151 = getMean(D14,B12,2/3),
D062 = getMean(B01,B02,1/3), D061 = getMean(B01,B02,2/3),
D162 = getMean(B11,B12,1/3), D161 = getMean(B11,B12,2/3),
D201 = getMean(D23,D24,1/3), D202 = getMean(D23,D24,2/3),
D000 = getMean(B02,D02,1/2), D100 = getMean(B12,D12,1/2),
D251 = getMean(D14,B22,1/3), D252 = getMean(D14,B22,2/3),
D231 = getMean(D13,D22,1/3), D232 = getMean(D13,D22,2/3),
D221 = getMean(D11,D22,1/3), D222 = getMean(D11,D22,2/3);
if(labels == 1){
data.push([1,[D01],[],\'D01\',0]); data.push([1,[D02],[],\'D02\',0]); data.push([1,[D03],[],\'D03\',0]); data.push([1,[D04],[],\'D04\',0]);
data.push([1,[D11],[],\'D11\',0]); data.push([1,[D12],[],\'D12\',0]); data.push([1,[D13],[],\'D13\',0]); data.push([1,[D14],[],\'D14\',0]);
data.push([1,[D22],[],\'D22\',0]); data.push([1,[D23],[],\'D23\',0]); data.push([1,[D24],[],\'D24\',0]);
data.push([1,[D012],[],\'D012\',0]); data.push([1,[D011],[],\'D011\',0]);
data.push([1,[D112],[],\'D112\',0]); data.push([1,[D111],[],\'D111\',0]);
data.push([1,[D022],[],\'D022\',0]); data.push([1,[D021],[],\'D021\',0]);
data.push([1,[D122],[],\'D122\',0]); data.push([1,[D121],[],\'D121\',0]);
data.push([1,[D032],[],\'D032\',0]); data.push([1,[D031],[],\'D031\',0]);
data.push([1,[D132],[],\'D132\',0]); data.push([1,[D131],[],\'D131\',0]);
data.push([1,[D042],[],\'D042\',0]); data.push([1,[D041],[],\'D041\',0]);
data.push([1,[D142],[],\'D142\',0]); data.push([1,[D141],[],\'D141\',0]);
data.push([1,[D052],[],\'D052\',0]); data.push([1,[D051],[],\'D051\',0]);
data.push([1,[D152],[],\'D152\',0]); data.push([1,[D151],[],\'D151\',0]);
data.push([1,[D062],[],\'D062\',0]); data.push([1,[D061],[],\'D061\',0]);
data.push([1,[D162],[],\'D162\',0]); data.push([1,[D161],[],\'D161\',0]);
data.push([1,[D201],[],\'D201\',0]); data.push([1,[D202],[],\'D202\',0]);
data.push([1,[D000],[],\'D000\',0]); data.push([1,[D100],[],\'D100\',0]);
data.push([1,[D251],[],\'D251\',0]); data.push([1,[D252],[],\'D252\',0]);
data.push([1,[D231],[],\'D231\',0]); data.push([1,[D232],[],\'D232\',0]);
data.push([1,[D221],[],\'D221\',0]); data.push([1,[D222],[],\'D222\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[D01,D02,D03],[],\'\',2]);
data.push([3,[D03,D04,B02],[],\'\',2]);
data.push([3,[B02,B01,D01],[],\'\',2]);
data.push([3,[D01,D03,B02],[],\'\',2]);
data.push([3,[D11,D12,D13],[],\'\',2]);
data.push([3,[D13,D14,B12],[],\'\',2]);
data.push([3,[B12,B11,D11],[],\'\',2]);
data.push([3,[D11,D13,B12],[],\'\',2]);
}
if(extern == 1){
data.push([3,[D22,D23,D11],[],\'\',1]);
data.push([3,[D23,D24,B11],[],\'\',1]);
data.push([3,[B11,D11,D23],[],\'\',1]);
data.push([3,[D24,B22,B11],[],\'\',1]);
data.push([3,[D13,D23,D22],[],\'\',1]);
data.push([3,[D13,D24,D23],[],\'\',1]);
data.push([3,[D14,D24,D13],[],\'\',1]);
data.push([3,[D14,B22,D24],[],\'\',1]);
data.push([3,[B22,D14,B12],[],\'\',2]);
data.push([3,[D22,D12,D13],[],\'\',2]);
data.push([3,[D11,D12,D22],[],\'\',2]);
data.push([3,[D14,D04,B12],[],\'\',2]);
data.push([3,[B12,D04,B02],[],\'\',2]);
data.push([3,[D14,D13,D03],[],\'\',2]);
data.push([3,[D03,D04,D14],[],\'\',2]);
data.push([3,[D13,D12,D02],[],\'\',2]);
data.push([3,[D02,D03,D13],[],\'\',2]);
data.push([3,[D12,D11,D01],[],\'\',2]);
data.push([3,[D01,D02,D12],[],\'\',2]);
data.push([3,[D11,B11,B01],[],\'\',2]);
data.push([3,[B01,D01,D11],[],\'\',2]);
}
// A base
data.push([2,[A01,A02],[d,d],\'\',1]);
data.push([2,[A02,A03],[d,d],\'\',1]);
data.push([2,[A03,A04],[d,d],\'\',1]);
data.push([2,[A04,A05],[d,d],\'\',1]);
data.push([2,[A05,A06],[d,d],\'\',1]);
data.push([2,[A06,A01],[d,d],\'\',1]);
// A support
data.push([2,[A01,A11],[d,d],\'\',1]);
data.push([2,[A02,A12],[d,d],\'\',1]);
data.push([2,[A03,A13],[d,d],\'\',1]);
data.push([2,[A04,A14],[d,d],\'\',1]);
data.push([2,[A05,A15],[d,d],\'\',1]);
data.push([2,[A06,A16],[d,d],\'\',1]);
// A hight
data.push([2,[A11,A12],[d,d],\'\',1]);
data.push([2,[A12,A13],[d,d],\'\',1]);
data.push([2,[A13,A14],[d,d],\'\',1]);
data.push([2,[A14,A15],[d,d],\'\',1]);
data.push([2,[A15,A16],[d,d],\'\',1]);
data.push([2,[A16,A11],[d,d],\'\',1]);
// A roof
data.push([2,[A13,A23],[d,d],\'\',1]);
data.push([2,[A16,A26],[d,d],\'\',1]);
data.push([2,[A23,A26],[d,d],\'\',1]);
data.push([2,[A11,A26],[d,d],\'\',1]);
data.push([2,[A15,A26],[d,d],\'\',1]);
data.push([2,[A12,A23],[d,d],\'\',1]);
data.push([2,[A14,A23],[d,d],\'\',1]);
data.push([2,[A11,A25],[d,d],\'\',1]);
data.push([2,[A15,A25],[d,d],\'\',1]);
data.push([2,[A12,A24],[d,d],\'\',1]);
data.push([2,[A14,A24],[d,d],\'\',1]);
// A intern
data.push([2,[A201,A14],[d,d],\'\',1]);
data.push([2,[A201,A15],[d,d],\'\',1]);
data.push([2,[A201,A11],[d,d],\'\',1]);
data.push([2,[A201,A12],[d,d],\'\',1]);
data.push([2,[A011,A111],[d,d],\'\',1]);
data.push([2,[A012,A112],[d,d],\'\',1]);
data.push([2,[A021,A121],[d,d],\'\',1]);
data.push([2,[A022,A122],[d,d],\'\',1]);
data.push([2,[A031,A131],[d,d],\'\',1]);
data.push([2,[A032,A132],[d,d],\'\',1]);
data.push([2,[A041,A141],[d,d],\'\',1]);
data.push([2,[A042,A142],[d,d],\'\',1]);
data.push([2,[A051,A151],[d,d],\'\',1]);
data.push([2,[A052,A152],[d,d],\'\',1]);
data.push([2,[A061,A161],[d,d],\'\',1]);
data.push([2,[A062,A162],[d,d],\'\',1]);
data.push([2,[A03,A06],[d,d],\'\',2]);
data.push([2,[A04,A02],[d,d],\'\',2]);
data.push([2,[A012,A041],[d,d],\'\',2]);
data.push([2,[A011,A042],[d,d],\'\',2]);
data.push([2,[A05,A01],[d,d],\'\',2]);
data.push([2,[A021,A062],[d,d],\'\',2]);
data.push([2,[A022,A061],[d,d],\'\',2]);
data.push([2,[A031,A052],[d,d],\'\',2]);
data.push([2,[A032,A051],[d,d],\'\',2]);
data.push([2,[A151,A512],[d,d],\'\',1]);
data.push([2,[A152,A511],[d,d],\'\',1]);
data.push([2,[A131,A411],[d,d],\'\',1]);
data.push([2,[A132,A412],[d,d],\'\',1]);
data.push([2,[A121,A212],[d,d],\'\',1]);
data.push([2,[A122,A211],[d,d],\'\',1]);
data.push([2,[A161,A611],[d,d],\'\',1]);
data.push([2,[A162,A612],[d,d],\'\',1]);
data.push([2,[A411,A511],[d,d],\'\',1]);
data.push([2,[A412,A512],[d,d],\'\',1]);
data.push([2,[A211,A611],[d,d],\'\',1]);
data.push([2,[A212,A612],[d,d],\'\',1]);
// B base
data.push([2,[A02,B01],[d,d],\'\',1]);
data.push([2,[B01,B02],[d,d],\'\',1]);
data.push([2,[B02,B03],[d,d],\'\',1]);
data.push([2,[B03,B04],[d,d],\'\',1]);
data.push([2,[B04,A03],[d,d],\'\',1]);
// B support
data.push([2,[B01,B11],[d,d],\'\',1]);
data.push([2,[B02,B12],[d,d],\'\',1]);
data.push([2,[B03,B13],[d,d],\'\',1]);
data.push([2,[B04,B14],[d,d],\'\',1]);
// B hight
data.push([2,[A12,B11],[d,d],\'\',1]);
data.push([2,[B11,B12],[d,d],\'\',1]);
data.push([2,[B12,B13],[d,d],\'\',1]);
data.push([2,[B13,B14],[d,d],\'\',1]);
data.push([2,[B14,A13],[d,d],\'\',1]);
// B roof
data.push([2,[B12,B22],[d,d],\'\',1]);
data.push([2,[A23,B22],[d,d],\'\',1]);
data.push([2,[B11,B22],[d,d],\'\',1]);
data.push([2,[B13,B22],[d,d],\'\',1]);
data.push([2,[B11,B23],[d,d],\'\',1]);
data.push([2,[B13,B23],[d,d],\'\',1]);
data.push([2,[B14,B24],[d,d],\'\',1]);
data.push([2,[A12,B24],[d,d],\'\',1]);
data.push([2,[A23,B14],[d,d],\'\',1]);
// B structure
data.push([2,[B011,B111],[d,d],\'\',1]);
data.push([2,[B012,B112],[d,d],\'\',1]);
data.push([2,[B021,B121],[d,d],\'\',1]);
data.push([2,[B022,B122],[d,d],\'\',1]);
data.push([2,[B031,B131],[d,d],\'\',1]);
data.push([2,[B032,B132],[d,d],\'\',1]);
data.push([2,[B041,B141],[d,d],\'\',1]);
data.push([2,[B042,B142],[d,d],\'\',1]);
data.push([2,[B112,B202],[d,d],\'\',1]);
data.push([2,[B131,B202],[d,d],\'\',1]);
data.push([2,[B111,B201],[d,d],\'\',1]);
data.push([2,[B132,B201],[d,d],\'\',1]);
// B intern
data.push([2,[A03,B02],[d,d],\'\',1]);
data.push([2,[A13,B12],[d,d],\'\',1]);
data.push([2,[B01,B03],[d,d],\'\',2]);
data.push([2,[A02,B04],[d,d],\'\',2]);
data.push([2,[B012,B031],[d,d],\'\',2]);
data.push([2,[B011,B032],[d,d],\'\',2]);
data.push([2,[B11,B13],[d,d],\'\',2]);
data.push([2,[A12,B14],[d,d],\'\',2]);
data.push([2,[B112,B131],[d,d],\'\',2]);
data.push([2,[B111,B132],[d,d],\'\',2]);
data.push([2,[D061,A021],[d,d],\'\',2]);
data.push([2,[D062,A022],[d,d],\'\',2]);
data.push([2,[B021,B042],[d,d],\'\',2]);
data.push([2,[B022,B041],[d,d],\'\',2]);
data.push([2,[D161,A121],[d,d],\'\',2]);
data.push([2,[D162,A122],[d,d],\'\',2]);
data.push([2,[B121,B142],[d,d],\'\',2]);
data.push([2,[B122,B141],[d,d],\'\',2]);
data.push([2,[B000,B100],[d,d],\'\',1]);
data.push([2,[B141,B242],[d,d],\'\',1]);
data.push([2,[B142,B241],[d,d],\'\',1]);
data.push([2,[B121,B221],[d,d],\'\',1]);
data.push([2,[B122,B222],[d,d],\'\',1]);
data.push([2,[D162,B211],[d,d],\'\',1]);
data.push([2,[D161,B212],[d,d],\'\',1]);
data.push([2,[B221,B241],[d,d],\'\',1]);
data.push([2,[B222,B242],[d,d],\'\',1]);
data.push([2,[A211,B211],[d,d],\'\',1]);
data.push([2,[A212,B212],[d,d],\'\',1]);
// C base
data.push([2,[A01,C01],[d,d],\'\',1]);
data.push([2,[C01,C02],[d,d],\'\',1]);
data.push([2,[C02,C03],[d,d],\'\',1]);
data.push([2,[C03,C04],[d,d],\'\',1]);
data.push([2,[C04,A06],[d,d],\'\',1]);
// C support
data.push([2,[C01,C11],[d,d],\'\',1]);
data.push([2,[C02,C12],[d,d],\'\',1]);
data.push([2,[C03,C13],[d,d],\'\',1]);
data.push([2,[C04,C14],[d,d],\'\',1]);
// C hight
data.push([2,[A11,C11],[d,d],\'\',1]);
data.push([2,[C11,C12],[d,d],\'\',1]);
data.push([2,[C12,C13],[d,d],\'\',1]);
data.push([2,[C13,C14],[d,d],\'\',1]);
data.push([2,[C14,A16],[d,d],\'\',1]);
// C roof
data.push([2,[C12,C22],[d,d],\'\',1]);
data.push([2,[A26,C22],[d,d],\'\',1]);
data.push([2,[C11,C22],[d,d],\'\',1]);
data.push([2,[C13,C22],[d,d],\'\',1]);
data.push([2,[C11,C23],[d,d],\'\',1]);
data.push([2,[C13,C23],[d,d],\'\',1]);
data.push([2,[C14,C24],[d,d],\'\',1]);
data.push([2,[A11,C24],[d,d],\'\',1]);
data.push([2,[A26,C14],[d,d],\'\',1]);
data.push([2,[C121,C222],[d,d],\'\',1]);
data.push([2,[C122,C221],[d,d],\'\',1]);
data.push([2,[C131,C321],[d,d],\'\',1]);
data.push([2,[C132,C322],[d,d],\'\',1]);
data.push([2,[C151,C522],[d,d],\'\',1]);
data.push([2,[C152,C521],[d,d],\'\',1]);
data.push([2,[A612,C222],[d,d],\'\',1]);
data.push([2,[A611,C221],[d,d],\'\',1]);
data.push([2,[C321,C521],[d,d],\'\',1]);
data.push([2,[C322,C522],[d,d],\'\',1]);
// C structure
data.push([2,[C201,C111],[d,d],\'\',1]);
data.push([2,[C201,C142],[d,d],\'\',1]);
data.push([2,[C202,C112],[d,d],\'\',1]);
data.push([2,[C202,C141],[d,d],\'\',1]);
data.push([2,[C011,C111],[d,d],\'\',1]);
data.push([2,[C012,C112],[d,d],\'\',1]);
data.push([2,[C021,C121],[d,d],\'\',1]);
data.push([2,[C022,C122],[d,d],\'\',1]);
data.push([2,[C031,C131],[d,d],\'\',1]);
data.push([2,[C032,C132],[d,d],\'\',1]);
data.push([2,[C041,C141],[d,d],\'\',1]);
data.push([2,[C042,C142],[d,d],\'\',1]);
data.push([2,[C051,C151],[d,d],\'\',1]);
data.push([2,[C052,C152],[d,d],\'\',1]);
// C intern
data.push([2,[C02,A06],[d,d],\'\',1]);
data.push([2,[C12,A16],[d,d],\'\',1]);
data.push([2,[A01,C04],[d,d],\'\',2]);
data.push([2,[C011,C042],[d,d],\'\',2]);
data.push([2,[C012,C041],[d,d],\'\',2]);
data.push([2,[C03,C01],[d,d],\'\',2]);
data.push([2,[A11,C14],[d,d],\'\',2]);
data.push([2,[C111,C142],[d,d],\'\',2]);
data.push([2,[C112,C141],[d,d],\'\',2]);
data.push([2,[C13,C11],[d,d],\'\',2]);
data.push([2,[A062,C021],[d,d],\'\',2]);
data.push([2,[A061,C022],[d,d],\'\',2]);
data.push([2,[C052,C031],[d,d],\'\',2]);
data.push([2,[C051,C032],[d,d],\'\',2]);
data.push([2,[A162,C121],[d,d],\'\',2]);
data.push([2,[A161,C122],[d,d],\'\',2]);
data.push([2,[C152,C131],[d,d],\'\',2]);
data.push([2,[C151,C132],[d,d],\'\',2]);
data.push([2,[C000,C100],[d,d],\'\',1]);
// D base
data.push([2,[B01,D01],[d,d],\'\',1]);
data.push([2,[D01,D02],[d,d],\'\',1]);
data.push([2,[D02,D03],[d,d],\'\',1]);
data.push([2,[D03,D04],[d,d],\'\',1]);
data.push([2,[D04,B02],[d,d],\'\',1]);
// D support
data.push([2,[D01,D11],[d,d],\'\',1]);
data.push([2,[D02,D12],[d,d],\'\',1]);
data.push([2,[D03,D13],[d,d],\'\',1]);
data.push([2,[D04,D14],[d,d],\'\',1]);
// D hight
data.push([2,[B11,D11],[d,d],\'\',1]);
data.push([2,[D11,D12],[d,d],\'\',1]);
data.push([2,[D12,D13],[d,d],\'\',1]);
data.push([2,[D13,D14],[d,d],\'\',1]);
data.push([2,[D14,B12],[d,d],\'\',1]);
// D roof
data.push([2,[D12,D22],[d,d],\'\',1]);
data.push([2,[D11,D22],[d,d],\'\',1]);
data.push([2,[D13,D22],[d,d],\'\',1]);
data.push([2,[D11,D23],[d,d],\'\',1]);
data.push([2,[D13,D23],[d,d],\'\',1]);
data.push([2,[D14,B22],[d,d],\'\',1]);
data.push([2,[D14,D24],[d,d],\'\',1]);
data.push([2,[B11,D24],[d,d],\'\',1]);
data.push([2,[D22,B22],[d,d],\'\',1]);
// D structure
data.push([2,[D201,D111],[d,d],\'\',1]);
data.push([2,[D201,D142],[d,d],\'\',1]);
data.push([2,[D202,D112],[d,d],\'\',1]);
data.push([2,[D202,D141],[d,d],\'\',1]);
data.push([2,[D011,D111],[d,d],\'\',1]);
data.push([2,[D012,D112],[d,d],\'\',1]);
data.push([2,[D021,D121],[d,d],\'\',1]);
data.push([2,[D022,D122],[d,d],\'\',1]);
data.push([2,[D031,D131],[d,d],\'\',1]);
data.push([2,[D032,D132],[d,d],\'\',1]);
data.push([2,[D041,D141],[d,d],\'\',1]);
data.push([2,[D042,D142],[d,d],\'\',1]);
data.push([2,[D051,D151],[d,d],\'\',1]);
data.push([2,[D052,D152],[d,d],\'\',1]);
// D intern
data.push([2,[D02,B02],[d,d],\'\',1]);
data.push([2,[D12,B12],[d,d],\'\',1]);
data.push([2,[D01,D03],[d,d],\'\',2]);
data.push([2,[B01,D04],[d,d],\'\',2]);
data.push([2,[D012,D041],[d,d],\'\',2]);
data.push([2,[D011,D042],[d,d],\'\',2]);
data.push([2,[D11,D13],[d,d],\'\',2]);
data.push([2,[B11,D14],[d,d],\'\',2]);
data.push([2,[D112,D141],[d,d],\'\',2]);
data.push([2,[D111,D142],[d,d],\'\',2]);
data.push([2,[D021,D061],[d,d],\'\',2]);
data.push([2,[D022,D062],[d,d],\'\',2]);
data.push([2,[D031,D052],[d,d],\'\',2]);
data.push([2,[D032,D051],[d,d],\'\',2]);
data.push([2,[D121,D161],[d,d],\'\',2]);
data.push([2,[D122,D162],[d,d],\'\',2]);
data.push([2,[D131,D152],[d,d],\'\',2]);
data.push([2,[D132,D151],[d,d],\'\',2]);
data.push([2,[D061,D161],[d,d],\'\',2]);
data.push([2,[D062,D162],[d,d],\'\',2]);
data.push([2,[D000,D100],[d,d],\'\',1]);
data.push([2,[D151,D252],[d,d],\'\',1]);
data.push([2,[D152,D251],[d,d],\'\',1]);
data.push([2,[D131,D231],[d,d],\'\',1]);
data.push([2,[D132,D232],[d,d],\'\',1]);
data.push([2,[D121,D222],[d,d],\'\',1]);
data.push([2,[D122,D221],[d,d],\'\',1]);
data.push([2,[D231,D251],[d,d],\'\',1]);
data.push([2,[D232,D252],[d,d],\'\',1]);
data.push([2,[D221,B211],[d,d],\'\',1]);
data.push([2,[D222,B212],[d,d],\'\',1]);
return data;
}
function getMean(point_1, point_2, weight){
var mean = [];
for(var i = 0;i < 3;i++){
mean.push(weight*point_1[i]+(1-weight)*point_2[i]);
}
return mean;
}
function setCoord(point,n,value){
point[n] = value;
return point;
}
function setDesign(labels,floors,extern,data){
var s = 0.2;
var d = 10*s;
var h = 280*s;
var l = 500*s;
var L = l*Math.cos(Math.PI/6);
var D = l*Math.sin(Math.PI/6);
var H = 250*s;
var y = 200*s;
var A01 = [l/2,y+L,0], A02 = [-l/2,y+L,0], A03 = [-l/2-D,y+2*L,0],
A04 = [-l/2,y+3*L,0], A05 = [l/2,y+3*L,0], A06 = [l/2+D,y+2*L,0];
var A11 = [l/2,y+L,h], A12 = [-l/2,y+L,h], A13 = [-l/2-D,y+2*L,h],
A14 = [-l/2,y+3*L,h], A15 = [l/2,y+3*L,h], A16 = [l/2+D,y+2*L,h];
var A23 = [-l/2-D,y+2*L,h+H], A26 = [l/2+D,y+2*L,h+H],
A24 = setCoord(getMean(A02,A04,0.5),2,h+H), A25 = setCoord(getMean(A01,A05,0.5),2,h+H);
var A012 = getMean(A01,A02,1/3), A011 = getMean(A01,A02,2/3),
A112 = getMean(A11,A12,1/3), A111 = getMean(A11,A12,2/3),
A022 = getMean(A02,A03,1/3), A021 = getMean(A02,A03,2/3),
A122 = getMean(A12,A13,1/3), A121 = getMean(A12,A13,2/3),
A032 = getMean(A03,A04,1/3), A031 = getMean(A03,A04,2/3),
A132 = getMean(A13,A14,1/3), A131 = getMean(A13,A14,2/3),
A042 = getMean(A04,A05,1/3), A041 = getMean(A04,A05,2/3),
A142 = getMean(A14,A15,1/3), A141 = getMean(A14,A15,2/3),
A052 = getMean(A05,A06,1/3), A051 = getMean(A05,A06,2/3),
A152 = getMean(A15,A16,1/3), A151 = getMean(A15,A16,2/3),
A062 = getMean(A06,A01,1/3), A061 = getMean(A06,A01,2/3),
A162 = getMean(A16,A11,1/3), A161 = getMean(A16,A11,2/3),
A211 = getMean(A12,A23,1/3), A212 = getMean(A12,A23,2/3),
A411 = getMean(A14,A23,1/3), A412 = getMean(A14,A23,2/3),
A511 = getMean(A15,A26,1/3), A512 = getMean(A15,A26,2/3),
A611 = getMean(A11,A26,1/3), A612 = getMean(A11,A26,2/3),
A201 = getMean(A24,A25,1/2);
if(labels == 1){
data.push([1,[A01],[],'A01',0]); data.push([1,[A02],[],'A02',0]); data.push([1,[A03],[],'A03',0]);
data.push([1,[A04],[],'A04',0]); data.push([1,[A05],[],'A05',0]); data.push([1,[A06],[],'A06',0]);
data.push([1,[A11],[],'A11',0]); data.push([1,[A12],[],'A12',0]); data.push([1,[A13],[],'A13',0]);
data.push([1,[A14],[],'A14',0]); data.push([1,[A15],[],'A15',0]); data.push([1,[A16],[],'A16',0]);
data.push([1,[A23],[],'A23',0]); data.push([1,[A26],[],'A26\',0]); data.push([1,[A24],[],\'A24\',0]); data.push([1,[A25],[],\'A25\',0]);
data.push([1,[A012],[],\'A012\',0]); data.push([1,[A011],[],\'A011\',0]);
data.push([1,[A112],[],\'A112\',0]); data.push([1,[A111],[],\'A111\',0]);
data.push([1,[A022],[],\'A022\',0]); data.push([1,[A021],[],\'A021\',0]);
data.push([1,[A122],[],\'A122\',0]); data.push([1,[A121],[],\'A121\',0]);
data.push([1,[A032],[],\'A032\',0]); data.push([1,[A031],[],\'A031\',0]);
data.push([1,[A132],[],\'A132\',0]); data.push([1,[A131],[],\'A131\',0]);
data.push([1,[A042],[],\'A042\',0]); data.push([1,[A041],[],\'A041\',0]);
data.push([1,[A142],[],\'A142\',0]); data.push([1,[A141],[],\'A141\',0]);
data.push([1,[A052],[],\'A052\',0]); data.push([1,[A051],[],\'A051\',0]);
data.push([1,[A152],[],\'A152\',0]); data.push([1,[A151],[],\'A151\',0]);
data.push([1,[A062],[],\'A062\',0]); data.push([1,[A061],[],\'A061\',0]);
data.push([1,[A162],[],\'A162\',0]); data.push([1,[A161],[],\'A161\',0]);
data.push([1,[A211],[],\'A211\',0]); data.push([1,[A212],[],\'A212\',0]);
data.push([1,[A411],[],\'A411\',0]); data.push([1,[A412],[],\'A412\',0]);
data.push([1,[A511],[],\'A511\',0]); data.push([1,[A512],[],\'A512\',0]);
data.push([1,[A611],[],\'A611\',0]); data.push([1,[A612],[],\'A612\',0]);
data.push([1,[A201],[],\'A201\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[A01,A02,A03],[],\'\',2]);
data.push([3,[A03,A04,A05],[],\'\',2]);
data.push([3,[A05,A06,A01],[],\'\',2]);
data.push([3,[A01,A03,A05],[],\'\',2]);
}
if(extern == 1){
data.push([3,[A14,A24,A23],[],\'\',1]);
data.push([3,[A14,A25,A24],[],\'\',1]);
data.push([3,[A15,A25,A14],[],\'\',1]);
data.push([3,[A15,A26,A25],[],\'\',1]);
data.push([3,[A23,A24,A12],[],\'\',1]);
data.push([3,[A24,A25,A11],[],\'\',1]);
data.push([3,[A11,A12,A24],[],\'\',1]);
data.push([3,[A25,A26,A11],[],\'\',1]);
data.push([3,[A26,A15,A16],[],\'\',2]);
data.push([3,[A23,A13,A14],[],\'\',2]);
}
var B01 = [-l/2-D,y,0], B02 = [-3*l/2-D,y,0], B03 = [-3*l/2-2*D,y+L,0], B04 = [-3*l/2-D,y+2*L,0];
var B11 = [-l/2-D,y,h], B12 = [-3*l/2-D,y,h], B13 = [-3*l/2-2*D,y+L,h], B14 = [-3*l/2-D,y+2*L,h];
var B22 = [-3*l/2-D,y,h+H],
B23 = setCoord(getMean(B01,B03,0.5),2,h+H), B24 = setCoord(getMean(A02,B04,0.5),2,h+H);
var B012 = getMean(A02,B01,1/3), B011 = getMean(A02,B01,2/3),
B112 = getMean(A12,B11,1/3), B111 = getMean(A12,B11,2/3),
B022 = getMean(B02,B03,1/3), B021 = getMean(B02,B03,2/3),
B122 = getMean(B12,B13,1/3), B121 = getMean(B12,B13,2/3),
B032 = getMean(B03,B04,1/3), B031 = getMean(B03,B04,2/3),
B132 = getMean(B13,B14,1/3), B131 = getMean(B13,B14,2/3),
B042 = getMean(B04,A03,1/3), B041 = getMean(B04,A03,2/3),
B142 = getMean(B14,A13,1/3), B141 = getMean(B14,A13,2/3),
B201 = getMean(B23,B24,1/3), B202 = getMean(B23,B24,2/3),
B000 = getMean(B02,A03,1/2), B100 = getMean(B12,A13,1/2),
B241 = getMean(B14,A23,1/3), B242 = getMean(B14,A23,2/3),
B221 = getMean(B13,B22,1/3), B222 = getMean(B13,B22,2/3),
B211 = getMean(B11,B22,1/3), B212 = getMean(B11,B22,2/3);
if(labels == 1){
data.push([1,[B01],[],\'B01\',0]); data.push([1,[B02],[],\'B02\',0]); data.push([1,[B03],[],\'B03\',0]); data.push([1,[B04],[],\'B04\',0]);
data.push([1,[B11],[],\'B11\',0]); data.push([1,[B12],[],\'B12\',0]); data.push([1,[B13],[],\'B13\',0]); data.push([1,[B14],[],\'B14\',0]);
data.push([1,[B22],[],\'B22\',0]); data.push([1,[B23],[],\'B23\',0]); data.push([1,[B24],[],\'B24\',0]);
data.push([1,[B012],[],\'B012\',0]); data.push([1,[B011],[],\'B011\',0]);
data.push([1,[B112],[],\'B112\',0]); data.push([1,[B111],[],\'B111\',0]);
data.push([1,[B022],[],\'B022\',0]); data.push([1,[B021],[],\'B021\',0]);
data.push([1,[B122],[],\'B122\',0]); data.push([1,[B121],[],\'B121\',0]);
data.push([1,[B032],[],\'B032\',0]); data.push([1,[B031],[],\'B031\',0]);
data.push([1,[B132],[],\'B132\',0]); data.push([1,[B131],[],\'B131\',0]);
data.push([1,[B042],[],\'B042\',0]); data.push([1,[B041],[],\'B041\',0]);
data.push([1,[B142],[],\'B142\',0]); data.push([1,[B141],[],\'B141\',0]);
data.push([1,[B201],[],\'B201\',0]); data.push([1,[B202],[],\'B202\',0]);
data.push([1,[B000],[],\'B000\',0]); data.push([1,[B100],[],\'B100\',0]);
data.push([1,[B241],[],\'B241\',0]); data.push([1,[B242],[],\'B242\',0]);
data.push([1,[B221],[],\'B221\',0]); data.push([1,[B222],[],\'B222\',0]);
data.push([1,[B211],[],\'B211\',0]); data.push([1,[B212],[],\'B212\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[B01,B02,B03],[],\'\',2]);
data.push([3,[B03,B04,A03],[],\'\',2]);
data.push([3,[A03,A02,B01],[],\'\',2]);
data.push([3,[B01,B03,A03],[],\'\',2]);
data.push([3,[B11,B12,B13],[],\'\',2]);
data.push([3,[B13,B14,A13],[],\'\',2]);
data.push([3,[A13,A12,B11],[],\'\',2]);
data.push([3,[B11,B13,A13],[],\'\',2]);
}
if(extern == 1){
data.push([3,[B13,B23,B22],[],\'\',1]);
data.push([3,[B13,B24,B23],[],\'\',1]);
data.push([3,[B14,B24,B13],[],\'\',1]);
data.push([3,[B14,A23,B24],[],\'\',1]);
data.push([3,[B22,B23,B11],[],\'\',1]);
data.push([3,[B23,B24,A12],[],\'\',1]);
data.push([3,[A12,B11,B23],[],\'\',1]);
data.push([3,[B24,A23,A12],[],\'\',1]);
data.push([3,[A23,B14,A13],[],\'\',2]);
data.push([3,[B22,B12,B13],[],\'\',2]);
data.push([3,[B14,B13,B03],[],\'\',2]);
data.push([3,[B03,B04,B14],[],\'\',2]);
data.push([3,[B13,B12,B02],[],\'\',2]);
data.push([3,[B02,B03,B13],[],\'\',2]);
}
var C01 = [l/2+D,y,0], C02 = [3*l/2+D,y,0], C03 = [3*l/2+2*D,y+L,0], C04 = [3*l/2+D,y+2*L,0];
var C11 = [l/2+D,y,h], C12 = [3*l/2+D,y,h], C13 = [3*l/2+2*D,y+L,h], C14 = [3*l/2+D,y+2*L,h];
var C22 = [3*l/2+D,y,h+H],
C23 = setCoord(getMean(C01,C03,0.5),2,h+H), C24 = setCoord(getMean(A01,C04,0.5),2,h+H);
var C012 = getMean(A01,C01,1/3), C011 = getMean(A01,C01,2/3),
C112 = getMean(A11,C11,1/3), C111 = getMean(A11,C11,2/3),
C022 = getMean(C01,C02,1/3), C021 = getMean(C01,C02,2/3),
C122 = getMean(C11,C12,1/3), C121 = getMean(C11,C12,2/3),
C032 = getMean(C02,C03,1/3), C031 = getMean(C02,C03,2/3),
C132 = getMean(C12,C13,1/3), C131 = getMean(C12,C13,2/3),
C042 = getMean(C03,C04,1/3), C041 = getMean(C03,C04,2/3),
C142 = getMean(C13,C14,1/3), C141 = getMean(C13,C14,2/3),
C052 = getMean(C04,A06,1/3), C051 = getMean(C04,A06,2/3),
C152 = getMean(C14,A16,1/3), C151 = getMean(C14,A16,2/3),
C201 = getMean(C23,C24,1/3), C202 = getMean(C23,C24,2/3),
C000 = getMean(A06,C02,1/2), C100 = getMean(A16,C12,1/2),
C221 = getMean(C11,C22,1/3), C222 = getMean(C11,C22,2/3),
C321 = getMean(C13,C22,1/3), C322 = getMean(C13,C22,2/3),
C521 = getMean(C14,A26,1/3), C522 = getMean(C14,A26,2/3);
if(labels == 1){
data.push([1,[C01],[],\'C01\',0]); data.push([1,[C02],[],\'C02\',0]); data.push([1,[C03],[],\'C03\',0]); data.push([1,[C04],[],\'C04\',0]);
data.push([1,[C11],[],\'C11\',0]); data.push([1,[C12],[],\'C12\',0]); data.push([1,[C13],[],\'C13\',0]); data.push([1,[C14],[],\'C14\',0]);
data.push([1,[C22],[],\'C22\',0]); data.push([1,[C23],[],\'C23\',0]); data.push([1,[C24],[],\'C24\',0]);
data.push([1,[C012],[],\'C012\',0]); data.push([1,[C011],[],\'C011\',0]);
data.push([1,[C112],[],\'C112\',0]); data.push([1,[C111],[],\'C111\',0]);
data.push([1,[C022],[],\'C022\',0]); data.push([1,[C021],[],\'C021\',0]);
data.push([1,[C122],[],\'C122\',0]); data.push([1,[C121],[],\'C121\',0]);
data.push([1,[C032],[],\'C032\',0]); data.push([1,[C031],[],\'C031\',0]);
data.push([1,[C132],[],\'C132\',0]); data.push([1,[C131],[],\'C131\',0]);
data.push([1,[C042],[],\'C042\',0]); data.push([1,[C041],[],\'C041\',0]);
data.push([1,[C142],[],\'C142\',0]); data.push([1,[C141],[],\'C141\',0]);
data.push([1,[C052],[],\'C052\',0]); data.push([1,[C051],[],\'C051\',0]);
data.push([1,[C152],[],\'C152\',0]); data.push([1,[C151],[],\'C151\',0]);
data.push([1,[C201],[],\'C201\',0]); data.push([1,[C202],[],\'C202\',0]);
data.push([1,[C000],[],\'C000\',0]); data.push([1,[C100],[],\'C100\',0]);
data.push([1,[C221],[],\'C221\',0]); data.push([1,[C222],[],\'C222\',0]);
data.push([1,[C321],[],\'C321\',0]); data.push([1,[C322],[],\'C322\',0]);
data.push([1,[C521],[],\'C521\',0]); data.push([1,[C522],[],\'C522\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[C03,C02,C01],[],\'\',2]);
data.push([3,[A06,C04,C03],[],\'\',2]);
data.push([3,[C01,A01,A06],[],\'\',2]);
data.push([3,[A06,C03,C01],[],\'\',2]);
data.push([3,[C13,C12,C11],[],\'\',2]);
data.push([3,[A16,C14,C13],[],\'\',2]);
data.push([3,[C11,A11,A16],[],\'\',2]);
data.push([3,[A16,C13,C11],[],\'\',2]);
}
if(extern == 1){
data.push([3,[A26,C24,A11],[],\'\',1]);
data.push([3,[C24,C23,C11],[],\'\',1]);
data.push([3,[C11,A11,C24],[],\'\',1]);
data.push([3,[C23,C22,C11],[],\'\',1]);
data.push([3,[C14,C24,A26],[],\'\',1]);
data.push([3,[C14,C23,C24],[],\'\',1]);
data.push([3,[C13,C23,C14],[],\'\',1]);
data.push([3,[C13,C22,C23],[],\'\',1]);
data.push([3,[C14,A26,A16],[],\'\',2]);
data.push([3,[C22,C13,C12],[],\'\',2]);
data.push([3,[C22,C12,C11],[],\'\',2]);
data.push([3,[A11,C11,A01],[],\'\',2]);
data.push([3,[C11,C01,A01],[],\'\',2]);
data.push([3,[C01,C11,C02],[],\'\',2]);
data.push([3,[C11,C12,C02],[],\'\',2]);
data.push([3,[C12,C13,C03],[],\'\',2]);
data.push([3,[C02,C12,C03],[],\'\',2]);
data.push([3,[C13,C14,C04],[],\'\',2]);
data.push([3,[C04,C03,C13],[],\'\',2]);
}
var D01 = [-l/2,-L+y,0], D02 = [-l/2-D,-2*L+y,0], D03 = [-3*l/2-D,-2*L+y,0], D04 = [-3*l/2-2*D,-L+y,0];
var D11 = [-l/2,-L+y,h], D12 = [-l/2-D,-2*L+y,h], D13 = [-3*l/2-D,-2*L+y,h], D14 = [-3*l/2-2*D,-L+y,h];
var D22 = [-l/2-D,-2*L+y,h+H],
D23 = setCoord(getMean(D01,D03,0.5),2,h+H), D24 = setCoord(getMean(B01,D04,0.5),2,h+H);
var D012 = getMean(B01,D01,1/3), D011 = getMean(B01,D01,2/3),
D112 = getMean(B11,D11,1/3), D111 = getMean(B11,D11,2/3),
D022 = getMean(D01,D02,1/3), D021 = getMean(D01,D02,2/3),
D122 = getMean(D11,D12,1/3), D121 = getMean(D11,D12,2/3),
D032 = getMean(D02,D03,1/3), D031 = getMean(D02,D03,2/3),
D132 = getMean(D12,D13,1/3), D131 = getMean(D12,D13,2/3),
D042 = getMean(D03,D04,1/3), D041 = getMean(D03,D04,2/3),
D142 = getMean(D13,D14,1/3), D141 = getMean(D13,D14,2/3),
D052 = getMean(D04,B02,1/3), D051 = getMean(D04,B02,2/3),
D152 = getMean(D14,B12,1/3), D151 = getMean(D14,B12,2/3),
D062 = getMean(B01,B02,1/3), D061 = getMean(B01,B02,2/3),
D162 = getMean(B11,B12,1/3), D161 = getMean(B11,B12,2/3),
D201 = getMean(D23,D24,1/3), D202 = getMean(D23,D24,2/3),
D000 = getMean(B02,D02,1/2), D100 = getMean(B12,D12,1/2),
D251 = getMean(D14,B22,1/3), D252 = getMean(D14,B22,2/3),
D231 = getMean(D13,D22,1/3), D232 = getMean(D13,D22,2/3),
D221 = getMean(D11,D22,1/3), D222 = getMean(D11,D22,2/3);
if(labels == 1){
data.push([1,[D01],[],\'D01\',0]); data.push([1,[D02],[],\'D02\',0]); data.push([1,[D03],[],\'D03\',0]); data.push([1,[D04],[],\'D04\',0]);
data.push([1,[D11],[],\'D11\',0]); data.push([1,[D12],[],\'D12\',0]); data.push([1,[D13],[],\'D13\',0]); data.push([1,[D14],[],\'D14\',0]);
data.push([1,[D22],[],\'D22\',0]); data.push([1,[D23],[],\'D23\',0]); data.push([1,[D24],[],\'D24\',0]);
data.push([1,[D012],[],\'D012\',0]); data.push([1,[D011],[],\'D011\',0]);
data.push([1,[D112],[],\'D112\',0]); data.push([1,[D111],[],\'D111\',0]);
data.push([1,[D022],[],\'D022\',0]); data.push([1,[D021],[],\'D021\',0]);
data.push([1,[D122],[],\'D122\',0]); data.push([1,[D121],[],\'D121\',0]);
data.push([1,[D032],[],\'D032\',0]); data.push([1,[D031],[],\'D031\',0]);
data.push([1,[D132],[],\'D132\',0]); data.push([1,[D131],[],\'D131\',0]);
data.push([1,[D042],[],\'D042\',0]); data.push([1,[D041],[],\'D041\',0]);
data.push([1,[D142],[],\'D142\',0]); data.push([1,[D141],[],\'D141\',0]);
data.push([1,[D052],[],\'D052\',0]); data.push([1,[D051],[],\'D051\',0]);
data.push([1,[D152],[],\'D152\',0]); data.push([1,[D151],[],\'D151\',0]);
data.push([1,[D062],[],\'D062\',0]); data.push([1,[D061],[],\'D061\',0]);
data.push([1,[D162],[],\'D162\',0]); data.push([1,[D161],[],\'D161\',0]);
data.push([1,[D201],[],\'D201\',0]); data.push([1,[D202],[],\'D202\',0]);
data.push([1,[D000],[],\'D000\',0]); data.push([1,[D100],[],\'D100\',0]);
data.push([1,[D251],[],\'D251\',0]); data.push([1,[D252],[],\'D252\',0]);
data.push([1,[D231],[],\'D231\',0]); data.push([1,[D232],[],\'D232\',0]);
data.push([1,[D221],[],\'D221\',0]); data.push([1,[D222],[],\'D222\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[D01,D02,D03],[],\'\',2]);
data.push([3,[D03,D04,B02],[],\'\',2]);
data.push([3,[B02,B01,D01],[],\'\',2]);
data.push([3,[D01,D03,B02],[],\'\',2]);
data.push([3,[D11,D12,D13],[],\'\',2]);
data.push([3,[D13,D14,B12],[],\'\',2]);
data.push([3,[B12,B11,D11],[],\'\',2]);
data.push([3,[D11,D13,B12],[],\'\',2]);
}
if(extern == 1){
data.push([3,[D22,D23,D11],[],\'\',1]);
data.push([3,[D23,D24,B11],[],\'\',1]);
data.push([3,[B11,D11,D23],[],\'\',1]);
data.push([3,[D24,B22,B11],[],\'\',1]);
data.push([3,[D13,D23,D22],[],\'\',1]);
data.push([3,[D13,D24,D23],[],\'\',1]);
data.push([3,[D14,D24,D13],[],\'\',1]);
data.push([3,[D14,B22,D24],[],\'\',1]);
data.push([3,[B22,D14,B12],[],\'\',2]);
data.push([3,[D22,D12,D13],[],\'\',2]);
data.push([3,[D11,D12,D22],[],\'\',2]);
data.push([3,[D14,D04,B12],[],\'\',2]);
data.push([3,[B12,D04,B02],[],\'\',2]);
data.push([3,[D14,D13,D03],[],\'\',2]);
data.push([3,[D03,D04,D14],[],\'\',2]);
data.push([3,[D13,D12,D02],[],\'\',2]);
data.push([3,[D02,D03,D13],[],\'\',2]);
data.push([3,[D12,D11,D01],[],\'\',2]);
data.push([3,[D01,D02,D12],[],\'\',2]);
data.push([3,[D11,B11,B01],[],\'\',2]);
data.push([3,[B01,D01,D11],[],\'\',2]);
}
// A base
data.push([2,[A01,A02],[d,d],\'\',1]);
data.push([2,[A02,A03],[d,d],\'\',1]);
data.push([2,[A03,A04],[d,d],\'\',1]);
data.push([2,[A04,A05],[d,d],\'\',1]);
data.push([2,[A05,A06],[d,d],\'\',1]);
data.push([2,[A06,A01],[d,d],\'\',1]);
// A support
data.push([2,[A01,A11],[d,d],\'\',1]);
data.push([2,[A02,A12],[d,d],\'\',1]);
data.push([2,[A03,A13],[d,d],\'\',1]);
data.push([2,[A04,A14],[d,d],\'\',1]);
data.push([2,[A05,A15],[d,d],\'\',1]);
data.push([2,[A06,A16],[d,d],\'\',1]);
// A hight
data.push([2,[A11,A12],[d,d],\'\',1]);
data.push([2,[A12,A13],[d,d],\'\',1]);
data.push([2,[A13,A14],[d,d],\'\',1]);
data.push([2,[A14,A15],[d,d],\'\',1]);
data.push([2,[A15,A16],[d,d],\'\',1]);
data.push([2,[A16,A11],[d,d],\'\',1]);
// A roof
data.push([2,[A13,A23],[d,d],\'\',1]);
data.push([2,[A16,A26],[d,d],\'\',1]);
data.push([2,[A23,A26],[d,d],\'\',1]);
data.push([2,[A11,A26],[d,d],\'\',1]);
data.push([2,[A15,A26],[d,d],\'\',1]);
data.push([2,[A12,A23],[d,d],\'\',1]);
data.push([2,[A14,A23],[d,d],\'\',1]);
data.push([2,[A11,A25],[d,d],\'\',1]);
data.push([2,[A15,A25],[d,d],\'\',1]);
data.push([2,[A12,A24],[d,d],\'\',1]);
data.push([2,[A14,A24],[d,d],\'\',1]);
// A intern
data.push([2,[A201,A14],[d,d],\'\',1]);
data.push([2,[A201,A15],[d,d],\'\',1]);
data.push([2,[A201,A11],[d,d],\'\',1]);
data.push([2,[A201,A12],[d,d],\'\',1]);
data.push([2,[A011,A111],[d,d],\'\',1]);
data.push([2,[A012,A112],[d,d],\'\',1]);
data.push([2,[A021,A121],[d,d],\'\',1]);
data.push([2,[A022,A122],[d,d],\'\',1]);
data.push([2,[A031,A131],[d,d],\'\',1]);
data.push([2,[A032,A132],[d,d],\'\',1]);
data.push([2,[A041,A141],[d,d],\'\',1]);
data.push([2,[A042,A142],[d,d],\'\',1]);
data.push([2,[A051,A151],[d,d],\'\',1]);
data.push([2,[A052,A152],[d,d],\'\',1]);
data.push([2,[A061,A161],[d,d],\'\',1]);
data.push([2,[A062,A162],[d,d],\'\',1]);
data.push([2,[A03,A06],[d,d],\'\',2]);
data.push([2,[A04,A02],[d,d],\'\',2]);
data.push([2,[A012,A041],[d,d],\'\',2]);
data.push([2,[A011,A042],[d,d],\'\',2]);
data.push([2,[A05,A01],[d,d],\'\',2]);
data.push([2,[A021,A062],[d,d],\'\',2]);
data.push([2,[A022,A061],[d,d],\'\',2]);
data.push([2,[A031,A052],[d,d],\'\',2]);
data.push([2,[A032,A051],[d,d],\'\',2]);
data.push([2,[A151,A512],[d,d],\'\',1]);
data.push([2,[A152,A511],[d,d],\'\',1]);
data.push([2,[A131,A411],[d,d],\'\',1]);
data.push([2,[A132,A412],[d,d],\'\',1]);
data.push([2,[A121,A212],[d,d],\'\',1]);
data.push([2,[A122,A211],[d,d],\'\',1]);
data.push([2,[A161,A611],[d,d],\'\',1]);
data.push([2,[A162,A612],[d,d],\'\',1]);
data.push([2,[A411,A511],[d,d],\'\',1]);
data.push([2,[A412,A512],[d,d],\'\',1]);
data.push([2,[A211,A611],[d,d],\'\',1]);
data.push([2,[A212,A612],[d,d],\'\',1]);
// B base
data.push([2,[A02,B01],[d,d],\'\',1]);
data.push([2,[B01,B02],[d,d],\'\',1]);
data.push([2,[B02,B03],[d,d],\'\',1]);
data.push([2,[B03,B04],[d,d],\'\',1]);
data.push([2,[B04,A03],[d,d],\'\',1]);
// B support
data.push([2,[B01,B11],[d,d],\'\',1]);
data.push([2,[B02,B12],[d,d],\'\',1]);
data.push([2,[B03,B13],[d,d],\'\',1]);
data.push([2,[B04,B14],[d,d],\'\',1]);
// B hight
data.push([2,[A12,B11],[d,d],\'\',1]);
data.push([2,[B11,B12],[d,d],\'\',1]);
data.push([2,[B12,B13],[d,d],\'\',1]);
data.push([2,[B13,B14],[d,d],\'\',1]);
data.push([2,[B14,A13],[d,d],\'\',1]);
// B roof
data.push([2,[B12,B22],[d,d],\'\',1]);
data.push([2,[A23,B22],[d,d],\'\',1]);
data.push([2,[B11,B22],[d,d],\'\',1]);
data.push([2,[B13,B22],[d,d],\'\',1]);
data.push([2,[B11,B23],[d,d],\'\',1]);
data.push([2,[B13,B23],[d,d],\'\',1]);
data.push([2,[B14,B24],[d,d],\'\',1]);
data.push([2,[A12,B24],[d,d],\'\',1]);
data.push([2,[A23,B14],[d,d],\'\',1]);
// B structure
data.push([2,[B011,B111],[d,d],\'\',1]);
data.push([2,[B012,B112],[d,d],\'\',1]);
data.push([2,[B021,B121],[d,d],\'\',1]);
data.push([2,[B022,B122],[d,d],\'\',1]);
data.push([2,[B031,B131],[d,d],\'\',1]);
data.push([2,[B032,B132],[d,d],\'\',1]);
data.push([2,[B041,B141],[d,d],\'\',1]);
data.push([2,[B042,B142],[d,d],\'\',1]);
data.push([2,[B112,B202],[d,d],\'\',1]);
data.push([2,[B131,B202],[d,d],\'\',1]);
data.push([2,[B111,B201],[d,d],\'\',1]);
data.push([2,[B132,B201],[d,d],\'\',1]);
// B intern
data.push([2,[A03,B02],[d,d],\'\',1]);
data.push([2,[A13,B12],[d,d],\'\',1]);
data.push([2,[B01,B03],[d,d],\'\',2]);
data.push([2,[A02,B04],[d,d],\'\',2]);
data.push([2,[B012,B031],[d,d],\'\',2]);
data.push([2,[B011,B032],[d,d],\'\',2]);
data.push([2,[B11,B13],[d,d],\'\',2]);
data.push([2,[A12,B14],[d,d],\'\',2]);
data.push([2,[B112,B131],[d,d],\'\',2]);
data.push([2,[B111,B132],[d,d],\'\',2]);
data.push([2,[D061,A021],[d,d],\'\',2]);
data.push([2,[D062,A022],[d,d],\'\',2]);
data.push([2,[B021,B042],[d,d],\'\',2]);
data.push([2,[B022,B041],[d,d],\'\',2]);
data.push([2,[D161,A121],[d,d],\'\',2]);
data.push([2,[D162,A122],[d,d],\'\',2]);
data.push([2,[B121,B142],[d,d],\'\',2]);
data.push([2,[B122,B141],[d,d],\'\',2]);
data.push([2,[B000,B100],[d,d],\'\',1]);
data.push([2,[B141,B242],[d,d],\'\',1]);
data.push([2,[B142,B241],[d,d],\'\',1]);
data.push([2,[B121,B221],[d,d],\'\',1]);
data.push([2,[B122,B222],[d,d],\'\',1]);
data.push([2,[D162,B211],[d,d],\'\',1]);
data.push([2,[D161,B212],[d,d],\'\',1]);
data.push([2,[B221,B241],[d,d],\'\',1]);
data.push([2,[B222,B242],[d,d],\'\',1]);
data.push([2,[A211,B211],[d,d],\'\',1]);
data.push([2,[A212,B212],[d,d],\'\',1]);
// C base
data.push([2,[A01,C01],[d,d],\'\',1]);
data.push([2,[C01,C02],[d,d],\'\',1]);
data.push([2,[C02,C03],[d,d],\'\',1]);
data.push([2,[C03,C04],[d,d],\'\',1]);
data.push([2,[C04,A06],[d,d],\'\',1]);
// C support
data.push([2,[C01,C11],[d,d],\'\',1]);
data.push([2,[C02,C12],[d,d],\'\',1]);
data.push([2,[C03,C13],[d,d],\'\',1]);
data.push([2,[C04,C14],[d,d],\'\',1]);
// C hight
data.push([2,[A11,C11],[d,d],\'\',1]);
data.push([2,[C11,C12],[d,d],\'\',1]);
data.push([2,[C12,C13],[d,d],\'\',1]);
data.push([2,[C13,C14],[d,d],\'\',1]);
data.push([2,[C14,A16],[d,d],\'\',1]);
// C roof
data.push([2,[C12,C22],[d,d],\'\',1]);
data.push([2,[A26,C22],[d,d],\'\',1]);
data.push([2,[C11,C22],[d,d],\'\',1]);
data.push([2,[C13,C22],[d,d],\'\',1]);
data.push([2,[C11,C23],[d,d],\'\',1]);
data.push([2,[C13,C23],[d,d],\'\',1]);
data.push([2,[C14,C24],[d,d],\'\',1]);
data.push([2,[A11,C24],[d,d],\'\',1]);
data.push([2,[A26,C14],[d,d],\'\',1]);
data.push([2,[C121,C222],[d,d],\'\',1]);
data.push([2,[C122,C221],[d,d],\'\',1]);
data.push([2,[C131,C321],[d,d],\'\',1]);
data.push([2,[C132,C322],[d,d],\'\',1]);
data.push([2,[C151,C522],[d,d],\'\',1]);
data.push([2,[C152,C521],[d,d],\'\',1]);
data.push([2,[A612,C222],[d,d],\'\',1]);
data.push([2,[A611,C221],[d,d],\'\',1]);
data.push([2,[C321,C521],[d,d],\'\',1]);
data.push([2,[C322,C522],[d,d],\'\',1]);
// C structure
data.push([2,[C201,C111],[d,d],\'\',1]);
data.push([2,[C201,C142],[d,d],\'\',1]);
data.push([2,[C202,C112],[d,d],\'\',1]);
data.push([2,[C202,C141],[d,d],\'\',1]);
data.push([2,[C011,C111],[d,d],\'\',1]);
data.push([2,[C012,C112],[d,d],\'\',1]);
data.push([2,[C021,C121],[d,d],\'\',1]);
data.push([2,[C022,C122],[d,d],\'\',1]);
data.push([2,[C031,C131],[d,d],\'\',1]);
data.push([2,[C032,C132],[d,d],\'\',1]);
data.push([2,[C041,C141],[d,d],\'\',1]);
data.push([2,[C042,C142],[d,d],\'\',1]);
data.push([2,[C051,C151],[d,d],\'\',1]);
data.push([2,[C052,C152],[d,d],\'\',1]);
// C intern
data.push([2,[C02,A06],[d,d],\'\',1]);
data.push([2,[C12,A16],[d,d],\'\',1]);
data.push([2,[A01,C04],[d,d],\'\',2]);
data.push([2,[C011,C042],[d,d],\'\',2]);
data.push([2,[C012,C041],[d,d],\'\',2]);
data.push([2,[C03,C01],[d,d],\'\',2]);
data.push([2,[A11,C14],[d,d],\'\',2]);
data.push([2,[C111,C142],[d,d],\'\',2]);
data.push([2,[C112,C141],[d,d],\'\',2]);
data.push([2,[C13,C11],[d,d],\'\',2]);
data.push([2,[A062,C021],[d,d],\'\',2]);
data.push([2,[A061,C022],[d,d],\'\',2]);
data.push([2,[C052,C031],[d,d],\'\',2]);
data.push([2,[C051,C032],[d,d],\'\',2]);
data.push([2,[A162,C121],[d,d],\'\',2]);
data.push([2,[A161,C122],[d,d],\'\',2]);
data.push([2,[C152,C131],[d,d],\'\',2]);
data.push([2,[C151,C132],[d,d],\'\',2]);
data.push([2,[C000,C100],[d,d],\'\',1]);
// D base
data.push([2,[B01,D01],[d,d],\'\',1]);
data.push([2,[D01,D02],[d,d],\'\',1]);
data.push([2,[D02,D03],[d,d],\'\',1]);
data.push([2,[D03,D04],[d,d],\'\',1]);
data.push([2,[D04,B02],[d,d],\'\',1]);
// D support
data.push([2,[D01,D11],[d,d],\'\',1]);
data.push([2,[D02,D12],[d,d],\'\',1]);
data.push([2,[D03,D13],[d,d],\'\',1]);
data.push([2,[D04,D14],[d,d],\'\',1]);
// D hight
data.push([2,[B11,D11],[d,d],\'\',1]);
data.push([2,[D11,D12],[d,d],\'\',1]);
data.push([2,[D12,D13],[d,d],\'\',1]);
data.push([2,[D13,D14],[d,d],\'\',1]);
data.push([2,[D14,B12],[d,d],\'\',1]);
// D roof
data.push([2,[D12,D22],[d,d],\'\',1]);
data.push([2,[D11,D22],[d,d],\'\',1]);
data.push([2,[D13,D22],[d,d],\'\',1]);
data.push([2,[D11,D23],[d,d],\'\',1]);
data.push([2,[D13,D23],[d,d],\'\',1]);
data.push([2,[D14,B22],[d,d],\'\',1]);
data.push([2,[D14,D24],[d,d],\'\',1]);
data.push([2,[B11,D24],[d,d],\'\',1]);
data.push([2,[D22,B22],[d,d],\'\',1]);
// D structure
data.push([2,[D201,D111],[d,d],\'\',1]);
data.push([2,[D201,D142],[d,d],\'\',1]);
data.push([2,[D202,D112],[d,d],\'\',1]);
data.push([2,[D202,D141],[d,d],\'\',1]);
data.push([2,[D011,D111],[d,d],\'\',1]);
data.push([2,[D012,D112],[d,d],\'\',1]);
data.push([2,[D021,D121],[d,d],\'\',1]);
data.push([2,[D022,D122],[d,d],\'\',1]);
data.push([2,[D031,D131],[d,d],\'\',1]);
data.push([2,[D032,D132],[d,d],\'\',1]);
data.push([2,[D041,D141],[d,d],\'\',1]);
data.push([2,[D042,D142],[d,d],\'\',1]);
data.push([2,[D051,D151],[d,d],\'\',1]);
data.push([2,[D052,D152],[d,d],\'\',1]);
// D intern
data.push([2,[D02,B02],[d,d],\'\',1]);
data.push([2,[D12,B12],[d,d],\'\',1]);
data.push([2,[D01,D03],[d,d],\'\',2]);
data.push([2,[B01,D04],[d,d],\'\',2]);
data.push([2,[D012,D041],[d,d],\'\',2]);
data.push([2,[D011,D042],[d,d],\'\',2]);
data.push([2,[D11,D13],[d,d],\'\',2]);
data.push([2,[B11,D14],[d,d],\'\',2]);
data.push([2,[D112,D141],[d,d],\'\',2]);
data.push([2,[D111,D142],[d,d],\'\',2]);
data.push([2,[D021,D061],[d,d],\'\',2]);
data.push([2,[D022,D062],[d,d],\'\',2]);
data.push([2,[D031,D052],[d,d],\'\',2]);
data.push([2,[D032,D051],[d,d],\'\',2]);
data.push([2,[D121,D161],[d,d],\'\',2]);
data.push([2,[D122,D162],[d,d],\'\',2]);
data.push([2,[D131,D152],[d,d],\'\',2]);
data.push([2,[D132,D151],[d,d],\'\',2]);
data.push([2,[D061,D161],[d,d],\'\',2]);
data.push([2,[D062,D162],[d,d],\'\',2]);
data.push([2,[D000,D100],[d,d],\'\',1]);
data.push([2,[D151,D252],[d,d],\'\',1]);
data.push([2,[D152,D251],[d,d],\'\',1]);
data.push([2,[D131,D231],[d,d],\'\',1]);
data.push([2,[D132,D232],[d,d],\'\',1]);
data.push([2,[D121,D222],[d,d],\'\',1]);
data.push([2,[D122,D221],[d,d],\'\',1]);
data.push([2,[D231,D251],[d,d],\'\',1]);
data.push([2,[D232,D252],[d,d],\'\',1]);
data.push([2,[D221,B211],[d,d],\'\',1]);
data.push([2,[D222,B212],[d,d],\'\',1]);
return data;
}
function getMean(point_1, point_2, weight){
var mean = [];
for(var i = 0;i < 3;i++){
mean.push(weight*point_1[i]+(1-weight)*point_2[i]);
}
return mean;
}
function setCoord(point,n,value){
point[n] = value;
return point;
}
function setDesign(labels,floors,extern,data){
var s = 0.2;
var d = 10*s;
var h = 280*s;
var l = 500*s;
var L = l*Math.cos(Math.PI/6);
var D = l*Math.sin(Math.PI/6);
var H = 250*s;
var y = 200*s;
var A01 = [l/2,y+L,0], A02 = [-l/2,y+L,0], A03 = [-l/2-D,y+2*L,0],
A04 = [-l/2,y+3*L,0], A05 = [l/2,y+3*L,0], A06 = [l/2+D,y+2*L,0];
var A11 = [l/2,y+L,h], A12 = [-l/2,y+L,h], A13 = [-l/2-D,y+2*L,h],
A14 = [-l/2,y+3*L,h], A15 = [l/2,y+3*L,h], A16 = [l/2+D,y+2*L,h];
var A23 = [-l/2-D,y+2*L,h+H], A26 = [l/2+D,y+2*L,h+H],
A24 = setCoord(getMean(A02,A04,0.5),2,h+H), A25 = setCoord(getMean(A01,A05,0.5),2,h+H);
var A012 = getMean(A01,A02,1/3), A011 = getMean(A01,A02,2/3),
A112 = getMean(A11,A12,1/3), A111 = getMean(A11,A12,2/3),
A022 = getMean(A02,A03,1/3), A021 = getMean(A02,A03,2/3),
A122 = getMean(A12,A13,1/3), A121 = getMean(A12,A13,2/3),
A032 = getMean(A03,A04,1/3), A031 = getMean(A03,A04,2/3),
A132 = getMean(A13,A14,1/3), A131 = getMean(A13,A14,2/3),
A042 = getMean(A04,A05,1/3), A041 = getMean(A04,A05,2/3),
A142 = getMean(A14,A15,1/3), A141 = getMean(A14,A15,2/3),
A052 = getMean(A05,A06,1/3), A051 = getMean(A05,A06,2/3),
A152 = getMean(A15,A16,1/3), A151 = getMean(A15,A16,2/3),
A062 = getMean(A06,A01,1/3), A061 = getMean(A06,A01,2/3),
A162 = getMean(A16,A11,1/3), A161 = getMean(A16,A11,2/3),
A211 = getMean(A12,A23,1/3), A212 = getMean(A12,A23,2/3),
A411 = getMean(A14,A23,1/3), A412 = getMean(A14,A23,2/3),
A511 = getMean(A15,A26,1/3), A512 = getMean(A15,A26,2/3),
A611 = getMean(A11,A26,1/3), A612 = getMean(A11,A26,2/3),
A201 = getMean(A24,A25,1/2);
if(labels == 1){
data.push([1,[A01],[],'A01',0]); data.push([1,[A02],[],'A02',0]); data.push([1,[A03],[],'A03',0]);
data.push([1,[A04],[],'A04',0]); data.push([1,[A05],[],'A05',0]); data.push([1,[A06],[],'A06',0]);
data.push([1,[A11],[],'A11',0]); data.push([1,[A12],[],'A12',0]); data.push([1,[A13],[],'A13',0]);
data.push([1,[A14],[],'A14',0]); data.push([1,[A15],[],'A15',0]); data.push([1,[A16],[],'A16',0]);
data.push([1,[A23],[],'A23',0]); data.push([1,[A26],[],'A26',0]); data.push([1,[A24],[],'A24',0]); data.push([1,[A25],[],\'A25\',0]);
data.push([1,[A012],[],\'A012\',0]); data.push([1,[A011],[],\'A011\',0]);
data.push([1,[A112],[],\'A112\',0]); data.push([1,[A111],[],\'A111\',0]);
data.push([1,[A022],[],\'A022\',0]); data.push([1,[A021],[],\'A021\',0]);
data.push([1,[A122],[],\'A122\',0]); data.push([1,[A121],[],\'A121\',0]);
data.push([1,[A032],[],\'A032\',0]); data.push([1,[A031],[],\'A031\',0]);
data.push([1,[A132],[],\'A132\',0]); data.push([1,[A131],[],\'A131\',0]);
data.push([1,[A042],[],\'A042\',0]); data.push([1,[A041],[],\'A041\',0]);
data.push([1,[A142],[],\'A142\',0]); data.push([1,[A141],[],\'A141\',0]);
data.push([1,[A052],[],\'A052\',0]); data.push([1,[A051],[],\'A051\',0]);
data.push([1,[A152],[],\'A152\',0]); data.push([1,[A151],[],\'A151\',0]);
data.push([1,[A062],[],\'A062\',0]); data.push([1,[A061],[],\'A061\',0]);
data.push([1,[A162],[],\'A162\',0]); data.push([1,[A161],[],\'A161\',0]);
data.push([1,[A211],[],\'A211\',0]); data.push([1,[A212],[],\'A212\',0]);
data.push([1,[A411],[],\'A411\',0]); data.push([1,[A412],[],\'A412\',0]);
data.push([1,[A511],[],\'A511\',0]); data.push([1,[A512],[],\'A512\',0]);
data.push([1,[A611],[],\'A611\',0]); data.push([1,[A612],[],\'A612\',0]);
data.push([1,[A201],[],\'A201\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[A01,A02,A03],[],\'\',2]);
data.push([3,[A03,A04,A05],[],\'\',2]);
data.push([3,[A05,A06,A01],[],\'\',2]);
data.push([3,[A01,A03,A05],[],\'\',2]);
}
if(extern == 1){
data.push([3,[A14,A24,A23],[],\'\',1]);
data.push([3,[A14,A25,A24],[],\'\',1]);
data.push([3,[A15,A25,A14],[],\'\',1]);
data.push([3,[A15,A26,A25],[],\'\',1]);
data.push([3,[A23,A24,A12],[],\'\',1]);
data.push([3,[A24,A25,A11],[],\'\',1]);
data.push([3,[A11,A12,A24],[],\'\',1]);
data.push([3,[A25,A26,A11],[],\'\',1]);
data.push([3,[A26,A15,A16],[],\'\',2]);
data.push([3,[A23,A13,A14],[],\'\',2]);
}
var B01 = [-l/2-D,y,0], B02 = [-3*l/2-D,y,0], B03 = [-3*l/2-2*D,y+L,0], B04 = [-3*l/2-D,y+2*L,0];
var B11 = [-l/2-D,y,h], B12 = [-3*l/2-D,y,h], B13 = [-3*l/2-2*D,y+L,h], B14 = [-3*l/2-D,y+2*L,h];
var B22 = [-3*l/2-D,y,h+H],
B23 = setCoord(getMean(B01,B03,0.5),2,h+H), B24 = setCoord(getMean(A02,B04,0.5),2,h+H);
var B012 = getMean(A02,B01,1/3), B011 = getMean(A02,B01,2/3),
B112 = getMean(A12,B11,1/3), B111 = getMean(A12,B11,2/3),
B022 = getMean(B02,B03,1/3), B021 = getMean(B02,B03,2/3),
B122 = getMean(B12,B13,1/3), B121 = getMean(B12,B13,2/3),
B032 = getMean(B03,B04,1/3), B031 = getMean(B03,B04,2/3),
B132 = getMean(B13,B14,1/3), B131 = getMean(B13,B14,2/3),
B042 = getMean(B04,A03,1/3), B041 = getMean(B04,A03,2/3),
B142 = getMean(B14,A13,1/3), B141 = getMean(B14,A13,2/3),
B201 = getMean(B23,B24,1/3), B202 = getMean(B23,B24,2/3),
B000 = getMean(B02,A03,1/2), B100 = getMean(B12,A13,1/2),
B241 = getMean(B14,A23,1/3), B242 = getMean(B14,A23,2/3),
B221 = getMean(B13,B22,1/3), B222 = getMean(B13,B22,2/3),
B211 = getMean(B11,B22,1/3), B212 = getMean(B11,B22,2/3);
if(labels == 1){
data.push([1,[B01],[],\'B01\',0]); data.push([1,[B02],[],\'B02\',0]); data.push([1,[B03],[],\'B03\',0]); data.push([1,[B04],[],\'B04\',0]);
data.push([1,[B11],[],\'B11\',0]); data.push([1,[B12],[],\'B12\',0]); data.push([1,[B13],[],\'B13\',0]); data.push([1,[B14],[],\'B14\',0]);
data.push([1,[B22],[],\'B22\',0]); data.push([1,[B23],[],\'B23\',0]); data.push([1,[B24],[],\'B24\',0]);
data.push([1,[B012],[],\'B012\',0]); data.push([1,[B011],[],\'B011\',0]);
data.push([1,[B112],[],\'B112\',0]); data.push([1,[B111],[],\'B111\',0]);
data.push([1,[B022],[],\'B022\',0]); data.push([1,[B021],[],\'B021\',0]);
data.push([1,[B122],[],\'B122\',0]); data.push([1,[B121],[],\'B121\',0]);
data.push([1,[B032],[],\'B032\',0]); data.push([1,[B031],[],\'B031\',0]);
data.push([1,[B132],[],\'B132\',0]); data.push([1,[B131],[],\'B131\',0]);
data.push([1,[B042],[],\'B042\',0]); data.push([1,[B041],[],\'B041\',0]);
data.push([1,[B142],[],\'B142\',0]); data.push([1,[B141],[],\'B141\',0]);
data.push([1,[B201],[],\'B201\',0]); data.push([1,[B202],[],\'B202\',0]);
data.push([1,[B000],[],\'B000\',0]); data.push([1,[B100],[],\'B100\',0]);
data.push([1,[B241],[],\'B241\',0]); data.push([1,[B242],[],\'B242\',0]);
data.push([1,[B221],[],\'B221\',0]); data.push([1,[B222],[],\'B222\',0]);
data.push([1,[B211],[],\'B211\',0]); data.push([1,[B212],[],\'B212\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[B01,B02,B03],[],\'\',2]);
data.push([3,[B03,B04,A03],[],\'\',2]);
data.push([3,[A03,A02,B01],[],\'\',2]);
data.push([3,[B01,B03,A03],[],\'\',2]);
data.push([3,[B11,B12,B13],[],\'\',2]);
data.push([3,[B13,B14,A13],[],\'\',2]);
data.push([3,[A13,A12,B11],[],\'\',2]);
data.push([3,[B11,B13,A13],[],\'\',2]);
}
if(extern == 1){
data.push([3,[B13,B23,B22],[],\'\',1]);
data.push([3,[B13,B24,B23],[],\'\',1]);
data.push([3,[B14,B24,B13],[],\'\',1]);
data.push([3,[B14,A23,B24],[],\'\',1]);
data.push([3,[B22,B23,B11],[],\'\',1]);
data.push([3,[B23,B24,A12],[],\'\',1]);
data.push([3,[A12,B11,B23],[],\'\',1]);
data.push([3,[B24,A23,A12],[],\'\',1]);
data.push([3,[A23,B14,A13],[],\'\',2]);
data.push([3,[B22,B12,B13],[],\'\',2]);
data.push([3,[B14,B13,B03],[],\'\',2]);
data.push([3,[B03,B04,B14],[],\'\',2]);
data.push([3,[B13,B12,B02],[],\'\',2]);
data.push([3,[B02,B03,B13],[],\'\',2]);
}
var C01 = [l/2+D,y,0], C02 = [3*l/2+D,y,0], C03 = [3*l/2+2*D,y+L,0], C04 = [3*l/2+D,y+2*L,0];
var C11 = [l/2+D,y,h], C12 = [3*l/2+D,y,h], C13 = [3*l/2+2*D,y+L,h], C14 = [3*l/2+D,y+2*L,h];
var C22 = [3*l/2+D,y,h+H],
C23 = setCoord(getMean(C01,C03,0.5),2,h+H), C24 = setCoord(getMean(A01,C04,0.5),2,h+H);
var C012 = getMean(A01,C01,1/3), C011 = getMean(A01,C01,2/3),
C112 = getMean(A11,C11,1/3), C111 = getMean(A11,C11,2/3),
C022 = getMean(C01,C02,1/3), C021 = getMean(C01,C02,2/3),
C122 = getMean(C11,C12,1/3), C121 = getMean(C11,C12,2/3),
C032 = getMean(C02,C03,1/3), C031 = getMean(C02,C03,2/3),
C132 = getMean(C12,C13,1/3), C131 = getMean(C12,C13,2/3),
C042 = getMean(C03,C04,1/3), C041 = getMean(C03,C04,2/3),
C142 = getMean(C13,C14,1/3), C141 = getMean(C13,C14,2/3),
C052 = getMean(C04,A06,1/3), C051 = getMean(C04,A06,2/3),
C152 = getMean(C14,A16,1/3), C151 = getMean(C14,A16,2/3),
C201 = getMean(C23,C24,1/3), C202 = getMean(C23,C24,2/3),
C000 = getMean(A06,C02,1/2), C100 = getMean(A16,C12,1/2),
C221 = getMean(C11,C22,1/3), C222 = getMean(C11,C22,2/3),
C321 = getMean(C13,C22,1/3), C322 = getMean(C13,C22,2/3),
C521 = getMean(C14,A26,1/3), C522 = getMean(C14,A26,2/3);
if(labels == 1){
data.push([1,[C01],[],\'C01\',0]); data.push([1,[C02],[],\'C02\',0]); data.push([1,[C03],[],\'C03\',0]); data.push([1,[C04],[],\'C04\',0]);
data.push([1,[C11],[],\'C11\',0]); data.push([1,[C12],[],\'C12\',0]); data.push([1,[C13],[],\'C13\',0]); data.push([1,[C14],[],\'C14\',0]);
data.push([1,[C22],[],\'C22\',0]); data.push([1,[C23],[],\'C23\',0]); data.push([1,[C24],[],\'C24\',0]);
data.push([1,[C012],[],\'C012\',0]); data.push([1,[C011],[],\'C011\',0]);
data.push([1,[C112],[],\'C112\',0]); data.push([1,[C111],[],\'C111\',0]);
data.push([1,[C022],[],\'C022\',0]); data.push([1,[C021],[],\'C021\',0]);
data.push([1,[C122],[],\'C122\',0]); data.push([1,[C121],[],\'C121\',0]);
data.push([1,[C032],[],\'C032\',0]); data.push([1,[C031],[],\'C031\',0]);
data.push([1,[C132],[],\'C132\',0]); data.push([1,[C131],[],\'C131\',0]);
data.push([1,[C042],[],\'C042\',0]); data.push([1,[C041],[],\'C041\',0]);
data.push([1,[C142],[],\'C142\',0]); data.push([1,[C141],[],\'C141\',0]);
data.push([1,[C052],[],\'C052\',0]); data.push([1,[C051],[],\'C051\',0]);
data.push([1,[C152],[],\'C152\',0]); data.push([1,[C151],[],\'C151\',0]);
data.push([1,[C201],[],\'C201\',0]); data.push([1,[C202],[],\'C202\',0]);
data.push([1,[C000],[],\'C000\',0]); data.push([1,[C100],[],\'C100\',0]);
data.push([1,[C221],[],\'C221\',0]); data.push([1,[C222],[],\'C222\',0]);
data.push([1,[C321],[],\'C321\',0]); data.push([1,[C322],[],\'C322\',0]);
data.push([1,[C521],[],\'C521\',0]); data.push([1,[C522],[],\'C522\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[C03,C02,C01],[],\'\',2]);
data.push([3,[A06,C04,C03],[],\'\',2]);
data.push([3,[C01,A01,A06],[],\'\',2]);
data.push([3,[A06,C03,C01],[],\'\',2]);
data.push([3,[C13,C12,C11],[],\'\',2]);
data.push([3,[A16,C14,C13],[],\'\',2]);
data.push([3,[C11,A11,A16],[],\'\',2]);
data.push([3,[A16,C13,C11],[],\'\',2]);
}
if(extern == 1){
data.push([3,[A26,C24,A11],[],\'\',1]);
data.push([3,[C24,C23,C11],[],\'\',1]);
data.push([3,[C11,A11,C24],[],\'\',1]);
data.push([3,[C23,C22,C11],[],\'\',1]);
data.push([3,[C14,C24,A26],[],\'\',1]);
data.push([3,[C14,C23,C24],[],\'\',1]);
data.push([3,[C13,C23,C14],[],\'\',1]);
data.push([3,[C13,C22,C23],[],\'\',1]);
data.push([3,[C14,A26,A16],[],\'\',2]);
data.push([3,[C22,C13,C12],[],\'\',2]);
data.push([3,[C22,C12,C11],[],\'\',2]);
data.push([3,[A11,C11,A01],[],\'\',2]);
data.push([3,[C11,C01,A01],[],\'\',2]);
data.push([3,[C01,C11,C02],[],\'\',2]);
data.push([3,[C11,C12,C02],[],\'\',2]);
data.push([3,[C12,C13,C03],[],\'\',2]);
data.push([3,[C02,C12,C03],[],\'\',2]);
data.push([3,[C13,C14,C04],[],\'\',2]);
data.push([3,[C04,C03,C13],[],\'\',2]);
}
var D01 = [-l/2,-L+y,0], D02 = [-l/2-D,-2*L+y,0], D03 = [-3*l/2-D,-2*L+y,0], D04 = [-3*l/2-2*D,-L+y,0];
var D11 = [-l/2,-L+y,h], D12 = [-l/2-D,-2*L+y,h], D13 = [-3*l/2-D,-2*L+y,h], D14 = [-3*l/2-2*D,-L+y,h];
var D22 = [-l/2-D,-2*L+y,h+H],
D23 = setCoord(getMean(D01,D03,0.5),2,h+H), D24 = setCoord(getMean(B01,D04,0.5),2,h+H);
var D012 = getMean(B01,D01,1/3), D011 = getMean(B01,D01,2/3),
D112 = getMean(B11,D11,1/3), D111 = getMean(B11,D11,2/3),
D022 = getMean(D01,D02,1/3), D021 = getMean(D01,D02,2/3),
D122 = getMean(D11,D12,1/3), D121 = getMean(D11,D12,2/3),
D032 = getMean(D02,D03,1/3), D031 = getMean(D02,D03,2/3),
D132 = getMean(D12,D13,1/3), D131 = getMean(D12,D13,2/3),
D042 = getMean(D03,D04,1/3), D041 = getMean(D03,D04,2/3),
D142 = getMean(D13,D14,1/3), D141 = getMean(D13,D14,2/3),
D052 = getMean(D04,B02,1/3), D051 = getMean(D04,B02,2/3),
D152 = getMean(D14,B12,1/3), D151 = getMean(D14,B12,2/3),
D062 = getMean(B01,B02,1/3), D061 = getMean(B01,B02,2/3),
D162 = getMean(B11,B12,1/3), D161 = getMean(B11,B12,2/3),
D201 = getMean(D23,D24,1/3), D202 = getMean(D23,D24,2/3),
D000 = getMean(B02,D02,1/2), D100 = getMean(B12,D12,1/2),
D251 = getMean(D14,B22,1/3), D252 = getMean(D14,B22,2/3),
D231 = getMean(D13,D22,1/3), D232 = getMean(D13,D22,2/3),
D221 = getMean(D11,D22,1/3), D222 = getMean(D11,D22,2/3);
if(labels == 1){
data.push([1,[D01],[],\'D01\',0]); data.push([1,[D02],[],\'D02\',0]); data.push([1,[D03],[],\'D03\',0]); data.push([1,[D04],[],\'D04\',0]);
data.push([1,[D11],[],\'D11\',0]); data.push([1,[D12],[],\'D12\',0]); data.push([1,[D13],[],\'D13\',0]); data.push([1,[D14],[],\'D14\',0]);
data.push([1,[D22],[],\'D22\',0]); data.push([1,[D23],[],\'D23\',0]); data.push([1,[D24],[],\'D24\',0]);
data.push([1,[D012],[],\'D012\',0]); data.push([1,[D011],[],\'D011\',0]);
data.push([1,[D112],[],\'D112\',0]); data.push([1,[D111],[],\'D111\',0]);
data.push([1,[D022],[],\'D022\',0]); data.push([1,[D021],[],\'D021\',0]);
data.push([1,[D122],[],\'D122\',0]); data.push([1,[D121],[],\'D121\',0]);
data.push([1,[D032],[],\'D032\',0]); data.push([1,[D031],[],\'D031\',0]);
data.push([1,[D132],[],\'D132\',0]); data.push([1,[D131],[],\'D131\',0]);
data.push([1,[D042],[],\'D042\',0]); data.push([1,[D041],[],\'D041\',0]);
data.push([1,[D142],[],\'D142\',0]); data.push([1,[D141],[],\'D141\',0]);
data.push([1,[D052],[],\'D052\',0]); data.push([1,[D051],[],\'D051\',0]);
data.push([1,[D152],[],\'D152\',0]); data.push([1,[D151],[],\'D151\',0]);
data.push([1,[D062],[],\'D062\',0]); data.push([1,[D061],[],\'D061\',0]);
data.push([1,[D162],[],\'D162\',0]); data.push([1,[D161],[],\'D161\',0]);
data.push([1,[D201],[],\'D201\',0]); data.push([1,[D202],[],\'D202\',0]);
data.push([1,[D000],[],\'D000\',0]); data.push([1,[D100],[],\'D100\',0]);
data.push([1,[D251],[],\'D251\',0]); data.push([1,[D252],[],\'D252\',0]);
data.push([1,[D231],[],\'D231\',0]); data.push([1,[D232],[],\'D232\',0]);
data.push([1,[D221],[],\'D221\',0]); data.push([1,[D222],[],\'D222\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[D01,D02,D03],[],\'\',2]);
data.push([3,[D03,D04,B02],[],\'\',2]);
data.push([3,[B02,B01,D01],[],\'\',2]);
data.push([3,[D01,D03,B02],[],\'\',2]);
data.push([3,[D11,D12,D13],[],\'\',2]);
data.push([3,[D13,D14,B12],[],\'\',2]);
data.push([3,[B12,B11,D11],[],\'\',2]);
data.push([3,[D11,D13,B12],[],\'\',2]);
}
if(extern == 1){
data.push([3,[D22,D23,D11],[],\'\',1]);
data.push([3,[D23,D24,B11],[],\'\',1]);
data.push([3,[B11,D11,D23],[],\'\',1]);
data.push([3,[D24,B22,B11],[],\'\',1]);
data.push([3,[D13,D23,D22],[],\'\',1]);
data.push([3,[D13,D24,D23],[],\'\',1]);
data.push([3,[D14,D24,D13],[],\'\',1]);
data.push([3,[D14,B22,D24],[],\'\',1]);
data.push([3,[B22,D14,B12],[],\'\',2]);
data.push([3,[D22,D12,D13],[],\'\',2]);
data.push([3,[D11,D12,D22],[],\'\',2]);
data.push([3,[D14,D04,B12],[],\'\',2]);
data.push([3,[B12,D04,B02],[],\'\',2]);
data.push([3,[D14,D13,D03],[],\'\',2]);
data.push([3,[D03,D04,D14],[],\'\',2]);
data.push([3,[D13,D12,D02],[],\'\',2]);
data.push([3,[D02,D03,D13],[],\'\',2]);
data.push([3,[D12,D11,D01],[],\'\',2]);
data.push([3,[D01,D02,D12],[],\'\',2]);
data.push([3,[D11,B11,B01],[],\'\',2]);
data.push([3,[B01,D01,D11],[],\'\',2]);
}
// A base
data.push([2,[A01,A02],[d,d],\'\',1]);
data.push([2,[A02,A03],[d,d],\'\',1]);
data.push([2,[A03,A04],[d,d],\'\',1]);
data.push([2,[A04,A05],[d,d],\'\',1]);
data.push([2,[A05,A06],[d,d],\'\',1]);
data.push([2,[A06,A01],[d,d],\'\',1]);
// A support
data.push([2,[A01,A11],[d,d],\'\',1]);
data.push([2,[A02,A12],[d,d],\'\',1]);
data.push([2,[A03,A13],[d,d],\'\',1]);
data.push([2,[A04,A14],[d,d],\'\',1]);
data.push([2,[A05,A15],[d,d],\'\',1]);
data.push([2,[A06,A16],[d,d],\'\',1]);
// A hight
data.push([2,[A11,A12],[d,d],\'\',1]);
data.push([2,[A12,A13],[d,d],\'\',1]);
data.push([2,[A13,A14],[d,d],\'\',1]);
data.push([2,[A14,A15],[d,d],\'\',1]);
data.push([2,[A15,A16],[d,d],\'\',1]);
data.push([2,[A16,A11],[d,d],\'\',1]);
// A roof
data.push([2,[A13,A23],[d,d],\'\',1]);
data.push([2,[A16,A26],[d,d],\'\',1]);
data.push([2,[A23,A26],[d,d],\'\',1]);
data.push([2,[A11,A26],[d,d],\'\',1]);
data.push([2,[A15,A26],[d,d],\'\',1]);
data.push([2,[A12,A23],[d,d],\'\',1]);
data.push([2,[A14,A23],[d,d],\'\',1]);
data.push([2,[A11,A25],[d,d],\'\',1]);
data.push([2,[A15,A25],[d,d],\'\',1]);
data.push([2,[A12,A24],[d,d],\'\',1]);
data.push([2,[A14,A24],[d,d],\'\',1]);
// A intern
data.push([2,[A201,A14],[d,d],\'\',1]);
data.push([2,[A201,A15],[d,d],\'\',1]);
data.push([2,[A201,A11],[d,d],\'\',1]);
data.push([2,[A201,A12],[d,d],\'\',1]);
data.push([2,[A011,A111],[d,d],\'\',1]);
data.push([2,[A012,A112],[d,d],\'\',1]);
data.push([2,[A021,A121],[d,d],\'\',1]);
data.push([2,[A022,A122],[d,d],\'\',1]);
data.push([2,[A031,A131],[d,d],\'\',1]);
data.push([2,[A032,A132],[d,d],\'\',1]);
data.push([2,[A041,A141],[d,d],\'\',1]);
data.push([2,[A042,A142],[d,d],\'\',1]);
data.push([2,[A051,A151],[d,d],\'\',1]);
data.push([2,[A052,A152],[d,d],\'\',1]);
data.push([2,[A061,A161],[d,d],\'\',1]);
data.push([2,[A062,A162],[d,d],\'\',1]);
data.push([2,[A03,A06],[d,d],\'\',2]);
data.push([2,[A04,A02],[d,d],\'\',2]);
data.push([2,[A012,A041],[d,d],\'\',2]);
data.push([2,[A011,A042],[d,d],\'\',2]);
data.push([2,[A05,A01],[d,d],\'\',2]);
data.push([2,[A021,A062],[d,d],\'\',2]);
data.push([2,[A022,A061],[d,d],\'\',2]);
data.push([2,[A031,A052],[d,d],\'\',2]);
data.push([2,[A032,A051],[d,d],\'\',2]);
data.push([2,[A151,A512],[d,d],\'\',1]);
data.push([2,[A152,A511],[d,d],\'\',1]);
data.push([2,[A131,A411],[d,d],\'\',1]);
data.push([2,[A132,A412],[d,d],\'\',1]);
data.push([2,[A121,A212],[d,d],\'\',1]);
data.push([2,[A122,A211],[d,d],\'\',1]);
data.push([2,[A161,A611],[d,d],\'\',1]);
data.push([2,[A162,A612],[d,d],\'\',1]);
data.push([2,[A411,A511],[d,d],\'\',1]);
data.push([2,[A412,A512],[d,d],\'\',1]);
data.push([2,[A211,A611],[d,d],\'\',1]);
data.push([2,[A212,A612],[d,d],\'\',1]);
// B base
data.push([2,[A02,B01],[d,d],\'\',1]);
data.push([2,[B01,B02],[d,d],\'\',1]);
data.push([2,[B02,B03],[d,d],\'\',1]);
data.push([2,[B03,B04],[d,d],\'\',1]);
data.push([2,[B04,A03],[d,d],\'\',1]);
// B support
data.push([2,[B01,B11],[d,d],\'\',1]);
data.push([2,[B02,B12],[d,d],\'\',1]);
data.push([2,[B03,B13],[d,d],\'\',1]);
data.push([2,[B04,B14],[d,d],\'\',1]);
// B hight
data.push([2,[A12,B11],[d,d],\'\',1]);
data.push([2,[B11,B12],[d,d],\'\',1]);
data.push([2,[B12,B13],[d,d],\'\',1]);
data.push([2,[B13,B14],[d,d],\'\',1]);
data.push([2,[B14,A13],[d,d],\'\',1]);
// B roof
data.push([2,[B12,B22],[d,d],\'\',1]);
data.push([2,[A23,B22],[d,d],\'\',1]);
data.push([2,[B11,B22],[d,d],\'\',1]);
data.push([2,[B13,B22],[d,d],\'\',1]);
data.push([2,[B11,B23],[d,d],\'\',1]);
data.push([2,[B13,B23],[d,d],\'\',1]);
data.push([2,[B14,B24],[d,d],\'\',1]);
data.push([2,[A12,B24],[d,d],\'\',1]);
data.push([2,[A23,B14],[d,d],\'\',1]);
// B structure
data.push([2,[B011,B111],[d,d],\'\',1]);
data.push([2,[B012,B112],[d,d],\'\',1]);
data.push([2,[B021,B121],[d,d],\'\',1]);
data.push([2,[B022,B122],[d,d],\'\',1]);
data.push([2,[B031,B131],[d,d],\'\',1]);
data.push([2,[B032,B132],[d,d],\'\',1]);
data.push([2,[B041,B141],[d,d],\'\',1]);
data.push([2,[B042,B142],[d,d],\'\',1]);
data.push([2,[B112,B202],[d,d],\'\',1]);
data.push([2,[B131,B202],[d,d],\'\',1]);
data.push([2,[B111,B201],[d,d],\'\',1]);
data.push([2,[B132,B201],[d,d],\'\',1]);
// B intern
data.push([2,[A03,B02],[d,d],\'\',1]);
data.push([2,[A13,B12],[d,d],\'\',1]);
data.push([2,[B01,B03],[d,d],\'\',2]);
data.push([2,[A02,B04],[d,d],\'\',2]);
data.push([2,[B012,B031],[d,d],\'\',2]);
data.push([2,[B011,B032],[d,d],\'\',2]);
data.push([2,[B11,B13],[d,d],\'\',2]);
data.push([2,[A12,B14],[d,d],\'\',2]);
data.push([2,[B112,B131],[d,d],\'\',2]);
data.push([2,[B111,B132],[d,d],\'\',2]);
data.push([2,[D061,A021],[d,d],\'\',2]);
data.push([2,[D062,A022],[d,d],\'\',2]);
data.push([2,[B021,B042],[d,d],\'\',2]);
data.push([2,[B022,B041],[d,d],\'\',2]);
data.push([2,[D161,A121],[d,d],\'\',2]);
data.push([2,[D162,A122],[d,d],\'\',2]);
data.push([2,[B121,B142],[d,d],\'\',2]);
data.push([2,[B122,B141],[d,d],\'\',2]);
data.push([2,[B000,B100],[d,d],\'\',1]);
data.push([2,[B141,B242],[d,d],\'\',1]);
data.push([2,[B142,B241],[d,d],\'\',1]);
data.push([2,[B121,B221],[d,d],\'\',1]);
data.push([2,[B122,B222],[d,d],\'\',1]);
data.push([2,[D162,B211],[d,d],\'\',1]);
data.push([2,[D161,B212],[d,d],\'\',1]);
data.push([2,[B221,B241],[d,d],\'\',1]);
data.push([2,[B222,B242],[d,d],\'\',1]);
data.push([2,[A211,B211],[d,d],\'\',1]);
data.push([2,[A212,B212],[d,d],\'\',1]);
// C base
data.push([2,[A01,C01],[d,d],\'\',1]);
data.push([2,[C01,C02],[d,d],\'\',1]);
data.push([2,[C02,C03],[d,d],\'\',1]);
data.push([2,[C03,C04],[d,d],\'\',1]);
data.push([2,[C04,A06],[d,d],\'\',1]);
// C support
data.push([2,[C01,C11],[d,d],\'\',1]);
data.push([2,[C02,C12],[d,d],\'\',1]);
data.push([2,[C03,C13],[d,d],\'\',1]);
data.push([2,[C04,C14],[d,d],\'\',1]);
// C hight
data.push([2,[A11,C11],[d,d],\'\',1]);
data.push([2,[C11,C12],[d,d],\'\',1]);
data.push([2,[C12,C13],[d,d],\'\',1]);
data.push([2,[C13,C14],[d,d],\'\',1]);
data.push([2,[C14,A16],[d,d],\'\',1]);
// C roof
data.push([2,[C12,C22],[d,d],\'\',1]);
data.push([2,[A26,C22],[d,d],\'\',1]);
data.push([2,[C11,C22],[d,d],\'\',1]);
data.push([2,[C13,C22],[d,d],\'\',1]);
data.push([2,[C11,C23],[d,d],\'\',1]);
data.push([2,[C13,C23],[d,d],\'\',1]);
data.push([2,[C14,C24],[d,d],\'\',1]);
data.push([2,[A11,C24],[d,d],\'\',1]);
data.push([2,[A26,C14],[d,d],\'\',1]);
data.push([2,[C121,C222],[d,d],\'\',1]);
data.push([2,[C122,C221],[d,d],\'\',1]);
data.push([2,[C131,C321],[d,d],\'\',1]);
data.push([2,[C132,C322],[d,d],\'\',1]);
data.push([2,[C151,C522],[d,d],\'\',1]);
data.push([2,[C152,C521],[d,d],\'\',1]);
data.push([2,[A612,C222],[d,d],\'\',1]);
data.push([2,[A611,C221],[d,d],\'\',1]);
data.push([2,[C321,C521],[d,d],\'\',1]);
data.push([2,[C322,C522],[d,d],\'\',1]);
// C structure
data.push([2,[C201,C111],[d,d],\'\',1]);
data.push([2,[C201,C142],[d,d],\'\',1]);
data.push([2,[C202,C112],[d,d],\'\',1]);
data.push([2,[C202,C141],[d,d],\'\',1]);
data.push([2,[C011,C111],[d,d],\'\',1]);
data.push([2,[C012,C112],[d,d],\'\',1]);
data.push([2,[C021,C121],[d,d],\'\',1]);
data.push([2,[C022,C122],[d,d],\'\',1]);
data.push([2,[C031,C131],[d,d],\'\',1]);
data.push([2,[C032,C132],[d,d],\'\',1]);
data.push([2,[C041,C141],[d,d],\'\',1]);
data.push([2,[C042,C142],[d,d],\'\',1]);
data.push([2,[C051,C151],[d,d],\'\',1]);
data.push([2,[C052,C152],[d,d],\'\',1]);
// C intern
data.push([2,[C02,A06],[d,d],\'\',1]);
data.push([2,[C12,A16],[d,d],\'\',1]);
data.push([2,[A01,C04],[d,d],\'\',2]);
data.push([2,[C011,C042],[d,d],\'\',2]);
data.push([2,[C012,C041],[d,d],\'\',2]);
data.push([2,[C03,C01],[d,d],\'\',2]);
data.push([2,[A11,C14],[d,d],\'\',2]);
data.push([2,[C111,C142],[d,d],\'\',2]);
data.push([2,[C112,C141],[d,d],\'\',2]);
data.push([2,[C13,C11],[d,d],\'\',2]);
data.push([2,[A062,C021],[d,d],\'\',2]);
data.push([2,[A061,C022],[d,d],\'\',2]);
data.push([2,[C052,C031],[d,d],\'\',2]);
data.push([2,[C051,C032],[d,d],\'\',2]);
data.push([2,[A162,C121],[d,d],\'\',2]);
data.push([2,[A161,C122],[d,d],\'\',2]);
data.push([2,[C152,C131],[d,d],\'\',2]);
data.push([2,[C151,C132],[d,d],\'\',2]);
data.push([2,[C000,C100],[d,d],\'\',1]);
// D base
data.push([2,[B01,D01],[d,d],\'\',1]);
data.push([2,[D01,D02],[d,d],\'\',1]);
data.push([2,[D02,D03],[d,d],\'\',1]);
data.push([2,[D03,D04],[d,d],\'\',1]);
data.push([2,[D04,B02],[d,d],\'\',1]);
// D support
data.push([2,[D01,D11],[d,d],\'\',1]);
data.push([2,[D02,D12],[d,d],\'\',1]);
data.push([2,[D03,D13],[d,d],\'\',1]);
data.push([2,[D04,D14],[d,d],\'\',1]);
// D hight
data.push([2,[B11,D11],[d,d],\'\',1]);
data.push([2,[D11,D12],[d,d],\'\',1]);
data.push([2,[D12,D13],[d,d],\'\',1]);
data.push([2,[D13,D14],[d,d],\'\',1]);
data.push([2,[D14,B12],[d,d],\'\',1]);
// D roof
data.push([2,[D12,D22],[d,d],\'\',1]);
data.push([2,[D11,D22],[d,d],\'\',1]);
data.push([2,[D13,D22],[d,d],\'\',1]);
data.push([2,[D11,D23],[d,d],\'\',1]);
data.push([2,[D13,D23],[d,d],\'\',1]);
data.push([2,[D14,B22],[d,d],\'\',1]);
data.push([2,[D14,D24],[d,d],\'\',1]);
data.push([2,[B11,D24],[d,d],\'\',1]);
data.push([2,[D22,B22],[d,d],\'\',1]);
// D structure
data.push([2,[D201,D111],[d,d],\'\',1]);
data.push([2,[D201,D142],[d,d],\'\',1]);
data.push([2,[D202,D112],[d,d],\'\',1]);
data.push([2,[D202,D141],[d,d],\'\',1]);
data.push([2,[D011,D111],[d,d],\'\',1]);
data.push([2,[D012,D112],[d,d],\'\',1]);
data.push([2,[D021,D121],[d,d],\'\',1]);
data.push([2,[D022,D122],[d,d],\'\',1]);
data.push([2,[D031,D131],[d,d],\'\',1]);
data.push([2,[D032,D132],[d,d],\'\',1]);
data.push([2,[D041,D141],[d,d],\'\',1]);
data.push([2,[D042,D142],[d,d],\'\',1]);
data.push([2,[D051,D151],[d,d],\'\',1]);
data.push([2,[D052,D152],[d,d],\'\',1]);
// D intern
data.push([2,[D02,B02],[d,d],\'\',1]);
data.push([2,[D12,B12],[d,d],\'\',1]);
data.push([2,[D01,D03],[d,d],\'\',2]);
data.push([2,[B01,D04],[d,d],\'\',2]);
data.push([2,[D012,D041],[d,d],\'\',2]);
data.push([2,[D011,D042],[d,d],\'\',2]);
data.push([2,[D11,D13],[d,d],\'\',2]);
data.push([2,[B11,D14],[d,d],\'\',2]);
data.push([2,[D112,D141],[d,d],\'\',2]);
data.push([2,[D111,D142],[d,d],\'\',2]);
data.push([2,[D021,D061],[d,d],\'\',2]);
data.push([2,[D022,D062],[d,d],\'\',2]);
data.push([2,[D031,D052],[d,d],\'\',2]);
data.push([2,[D032,D051],[d,d],\'\',2]);
data.push([2,[D121,D161],[d,d],\'\',2]);
data.push([2,[D122,D162],[d,d],\'\',2]);
data.push([2,[D131,D152],[d,d],\'\',2]);
data.push([2,[D132,D151],[d,d],\'\',2]);
data.push([2,[D061,D161],[d,d],\'\',2]);
data.push([2,[D062,D162],[d,d],\'\',2]);
data.push([2,[D000,D100],[d,d],\'\',1]);
data.push([2,[D151,D252],[d,d],\'\',1]);
data.push([2,[D152,D251],[d,d],\'\',1]);
data.push([2,[D131,D231],[d,d],\'\',1]);
data.push([2,[D132,D232],[d,d],\'\',1]);
data.push([2,[D121,D222],[d,d],\'\',1]);
data.push([2,[D122,D221],[d,d],\'\',1]);
data.push([2,[D231,D251],[d,d],\'\',1]);
data.push([2,[D232,D252],[d,d],\'\',1]);
data.push([2,[D221,B211],[d,d],\'\',1]);
data.push([2,[D222,B212],[d,d],\'\',1]);
return data;
}
function getMean(point_1, point_2, weight){
var mean = [];
for(var i = 0;i < 3;i++){
mean.push(weight*point_1[i]+(1-weight)*point_2[i]);
}
return mean;
}
function setCoord(point,n,value){
point[n] = value;
return point;
}
function setDesign(labels,floors,extern,data){
var s = 0.2;
var d = 10*s;
var h = 280*s;
var l = 500*s;
var L = l*Math.cos(Math.PI/6);
var D = l*Math.sin(Math.PI/6);
var H = 250*s;
var y = 200*s;
var A01 = [l/2,y+L,0], A02 = [-l/2,y+L,0], A03 = [-l/2-D,y+2*L,0],
A04 = [-l/2,y+3*L,0], A05 = [l/2,y+3*L,0], A06 = [l/2+D,y+2*L,0];
var A11 = [l/2,y+L,h], A12 = [-l/2,y+L,h], A13 = [-l/2-D,y+2*L,h],
A14 = [-l/2,y+3*L,h], A15 = [l/2,y+3*L,h], A16 = [l/2+D,y+2*L,h];
var A23 = [-l/2-D,y+2*L,h+H], A26 = [l/2+D,y+2*L,h+H],
A24 = setCoord(getMean(A02,A04,0.5),2,h+H), A25 = setCoord(getMean(A01,A05,0.5),2,h+H);
var A012 = getMean(A01,A02,1/3), A011 = getMean(A01,A02,2/3),
A112 = getMean(A11,A12,1/3), A111 = getMean(A11,A12,2/3),
A022 = getMean(A02,A03,1/3), A021 = getMean(A02,A03,2/3),
A122 = getMean(A12,A13,1/3), A121 = getMean(A12,A13,2/3),
A032 = getMean(A03,A04,1/3), A031 = getMean(A03,A04,2/3),
A132 = getMean(A13,A14,1/3), A131 = getMean(A13,A14,2/3),
A042 = getMean(A04,A05,1/3), A041 = getMean(A04,A05,2/3),
A142 = getMean(A14,A15,1/3), A141 = getMean(A14,A15,2/3),
A052 = getMean(A05,A06,1/3), A051 = getMean(A05,A06,2/3),
A152 = getMean(A15,A16,1/3), A151 = getMean(A15,A16,2/3),
A062 = getMean(A06,A01,1/3), A061 = getMean(A06,A01,2/3),
A162 = getMean(A16,A11,1/3), A161 = getMean(A16,A11,2/3),
A211 = getMean(A12,A23,1/3), A212 = getMean(A12,A23,2/3),
A411 = getMean(A14,A23,1/3), A412 = getMean(A14,A23,2/3),
A511 = getMean(A15,A26,1/3), A512 = getMean(A15,A26,2/3),
A611 = getMean(A11,A26,1/3), A612 = getMean(A11,A26,2/3),
A201 = getMean(A24,A25,1/2);
if(labels == 1){
data.push([1,[A01],[],'A01',0]); data.push([1,[A02],[],'A02',0]); data.push([1,[A03],[],'A03',0]);
data.push([1,[A04],[],'A04',0]); data.push([1,[A05],[],'A05',0]); data.push([1,[A06],[],'A06',0]);
data.push([1,[A11],[],'A11',0]); data.push([1,[A12],[],'A12',0]); data.push([1,[A13],[],'A13',0]);
data.push([1,[A14],[],'A14',0]); data.push([1,[A15],[],'A15',0]); data.push([1,[A16],[],'A16',0]);
data.push([1,[A23],[],'A23',0]); data.push([1,[A26],[],'A26',0]); data.push([1,[A24],[],'A24',0]); data.push([1,[A25],[],'A25',0]);
data.push([1,[A012],[],\'A012\',0]); data.push([1,[A011],[],\'A011\',0]);
data.push([1,[A112],[],\'A112\',0]); data.push([1,[A111],[],\'A111\',0]);
data.push([1,[A022],[],\'A022\',0]); data.push([1,[A021],[],\'A021\',0]);
data.push([1,[A122],[],\'A122\',0]); data.push([1,[A121],[],\'A121\',0]);
data.push([1,[A032],[],\'A032\',0]); data.push([1,[A031],[],\'A031\',0]);
data.push([1,[A132],[],\'A132\',0]); data.push([1,[A131],[],\'A131\',0]);
data.push([1,[A042],[],\'A042\',0]); data.push([1,[A041],[],\'A041\',0]);
data.push([1,[A142],[],\'A142\',0]); data.push([1,[A141],[],\'A141\',0]);
data.push([1,[A052],[],\'A052\',0]); data.push([1,[A051],[],\'A051\',0]);
data.push([1,[A152],[],\'A152\',0]); data.push([1,[A151],[],\'A151\',0]);
data.push([1,[A062],[],\'A062\',0]); data.push([1,[A061],[],\'A061\',0]);
data.push([1,[A162],[],\'A162\',0]); data.push([1,[A161],[],\'A161\',0]);
data.push([1,[A211],[],\'A211\',0]); data.push([1,[A212],[],\'A212\',0]);
data.push([1,[A411],[],\'A411\',0]); data.push([1,[A412],[],\'A412\',0]);
data.push([1,[A511],[],\'A511\',0]); data.push([1,[A512],[],\'A512\',0]);
data.push([1,[A611],[],\'A611\',0]); data.push([1,[A612],[],\'A612\',0]);
data.push([1,[A201],[],\'A201\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[A01,A02,A03],[],\'\',2]);
data.push([3,[A03,A04,A05],[],\'\',2]);
data.push([3,[A05,A06,A01],[],\'\',2]);
data.push([3,[A01,A03,A05],[],\'\',2]);
}
if(extern == 1){
data.push([3,[A14,A24,A23],[],\'\',1]);
data.push([3,[A14,A25,A24],[],\'\',1]);
data.push([3,[A15,A25,A14],[],\'\',1]);
data.push([3,[A15,A26,A25],[],\'\',1]);
data.push([3,[A23,A24,A12],[],\'\',1]);
data.push([3,[A24,A25,A11],[],\'\',1]);
data.push([3,[A11,A12,A24],[],\'\',1]);
data.push([3,[A25,A26,A11],[],\'\',1]);
data.push([3,[A26,A15,A16],[],\'\',2]);
data.push([3,[A23,A13,A14],[],\'\',2]);
}
var B01 = [-l/2-D,y,0], B02 = [-3*l/2-D,y,0], B03 = [-3*l/2-2*D,y+L,0], B04 = [-3*l/2-D,y+2*L,0];
var B11 = [-l/2-D,y,h], B12 = [-3*l/2-D,y,h], B13 = [-3*l/2-2*D,y+L,h], B14 = [-3*l/2-D,y+2*L,h];
var B22 = [-3*l/2-D,y,h+H],
B23 = setCoord(getMean(B01,B03,0.5),2,h+H), B24 = setCoord(getMean(A02,B04,0.5),2,h+H);
var B012 = getMean(A02,B01,1/3), B011 = getMean(A02,B01,2/3),
B112 = getMean(A12,B11,1/3), B111 = getMean(A12,B11,2/3),
B022 = getMean(B02,B03,1/3), B021 = getMean(B02,B03,2/3),
B122 = getMean(B12,B13,1/3), B121 = getMean(B12,B13,2/3),
B032 = getMean(B03,B04,1/3), B031 = getMean(B03,B04,2/3),
B132 = getMean(B13,B14,1/3), B131 = getMean(B13,B14,2/3),
B042 = getMean(B04,A03,1/3), B041 = getMean(B04,A03,2/3),
B142 = getMean(B14,A13,1/3), B141 = getMean(B14,A13,2/3),
B201 = getMean(B23,B24,1/3), B202 = getMean(B23,B24,2/3),
B000 = getMean(B02,A03,1/2), B100 = getMean(B12,A13,1/2),
B241 = getMean(B14,A23,1/3), B242 = getMean(B14,A23,2/3),
B221 = getMean(B13,B22,1/3), B222 = getMean(B13,B22,2/3),
B211 = getMean(B11,B22,1/3), B212 = getMean(B11,B22,2/3);
if(labels == 1){
data.push([1,[B01],[],\'B01\',0]); data.push([1,[B02],[],\'B02\',0]); data.push([1,[B03],[],\'B03\',0]); data.push([1,[B04],[],\'B04\',0]);
data.push([1,[B11],[],\'B11\',0]); data.push([1,[B12],[],\'B12\',0]); data.push([1,[B13],[],\'B13\',0]); data.push([1,[B14],[],\'B14\',0]);
data.push([1,[B22],[],\'B22\',0]); data.push([1,[B23],[],\'B23\',0]); data.push([1,[B24],[],\'B24\',0]);
data.push([1,[B012],[],\'B012\',0]); data.push([1,[B011],[],\'B011\',0]);
data.push([1,[B112],[],\'B112\',0]); data.push([1,[B111],[],\'B111\',0]);
data.push([1,[B022],[],\'B022\',0]); data.push([1,[B021],[],\'B021\',0]);
data.push([1,[B122],[],\'B122\',0]); data.push([1,[B121],[],\'B121\',0]);
data.push([1,[B032],[],\'B032\',0]); data.push([1,[B031],[],\'B031\',0]);
data.push([1,[B132],[],\'B132\',0]); data.push([1,[B131],[],\'B131\',0]);
data.push([1,[B042],[],\'B042\',0]); data.push([1,[B041],[],\'B041\',0]);
data.push([1,[B142],[],\'B142\',0]); data.push([1,[B141],[],\'B141\',0]);
data.push([1,[B201],[],\'B201\',0]); data.push([1,[B202],[],\'B202\',0]);
data.push([1,[B000],[],\'B000\',0]); data.push([1,[B100],[],\'B100\',0]);
data.push([1,[B241],[],\'B241\',0]); data.push([1,[B242],[],\'B242\',0]);
data.push([1,[B221],[],\'B221\',0]); data.push([1,[B222],[],\'B222\',0]);
data.push([1,[B211],[],\'B211\',0]); data.push([1,[B212],[],\'B212\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[B01,B02,B03],[],\'\',2]);
data.push([3,[B03,B04,A03],[],\'\',2]);
data.push([3,[A03,A02,B01],[],\'\',2]);
data.push([3,[B01,B03,A03],[],\'\',2]);
data.push([3,[B11,B12,B13],[],\'\',2]);
data.push([3,[B13,B14,A13],[],\'\',2]);
data.push([3,[A13,A12,B11],[],\'\',2]);
data.push([3,[B11,B13,A13],[],\'\',2]);
}
if(extern == 1){
data.push([3,[B13,B23,B22],[],\'\',1]);
data.push([3,[B13,B24,B23],[],\'\',1]);
data.push([3,[B14,B24,B13],[],\'\',1]);
data.push([3,[B14,A23,B24],[],\'\',1]);
data.push([3,[B22,B23,B11],[],\'\',1]);
data.push([3,[B23,B24,A12],[],\'\',1]);
data.push([3,[A12,B11,B23],[],\'\',1]);
data.push([3,[B24,A23,A12],[],\'\',1]);
data.push([3,[A23,B14,A13],[],\'\',2]);
data.push([3,[B22,B12,B13],[],\'\',2]);
data.push([3,[B14,B13,B03],[],\'\',2]);
data.push([3,[B03,B04,B14],[],\'\',2]);
data.push([3,[B13,B12,B02],[],\'\',2]);
data.push([3,[B02,B03,B13],[],\'\',2]);
}
var C01 = [l/2+D,y,0], C02 = [3*l/2+D,y,0], C03 = [3*l/2+2*D,y+L,0], C04 = [3*l/2+D,y+2*L,0];
var C11 = [l/2+D,y,h], C12 = [3*l/2+D,y,h], C13 = [3*l/2+2*D,y+L,h], C14 = [3*l/2+D,y+2*L,h];
var C22 = [3*l/2+D,y,h+H],
C23 = setCoord(getMean(C01,C03,0.5),2,h+H), C24 = setCoord(getMean(A01,C04,0.5),2,h+H);
var C012 = getMean(A01,C01,1/3), C011 = getMean(A01,C01,2/3),
C112 = getMean(A11,C11,1/3), C111 = getMean(A11,C11,2/3),
C022 = getMean(C01,C02,1/3), C021 = getMean(C01,C02,2/3),
C122 = getMean(C11,C12,1/3), C121 = getMean(C11,C12,2/3),
C032 = getMean(C02,C03,1/3), C031 = getMean(C02,C03,2/3),
C132 = getMean(C12,C13,1/3), C131 = getMean(C12,C13,2/3),
C042 = getMean(C03,C04,1/3), C041 = getMean(C03,C04,2/3),
C142 = getMean(C13,C14,1/3), C141 = getMean(C13,C14,2/3),
C052 = getMean(C04,A06,1/3), C051 = getMean(C04,A06,2/3),
C152 = getMean(C14,A16,1/3), C151 = getMean(C14,A16,2/3),
C201 = getMean(C23,C24,1/3), C202 = getMean(C23,C24,2/3),
C000 = getMean(A06,C02,1/2), C100 = getMean(A16,C12,1/2),
C221 = getMean(C11,C22,1/3), C222 = getMean(C11,C22,2/3),
C321 = getMean(C13,C22,1/3), C322 = getMean(C13,C22,2/3),
C521 = getMean(C14,A26,1/3), C522 = getMean(C14,A26,2/3);
if(labels == 1){
data.push([1,[C01],[],\'C01\',0]); data.push([1,[C02],[],\'C02\',0]); data.push([1,[C03],[],\'C03\',0]); data.push([1,[C04],[],\'C04\',0]);
data.push([1,[C11],[],\'C11\',0]); data.push([1,[C12],[],\'C12\',0]); data.push([1,[C13],[],\'C13\',0]); data.push([1,[C14],[],\'C14\',0]);
data.push([1,[C22],[],\'C22\',0]); data.push([1,[C23],[],\'C23\',0]); data.push([1,[C24],[],\'C24\',0]);
data.push([1,[C012],[],\'C012\',0]); data.push([1,[C011],[],\'C011\',0]);
data.push([1,[C112],[],\'C112\',0]); data.push([1,[C111],[],\'C111\',0]);
data.push([1,[C022],[],\'C022\',0]); data.push([1,[C021],[],\'C021\',0]);
data.push([1,[C122],[],\'C122\',0]); data.push([1,[C121],[],\'C121\',0]);
data.push([1,[C032],[],\'C032\',0]); data.push([1,[C031],[],\'C031\',0]);
data.push([1,[C132],[],\'C132\',0]); data.push([1,[C131],[],\'C131\',0]);
data.push([1,[C042],[],\'C042\',0]); data.push([1,[C041],[],\'C041\',0]);
data.push([1,[C142],[],\'C142\',0]); data.push([1,[C141],[],\'C141\',0]);
data.push([1,[C052],[],\'C052\',0]); data.push([1,[C051],[],\'C051\',0]);
data.push([1,[C152],[],\'C152\',0]); data.push([1,[C151],[],\'C151\',0]);
data.push([1,[C201],[],\'C201\',0]); data.push([1,[C202],[],\'C202\',0]);
data.push([1,[C000],[],\'C000\',0]); data.push([1,[C100],[],\'C100\',0]);
data.push([1,[C221],[],\'C221\',0]); data.push([1,[C222],[],\'C222\',0]);
data.push([1,[C321],[],\'C321\',0]); data.push([1,[C322],[],\'C322\',0]);
data.push([1,[C521],[],\'C521\',0]); data.push([1,[C522],[],\'C522\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[C03,C02,C01],[],\'\',2]);
data.push([3,[A06,C04,C03],[],\'\',2]);
data.push([3,[C01,A01,A06],[],\'\',2]);
data.push([3,[A06,C03,C01],[],\'\',2]);
data.push([3,[C13,C12,C11],[],\'\',2]);
data.push([3,[A16,C14,C13],[],\'\',2]);
data.push([3,[C11,A11,A16],[],\'\',2]);
data.push([3,[A16,C13,C11],[],\'\',2]);
}
if(extern == 1){
data.push([3,[A26,C24,A11],[],\'\',1]);
data.push([3,[C24,C23,C11],[],\'\',1]);
data.push([3,[C11,A11,C24],[],\'\',1]);
data.push([3,[C23,C22,C11],[],\'\',1]);
data.push([3,[C14,C24,A26],[],\'\',1]);
data.push([3,[C14,C23,C24],[],\'\',1]);
data.push([3,[C13,C23,C14],[],\'\',1]);
data.push([3,[C13,C22,C23],[],\'\',1]);
data.push([3,[C14,A26,A16],[],\'\',2]);
data.push([3,[C22,C13,C12],[],\'\',2]);
data.push([3,[C22,C12,C11],[],\'\',2]);
data.push([3,[A11,C11,A01],[],\'\',2]);
data.push([3,[C11,C01,A01],[],\'\',2]);
data.push([3,[C01,C11,C02],[],\'\',2]);
data.push([3,[C11,C12,C02],[],\'\',2]);
data.push([3,[C12,C13,C03],[],\'\',2]);
data.push([3,[C02,C12,C03],[],\'\',2]);
data.push([3,[C13,C14,C04],[],\'\',2]);
data.push([3,[C04,C03,C13],[],\'\',2]);
}
var D01 = [-l/2,-L+y,0], D02 = [-l/2-D,-2*L+y,0], D03 = [-3*l/2-D,-2*L+y,0], D04 = [-3*l/2-2*D,-L+y,0];
var D11 = [-l/2,-L+y,h], D12 = [-l/2-D,-2*L+y,h], D13 = [-3*l/2-D,-2*L+y,h], D14 = [-3*l/2-2*D,-L+y,h];
var D22 = [-l/2-D,-2*L+y,h+H],
D23 = setCoord(getMean(D01,D03,0.5),2,h+H), D24 = setCoord(getMean(B01,D04,0.5),2,h+H);
var D012 = getMean(B01,D01,1/3), D011 = getMean(B01,D01,2/3),
D112 = getMean(B11,D11,1/3), D111 = getMean(B11,D11,2/3),
D022 = getMean(D01,D02,1/3), D021 = getMean(D01,D02,2/3),
D122 = getMean(D11,D12,1/3), D121 = getMean(D11,D12,2/3),
D032 = getMean(D02,D03,1/3), D031 = getMean(D02,D03,2/3),
D132 = getMean(D12,D13,1/3), D131 = getMean(D12,D13,2/3),
D042 = getMean(D03,D04,1/3), D041 = getMean(D03,D04,2/3),
D142 = getMean(D13,D14,1/3), D141 = getMean(D13,D14,2/3),
D052 = getMean(D04,B02,1/3), D051 = getMean(D04,B02,2/3),
D152 = getMean(D14,B12,1/3), D151 = getMean(D14,B12,2/3),
D062 = getMean(B01,B02,1/3), D061 = getMean(B01,B02,2/3),
D162 = getMean(B11,B12,1/3), D161 = getMean(B11,B12,2/3),
D201 = getMean(D23,D24,1/3), D202 = getMean(D23,D24,2/3),
D000 = getMean(B02,D02,1/2), D100 = getMean(B12,D12,1/2),
D251 = getMean(D14,B22,1/3), D252 = getMean(D14,B22,2/3),
D231 = getMean(D13,D22,1/3), D232 = getMean(D13,D22,2/3),
D221 = getMean(D11,D22,1/3), D222 = getMean(D11,D22,2/3);
if(labels == 1){
data.push([1,[D01],[],\'D01\',0]); data.push([1,[D02],[],\'D02\',0]); data.push([1,[D03],[],\'D03\',0]); data.push([1,[D04],[],\'D04\',0]);
data.push([1,[D11],[],\'D11\',0]); data.push([1,[D12],[],\'D12\',0]); data.push([1,[D13],[],\'D13\',0]); data.push([1,[D14],[],\'D14\',0]);
data.push([1,[D22],[],\'D22\',0]); data.push([1,[D23],[],\'D23\',0]); data.push([1,[D24],[],\'D24\',0]);
data.push([1,[D012],[],\'D012\',0]); data.push([1,[D011],[],\'D011\',0]);
data.push([1,[D112],[],\'D112\',0]); data.push([1,[D111],[],\'D111\',0]);
data.push([1,[D022],[],\'D022\',0]); data.push([1,[D021],[],\'D021\',0]);
data.push([1,[D122],[],\'D122\',0]); data.push([1,[D121],[],\'D121\',0]);
data.push([1,[D032],[],\'D032\',0]); data.push([1,[D031],[],\'D031\',0]);
data.push([1,[D132],[],\'D132\',0]); data.push([1,[D131],[],\'D131\',0]);
data.push([1,[D042],[],\'D042\',0]); data.push([1,[D041],[],\'D041\',0]);
data.push([1,[D142],[],\'D142\',0]); data.push([1,[D141],[],\'D141\',0]);
data.push([1,[D052],[],\'D052\',0]); data.push([1,[D051],[],\'D051\',0]);
data.push([1,[D152],[],\'D152\',0]); data.push([1,[D151],[],\'D151\',0]);
data.push([1,[D062],[],\'D062\',0]); data.push([1,[D061],[],\'D061\',0]);
data.push([1,[D162],[],\'D162\',0]); data.push([1,[D161],[],\'D161\',0]);
data.push([1,[D201],[],\'D201\',0]); data.push([1,[D202],[],\'D202\',0]);
data.push([1,[D000],[],\'D000\',0]); data.push([1,[D100],[],\'D100\',0]);
data.push([1,[D251],[],\'D251\',0]); data.push([1,[D252],[],\'D252\',0]);
data.push([1,[D231],[],\'D231\',0]); data.push([1,[D232],[],\'D232\',0]);
data.push([1,[D221],[],\'D221\',0]); data.push([1,[D222],[],\'D222\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[D01,D02,D03],[],\'\',2]);
data.push([3,[D03,D04,B02],[],\'\',2]);
data.push([3,[B02,B01,D01],[],\'\',2]);
data.push([3,[D01,D03,B02],[],\'\',2]);
data.push([3,[D11,D12,D13],[],\'\',2]);
data.push([3,[D13,D14,B12],[],\'\',2]);
data.push([3,[B12,B11,D11],[],\'\',2]);
data.push([3,[D11,D13,B12],[],\'\',2]);
}
if(extern == 1){
data.push([3,[D22,D23,D11],[],\'\',1]);
data.push([3,[D23,D24,B11],[],\'\',1]);
data.push([3,[B11,D11,D23],[],\'\',1]);
data.push([3,[D24,B22,B11],[],\'\',1]);
data.push([3,[D13,D23,D22],[],\'\',1]);
data.push([3,[D13,D24,D23],[],\'\',1]);
data.push([3,[D14,D24,D13],[],\'\',1]);
data.push([3,[D14,B22,D24],[],\'\',1]);
data.push([3,[B22,D14,B12],[],\'\',2]);
data.push([3,[D22,D12,D13],[],\'\',2]);
data.push([3,[D11,D12,D22],[],\'\',2]);
data.push([3,[D14,D04,B12],[],\'\',2]);
data.push([3,[B12,D04,B02],[],\'\',2]);
data.push([3,[D14,D13,D03],[],\'\',2]);
data.push([3,[D03,D04,D14],[],\'\',2]);
data.push([3,[D13,D12,D02],[],\'\',2]);
data.push([3,[D02,D03,D13],[],\'\',2]);
data.push([3,[D12,D11,D01],[],\'\',2]);
data.push([3,[D01,D02,D12],[],\'\',2]);
data.push([3,[D11,B11,B01],[],\'\',2]);
data.push([3,[B01,D01,D11],[],\'\',2]);
}
// A base
data.push([2,[A01,A02],[d,d],\'\',1]);
data.push([2,[A02,A03],[d,d],\'\',1]);
data.push([2,[A03,A04],[d,d],\'\',1]);
data.push([2,[A04,A05],[d,d],\'\',1]);
data.push([2,[A05,A06],[d,d],\'\',1]);
data.push([2,[A06,A01],[d,d],\'\',1]);
// A support
data.push([2,[A01,A11],[d,d],\'\',1]);
data.push([2,[A02,A12],[d,d],\'\',1]);
data.push([2,[A03,A13],[d,d],\'\',1]);
data.push([2,[A04,A14],[d,d],\'\',1]);
data.push([2,[A05,A15],[d,d],\'\',1]);
data.push([2,[A06,A16],[d,d],\'\',1]);
// A hight
data.push([2,[A11,A12],[d,d],\'\',1]);
data.push([2,[A12,A13],[d,d],\'\',1]);
data.push([2,[A13,A14],[d,d],\'\',1]);
data.push([2,[A14,A15],[d,d],\'\',1]);
data.push([2,[A15,A16],[d,d],\'\',1]);
data.push([2,[A16,A11],[d,d],\'\',1]);
// A roof
data.push([2,[A13,A23],[d,d],\'\',1]);
data.push([2,[A16,A26],[d,d],\'\',1]);
data.push([2,[A23,A26],[d,d],\'\',1]);
data.push([2,[A11,A26],[d,d],\'\',1]);
data.push([2,[A15,A26],[d,d],\'\',1]);
data.push([2,[A12,A23],[d,d],\'\',1]);
data.push([2,[A14,A23],[d,d],\'\',1]);
data.push([2,[A11,A25],[d,d],\'\',1]);
data.push([2,[A15,A25],[d,d],\'\',1]);
data.push([2,[A12,A24],[d,d],\'\',1]);
data.push([2,[A14,A24],[d,d],\'\',1]);
// A intern
data.push([2,[A201,A14],[d,d],\'\',1]);
data.push([2,[A201,A15],[d,d],\'\',1]);
data.push([2,[A201,A11],[d,d],\'\',1]);
data.push([2,[A201,A12],[d,d],\'\',1]);
data.push([2,[A011,A111],[d,d],\'\',1]);
data.push([2,[A012,A112],[d,d],\'\',1]);
data.push([2,[A021,A121],[d,d],\'\',1]);
data.push([2,[A022,A122],[d,d],\'\',1]);
data.push([2,[A031,A131],[d,d],\'\',1]);
data.push([2,[A032,A132],[d,d],\'\',1]);
data.push([2,[A041,A141],[d,d],\'\',1]);
data.push([2,[A042,A142],[d,d],\'\',1]);
data.push([2,[A051,A151],[d,d],\'\',1]);
data.push([2,[A052,A152],[d,d],\'\',1]);
data.push([2,[A061,A161],[d,d],\'\',1]);
data.push([2,[A062,A162],[d,d],\'\',1]);
data.push([2,[A03,A06],[d,d],\'\',2]);
data.push([2,[A04,A02],[d,d],\'\',2]);
data.push([2,[A012,A041],[d,d],\'\',2]);
data.push([2,[A011,A042],[d,d],\'\',2]);
data.push([2,[A05,A01],[d,d],\'\',2]);
data.push([2,[A021,A062],[d,d],\'\',2]);
data.push([2,[A022,A061],[d,d],\'\',2]);
data.push([2,[A031,A052],[d,d],\'\',2]);
data.push([2,[A032,A051],[d,d],\'\',2]);
data.push([2,[A151,A512],[d,d],\'\',1]);
data.push([2,[A152,A511],[d,d],\'\',1]);
data.push([2,[A131,A411],[d,d],\'\',1]);
data.push([2,[A132,A412],[d,d],\'\',1]);
data.push([2,[A121,A212],[d,d],\'\',1]);
data.push([2,[A122,A211],[d,d],\'\',1]);
data.push([2,[A161,A611],[d,d],\'\',1]);
data.push([2,[A162,A612],[d,d],\'\',1]);
data.push([2,[A411,A511],[d,d],\'\',1]);
data.push([2,[A412,A512],[d,d],\'\',1]);
data.push([2,[A211,A611],[d,d],\'\',1]);
data.push([2,[A212,A612],[d,d],\'\',1]);
// B base
data.push([2,[A02,B01],[d,d],\'\',1]);
data.push([2,[B01,B02],[d,d],\'\',1]);
data.push([2,[B02,B03],[d,d],\'\',1]);
data.push([2,[B03,B04],[d,d],\'\',1]);
data.push([2,[B04,A03],[d,d],\'\',1]);
// B support
data.push([2,[B01,B11],[d,d],\'\',1]);
data.push([2,[B02,B12],[d,d],\'\',1]);
data.push([2,[B03,B13],[d,d],\'\',1]);
data.push([2,[B04,B14],[d,d],\'\',1]);
// B hight
data.push([2,[A12,B11],[d,d],\'\',1]);
data.push([2,[B11,B12],[d,d],\'\',1]);
data.push([2,[B12,B13],[d,d],\'\',1]);
data.push([2,[B13,B14],[d,d],\'\',1]);
data.push([2,[B14,A13],[d,d],\'\',1]);
// B roof
data.push([2,[B12,B22],[d,d],\'\',1]);
data.push([2,[A23,B22],[d,d],\'\',1]);
data.push([2,[B11,B22],[d,d],\'\',1]);
data.push([2,[B13,B22],[d,d],\'\',1]);
data.push([2,[B11,B23],[d,d],\'\',1]);
data.push([2,[B13,B23],[d,d],\'\',1]);
data.push([2,[B14,B24],[d,d],\'\',1]);
data.push([2,[A12,B24],[d,d],\'\',1]);
data.push([2,[A23,B14],[d,d],\'\',1]);
// B structure
data.push([2,[B011,B111],[d,d],\'\',1]);
data.push([2,[B012,B112],[d,d],\'\',1]);
data.push([2,[B021,B121],[d,d],\'\',1]);
data.push([2,[B022,B122],[d,d],\'\',1]);
data.push([2,[B031,B131],[d,d],\'\',1]);
data.push([2,[B032,B132],[d,d],\'\',1]);
data.push([2,[B041,B141],[d,d],\'\',1]);
data.push([2,[B042,B142],[d,d],\'\',1]);
data.push([2,[B112,B202],[d,d],\'\',1]);
data.push([2,[B131,B202],[d,d],\'\',1]);
data.push([2,[B111,B201],[d,d],\'\',1]);
data.push([2,[B132,B201],[d,d],\'\',1]);
// B intern
data.push([2,[A03,B02],[d,d],\'\',1]);
data.push([2,[A13,B12],[d,d],\'\',1]);
data.push([2,[B01,B03],[d,d],\'\',2]);
data.push([2,[A02,B04],[d,d],\'\',2]);
data.push([2,[B012,B031],[d,d],\'\',2]);
data.push([2,[B011,B032],[d,d],\'\',2]);
data.push([2,[B11,B13],[d,d],\'\',2]);
data.push([2,[A12,B14],[d,d],\'\',2]);
data.push([2,[B112,B131],[d,d],\'\',2]);
data.push([2,[B111,B132],[d,d],\'\',2]);
data.push([2,[D061,A021],[d,d],\'\',2]);
data.push([2,[D062,A022],[d,d],\'\',2]);
data.push([2,[B021,B042],[d,d],\'\',2]);
data.push([2,[B022,B041],[d,d],\'\',2]);
data.push([2,[D161,A121],[d,d],\'\',2]);
data.push([2,[D162,A122],[d,d],\'\',2]);
data.push([2,[B121,B142],[d,d],\'\',2]);
data.push([2,[B122,B141],[d,d],\'\',2]);
data.push([2,[B000,B100],[d,d],\'\',1]);
data.push([2,[B141,B242],[d,d],\'\',1]);
data.push([2,[B142,B241],[d,d],\'\',1]);
data.push([2,[B121,B221],[d,d],\'\',1]);
data.push([2,[B122,B222],[d,d],\'\',1]);
data.push([2,[D162,B211],[d,d],\'\',1]);
data.push([2,[D161,B212],[d,d],\'\',1]);
data.push([2,[B221,B241],[d,d],\'\',1]);
data.push([2,[B222,B242],[d,d],\'\',1]);
data.push([2,[A211,B211],[d,d],\'\',1]);
data.push([2,[A212,B212],[d,d],\'\',1]);
// C base
data.push([2,[A01,C01],[d,d],\'\',1]);
data.push([2,[C01,C02],[d,d],\'\',1]);
data.push([2,[C02,C03],[d,d],\'\',1]);
data.push([2,[C03,C04],[d,d],\'\',1]);
data.push([2,[C04,A06],[d,d],\'\',1]);
// C support
data.push([2,[C01,C11],[d,d],\'\',1]);
data.push([2,[C02,C12],[d,d],\'\',1]);
data.push([2,[C03,C13],[d,d],\'\',1]);
data.push([2,[C04,C14],[d,d],\'\',1]);
// C hight
data.push([2,[A11,C11],[d,d],\'\',1]);
data.push([2,[C11,C12],[d,d],\'\',1]);
data.push([2,[C12,C13],[d,d],\'\',1]);
data.push([2,[C13,C14],[d,d],\'\',1]);
data.push([2,[C14,A16],[d,d],\'\',1]);
// C roof
data.push([2,[C12,C22],[d,d],\'\',1]);
data.push([2,[A26,C22],[d,d],\'\',1]);
data.push([2,[C11,C22],[d,d],\'\',1]);
data.push([2,[C13,C22],[d,d],\'\',1]);
data.push([2,[C11,C23],[d,d],\'\',1]);
data.push([2,[C13,C23],[d,d],\'\',1]);
data.push([2,[C14,C24],[d,d],\'\',1]);
data.push([2,[A11,C24],[d,d],\'\',1]);
data.push([2,[A26,C14],[d,d],\'\',1]);
data.push([2,[C121,C222],[d,d],\'\',1]);
data.push([2,[C122,C221],[d,d],\'\',1]);
data.push([2,[C131,C321],[d,d],\'\',1]);
data.push([2,[C132,C322],[d,d],\'\',1]);
data.push([2,[C151,C522],[d,d],\'\',1]);
data.push([2,[C152,C521],[d,d],\'\',1]);
data.push([2,[A612,C222],[d,d],\'\',1]);
data.push([2,[A611,C221],[d,d],\'\',1]);
data.push([2,[C321,C521],[d,d],\'\',1]);
data.push([2,[C322,C522],[d,d],\'\',1]);
// C structure
data.push([2,[C201,C111],[d,d],\'\',1]);
data.push([2,[C201,C142],[d,d],\'\',1]);
data.push([2,[C202,C112],[d,d],\'\',1]);
data.push([2,[C202,C141],[d,d],\'\',1]);
data.push([2,[C011,C111],[d,d],\'\',1]);
data.push([2,[C012,C112],[d,d],\'\',1]);
data.push([2,[C021,C121],[d,d],\'\',1]);
data.push([2,[C022,C122],[d,d],\'\',1]);
data.push([2,[C031,C131],[d,d],\'\',1]);
data.push([2,[C032,C132],[d,d],\'\',1]);
data.push([2,[C041,C141],[d,d],\'\',1]);
data.push([2,[C042,C142],[d,d],\'\',1]);
data.push([2,[C051,C151],[d,d],\'\',1]);
data.push([2,[C052,C152],[d,d],\'\',1]);
// C intern
data.push([2,[C02,A06],[d,d],\'\',1]);
data.push([2,[C12,A16],[d,d],\'\',1]);
data.push([2,[A01,C04],[d,d],\'\',2]);
data.push([2,[C011,C042],[d,d],\'\',2]);
data.push([2,[C012,C041],[d,d],\'\',2]);
data.push([2,[C03,C01],[d,d],\'\',2]);
data.push([2,[A11,C14],[d,d],\'\',2]);
data.push([2,[C111,C142],[d,d],\'\',2]);
data.push([2,[C112,C141],[d,d],\'\',2]);
data.push([2,[C13,C11],[d,d],\'\',2]);
data.push([2,[A062,C021],[d,d],\'\',2]);
data.push([2,[A061,C022],[d,d],\'\',2]);
data.push([2,[C052,C031],[d,d],\'\',2]);
data.push([2,[C051,C032],[d,d],\'\',2]);
data.push([2,[A162,C121],[d,d],\'\',2]);
data.push([2,[A161,C122],[d,d],\'\',2]);
data.push([2,[C152,C131],[d,d],\'\',2]);
data.push([2,[C151,C132],[d,d],\'\',2]);
data.push([2,[C000,C100],[d,d],\'\',1]);
// D base
data.push([2,[B01,D01],[d,d],\'\',1]);
data.push([2,[D01,D02],[d,d],\'\',1]);
data.push([2,[D02,D03],[d,d],\'\',1]);
data.push([2,[D03,D04],[d,d],\'\',1]);
data.push([2,[D04,B02],[d,d],\'\',1]);
// D support
data.push([2,[D01,D11],[d,d],\'\',1]);
data.push([2,[D02,D12],[d,d],\'\',1]);
data.push([2,[D03,D13],[d,d],\'\',1]);
data.push([2,[D04,D14],[d,d],\'\',1]);
// D hight
data.push([2,[B11,D11],[d,d],\'\',1]);
data.push([2,[D11,D12],[d,d],\'\',1]);
data.push([2,[D12,D13],[d,d],\'\',1]);
data.push([2,[D13,D14],[d,d],\'\',1]);
data.push([2,[D14,B12],[d,d],\'\',1]);
// D roof
data.push([2,[D12,D22],[d,d],\'\',1]);
data.push([2,[D11,D22],[d,d],\'\',1]);
data.push([2,[D13,D22],[d,d],\'\',1]);
data.push([2,[D11,D23],[d,d],\'\',1]);
data.push([2,[D13,D23],[d,d],\'\',1]);
data.push([2,[D14,B22],[d,d],\'\',1]);
data.push([2,[D14,D24],[d,d],\'\',1]);
data.push([2,[B11,D24],[d,d],\'\',1]);
data.push([2,[D22,B22],[d,d],\'\',1]);
// D structure
data.push([2,[D201,D111],[d,d],\'\',1]);
data.push([2,[D201,D142],[d,d],\'\',1]);
data.push([2,[D202,D112],[d,d],\'\',1]);
data.push([2,[D202,D141],[d,d],\'\',1]);
data.push([2,[D011,D111],[d,d],\'\',1]);
data.push([2,[D012,D112],[d,d],\'\',1]);
data.push([2,[D021,D121],[d,d],\'\',1]);
data.push([2,[D022,D122],[d,d],\'\',1]);
data.push([2,[D031,D131],[d,d],\'\',1]);
data.push([2,[D032,D132],[d,d],\'\',1]);
data.push([2,[D041,D141],[d,d],\'\',1]);
data.push([2,[D042,D142],[d,d],\'\',1]);
data.push([2,[D051,D151],[d,d],\'\',1]);
data.push([2,[D052,D152],[d,d],\'\',1]);
// D intern
data.push([2,[D02,B02],[d,d],\'\',1]);
data.push([2,[D12,B12],[d,d],\'\',1]);
data.push([2,[D01,D03],[d,d],\'\',2]);
data.push([2,[B01,D04],[d,d],\'\',2]);
data.push([2,[D012,D041],[d,d],\'\',2]);
data.push([2,[D011,D042],[d,d],\'\',2]);
data.push([2,[D11,D13],[d,d],\'\',2]);
data.push([2,[B11,D14],[d,d],\'\',2]);
data.push([2,[D112,D141],[d,d],\'\',2]);
data.push([2,[D111,D142],[d,d],\'\',2]);
data.push([2,[D021,D061],[d,d],\'\',2]);
data.push([2,[D022,D062],[d,d],\'\',2]);
data.push([2,[D031,D052],[d,d],\'\',2]);
data.push([2,[D032,D051],[d,d],\'\',2]);
data.push([2,[D121,D161],[d,d],\'\',2]);
data.push([2,[D122,D162],[d,d],\'\',2]);
data.push([2,[D131,D152],[d,d],\'\',2]);
data.push([2,[D132,D151],[d,d],\'\',2]);
data.push([2,[D061,D161],[d,d],\'\',2]);
data.push([2,[D062,D162],[d,d],\'\',2]);
data.push([2,[D000,D100],[d,d],\'\',1]);
data.push([2,[D151,D252],[d,d],\'\',1]);
data.push([2,[D152,D251],[d,d],\'\',1]);
data.push([2,[D131,D231],[d,d],\'\',1]);
data.push([2,[D132,D232],[d,d],\'\',1]);
data.push([2,[D121,D222],[d,d],\'\',1]);
data.push([2,[D122,D221],[d,d],\'\',1]);
data.push([2,[D231,D251],[d,d],\'\',1]);
data.push([2,[D232,D252],[d,d],\'\',1]);
data.push([2,[D221,B211],[d,d],\'\',1]);
data.push([2,[D222,B212],[d,d],\'\',1]);
return data;
}
function getMean(point_1, point_2, weight){
var mean = [];
for(var i = 0;i < 3;i++){
mean.push(weight*point_1[i]+(1-weight)*point_2[i]);
}
return mean;
}
function setCoord(point,n,value){
point[n] = value;
return point;
}
function setDesign(labels,floors,extern,data){
var s = 0.2;
var d = 10*s;
var h = 280*s;
var l = 500*s;
var L = l*Math.cos(Math.PI/6);
var D = l*Math.sin(Math.PI/6);
var H = 250*s;
var y = 200*s;
var A01 = [l/2,y+L,0], A02 = [-l/2,y+L,0], A03 = [-l/2-D,y+2*L,0],
A04 = [-l/2,y+3*L,0], A05 = [l/2,y+3*L,0], A06 = [l/2+D,y+2*L,0];
var A11 = [l/2,y+L,h], A12 = [-l/2,y+L,h], A13 = [-l/2-D,y+2*L,h],
A14 = [-l/2,y+3*L,h], A15 = [l/2,y+3*L,h], A16 = [l/2+D,y+2*L,h];
var A23 = [-l/2-D,y+2*L,h+H], A26 = [l/2+D,y+2*L,h+H],
A24 = setCoord(getMean(A02,A04,0.5),2,h+H), A25 = setCoord(getMean(A01,A05,0.5),2,h+H);
var A012 = getMean(A01,A02,1/3), A011 = getMean(A01,A02,2/3),
A112 = getMean(A11,A12,1/3), A111 = getMean(A11,A12,2/3),
A022 = getMean(A02,A03,1/3), A021 = getMean(A02,A03,2/3),
A122 = getMean(A12,A13,1/3), A121 = getMean(A12,A13,2/3),
A032 = getMean(A03,A04,1/3), A031 = getMean(A03,A04,2/3),
A132 = getMean(A13,A14,1/3), A131 = getMean(A13,A14,2/3),
A042 = getMean(A04,A05,1/3), A041 = getMean(A04,A05,2/3),
A142 = getMean(A14,A15,1/3), A141 = getMean(A14,A15,2/3),
A052 = getMean(A05,A06,1/3), A051 = getMean(A05,A06,2/3),
A152 = getMean(A15,A16,1/3), A151 = getMean(A15,A16,2/3),
A062 = getMean(A06,A01,1/3), A061 = getMean(A06,A01,2/3),
A162 = getMean(A16,A11,1/3), A161 = getMean(A16,A11,2/3),
A211 = getMean(A12,A23,1/3), A212 = getMean(A12,A23,2/3),
A411 = getMean(A14,A23,1/3), A412 = getMean(A14,A23,2/3),
A511 = getMean(A15,A26,1/3), A512 = getMean(A15,A26,2/3),
A611 = getMean(A11,A26,1/3), A612 = getMean(A11,A26,2/3),
A201 = getMean(A24,A25,1/2);
if(labels == 1){
data.push([1,[A01],[],'A01',0]); data.push([1,[A02],[],'A02',0]); data.push([1,[A03],[],'A03',0]);
data.push([1,[A04],[],'A04',0]); data.push([1,[A05],[],'A05',0]); data.push([1,[A06],[],'A06',0]);
data.push([1,[A11],[],'A11',0]); data.push([1,[A12],[],'A12',0]); data.push([1,[A13],[],'A13',0]);
data.push([1,[A14],[],'A14',0]); data.push([1,[A15],[],'A15',0]); data.push([1,[A16],[],'A16',0]);
data.push([1,[A23],[],'A23',0]); data.push([1,[A26],[],'A26',0]); data.push([1,[A24],[],'A24',0]); data.push([1,[A25],[],'A25\',0]);
data.push([1,[A012],[],\'A012\',0]); data.push([1,[A011],[],\'A011\',0]);
data.push([1,[A112],[],\'A112\',0]); data.push([1,[A111],[],\'A111\',0]);
data.push([1,[A022],[],\'A022\',0]); data.push([1,[A021],[],\'A021\',0]);
data.push([1,[A122],[],\'A122\',0]); data.push([1,[A121],[],\'A121\',0]);
data.push([1,[A032],[],\'A032\',0]); data.push([1,[A031],[],\'A031\',0]);
data.push([1,[A132],[],\'A132\',0]); data.push([1,[A131],[],\'A131\',0]);
data.push([1,[A042],[],\'A042\',0]); data.push([1,[A041],[],\'A041\',0]);
data.push([1,[A142],[],\'A142\',0]); data.push([1,[A141],[],\'A141\',0]);
data.push([1,[A052],[],\'A052\',0]); data.push([1,[A051],[],\'A051\',0]);
data.push([1,[A152],[],\'A152\',0]); data.push([1,[A151],[],\'A151\',0]);
data.push([1,[A062],[],\'A062\',0]); data.push([1,[A061],[],\'A061\',0]);
data.push([1,[A162],[],\'A162\',0]); data.push([1,[A161],[],\'A161\',0]);
data.push([1,[A211],[],\'A211\',0]); data.push([1,[A212],[],\'A212\',0]);
data.push([1,[A411],[],\'A411\',0]); data.push([1,[A412],[],\'A412\',0]);
data.push([1,[A511],[],\'A511\',0]); data.push([1,[A512],[],\'A512\',0]);
data.push([1,[A611],[],\'A611\',0]); data.push([1,[A612],[],\'A612\',0]);
data.push([1,[A201],[],\'A201\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[A01,A02,A03],[],\'\',2]);
data.push([3,[A03,A04,A05],[],\'\',2]);
data.push([3,[A05,A06,A01],[],\'\',2]);
data.push([3,[A01,A03,A05],[],\'\',2]);
}
if(extern == 1){
data.push([3,[A14,A24,A23],[],\'\',1]);
data.push([3,[A14,A25,A24],[],\'\',1]);
data.push([3,[A15,A25,A14],[],\'\',1]);
data.push([3,[A15,A26,A25],[],\'\',1]);
data.push([3,[A23,A24,A12],[],\'\',1]);
data.push([3,[A24,A25,A11],[],\'\',1]);
data.push([3,[A11,A12,A24],[],\'\',1]);
data.push([3,[A25,A26,A11],[],\'\',1]);
data.push([3,[A26,A15,A16],[],\'\',2]);
data.push([3,[A23,A13,A14],[],\'\',2]);
}
var B01 = [-l/2-D,y,0], B02 = [-3*l/2-D,y,0], B03 = [-3*l/2-2*D,y+L,0], B04 = [-3*l/2-D,y+2*L,0];
var B11 = [-l/2-D,y,h], B12 = [-3*l/2-D,y,h], B13 = [-3*l/2-2*D,y+L,h], B14 = [-3*l/2-D,y+2*L,h];
var B22 = [-3*l/2-D,y,h+H],
B23 = setCoord(getMean(B01,B03,0.5),2,h+H), B24 = setCoord(getMean(A02,B04,0.5),2,h+H);
var B012 = getMean(A02,B01,1/3), B011 = getMean(A02,B01,2/3),
B112 = getMean(A12,B11,1/3), B111 = getMean(A12,B11,2/3),
B022 = getMean(B02,B03,1/3), B021 = getMean(B02,B03,2/3),
B122 = getMean(B12,B13,1/3), B121 = getMean(B12,B13,2/3),
B032 = getMean(B03,B04,1/3), B031 = getMean(B03,B04,2/3),
B132 = getMean(B13,B14,1/3), B131 = getMean(B13,B14,2/3),
B042 = getMean(B04,A03,1/3), B041 = getMean(B04,A03,2/3),
B142 = getMean(B14,A13,1/3), B141 = getMean(B14,A13,2/3),
B201 = getMean(B23,B24,1/3), B202 = getMean(B23,B24,2/3),
B000 = getMean(B02,A03,1/2), B100 = getMean(B12,A13,1/2),
B241 = getMean(B14,A23,1/3), B242 = getMean(B14,A23,2/3),
B221 = getMean(B13,B22,1/3), B222 = getMean(B13,B22,2/3),
B211 = getMean(B11,B22,1/3), B212 = getMean(B11,B22,2/3);
if(labels == 1){
data.push([1,[B01],[],\'B01\',0]); data.push([1,[B02],[],\'B02\',0]); data.push([1,[B03],[],\'B03\',0]); data.push([1,[B04],[],\'B04\',0]);
data.push([1,[B11],[],\'B11\',0]); data.push([1,[B12],[],\'B12\',0]); data.push([1,[B13],[],\'B13\',0]); data.push([1,[B14],[],\'B14\',0]);
data.push([1,[B22],[],\'B22\',0]); data.push([1,[B23],[],\'B23\',0]); data.push([1,[B24],[],\'B24\',0]);
data.push([1,[B012],[],\'B012\',0]); data.push([1,[B011],[],\'B011\',0]);
data.push([1,[B112],[],\'B112\',0]); data.push([1,[B111],[],\'B111\',0]);
data.push([1,[B022],[],\'B022\',0]); data.push([1,[B021],[],\'B021\',0]);
data.push([1,[B122],[],\'B122\',0]); data.push([1,[B121],[],\'B121\',0]);
data.push([1,[B032],[],\'B032\',0]); data.push([1,[B031],[],\'B031\',0]);
data.push([1,[B132],[],\'B132\',0]); data.push([1,[B131],[],\'B131\',0]);
data.push([1,[B042],[],\'B042\',0]); data.push([1,[B041],[],\'B041\',0]);
data.push([1,[B142],[],\'B142\',0]); data.push([1,[B141],[],\'B141\',0]);
data.push([1,[B201],[],\'B201\',0]); data.push([1,[B202],[],\'B202\',0]);
data.push([1,[B000],[],\'B000\',0]); data.push([1,[B100],[],\'B100\',0]);
data.push([1,[B241],[],\'B241\',0]); data.push([1,[B242],[],\'B242\',0]);
data.push([1,[B221],[],\'B221\',0]); data.push([1,[B222],[],\'B222\',0]);
data.push([1,[B211],[],\'B211\',0]); data.push([1,[B212],[],\'B212\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[B01,B02,B03],[],\'\',2]);
data.push([3,[B03,B04,A03],[],\'\',2]);
data.push([3,[A03,A02,B01],[],\'\',2]);
data.push([3,[B01,B03,A03],[],\'\',2]);
data.push([3,[B11,B12,B13],[],\'\',2]);
data.push([3,[B13,B14,A13],[],\'\',2]);
data.push([3,[A13,A12,B11],[],\'\',2]);
data.push([3,[B11,B13,A13],[],\'\',2]);
}
if(extern == 1){
data.push([3,[B13,B23,B22],[],\'\',1]);
data.push([3,[B13,B24,B23],[],\'\',1]);
data.push([3,[B14,B24,B13],[],\'\',1]);
data.push([3,[B14,A23,B24],[],\'\',1]);
data.push([3,[B22,B23,B11],[],\'\',1]);
data.push([3,[B23,B24,A12],[],\'\',1]);
data.push([3,[A12,B11,B23],[],\'\',1]);
data.push([3,[B24,A23,A12],[],\'\',1]);
data.push([3,[A23,B14,A13],[],\'\',2]);
data.push([3,[B22,B12,B13],[],\'\',2]);
data.push([3,[B14,B13,B03],[],\'\',2]);
data.push([3,[B03,B04,B14],[],\'\',2]);
data.push([3,[B13,B12,B02],[],\'\',2]);
data.push([3,[B02,B03,B13],[],\'\',2]);
}
var C01 = [l/2+D,y,0], C02 = [3*l/2+D,y,0], C03 = [3*l/2+2*D,y+L,0], C04 = [3*l/2+D,y+2*L,0];
var C11 = [l/2+D,y,h], C12 = [3*l/2+D,y,h], C13 = [3*l/2+2*D,y+L,h], C14 = [3*l/2+D,y+2*L,h];
var C22 = [3*l/2+D,y,h+H],
C23 = setCoord(getMean(C01,C03,0.5),2,h+H), C24 = setCoord(getMean(A01,C04,0.5),2,h+H);
var C012 = getMean(A01,C01,1/3), C011 = getMean(A01,C01,2/3),
C112 = getMean(A11,C11,1/3), C111 = getMean(A11,C11,2/3),
C022 = getMean(C01,C02,1/3), C021 = getMean(C01,C02,2/3),
C122 = getMean(C11,C12,1/3), C121 = getMean(C11,C12,2/3),
C032 = getMean(C02,C03,1/3), C031 = getMean(C02,C03,2/3),
C132 = getMean(C12,C13,1/3), C131 = getMean(C12,C13,2/3),
C042 = getMean(C03,C04,1/3), C041 = getMean(C03,C04,2/3),
C142 = getMean(C13,C14,1/3), C141 = getMean(C13,C14,2/3),
C052 = getMean(C04,A06,1/3), C051 = getMean(C04,A06,2/3),
C152 = getMean(C14,A16,1/3), C151 = getMean(C14,A16,2/3),
C201 = getMean(C23,C24,1/3), C202 = getMean(C23,C24,2/3),
C000 = getMean(A06,C02,1/2), C100 = getMean(A16,C12,1/2),
C221 = getMean(C11,C22,1/3), C222 = getMean(C11,C22,2/3),
C321 = getMean(C13,C22,1/3), C322 = getMean(C13,C22,2/3),
C521 = getMean(C14,A26,1/3), C522 = getMean(C14,A26,2/3);
if(labels == 1){
data.push([1,[C01],[],\'C01\',0]); data.push([1,[C02],[],\'C02\',0]); data.push([1,[C03],[],\'C03\',0]); data.push([1,[C04],[],\'C04\',0]);
data.push([1,[C11],[],\'C11\',0]); data.push([1,[C12],[],\'C12\',0]); data.push([1,[C13],[],\'C13\',0]); data.push([1,[C14],[],\'C14\',0]);
data.push([1,[C22],[],\'C22\',0]); data.push([1,[C23],[],\'C23\',0]); data.push([1,[C24],[],\'C24\',0]);
data.push([1,[C012],[],\'C012\',0]); data.push([1,[C011],[],\'C011\',0]);
data.push([1,[C112],[],\'C112\',0]); data.push([1,[C111],[],\'C111\',0]);
data.push([1,[C022],[],\'C022\',0]); data.push([1,[C021],[],\'C021\',0]);
data.push([1,[C122],[],\'C122\',0]); data.push([1,[C121],[],\'C121\',0]);
data.push([1,[C032],[],\'C032\',0]); data.push([1,[C031],[],\'C031\',0]);
data.push([1,[C132],[],\'C132\',0]); data.push([1,[C131],[],\'C131\',0]);
data.push([1,[C042],[],\'C042\',0]); data.push([1,[C041],[],\'C041\',0]);
data.push([1,[C142],[],\'C142\',0]); data.push([1,[C141],[],\'C141\',0]);
data.push([1,[C052],[],\'C052\',0]); data.push([1,[C051],[],\'C051\',0]);
data.push([1,[C152],[],\'C152\',0]); data.push([1,[C151],[],\'C151\',0]);
data.push([1,[C201],[],\'C201\',0]); data.push([1,[C202],[],\'C202\',0]);
data.push([1,[C000],[],\'C000\',0]); data.push([1,[C100],[],\'C100\',0]);
data.push([1,[C221],[],\'C221\',0]); data.push([1,[C222],[],\'C222\',0]);
data.push([1,[C321],[],\'C321\',0]); data.push([1,[C322],[],\'C322\',0]);
data.push([1,[C521],[],\'C521\',0]); data.push([1,[C522],[],\'C522\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[C03,C02,C01],[],\'\',2]);
data.push([3,[A06,C04,C03],[],\'\',2]);
data.push([3,[C01,A01,A06],[],\'\',2]);
data.push([3,[A06,C03,C01],[],\'\',2]);
data.push([3,[C13,C12,C11],[],\'\',2]);
data.push([3,[A16,C14,C13],[],\'\',2]);
data.push([3,[C11,A11,A16],[],\'\',2]);
data.push([3,[A16,C13,C11],[],\'\',2]);
}
if(extern == 1){
data.push([3,[A26,C24,A11],[],\'\',1]);
data.push([3,[C24,C23,C11],[],\'\',1]);
data.push([3,[C11,A11,C24],[],\'\',1]);
data.push([3,[C23,C22,C11],[],\'\',1]);
data.push([3,[C14,C24,A26],[],\'\',1]);
data.push([3,[C14,C23,C24],[],\'\',1]);
data.push([3,[C13,C23,C14],[],\'\',1]);
data.push([3,[C13,C22,C23],[],\'\',1]);
data.push([3,[C14,A26,A16],[],\'\',2]);
data.push([3,[C22,C13,C12],[],\'\',2]);
data.push([3,[C22,C12,C11],[],\'\',2]);
data.push([3,[A11,C11,A01],[],\'\',2]);
data.push([3,[C11,C01,A01],[],\'\',2]);
data.push([3,[C01,C11,C02],[],\'\',2]);
data.push([3,[C11,C12,C02],[],\'\',2]);
data.push([3,[C12,C13,C03],[],\'\',2]);
data.push([3,[C02,C12,C03],[],\'\',2]);
data.push([3,[C13,C14,C04],[],\'\',2]);
data.push([3,[C04,C03,C13],[],\'\',2]);
}
var D01 = [-l/2,-L+y,0], D02 = [-l/2-D,-2*L+y,0], D03 = [-3*l/2-D,-2*L+y,0], D04 = [-3*l/2-2*D,-L+y,0];
var D11 = [-l/2,-L+y,h], D12 = [-l/2-D,-2*L+y,h], D13 = [-3*l/2-D,-2*L+y,h], D14 = [-3*l/2-2*D,-L+y,h];
var D22 = [-l/2-D,-2*L+y,h+H],
D23 = setCoord(getMean(D01,D03,0.5),2,h+H), D24 = setCoord(getMean(B01,D04,0.5),2,h+H);
var D012 = getMean(B01,D01,1/3), D011 = getMean(B01,D01,2/3),
D112 = getMean(B11,D11,1/3), D111 = getMean(B11,D11,2/3),
D022 = getMean(D01,D02,1/3), D021 = getMean(D01,D02,2/3),
D122 = getMean(D11,D12,1/3), D121 = getMean(D11,D12,2/3),
D032 = getMean(D02,D03,1/3), D031 = getMean(D02,D03,2/3),
D132 = getMean(D12,D13,1/3), D131 = getMean(D12,D13,2/3),
D042 = getMean(D03,D04,1/3), D041 = getMean(D03,D04,2/3),
D142 = getMean(D13,D14,1/3), D141 = getMean(D13,D14,2/3),
D052 = getMean(D04,B02,1/3), D051 = getMean(D04,B02,2/3),
D152 = getMean(D14,B12,1/3), D151 = getMean(D14,B12,2/3),
D062 = getMean(B01,B02,1/3), D061 = getMean(B01,B02,2/3),
D162 = getMean(B11,B12,1/3), D161 = getMean(B11,B12,2/3),
D201 = getMean(D23,D24,1/3), D202 = getMean(D23,D24,2/3),
D000 = getMean(B02,D02,1/2), D100 = getMean(B12,D12,1/2),
D251 = getMean(D14,B22,1/3), D252 = getMean(D14,B22,2/3),
D231 = getMean(D13,D22,1/3), D232 = getMean(D13,D22,2/3),
D221 = getMean(D11,D22,1/3), D222 = getMean(D11,D22,2/3);
if(labels == 1){
data.push([1,[D01],[],\'D01\',0]); data.push([1,[D02],[],\'D02\',0]); data.push([1,[D03],[],\'D03\',0]); data.push([1,[D04],[],\'D04\',0]);
data.push([1,[D11],[],\'D11\',0]); data.push([1,[D12],[],\'D12\',0]); data.push([1,[D13],[],\'D13\',0]); data.push([1,[D14],[],\'D14\',0]);
data.push([1,[D22],[],\'D22\',0]); data.push([1,[D23],[],\'D23\',0]); data.push([1,[D24],[],\'D24\',0]);
data.push([1,[D012],[],\'D012\',0]); data.push([1,[D011],[],\'D011\',0]);
data.push([1,[D112],[],\'D112\',0]); data.push([1,[D111],[],\'D111\',0]);
data.push([1,[D022],[],\'D022\',0]); data.push([1,[D021],[],\'D021\',0]);
data.push([1,[D122],[],\'D122\',0]); data.push([1,[D121],[],\'D121\',0]);
data.push([1,[D032],[],\'D032\',0]); data.push([1,[D031],[],\'D031\',0]);
data.push([1,[D132],[],\'D132\',0]); data.push([1,[D131],[],\'D131\',0]);
data.push([1,[D042],[],\'D042\',0]); data.push([1,[D041],[],\'D041\',0]);
data.push([1,[D142],[],\'D142\',0]); data.push([1,[D141],[],\'D141\',0]);
data.push([1,[D052],[],\'D052\',0]); data.push([1,[D051],[],\'D051\',0]);
data.push([1,[D152],[],\'D152\',0]); data.push([1,[D151],[],\'D151\',0]);
data.push([1,[D062],[],\'D062\',0]); data.push([1,[D061],[],\'D061\',0]);
data.push([1,[D162],[],\'D162\',0]); data.push([1,[D161],[],\'D161\',0]);
data.push([1,[D201],[],\'D201\',0]); data.push([1,[D202],[],\'D202\',0]);
data.push([1,[D000],[],\'D000\',0]); data.push([1,[D100],[],\'D100\',0]);
data.push([1,[D251],[],\'D251\',0]); data.push([1,[D252],[],\'D252\',0]);
data.push([1,[D231],[],\'D231\',0]); data.push([1,[D232],[],\'D232\',0]);
data.push([1,[D221],[],\'D221\',0]); data.push([1,[D222],[],\'D222\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[D01,D02,D03],[],\'\',2]);
data.push([3,[D03,D04,B02],[],\'\',2]);
data.push([3,[B02,B01,D01],[],\'\',2]);
data.push([3,[D01,D03,B02],[],\'\',2]);
data.push([3,[D11,D12,D13],[],\'\',2]);
data.push([3,[D13,D14,B12],[],\'\',2]);
data.push([3,[B12,B11,D11],[],\'\',2]);
data.push([3,[D11,D13,B12],[],\'\',2]);
}
if(extern == 1){
data.push([3,[D22,D23,D11],[],\'\',1]);
data.push([3,[D23,D24,B11],[],\'\',1]);
data.push([3,[B11,D11,D23],[],\'\',1]);
data.push([3,[D24,B22,B11],[],\'\',1]);
data.push([3,[D13,D23,D22],[],\'\',1]);
data.push([3,[D13,D24,D23],[],\'\',1]);
data.push([3,[D14,D24,D13],[],\'\',1]);
data.push([3,[D14,B22,D24],[],\'\',1]);
data.push([3,[B22,D14,B12],[],\'\',2]);
data.push([3,[D22,D12,D13],[],\'\',2]);
data.push([3,[D11,D12,D22],[],\'\',2]);
data.push([3,[D14,D04,B12],[],\'\',2]);
data.push([3,[B12,D04,B02],[],\'\',2]);
data.push([3,[D14,D13,D03],[],\'\',2]);
data.push([3,[D03,D04,D14],[],\'\',2]);
data.push([3,[D13,D12,D02],[],\'\',2]);
data.push([3,[D02,D03,D13],[],\'\',2]);
data.push([3,[D12,D11,D01],[],\'\',2]);
data.push([3,[D01,D02,D12],[],\'\',2]);
data.push([3,[D11,B11,B01],[],\'\',2]);
data.push([3,[B01,D01,D11],[],\'\',2]);
}
// A base
data.push([2,[A01,A02],[d,d],\'\',1]);
data.push([2,[A02,A03],[d,d],\'\',1]);
data.push([2,[A03,A04],[d,d],\'\',1]);
data.push([2,[A04,A05],[d,d],\'\',1]);
data.push([2,[A05,A06],[d,d],\'\',1]);
data.push([2,[A06,A01],[d,d],\'\',1]);
// A support
data.push([2,[A01,A11],[d,d],\'\',1]);
data.push([2,[A02,A12],[d,d],\'\',1]);
data.push([2,[A03,A13],[d,d],\'\',1]);
data.push([2,[A04,A14],[d,d],\'\',1]);
data.push([2,[A05,A15],[d,d],\'\',1]);
data.push([2,[A06,A16],[d,d],\'\',1]);
// A hight
data.push([2,[A11,A12],[d,d],\'\',1]);
data.push([2,[A12,A13],[d,d],\'\',1]);
data.push([2,[A13,A14],[d,d],\'\',1]);
data.push([2,[A14,A15],[d,d],\'\',1]);
data.push([2,[A15,A16],[d,d],\'\',1]);
data.push([2,[A16,A11],[d,d],\'\',1]);
// A roof
data.push([2,[A13,A23],[d,d],\'\',1]);
data.push([2,[A16,A26],[d,d],\'\',1]);
data.push([2,[A23,A26],[d,d],\'\',1]);
data.push([2,[A11,A26],[d,d],\'\',1]);
data.push([2,[A15,A26],[d,d],\'\',1]);
data.push([2,[A12,A23],[d,d],\'\',1]);
data.push([2,[A14,A23],[d,d],\'\',1]);
data.push([2,[A11,A25],[d,d],\'\',1]);
data.push([2,[A15,A25],[d,d],\'\',1]);
data.push([2,[A12,A24],[d,d],\'\',1]);
data.push([2,[A14,A24],[d,d],\'\',1]);
// A intern
data.push([2,[A201,A14],[d,d],\'\',1]);
data.push([2,[A201,A15],[d,d],\'\',1]);
data.push([2,[A201,A11],[d,d],\'\',1]);
data.push([2,[A201,A12],[d,d],\'\',1]);
data.push([2,[A011,A111],[d,d],\'\',1]);
data.push([2,[A012,A112],[d,d],\'\',1]);
data.push([2,[A021,A121],[d,d],\'\',1]);
data.push([2,[A022,A122],[d,d],\'\',1]);
data.push([2,[A031,A131],[d,d],\'\',1]);
data.push([2,[A032,A132],[d,d],\'\',1]);
data.push([2,[A041,A141],[d,d],\'\',1]);
data.push([2,[A042,A142],[d,d],\'\',1]);
data.push([2,[A051,A151],[d,d],\'\',1]);
data.push([2,[A052,A152],[d,d],\'\',1]);
data.push([2,[A061,A161],[d,d],\'\',1]);
data.push([2,[A062,A162],[d,d],\'\',1]);
data.push([2,[A03,A06],[d,d],\'\',2]);
data.push([2,[A04,A02],[d,d],\'\',2]);
data.push([2,[A012,A041],[d,d],\'\',2]);
data.push([2,[A011,A042],[d,d],\'\',2]);
data.push([2,[A05,A01],[d,d],\'\',2]);
data.push([2,[A021,A062],[d,d],\'\',2]);
data.push([2,[A022,A061],[d,d],\'\',2]);
data.push([2,[A031,A052],[d,d],\'\',2]);
data.push([2,[A032,A051],[d,d],\'\',2]);
data.push([2,[A151,A512],[d,d],\'\',1]);
data.push([2,[A152,A511],[d,d],\'\',1]);
data.push([2,[A131,A411],[d,d],\'\',1]);
data.push([2,[A132,A412],[d,d],\'\',1]);
data.push([2,[A121,A212],[d,d],\'\',1]);
data.push([2,[A122,A211],[d,d],\'\',1]);
data.push([2,[A161,A611],[d,d],\'\',1]);
data.push([2,[A162,A612],[d,d],\'\',1]);
data.push([2,[A411,A511],[d,d],\'\',1]);
data.push([2,[A412,A512],[d,d],\'\',1]);
data.push([2,[A211,A611],[d,d],\'\',1]);
data.push([2,[A212,A612],[d,d],\'\',1]);
// B base
data.push([2,[A02,B01],[d,d],\'\',1]);
data.push([2,[B01,B02],[d,d],\'\',1]);
data.push([2,[B02,B03],[d,d],\'\',1]);
data.push([2,[B03,B04],[d,d],\'\',1]);
data.push([2,[B04,A03],[d,d],\'\',1]);
// B support
data.push([2,[B01,B11],[d,d],\'\',1]);
data.push([2,[B02,B12],[d,d],\'\',1]);
data.push([2,[B03,B13],[d,d],\'\',1]);
data.push([2,[B04,B14],[d,d],\'\',1]);
// B hight
data.push([2,[A12,B11],[d,d],\'\',1]);
data.push([2,[B11,B12],[d,d],\'\',1]);
data.push([2,[B12,B13],[d,d],\'\',1]);
data.push([2,[B13,B14],[d,d],\'\',1]);
data.push([2,[B14,A13],[d,d],\'\',1]);
// B roof
data.push([2,[B12,B22],[d,d],\'\',1]);
data.push([2,[A23,B22],[d,d],\'\',1]);
data.push([2,[B11,B22],[d,d],\'\',1]);
data.push([2,[B13,B22],[d,d],\'\',1]);
data.push([2,[B11,B23],[d,d],\'\',1]);
data.push([2,[B13,B23],[d,d],\'\',1]);
data.push([2,[B14,B24],[d,d],\'\',1]);
data.push([2,[A12,B24],[d,d],\'\',1]);
data.push([2,[A23,B14],[d,d],\'\',1]);
// B structure
data.push([2,[B011,B111],[d,d],\'\',1]);
data.push([2,[B012,B112],[d,d],\'\',1]);
data.push([2,[B021,B121],[d,d],\'\',1]);
data.push([2,[B022,B122],[d,d],\'\',1]);
data.push([2,[B031,B131],[d,d],\'\',1]);
data.push([2,[B032,B132],[d,d],\'\',1]);
data.push([2,[B041,B141],[d,d],\'\',1]);
data.push([2,[B042,B142],[d,d],\'\',1]);
data.push([2,[B112,B202],[d,d],\'\',1]);
data.push([2,[B131,B202],[d,d],\'\',1]);
data.push([2,[B111,B201],[d,d],\'\',1]);
data.push([2,[B132,B201],[d,d],\'\',1]);
// B intern
data.push([2,[A03,B02],[d,d],\'\',1]);
data.push([2,[A13,B12],[d,d],\'\',1]);
data.push([2,[B01,B03],[d,d],\'\',2]);
data.push([2,[A02,B04],[d,d],\'\',2]);
data.push([2,[B012,B031],[d,d],\'\',2]);
data.push([2,[B011,B032],[d,d],\'\',2]);
data.push([2,[B11,B13],[d,d],\'\',2]);
data.push([2,[A12,B14],[d,d],\'\',2]);
data.push([2,[B112,B131],[d,d],\'\',2]);
data.push([2,[B111,B132],[d,d],\'\',2]);
data.push([2,[D061,A021],[d,d],\'\',2]);
data.push([2,[D062,A022],[d,d],\'\',2]);
data.push([2,[B021,B042],[d,d],\'\',2]);
data.push([2,[B022,B041],[d,d],\'\',2]);
data.push([2,[D161,A121],[d,d],\'\',2]);
data.push([2,[D162,A122],[d,d],\'\',2]);
data.push([2,[B121,B142],[d,d],\'\',2]);
data.push([2,[B122,B141],[d,d],\'\',2]);
data.push([2,[B000,B100],[d,d],\'\',1]);
data.push([2,[B141,B242],[d,d],\'\',1]);
data.push([2,[B142,B241],[d,d],\'\',1]);
data.push([2,[B121,B221],[d,d],\'\',1]);
data.push([2,[B122,B222],[d,d],\'\',1]);
data.push([2,[D162,B211],[d,d],\'\',1]);
data.push([2,[D161,B212],[d,d],\'\',1]);
data.push([2,[B221,B241],[d,d],\'\',1]);
data.push([2,[B222,B242],[d,d],\'\',1]);
data.push([2,[A211,B211],[d,d],\'\',1]);
data.push([2,[A212,B212],[d,d],\'\',1]);
// C base
data.push([2,[A01,C01],[d,d],\'\',1]);
data.push([2,[C01,C02],[d,d],\'\',1]);
data.push([2,[C02,C03],[d,d],\'\',1]);
data.push([2,[C03,C04],[d,d],\'\',1]);
data.push([2,[C04,A06],[d,d],\'\',1]);
// C support
data.push([2,[C01,C11],[d,d],\'\',1]);
data.push([2,[C02,C12],[d,d],\'\',1]);
data.push([2,[C03,C13],[d,d],\'\',1]);
data.push([2,[C04,C14],[d,d],\'\',1]);
// C hight
data.push([2,[A11,C11],[d,d],\'\',1]);
data.push([2,[C11,C12],[d,d],\'\',1]);
data.push([2,[C12,C13],[d,d],\'\',1]);
data.push([2,[C13,C14],[d,d],\'\',1]);
data.push([2,[C14,A16],[d,d],\'\',1]);
// C roof
data.push([2,[C12,C22],[d,d],\'\',1]);
data.push([2,[A26,C22],[d,d],\'\',1]);
data.push([2,[C11,C22],[d,d],\'\',1]);
data.push([2,[C13,C22],[d,d],\'\',1]);
data.push([2,[C11,C23],[d,d],\'\',1]);
data.push([2,[C13,C23],[d,d],\'\',1]);
data.push([2,[C14,C24],[d,d],\'\',1]);
data.push([2,[A11,C24],[d,d],\'\',1]);
data.push([2,[A26,C14],[d,d],\'\',1]);
data.push([2,[C121,C222],[d,d],\'\',1]);
data.push([2,[C122,C221],[d,d],\'\',1]);
data.push([2,[C131,C321],[d,d],\'\',1]);
data.push([2,[C132,C322],[d,d],\'\',1]);
data.push([2,[C151,C522],[d,d],\'\',1]);
data.push([2,[C152,C521],[d,d],\'\',1]);
data.push([2,[A612,C222],[d,d],\'\',1]);
data.push([2,[A611,C221],[d,d],\'\',1]);
data.push([2,[C321,C521],[d,d],\'\',1]);
data.push([2,[C322,C522],[d,d],\'\',1]);
// C structure
data.push([2,[C201,C111],[d,d],\'\',1]);
data.push([2,[C201,C142],[d,d],\'\',1]);
data.push([2,[C202,C112],[d,d],\'\',1]);
data.push([2,[C202,C141],[d,d],\'\',1]);
data.push([2,[C011,C111],[d,d],\'\',1]);
data.push([2,[C012,C112],[d,d],\'\',1]);
data.push([2,[C021,C121],[d,d],\'\',1]);
data.push([2,[C022,C122],[d,d],\'\',1]);
data.push([2,[C031,C131],[d,d],\'\',1]);
data.push([2,[C032,C132],[d,d],\'\',1]);
data.push([2,[C041,C141],[d,d],\'\',1]);
data.push([2,[C042,C142],[d,d],\'\',1]);
data.push([2,[C051,C151],[d,d],\'\',1]);
data.push([2,[C052,C152],[d,d],\'\',1]);
// C intern
data.push([2,[C02,A06],[d,d],\'\',1]);
data.push([2,[C12,A16],[d,d],\'\',1]);
data.push([2,[A01,C04],[d,d],\'\',2]);
data.push([2,[C011,C042],[d,d],\'\',2]);
data.push([2,[C012,C041],[d,d],\'\',2]);
data.push([2,[C03,C01],[d,d],\'\',2]);
data.push([2,[A11,C14],[d,d],\'\',2]);
data.push([2,[C111,C142],[d,d],\'\',2]);
data.push([2,[C112,C141],[d,d],\'\',2]);
data.push([2,[C13,C11],[d,d],\'\',2]);
data.push([2,[A062,C021],[d,d],\'\',2]);
data.push([2,[A061,C022],[d,d],\'\',2]);
data.push([2,[C052,C031],[d,d],\'\',2]);
data.push([2,[C051,C032],[d,d],\'\',2]);
data.push([2,[A162,C121],[d,d],\'\',2]);
data.push([2,[A161,C122],[d,d],\'\',2]);
data.push([2,[C152,C131],[d,d],\'\',2]);
data.push([2,[C151,C132],[d,d],\'\',2]);
data.push([2,[C000,C100],[d,d],\'\',1]);
// D base
data.push([2,[B01,D01],[d,d],\'\',1]);
data.push([2,[D01,D02],[d,d],\'\',1]);
data.push([2,[D02,D03],[d,d],\'\',1]);
data.push([2,[D03,D04],[d,d],\'\',1]);
data.push([2,[D04,B02],[d,d],\'\',1]);
// D support
data.push([2,[D01,D11],[d,d],\'\',1]);
data.push([2,[D02,D12],[d,d],\'\',1]);
data.push([2,[D03,D13],[d,d],\'\',1]);
data.push([2,[D04,D14],[d,d],\'\',1]);
// D hight
data.push([2,[B11,D11],[d,d],\'\',1]);
data.push([2,[D11,D12],[d,d],\'\',1]);
data.push([2,[D12,D13],[d,d],\'\',1]);
data.push([2,[D13,D14],[d,d],\'\',1]);
data.push([2,[D14,B12],[d,d],\'\',1]);
// D roof
data.push([2,[D12,D22],[d,d],\'\',1]);
data.push([2,[D11,D22],[d,d],\'\',1]);
data.push([2,[D13,D22],[d,d],\'\',1]);
data.push([2,[D11,D23],[d,d],\'\',1]);
data.push([2,[D13,D23],[d,d],\'\',1]);
data.push([2,[D14,B22],[d,d],\'\',1]);
data.push([2,[D14,D24],[d,d],\'\',1]);
data.push([2,[B11,D24],[d,d],\'\',1]);
data.push([2,[D22,B22],[d,d],\'\',1]);
// D structure
data.push([2,[D201,D111],[d,d],\'\',1]);
data.push([2,[D201,D142],[d,d],\'\',1]);
data.push([2,[D202,D112],[d,d],\'\',1]);
data.push([2,[D202,D141],[d,d],\'\',1]);
data.push([2,[D011,D111],[d,d],\'\',1]);
data.push([2,[D012,D112],[d,d],\'\',1]);
data.push([2,[D021,D121],[d,d],\'\',1]);
data.push([2,[D022,D122],[d,d],\'\',1]);
data.push([2,[D031,D131],[d,d],\'\',1]);
data.push([2,[D032,D132],[d,d],\'\',1]);
data.push([2,[D041,D141],[d,d],\'\',1]);
data.push([2,[D042,D142],[d,d],\'\',1]);
data.push([2,[D051,D151],[d,d],\'\',1]);
data.push([2,[D052,D152],[d,d],\'\',1]);
// D intern
data.push([2,[D02,B02],[d,d],\'\',1]);
data.push([2,[D12,B12],[d,d],\'\',1]);
data.push([2,[D01,D03],[d,d],\'\',2]);
data.push([2,[B01,D04],[d,d],\'\',2]);
data.push([2,[D012,D041],[d,d],\'\',2]);
data.push([2,[D011,D042],[d,d],\'\',2]);
data.push([2,[D11,D13],[d,d],\'\',2]);
data.push([2,[B11,D14],[d,d],\'\',2]);
data.push([2,[D112,D141],[d,d],\'\',2]);
data.push([2,[D111,D142],[d,d],\'\',2]);
data.push([2,[D021,D061],[d,d],\'\',2]);
data.push([2,[D022,D062],[d,d],\'\',2]);
data.push([2,[D031,D052],[d,d],\'\',2]);
data.push([2,[D032,D051],[d,d],\'\',2]);
data.push([2,[D121,D161],[d,d],\'\',2]);
data.push([2,[D122,D162],[d,d],\'\',2]);
data.push([2,[D131,D152],[d,d],\'\',2]);
data.push([2,[D132,D151],[d,d],\'\',2]);
data.push([2,[D061,D161],[d,d],\'\',2]);
data.push([2,[D062,D162],[d,d],\'\',2]);
data.push([2,[D000,D100],[d,d],\'\',1]);
data.push([2,[D151,D252],[d,d],\'\',1]);
data.push([2,[D152,D251],[d,d],\'\',1]);
data.push([2,[D131,D231],[d,d],\'\',1]);
data.push([2,[D132,D232],[d,d],\'\',1]);
data.push([2,[D121,D222],[d,d],\'\',1]);
data.push([2,[D122,D221],[d,d],\'\',1]);
data.push([2,[D231,D251],[d,d],\'\',1]);
data.push([2,[D232,D252],[d,d],\'\',1]);
data.push([2,[D221,B211],[d,d],\'\',1]);
data.push([2,[D222,B212],[d,d],\'\',1]);
return data;
}
function getMean(point_1, point_2, weight){
var mean = [];
for(var i = 0;i < 3;i++){
mean.push(weight*point_1[i]+(1-weight)*point_2[i]);
}
return mean;
}
function setCoord(point,n,value){
point[n] = value;
return point;
}
function setDesign(labels,floors,extern,data){
var s = 0.2;
var d = 10*s;
var h = 280*s;
var l = 500*s;
var L = l*Math.cos(Math.PI/6);
var D = l*Math.sin(Math.PI/6);
var H = 250*s;
var y = 200*s;
var A01 = [l/2,y+L,0], A02 = [-l/2,y+L,0], A03 = [-l/2-D,y+2*L,0],
A04 = [-l/2,y+3*L,0], A05 = [l/2,y+3*L,0], A06 = [l/2+D,y+2*L,0];
var A11 = [l/2,y+L,h], A12 = [-l/2,y+L,h], A13 = [-l/2-D,y+2*L,h],
A14 = [-l/2,y+3*L,h], A15 = [l/2,y+3*L,h], A16 = [l/2+D,y+2*L,h];
var A23 = [-l/2-D,y+2*L,h+H], A26 = [l/2+D,y+2*L,h+H],
A24 = setCoord(getMean(A02,A04,0.5),2,h+H), A25 = setCoord(getMean(A01,A05,0.5),2,h+H);
var A012 = getMean(A01,A02,1/3), A011 = getMean(A01,A02,2/3),
A112 = getMean(A11,A12,1/3), A111 = getMean(A11,A12,2/3),
A022 = getMean(A02,A03,1/3), A021 = getMean(A02,A03,2/3),
A122 = getMean(A12,A13,1/3), A121 = getMean(A12,A13,2/3),
A032 = getMean(A03,A04,1/3), A031 = getMean(A03,A04,2/3),
A132 = getMean(A13,A14,1/3), A131 = getMean(A13,A14,2/3),
A042 = getMean(A04,A05,1/3), A041 = getMean(A04,A05,2/3),
A142 = getMean(A14,A15,1/3), A141 = getMean(A14,A15,2/3),
A052 = getMean(A05,A06,1/3), A051 = getMean(A05,A06,2/3),
A152 = getMean(A15,A16,1/3), A151 = getMean(A15,A16,2/3),
A062 = getMean(A06,A01,1/3), A061 = getMean(A06,A01,2/3),
A162 = getMean(A16,A11,1/3), A161 = getMean(A16,A11,2/3),
A211 = getMean(A12,A23,1/3), A212 = getMean(A12,A23,2/3),
A411 = getMean(A14,A23,1/3), A412 = getMean(A14,A23,2/3),
A511 = getMean(A15,A26,1/3), A512 = getMean(A15,A26,2/3),
A611 = getMean(A11,A26,1/3), A612 = getMean(A11,A26,2/3),
A201 = getMean(A24,A25,1/2);
if(labels == 1){
data.push([1,[A01],[],'A01',0]); data.push([1,[A02],[],'A02',0]); data.push([1,[A03],[],'A03',0]);
data.push([1,[A04],[],'A04',0]); data.push([1,[A05],[],'A05',0]); data.push([1,[A06],[],'A06',0]);
data.push([1,[A11],[],'A11',0]); data.push([1,[A12],[],'A12',0]); data.push([1,[A13],[],'A13',0]);
data.push([1,[A14],[],'A14',0]); data.push([1,[A15],[],'A15',0]); data.push([1,[A16],[],'A16',0]);
data.push([1,[A23],[],'A23',0]); data.push([1,[A26],[],'A26',0]); data.push([1,[A24],[],'A24',0]); data.push([1,[A25],[],'A25',0]);
data.push([1,[A012],[],\'A012\',0]); data.push([1,[A011],[],\'A011\',0]);
data.push([1,[A112],[],\'A112\',0]); data.push([1,[A111],[],\'A111\',0]);
data.push([1,[A022],[],\'A022\',0]); data.push([1,[A021],[],\'A021\',0]);
data.push([1,[A122],[],\'A122\',0]); data.push([1,[A121],[],\'A121\',0]);
data.push([1,[A032],[],\'A032\',0]); data.push([1,[A031],[],\'A031\',0]);
data.push([1,[A132],[],\'A132\',0]); data.push([1,[A131],[],\'A131\',0]);
data.push([1,[A042],[],\'A042\',0]); data.push([1,[A041],[],\'A041\',0]);
data.push([1,[A142],[],\'A142\',0]); data.push([1,[A141],[],\'A141\',0]);
data.push([1,[A052],[],\'A052\',0]); data.push([1,[A051],[],\'A051\',0]);
data.push([1,[A152],[],\'A152\',0]); data.push([1,[A151],[],\'A151\',0]);
data.push([1,[A062],[],\'A062\',0]); data.push([1,[A061],[],\'A061\',0]);
data.push([1,[A162],[],\'A162\',0]); data.push([1,[A161],[],\'A161\',0]);
data.push([1,[A211],[],\'A211\',0]); data.push([1,[A212],[],\'A212\',0]);
data.push([1,[A411],[],\'A411\',0]); data.push([1,[A412],[],\'A412\',0]);
data.push([1,[A511],[],\'A511\',0]); data.push([1,[A512],[],\'A512\',0]);
data.push([1,[A611],[],\'A611\',0]); data.push([1,[A612],[],\'A612\',0]);
data.push([1,[A201],[],\'A201\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[A01,A02,A03],[],\'\',2]);
data.push([3,[A03,A04,A05],[],\'\',2]);
data.push([3,[A05,A06,A01],[],\'\',2]);
data.push([3,[A01,A03,A05],[],\'\',2]);
}
if(extern == 1){
data.push([3,[A14,A24,A23],[],\'\',1]);
data.push([3,[A14,A25,A24],[],\'\',1]);
data.push([3,[A15,A25,A14],[],\'\',1]);
data.push([3,[A15,A26,A25],[],\'\',1]);
data.push([3,[A23,A24,A12],[],\'\',1]);
data.push([3,[A24,A25,A11],[],\'\',1]);
data.push([3,[A11,A12,A24],[],\'\',1]);
data.push([3,[A25,A26,A11],[],\'\',1]);
data.push([3,[A26,A15,A16],[],\'\',2]);
data.push([3,[A23,A13,A14],[],\'\',2]);
}
var B01 = [-l/2-D,y,0], B02 = [-3*l/2-D,y,0], B03 = [-3*l/2-2*D,y+L,0], B04 = [-3*l/2-D,y+2*L,0];
var B11 = [-l/2-D,y,h], B12 = [-3*l/2-D,y,h], B13 = [-3*l/2-2*D,y+L,h], B14 = [-3*l/2-D,y+2*L,h];
var B22 = [-3*l/2-D,y,h+H],
B23 = setCoord(getMean(B01,B03,0.5),2,h+H), B24 = setCoord(getMean(A02,B04,0.5),2,h+H);
var B012 = getMean(A02,B01,1/3), B011 = getMean(A02,B01,2/3),
B112 = getMean(A12,B11,1/3), B111 = getMean(A12,B11,2/3),
B022 = getMean(B02,B03,1/3), B021 = getMean(B02,B03,2/3),
B122 = getMean(B12,B13,1/3), B121 = getMean(B12,B13,2/3),
B032 = getMean(B03,B04,1/3), B031 = getMean(B03,B04,2/3),
B132 = getMean(B13,B14,1/3), B131 = getMean(B13,B14,2/3),
B042 = getMean(B04,A03,1/3), B041 = getMean(B04,A03,2/3),
B142 = getMean(B14,A13,1/3), B141 = getMean(B14,A13,2/3),
B201 = getMean(B23,B24,1/3), B202 = getMean(B23,B24,2/3),
B000 = getMean(B02,A03,1/2), B100 = getMean(B12,A13,1/2),
B241 = getMean(B14,A23,1/3), B242 = getMean(B14,A23,2/3),
B221 = getMean(B13,B22,1/3), B222 = getMean(B13,B22,2/3),
B211 = getMean(B11,B22,1/3), B212 = getMean(B11,B22,2/3);
if(labels == 1){
data.push([1,[B01],[],\'B01\',0]); data.push([1,[B02],[],\'B02\',0]); data.push([1,[B03],[],\'B03\',0]); data.push([1,[B04],[],\'B04\',0]);
data.push([1,[B11],[],\'B11\',0]); data.push([1,[B12],[],\'B12\',0]); data.push([1,[B13],[],\'B13\',0]); data.push([1,[B14],[],\'B14\',0]);
data.push([1,[B22],[],\'B22\',0]); data.push([1,[B23],[],\'B23\',0]); data.push([1,[B24],[],\'B24\',0]);
data.push([1,[B012],[],\'B012\',0]); data.push([1,[B011],[],\'B011\',0]);
data.push([1,[B112],[],\'B112\',0]); data.push([1,[B111],[],\'B111\',0]);
data.push([1,[B022],[],\'B022\',0]); data.push([1,[B021],[],\'B021\',0]);
data.push([1,[B122],[],\'B122\',0]); data.push([1,[B121],[],\'B121\',0]);
data.push([1,[B032],[],\'B032\',0]); data.push([1,[B031],[],\'B031\',0]);
data.push([1,[B132],[],\'B132\',0]); data.push([1,[B131],[],\'B131\',0]);
data.push([1,[B042],[],\'B042\',0]); data.push([1,[B041],[],\'B041\',0]);
data.push([1,[B142],[],\'B142\',0]); data.push([1,[B141],[],\'B141\',0]);
data.push([1,[B201],[],\'B201\',0]); data.push([1,[B202],[],\'B202\',0]);
data.push([1,[B000],[],\'B000\',0]); data.push([1,[B100],[],\'B100\',0]);
data.push([1,[B241],[],\'B241\',0]); data.push([1,[B242],[],\'B242\',0]);
data.push([1,[B221],[],\'B221\',0]); data.push([1,[B222],[],\'B222\',0]);
data.push([1,[B211],[],\'B211\',0]); data.push([1,[B212],[],\'B212\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[B01,B02,B03],[],\'\',2]);
data.push([3,[B03,B04,A03],[],\'\',2]);
data.push([3,[A03,A02,B01],[],\'\',2]);
data.push([3,[B01,B03,A03],[],\'\',2]);
data.push([3,[B11,B12,B13],[],\'\',2]);
data.push([3,[B13,B14,A13],[],\'\',2]);
data.push([3,[A13,A12,B11],[],\'\',2]);
data.push([3,[B11,B13,A13],[],\'\',2]);
}
if(extern == 1){
data.push([3,[B13,B23,B22],[],\'\',1]);
data.push([3,[B13,B24,B23],[],\'\',1]);
data.push([3,[B14,B24,B13],[],\'\',1]);
data.push([3,[B14,A23,B24],[],\'\',1]);
data.push([3,[B22,B23,B11],[],\'\',1]);
data.push([3,[B23,B24,A12],[],\'\',1]);
data.push([3,[A12,B11,B23],[],\'\',1]);
data.push([3,[B24,A23,A12],[],\'\',1]);
data.push([3,[A23,B14,A13],[],\'\',2]);
data.push([3,[B22,B12,B13],[],\'\',2]);
data.push([3,[B14,B13,B03],[],\'\',2]);
data.push([3,[B03,B04,B14],[],\'\',2]);
data.push([3,[B13,B12,B02],[],\'\',2]);
data.push([3,[B02,B03,B13],[],\'\',2]);
}
var C01 = [l/2+D,y,0], C02 = [3*l/2+D,y,0], C03 = [3*l/2+2*D,y+L,0], C04 = [3*l/2+D,y+2*L,0];
var C11 = [l/2+D,y,h], C12 = [3*l/2+D,y,h], C13 = [3*l/2+2*D,y+L,h], C14 = [3*l/2+D,y+2*L,h];
var C22 = [3*l/2+D,y,h+H],
C23 = setCoord(getMean(C01,C03,0.5),2,h+H), C24 = setCoord(getMean(A01,C04,0.5),2,h+H);
var C012 = getMean(A01,C01,1/3), C011 = getMean(A01,C01,2/3),
C112 = getMean(A11,C11,1/3), C111 = getMean(A11,C11,2/3),
C022 = getMean(C01,C02,1/3), C021 = getMean(C01,C02,2/3),
C122 = getMean(C11,C12,1/3), C121 = getMean(C11,C12,2/3),
C032 = getMean(C02,C03,1/3), C031 = getMean(C02,C03,2/3),
C132 = getMean(C12,C13,1/3), C131 = getMean(C12,C13,2/3),
C042 = getMean(C03,C04,1/3), C041 = getMean(C03,C04,2/3),
C142 = getMean(C13,C14,1/3), C141 = getMean(C13,C14,2/3),
C052 = getMean(C04,A06,1/3), C051 = getMean(C04,A06,2/3),
C152 = getMean(C14,A16,1/3), C151 = getMean(C14,A16,2/3),
C201 = getMean(C23,C24,1/3), C202 = getMean(C23,C24,2/3),
C000 = getMean(A06,C02,1/2), C100 = getMean(A16,C12,1/2),
C221 = getMean(C11,C22,1/3), C222 = getMean(C11,C22,2/3),
C321 = getMean(C13,C22,1/3), C322 = getMean(C13,C22,2/3),
C521 = getMean(C14,A26,1/3), C522 = getMean(C14,A26,2/3);
if(labels == 1){
data.push([1,[C01],[],\'C01\',0]); data.push([1,[C02],[],\'C02\',0]); data.push([1,[C03],[],\'C03\',0]); data.push([1,[C04],[],\'C04\',0]);
data.push([1,[C11],[],\'C11\',0]); data.push([1,[C12],[],\'C12\',0]); data.push([1,[C13],[],\'C13\',0]); data.push([1,[C14],[],\'C14\',0]);
data.push([1,[C22],[],\'C22\',0]); data.push([1,[C23],[],\'C23\',0]); data.push([1,[C24],[],\'C24\',0]);
data.push([1,[C012],[],\'C012\',0]); data.push([1,[C011],[],\'C011\',0]);
data.push([1,[C112],[],\'C112\',0]); data.push([1,[C111],[],\'C111\',0]);
data.push([1,[C022],[],\'C022\',0]); data.push([1,[C021],[],\'C021\',0]);
data.push([1,[C122],[],\'C122\',0]); data.push([1,[C121],[],\'C121\',0]);
data.push([1,[C032],[],\'C032\',0]); data.push([1,[C031],[],\'C031\',0]);
data.push([1,[C132],[],\'C132\',0]); data.push([1,[C131],[],\'C131\',0]);
data.push([1,[C042],[],\'C042\',0]); data.push([1,[C041],[],\'C041\',0]);
data.push([1,[C142],[],\'C142\',0]); data.push([1,[C141],[],\'C141\',0]);
data.push([1,[C052],[],\'C052\',0]); data.push([1,[C051],[],\'C051\',0]);
data.push([1,[C152],[],\'C152\',0]); data.push([1,[C151],[],\'C151\',0]);
data.push([1,[C201],[],\'C201\',0]); data.push([1,[C202],[],\'C202\',0]);
data.push([1,[C000],[],\'C000\',0]); data.push([1,[C100],[],\'C100\',0]);
data.push([1,[C221],[],\'C221\',0]); data.push([1,[C222],[],\'C222\',0]);
data.push([1,[C321],[],\'C321\',0]); data.push([1,[C322],[],\'C322\',0]);
data.push([1,[C521],[],\'C521\',0]); data.push([1,[C522],[],\'C522\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[C03,C02,C01],[],\'\',2]);
data.push([3,[A06,C04,C03],[],\'\',2]);
data.push([3,[C01,A01,A06],[],\'\',2]);
data.push([3,[A06,C03,C01],[],\'\',2]);
data.push([3,[C13,C12,C11],[],\'\',2]);
data.push([3,[A16,C14,C13],[],\'\',2]);
data.push([3,[C11,A11,A16],[],\'\',2]);
data.push([3,[A16,C13,C11],[],\'\',2]);
}
if(extern == 1){
data.push([3,[A26,C24,A11],[],\'\',1]);
data.push([3,[C24,C23,C11],[],\'\',1]);
data.push([3,[C11,A11,C24],[],\'\',1]);
data.push([3,[C23,C22,C11],[],\'\',1]);
data.push([3,[C14,C24,A26],[],\'\',1]);
data.push([3,[C14,C23,C24],[],\'\',1]);
data.push([3,[C13,C23,C14],[],\'\',1]);
data.push([3,[C13,C22,C23],[],\'\',1]);
data.push([3,[C14,A26,A16],[],\'\',2]);
data.push([3,[C22,C13,C12],[],\'\',2]);
data.push([3,[C22,C12,C11],[],\'\',2]);
data.push([3,[A11,C11,A01],[],\'\',2]);
data.push([3,[C11,C01,A01],[],\'\',2]);
data.push([3,[C01,C11,C02],[],\'\',2]);
data.push([3,[C11,C12,C02],[],\'\',2]);
data.push([3,[C12,C13,C03],[],\'\',2]);
data.push([3,[C02,C12,C03],[],\'\',2]);
data.push([3,[C13,C14,C04],[],\'\',2]);
data.push([3,[C04,C03,C13],[],\'\',2]);
}
var D01 = [-l/2,-L+y,0], D02 = [-l/2-D,-2*L+y,0], D03 = [-3*l/2-D,-2*L+y,0], D04 = [-3*l/2-2*D,-L+y,0];
var D11 = [-l/2,-L+y,h], D12 = [-l/2-D,-2*L+y,h], D13 = [-3*l/2-D,-2*L+y,h], D14 = [-3*l/2-2*D,-L+y,h];
var D22 = [-l/2-D,-2*L+y,h+H],
D23 = setCoord(getMean(D01,D03,0.5),2,h+H), D24 = setCoord(getMean(B01,D04,0.5),2,h+H);
var D012 = getMean(B01,D01,1/3), D011 = getMean(B01,D01,2/3),
D112 = getMean(B11,D11,1/3), D111 = getMean(B11,D11,2/3),
D022 = getMean(D01,D02,1/3), D021 = getMean(D01,D02,2/3),
D122 = getMean(D11,D12,1/3), D121 = getMean(D11,D12,2/3),
D032 = getMean(D02,D03,1/3), D031 = getMean(D02,D03,2/3),
D132 = getMean(D12,D13,1/3), D131 = getMean(D12,D13,2/3),
D042 = getMean(D03,D04,1/3), D041 = getMean(D03,D04,2/3),
D142 = getMean(D13,D14,1/3), D141 = getMean(D13,D14,2/3),
D052 = getMean(D04,B02,1/3), D051 = getMean(D04,B02,2/3),
D152 = getMean(D14,B12,1/3), D151 = getMean(D14,B12,2/3),
D062 = getMean(B01,B02,1/3), D061 = getMean(B01,B02,2/3),
D162 = getMean(B11,B12,1/3), D161 = getMean(B11,B12,2/3),
D201 = getMean(D23,D24,1/3), D202 = getMean(D23,D24,2/3),
D000 = getMean(B02,D02,1/2), D100 = getMean(B12,D12,1/2),
D251 = getMean(D14,B22,1/3), D252 = getMean(D14,B22,2/3),
D231 = getMean(D13,D22,1/3), D232 = getMean(D13,D22,2/3),
D221 = getMean(D11,D22,1/3), D222 = getMean(D11,D22,2/3);
if(labels == 1){
data.push([1,[D01],[],\'D01\',0]); data.push([1,[D02],[],\'D02\',0]); data.push([1,[D03],[],\'D03\',0]); data.push([1,[D04],[],\'D04\',0]);
data.push([1,[D11],[],\'D11\',0]); data.push([1,[D12],[],\'D12\',0]); data.push([1,[D13],[],\'D13\',0]); data.push([1,[D14],[],\'D14\',0]);
data.push([1,[D22],[],\'D22\',0]); data.push([1,[D23],[],\'D23\',0]); data.push([1,[D24],[],\'D24\',0]);
data.push([1,[D012],[],\'D012\',0]); data.push([1,[D011],[],\'D011\',0]);
data.push([1,[D112],[],\'D112\',0]); data.push([1,[D111],[],\'D111\',0]);
data.push([1,[D022],[],\'D022\',0]); data.push([1,[D021],[],\'D021\',0]);
data.push([1,[D122],[],\'D122\',0]); data.push([1,[D121],[],\'D121\',0]);
data.push([1,[D032],[],\'D032\',0]); data.push([1,[D031],[],\'D031\',0]);
data.push([1,[D132],[],\'D132\',0]); data.push([1,[D131],[],\'D131\',0]);
data.push([1,[D042],[],\'D042\',0]); data.push([1,[D041],[],\'D041\',0]);
data.push([1,[D142],[],\'D142\',0]); data.push([1,[D141],[],\'D141\',0]);
data.push([1,[D052],[],\'D052\',0]); data.push([1,[D051],[],\'D051\',0]);
data.push([1,[D152],[],\'D152\',0]); data.push([1,[D151],[],\'D151\',0]);
data.push([1,[D062],[],\'D062\',0]); data.push([1,[D061],[],\'D061\',0]);
data.push([1,[D162],[],\'D162\',0]); data.push([1,[D161],[],\'D161\',0]);
data.push([1,[D201],[],\'D201\',0]); data.push([1,[D202],[],\'D202\',0]);
data.push([1,[D000],[],\'D000\',0]); data.push([1,[D100],[],\'D100\',0]);
data.push([1,[D251],[],\'D251\',0]); data.push([1,[D252],[],\'D252\',0]);
data.push([1,[D231],[],\'D231\',0]); data.push([1,[D232],[],\'D232\',0]);
data.push([1,[D221],[],\'D221\',0]); data.push([1,[D222],[],\'D222\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[D01,D02,D03],[],\'\',2]);
data.push([3,[D03,D04,B02],[],\'\',2]);
data.push([3,[B02,B01,D01],[],\'\',2]);
data.push([3,[D01,D03,B02],[],\'\',2]);
data.push([3,[D11,D12,D13],[],\'\',2]);
data.push([3,[D13,D14,B12],[],\'\',2]);
data.push([3,[B12,B11,D11],[],\'\',2]);
data.push([3,[D11,D13,B12],[],\'\',2]);
}
if(extern == 1){
data.push([3,[D22,D23,D11],[],\'\',1]);
data.push([3,[D23,D24,B11],[],\'\',1]);
data.push([3,[B11,D11,D23],[],\'\',1]);
data.push([3,[D24,B22,B11],[],\'\',1]);
data.push([3,[D13,D23,D22],[],\'\',1]);
data.push([3,[D13,D24,D23],[],\'\',1]);
data.push([3,[D14,D24,D13],[],\'\',1]);
data.push([3,[D14,B22,D24],[],\'\',1]);
data.push([3,[B22,D14,B12],[],\'\',2]);
data.push([3,[D22,D12,D13],[],\'\',2]);
data.push([3,[D11,D12,D22],[],\'\',2]);
data.push([3,[D14,D04,B12],[],\'\',2]);
data.push([3,[B12,D04,B02],[],\'\',2]);
data.push([3,[D14,D13,D03],[],\'\',2]);
data.push([3,[D03,D04,D14],[],\'\',2]);
data.push([3,[D13,D12,D02],[],\'\',2]);
data.push([3,[D02,D03,D13],[],\'\',2]);
data.push([3,[D12,D11,D01],[],\'\',2]);
data.push([3,[D01,D02,D12],[],\'\',2]);
data.push([3,[D11,B11,B01],[],\'\',2]);
data.push([3,[B01,D01,D11],[],\'\',2]);
}
// A base
data.push([2,[A01,A02],[d,d],\'\',1]);
data.push([2,[A02,A03],[d,d],\'\',1]);
data.push([2,[A03,A04],[d,d],\'\',1]);
data.push([2,[A04,A05],[d,d],\'\',1]);
data.push([2,[A05,A06],[d,d],\'\',1]);
data.push([2,[A06,A01],[d,d],\'\',1]);
// A support
data.push([2,[A01,A11],[d,d],\'\',1]);
data.push([2,[A02,A12],[d,d],\'\',1]);
data.push([2,[A03,A13],[d,d],\'\',1]);
data.push([2,[A04,A14],[d,d],\'\',1]);
data.push([2,[A05,A15],[d,d],\'\',1]);
data.push([2,[A06,A16],[d,d],\'\',1]);
// A hight
data.push([2,[A11,A12],[d,d],\'\',1]);
data.push([2,[A12,A13],[d,d],\'\',1]);
data.push([2,[A13,A14],[d,d],\'\',1]);
data.push([2,[A14,A15],[d,d],\'\',1]);
data.push([2,[A15,A16],[d,d],\'\',1]);
data.push([2,[A16,A11],[d,d],\'\',1]);
// A roof
data.push([2,[A13,A23],[d,d],\'\',1]);
data.push([2,[A16,A26],[d,d],\'\',1]);
data.push([2,[A23,A26],[d,d],\'\',1]);
data.push([2,[A11,A26],[d,d],\'\',1]);
data.push([2,[A15,A26],[d,d],\'\',1]);
data.push([2,[A12,A23],[d,d],\'\',1]);
data.push([2,[A14,A23],[d,d],\'\',1]);
data.push([2,[A11,A25],[d,d],\'\',1]);
data.push([2,[A15,A25],[d,d],\'\',1]);
data.push([2,[A12,A24],[d,d],\'\',1]);
data.push([2,[A14,A24],[d,d],\'\',1]);
// A intern
data.push([2,[A201,A14],[d,d],\'\',1]);
data.push([2,[A201,A15],[d,d],\'\',1]);
data.push([2,[A201,A11],[d,d],\'\',1]);
data.push([2,[A201,A12],[d,d],\'\',1]);
data.push([2,[A011,A111],[d,d],\'\',1]);
data.push([2,[A012,A112],[d,d],\'\',1]);
data.push([2,[A021,A121],[d,d],\'\',1]);
data.push([2,[A022,A122],[d,d],\'\',1]);
data.push([2,[A031,A131],[d,d],\'\',1]);
data.push([2,[A032,A132],[d,d],\'\',1]);
data.push([2,[A041,A141],[d,d],\'\',1]);
data.push([2,[A042,A142],[d,d],\'\',1]);
data.push([2,[A051,A151],[d,d],\'\',1]);
data.push([2,[A052,A152],[d,d],\'\',1]);
data.push([2,[A061,A161],[d,d],\'\',1]);
data.push([2,[A062,A162],[d,d],\'\',1]);
data.push([2,[A03,A06],[d,d],\'\',2]);
data.push([2,[A04,A02],[d,d],\'\',2]);
data.push([2,[A012,A041],[d,d],\'\',2]);
data.push([2,[A011,A042],[d,d],\'\',2]);
data.push([2,[A05,A01],[d,d],\'\',2]);
data.push([2,[A021,A062],[d,d],\'\',2]);
data.push([2,[A022,A061],[d,d],\'\',2]);
data.push([2,[A031,A052],[d,d],\'\',2]);
data.push([2,[A032,A051],[d,d],\'\',2]);
data.push([2,[A151,A512],[d,d],\'\',1]);
data.push([2,[A152,A511],[d,d],\'\',1]);
data.push([2,[A131,A411],[d,d],\'\',1]);
data.push([2,[A132,A412],[d,d],\'\',1]);
data.push([2,[A121,A212],[d,d],\'\',1]);
data.push([2,[A122,A211],[d,d],\'\',1]);
data.push([2,[A161,A611],[d,d],\'\',1]);
data.push([2,[A162,A612],[d,d],\'\',1]);
data.push([2,[A411,A511],[d,d],\'\',1]);
data.push([2,[A412,A512],[d,d],\'\',1]);
data.push([2,[A211,A611],[d,d],\'\',1]);
data.push([2,[A212,A612],[d,d],\'\',1]);
// B base
data.push([2,[A02,B01],[d,d],\'\',1]);
data.push([2,[B01,B02],[d,d],\'\',1]);
data.push([2,[B02,B03],[d,d],\'\',1]);
data.push([2,[B03,B04],[d,d],\'\',1]);
data.push([2,[B04,A03],[d,d],\'\',1]);
// B support
data.push([2,[B01,B11],[d,d],\'\',1]);
data.push([2,[B02,B12],[d,d],\'\',1]);
data.push([2,[B03,B13],[d,d],\'\',1]);
data.push([2,[B04,B14],[d,d],\'\',1]);
// B hight
data.push([2,[A12,B11],[d,d],\'\',1]);
data.push([2,[B11,B12],[d,d],\'\',1]);
data.push([2,[B12,B13],[d,d],\'\',1]);
data.push([2,[B13,B14],[d,d],\'\',1]);
data.push([2,[B14,A13],[d,d],\'\',1]);
// B roof
data.push([2,[B12,B22],[d,d],\'\',1]);
data.push([2,[A23,B22],[d,d],\'\',1]);
data.push([2,[B11,B22],[d,d],\'\',1]);
data.push([2,[B13,B22],[d,d],\'\',1]);
data.push([2,[B11,B23],[d,d],\'\',1]);
data.push([2,[B13,B23],[d,d],\'\',1]);
data.push([2,[B14,B24],[d,d],\'\',1]);
data.push([2,[A12,B24],[d,d],\'\',1]);
data.push([2,[A23,B14],[d,d],\'\',1]);
// B structure
data.push([2,[B011,B111],[d,d],\'\',1]);
data.push([2,[B012,B112],[d,d],\'\',1]);
data.push([2,[B021,B121],[d,d],\'\',1]);
data.push([2,[B022,B122],[d,d],\'\',1]);
data.push([2,[B031,B131],[d,d],\'\',1]);
data.push([2,[B032,B132],[d,d],\'\',1]);
data.push([2,[B041,B141],[d,d],\'\',1]);
data.push([2,[B042,B142],[d,d],\'\',1]);
data.push([2,[B112,B202],[d,d],\'\',1]);
data.push([2,[B131,B202],[d,d],\'\',1]);
data.push([2,[B111,B201],[d,d],\'\',1]);
data.push([2,[B132,B201],[d,d],\'\',1]);
// B intern
data.push([2,[A03,B02],[d,d],\'\',1]);
data.push([2,[A13,B12],[d,d],\'\',1]);
data.push([2,[B01,B03],[d,d],\'\',2]);
data.push([2,[A02,B04],[d,d],\'\',2]);
data.push([2,[B012,B031],[d,d],\'\',2]);
data.push([2,[B011,B032],[d,d],\'\',2]);
data.push([2,[B11,B13],[d,d],\'\',2]);
data.push([2,[A12,B14],[d,d],\'\',2]);
data.push([2,[B112,B131],[d,d],\'\',2]);
data.push([2,[B111,B132],[d,d],\'\',2]);
data.push([2,[D061,A021],[d,d],\'\',2]);
data.push([2,[D062,A022],[d,d],\'\',2]);
data.push([2,[B021,B042],[d,d],\'\',2]);
data.push([2,[B022,B041],[d,d],\'\',2]);
data.push([2,[D161,A121],[d,d],\'\',2]);
data.push([2,[D162,A122],[d,d],\'\',2]);
data.push([2,[B121,B142],[d,d],\'\',2]);
data.push([2,[B122,B141],[d,d],\'\',2]);
data.push([2,[B000,B100],[d,d],\'\',1]);
data.push([2,[B141,B242],[d,d],\'\',1]);
data.push([2,[B142,B241],[d,d],\'\',1]);
data.push([2,[B121,B221],[d,d],\'\',1]);
data.push([2,[B122,B222],[d,d],\'\',1]);
data.push([2,[D162,B211],[d,d],\'\',1]);
data.push([2,[D161,B212],[d,d],\'\',1]);
data.push([2,[B221,B241],[d,d],\'\',1]);
data.push([2,[B222,B242],[d,d],\'\',1]);
data.push([2,[A211,B211],[d,d],\'\',1]);
data.push([2,[A212,B212],[d,d],\'\',1]);
// C base
data.push([2,[A01,C01],[d,d],\'\',1]);
data.push([2,[C01,C02],[d,d],\'\',1]);
data.push([2,[C02,C03],[d,d],\'\',1]);
data.push([2,[C03,C04],[d,d],\'\',1]);
data.push([2,[C04,A06],[d,d],\'\',1]);
// C support
data.push([2,[C01,C11],[d,d],\'\',1]);
data.push([2,[C02,C12],[d,d],\'\',1]);
data.push([2,[C03,C13],[d,d],\'\',1]);
data.push([2,[C04,C14],[d,d],\'\',1]);
// C hight
data.push([2,[A11,C11],[d,d],\'\',1]);
data.push([2,[C11,C12],[d,d],\'\',1]);
data.push([2,[C12,C13],[d,d],\'\',1]);
data.push([2,[C13,C14],[d,d],\'\',1]);
data.push([2,[C14,A16],[d,d],\'\',1]);
// C roof
data.push([2,[C12,C22],[d,d],\'\',1]);
data.push([2,[A26,C22],[d,d],\'\',1]);
data.push([2,[C11,C22],[d,d],\'\',1]);
data.push([2,[C13,C22],[d,d],\'\',1]);
data.push([2,[C11,C23],[d,d],\'\',1]);
data.push([2,[C13,C23],[d,d],\'\',1]);
data.push([2,[C14,C24],[d,d],\'\',1]);
data.push([2,[A11,C24],[d,d],\'\',1]);
data.push([2,[A26,C14],[d,d],\'\',1]);
data.push([2,[C121,C222],[d,d],\'\',1]);
data.push([2,[C122,C221],[d,d],\'\',1]);
data.push([2,[C131,C321],[d,d],\'\',1]);
data.push([2,[C132,C322],[d,d],\'\',1]);
data.push([2,[C151,C522],[d,d],\'\',1]);
data.push([2,[C152,C521],[d,d],\'\',1]);
data.push([2,[A612,C222],[d,d],\'\',1]);
data.push([2,[A611,C221],[d,d],\'\',1]);
data.push([2,[C321,C521],[d,d],\'\',1]);
data.push([2,[C322,C522],[d,d],\'\',1]);
// C structure
data.push([2,[C201,C111],[d,d],\'\',1]);
data.push([2,[C201,C142],[d,d],\'\',1]);
data.push([2,[C202,C112],[d,d],\'\',1]);
data.push([2,[C202,C141],[d,d],\'\',1]);
data.push([2,[C011,C111],[d,d],\'\',1]);
data.push([2,[C012,C112],[d,d],\'\',1]);
data.push([2,[C021,C121],[d,d],\'\',1]);
data.push([2,[C022,C122],[d,d],\'\',1]);
data.push([2,[C031,C131],[d,d],\'\',1]);
data.push([2,[C032,C132],[d,d],\'\',1]);
data.push([2,[C041,C141],[d,d],\'\',1]);
data.push([2,[C042,C142],[d,d],\'\',1]);
data.push([2,[C051,C151],[d,d],\'\',1]);
data.push([2,[C052,C152],[d,d],\'\',1]);
// C intern
data.push([2,[C02,A06],[d,d],\'\',1]);
data.push([2,[C12,A16],[d,d],\'\',1]);
data.push([2,[A01,C04],[d,d],\'\',2]);
data.push([2,[C011,C042],[d,d],\'\',2]);
data.push([2,[C012,C041],[d,d],\'\',2]);
data.push([2,[C03,C01],[d,d],\'\',2]);
data.push([2,[A11,C14],[d,d],\'\',2]);
data.push([2,[C111,C142],[d,d],\'\',2]);
data.push([2,[C112,C141],[d,d],\'\',2]);
data.push([2,[C13,C11],[d,d],\'\',2]);
data.push([2,[A062,C021],[d,d],\'\',2]);
data.push([2,[A061,C022],[d,d],\'\',2]);
data.push([2,[C052,C031],[d,d],\'\',2]);
data.push([2,[C051,C032],[d,d],\'\',2]);
data.push([2,[A162,C121],[d,d],\'\',2]);
data.push([2,[A161,C122],[d,d],\'\',2]);
data.push([2,[C152,C131],[d,d],\'\',2]);
data.push([2,[C151,C132],[d,d],\'\',2]);
data.push([2,[C000,C100],[d,d],\'\',1]);
// D base
data.push([2,[B01,D01],[d,d],\'\',1]);
data.push([2,[D01,D02],[d,d],\'\',1]);
data.push([2,[D02,D03],[d,d],\'\',1]);
data.push([2,[D03,D04],[d,d],\'\',1]);
data.push([2,[D04,B02],[d,d],\'\',1]);
// D support
data.push([2,[D01,D11],[d,d],\'\',1]);
data.push([2,[D02,D12],[d,d],\'\',1]);
data.push([2,[D03,D13],[d,d],\'\',1]);
data.push([2,[D04,D14],[d,d],\'\',1]);
// D hight
data.push([2,[B11,D11],[d,d],\'\',1]);
data.push([2,[D11,D12],[d,d],\'\',1]);
data.push([2,[D12,D13],[d,d],\'\',1]);
data.push([2,[D13,D14],[d,d],\'\',1]);
data.push([2,[D14,B12],[d,d],\'\',1]);
// D roof
data.push([2,[D12,D22],[d,d],\'\',1]);
data.push([2,[D11,D22],[d,d],\'\',1]);
data.push([2,[D13,D22],[d,d],\'\',1]);
data.push([2,[D11,D23],[d,d],\'\',1]);
data.push([2,[D13,D23],[d,d],\'\',1]);
data.push([2,[D14,B22],[d,d],\'\',1]);
data.push([2,[D14,D24],[d,d],\'\',1]);
data.push([2,[B11,D24],[d,d],\'\',1]);
data.push([2,[D22,B22],[d,d],\'\',1]);
// D structure
data.push([2,[D201,D111],[d,d],\'\',1]);
data.push([2,[D201,D142],[d,d],\'\',1]);
data.push([2,[D202,D112],[d,d],\'\',1]);
data.push([2,[D202,D141],[d,d],\'\',1]);
data.push([2,[D011,D111],[d,d],\'\',1]);
data.push([2,[D012,D112],[d,d],\'\',1]);
data.push([2,[D021,D121],[d,d],\'\',1]);
data.push([2,[D022,D122],[d,d],\'\',1]);
data.push([2,[D031,D131],[d,d],\'\',1]);
data.push([2,[D032,D132],[d,d],\'\',1]);
data.push([2,[D041,D141],[d,d],\'\',1]);
data.push([2,[D042,D142],[d,d],\'\',1]);
data.push([2,[D051,D151],[d,d],\'\',1]);
data.push([2,[D052,D152],[d,d],\'\',1]);
// D intern
data.push([2,[D02,B02],[d,d],\'\',1]);
data.push([2,[D12,B12],[d,d],\'\',1]);
data.push([2,[D01,D03],[d,d],\'\',2]);
data.push([2,[B01,D04],[d,d],\'\',2]);
data.push([2,[D012,D041],[d,d],\'\',2]);
data.push([2,[D011,D042],[d,d],\'\',2]);
data.push([2,[D11,D13],[d,d],\'\',2]);
data.push([2,[B11,D14],[d,d],\'\',2]);
data.push([2,[D112,D141],[d,d],\'\',2]);
data.push([2,[D111,D142],[d,d],\'\',2]);
data.push([2,[D021,D061],[d,d],\'\',2]);
data.push([2,[D022,D062],[d,d],\'\',2]);
data.push([2,[D031,D052],[d,d],\'\',2]);
data.push([2,[D032,D051],[d,d],\'\',2]);
data.push([2,[D121,D161],[d,d],\'\',2]);
data.push([2,[D122,D162],[d,d],\'\',2]);
data.push([2,[D131,D152],[d,d],\'\',2]);
data.push([2,[D132,D151],[d,d],\'\',2]);
data.push([2,[D061,D161],[d,d],\'\',2]);
data.push([2,[D062,D162],[d,d],\'\',2]);
data.push([2,[D000,D100],[d,d],\'\',1]);
data.push([2,[D151,D252],[d,d],\'\',1]);
data.push([2,[D152,D251],[d,d],\'\',1]);
data.push([2,[D131,D231],[d,d],\'\',1]);
data.push([2,[D132,D232],[d,d],\'\',1]);
data.push([2,[D121,D222],[d,d],\'\',1]);
data.push([2,[D122,D221],[d,d],\'\',1]);
data.push([2,[D231,D251],[d,d],\'\',1]);
data.push([2,[D232,D252],[d,d],\'\',1]);
data.push([2,[D221,B211],[d,d],\'\',1]);
data.push([2,[D222,B212],[d,d],\'\',1]);
return data;
}
function getMean(point_1, point_2, weight){
var mean = [];
for(var i = 0;i < 3;i++){
mean.push(weight*point_1[i]+(1-weight)*point_2[i]);
}
return mean;
}
function setCoord(point,n,value){
point[n] = value;
return point;
}
function setDesign(labels,floors,extern,data){
var s = 0.2;
var d = 10*s;
var h = 280*s;
var l = 500*s;
var L = l*Math.cos(Math.PI/6);
var D = l*Math.sin(Math.PI/6);
var H = 250*s;
var y = 200*s;
var A01 = [l/2,y+L,0], A02 = [-l/2,y+L,0], A03 = [-l/2-D,y+2*L,0],
A04 = [-l/2,y+3*L,0], A05 = [l/2,y+3*L,0], A06 = [l/2+D,y+2*L,0];
var A11 = [l/2,y+L,h], A12 = [-l/2,y+L,h], A13 = [-l/2-D,y+2*L,h],
A14 = [-l/2,y+3*L,h], A15 = [l/2,y+3*L,h], A16 = [l/2+D,y+2*L,h];
var A23 = [-l/2-D,y+2*L,h+H], A26 = [l/2+D,y+2*L,h+H],
A24 = setCoord(getMean(A02,A04,0.5),2,h+H), A25 = setCoord(getMean(A01,A05,0.5),2,h+H);
var A012 = getMean(A01,A02,1/3), A011 = getMean(A01,A02,2/3),
A112 = getMean(A11,A12,1/3), A111 = getMean(A11,A12,2/3),
A022 = getMean(A02,A03,1/3), A021 = getMean(A02,A03,2/3),
A122 = getMean(A12,A13,1/3), A121 = getMean(A12,A13,2/3),
A032 = getMean(A03,A04,1/3), A031 = getMean(A03,A04,2/3),
A132 = getMean(A13,A14,1/3), A131 = getMean(A13,A14,2/3),
A042 = getMean(A04,A05,1/3), A041 = getMean(A04,A05,2/3),
A142 = getMean(A14,A15,1/3), A141 = getMean(A14,A15,2/3),
A052 = getMean(A05,A06,1/3), A051 = getMean(A05,A06,2/3),
A152 = getMean(A15,A16,1/3), A151 = getMean(A15,A16,2/3),
A062 = getMean(A06,A01,1/3), A061 = getMean(A06,A01,2/3),
A162 = getMean(A16,A11,1/3), A161 = getMean(A16,A11,2/3),
A211 = getMean(A12,A23,1/3), A212 = getMean(A12,A23,2/3),
A411 = getMean(A14,A23,1/3), A412 = getMean(A14,A23,2/3),
A511 = getMean(A15,A26,1/3), A512 = getMean(A15,A26,2/3),
A611 = getMean(A11,A26,1/3), A612 = getMean(A11,A26,2/3),
A201 = getMean(A24,A25,1/2);
if(labels == 1){
data.push([1,[A01],[],'A01',0]); data.push([1,[A02],[],'A02',0]); data.push([1,[A03],[],'A03',0]);
data.push([1,[A04],[],'A04',0]); data.push([1,[A05],[],'A05',0]); data.push([1,[A06],[],'A06',0]);
data.push([1,[A11],[],'A11',0]); data.push([1,[A12],[],'A12',0]); data.push([1,[A13],[],'A13',0]);
data.push([1,[A14],[],'A14',0]); data.push([1,[A15],[],'A15',0]); data.push([1,[A16],[],'A16',0]);
data.push([1,[A23],[],'A23',0]); data.push([1,[A26],[],'A26',0]); data.push([1,[A24],[],'A24',0]); data.push([1,[A25],[],'A25',0]);
data.push([1,[A012],[],'A012',0]); data.push([1,[A011],[],\'A011\',0]);
data.push([1,[A112],[],\'A112\',0]); data.push([1,[A111],[],\'A111\',0]);
data.push([1,[A022],[],\'A022\',0]); data.push([1,[A021],[],\'A021\',0]);
data.push([1,[A122],[],\'A122\',0]); data.push([1,[A121],[],\'A121\',0]);
data.push([1,[A032],[],\'A032\',0]); data.push([1,[A031],[],\'A031\',0]);
data.push([1,[A132],[],\'A132\',0]); data.push([1,[A131],[],\'A131\',0]);
data.push([1,[A042],[],\'A042\',0]); data.push([1,[A041],[],\'A041\',0]);
data.push([1,[A142],[],\'A142\',0]); data.push([1,[A141],[],\'A141\',0]);
data.push([1,[A052],[],\'A052\',0]); data.push([1,[A051],[],\'A051\',0]);
data.push([1,[A152],[],\'A152\',0]); data.push([1,[A151],[],\'A151\',0]);
data.push([1,[A062],[],\'A062\',0]); data.push([1,[A061],[],\'A061\',0]);
data.push([1,[A162],[],\'A162\',0]); data.push([1,[A161],[],\'A161\',0]);
data.push([1,[A211],[],\'A211\',0]); data.push([1,[A212],[],\'A212\',0]);
data.push([1,[A411],[],\'A411\',0]); data.push([1,[A412],[],\'A412\',0]);
data.push([1,[A511],[],\'A511\',0]); data.push([1,[A512],[],\'A512\',0]);
data.push([1,[A611],[],\'A611\',0]); data.push([1,[A612],[],\'A612\',0]);
data.push([1,[A201],[],\'A201\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[A01,A02,A03],[],\'\',2]);
data.push([3,[A03,A04,A05],[],\'\',2]);
data.push([3,[A05,A06,A01],[],\'\',2]);
data.push([3,[A01,A03,A05],[],\'\',2]);
}
if(extern == 1){
data.push([3,[A14,A24,A23],[],\'\',1]);
data.push([3,[A14,A25,A24],[],\'\',1]);
data.push([3,[A15,A25,A14],[],\'\',1]);
data.push([3,[A15,A26,A25],[],\'\',1]);
data.push([3,[A23,A24,A12],[],\'\',1]);
data.push([3,[A24,A25,A11],[],\'\',1]);
data.push([3,[A11,A12,A24],[],\'\',1]);
data.push([3,[A25,A26,A11],[],\'\',1]);
data.push([3,[A26,A15,A16],[],\'\',2]);
data.push([3,[A23,A13,A14],[],\'\',2]);
}
var B01 = [-l/2-D,y,0], B02 = [-3*l/2-D,y,0], B03 = [-3*l/2-2*D,y+L,0], B04 = [-3*l/2-D,y+2*L,0];
var B11 = [-l/2-D,y,h], B12 = [-3*l/2-D,y,h], B13 = [-3*l/2-2*D,y+L,h], B14 = [-3*l/2-D,y+2*L,h];
var B22 = [-3*l/2-D,y,h+H],
B23 = setCoord(getMean(B01,B03,0.5),2,h+H), B24 = setCoord(getMean(A02,B04,0.5),2,h+H);
var B012 = getMean(A02,B01,1/3), B011 = getMean(A02,B01,2/3),
B112 = getMean(A12,B11,1/3), B111 = getMean(A12,B11,2/3),
B022 = getMean(B02,B03,1/3), B021 = getMean(B02,B03,2/3),
B122 = getMean(B12,B13,1/3), B121 = getMean(B12,B13,2/3),
B032 = getMean(B03,B04,1/3), B031 = getMean(B03,B04,2/3),
B132 = getMean(B13,B14,1/3), B131 = getMean(B13,B14,2/3),
B042 = getMean(B04,A03,1/3), B041 = getMean(B04,A03,2/3),
B142 = getMean(B14,A13,1/3), B141 = getMean(B14,A13,2/3),
B201 = getMean(B23,B24,1/3), B202 = getMean(B23,B24,2/3),
B000 = getMean(B02,A03,1/2), B100 = getMean(B12,A13,1/2),
B241 = getMean(B14,A23,1/3), B242 = getMean(B14,A23,2/3),
B221 = getMean(B13,B22,1/3), B222 = getMean(B13,B22,2/3),
B211 = getMean(B11,B22,1/3), B212 = getMean(B11,B22,2/3);
if(labels == 1){
data.push([1,[B01],[],\'B01\',0]); data.push([1,[B02],[],\'B02\',0]); data.push([1,[B03],[],\'B03\',0]); data.push([1,[B04],[],\'B04\',0]);
data.push([1,[B11],[],\'B11\',0]); data.push([1,[B12],[],\'B12\',0]); data.push([1,[B13],[],\'B13\',0]); data.push([1,[B14],[],\'B14\',0]);
data.push([1,[B22],[],\'B22\',0]); data.push([1,[B23],[],\'B23\',0]); data.push([1,[B24],[],\'B24\',0]);
data.push([1,[B012],[],\'B012\',0]); data.push([1,[B011],[],\'B011\',0]);
data.push([1,[B112],[],\'B112\',0]); data.push([1,[B111],[],\'B111\',0]);
data.push([1,[B022],[],\'B022\',0]); data.push([1,[B021],[],\'B021\',0]);
data.push([1,[B122],[],\'B122\',0]); data.push([1,[B121],[],\'B121\',0]);
data.push([1,[B032],[],\'B032\',0]); data.push([1,[B031],[],\'B031\',0]);
data.push([1,[B132],[],\'B132\',0]); data.push([1,[B131],[],\'B131\',0]);
data.push([1,[B042],[],\'B042\',0]); data.push([1,[B041],[],\'B041\',0]);
data.push([1,[B142],[],\'B142\',0]); data.push([1,[B141],[],\'B141\',0]);
data.push([1,[B201],[],\'B201\',0]); data.push([1,[B202],[],\'B202\',0]);
data.push([1,[B000],[],\'B000\',0]); data.push([1,[B100],[],\'B100\',0]);
data.push([1,[B241],[],\'B241\',0]); data.push([1,[B242],[],\'B242\',0]);
data.push([1,[B221],[],\'B221\',0]); data.push([1,[B222],[],\'B222\',0]);
data.push([1,[B211],[],\'B211\',0]); data.push([1,[B212],[],\'B212\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[B01,B02,B03],[],\'\',2]);
data.push([3,[B03,B04,A03],[],\'\',2]);
data.push([3,[A03,A02,B01],[],\'\',2]);
data.push([3,[B01,B03,A03],[],\'\',2]);
data.push([3,[B11,B12,B13],[],\'\',2]);
data.push([3,[B13,B14,A13],[],\'\',2]);
data.push([3,[A13,A12,B11],[],\'\',2]);
data.push([3,[B11,B13,A13],[],\'\',2]);
}
if(extern == 1){
data.push([3,[B13,B23,B22],[],\'\',1]);
data.push([3,[B13,B24,B23],[],\'\',1]);
data.push([3,[B14,B24,B13],[],\'\',1]);
data.push([3,[B14,A23,B24],[],\'\',1]);
data.push([3,[B22,B23,B11],[],\'\',1]);
data.push([3,[B23,B24,A12],[],\'\',1]);
data.push([3,[A12,B11,B23],[],\'\',1]);
data.push([3,[B24,A23,A12],[],\'\',1]);
data.push([3,[A23,B14,A13],[],\'\',2]);
data.push([3,[B22,B12,B13],[],\'\',2]);
data.push([3,[B14,B13,B03],[],\'\',2]);
data.push([3,[B03,B04,B14],[],\'\',2]);
data.push([3,[B13,B12,B02],[],\'\',2]);
data.push([3,[B02,B03,B13],[],\'\',2]);
}
var C01 = [l/2+D,y,0], C02 = [3*l/2+D,y,0], C03 = [3*l/2+2*D,y+L,0], C04 = [3*l/2+D,y+2*L,0];
var C11 = [l/2+D,y,h], C12 = [3*l/2+D,y,h], C13 = [3*l/2+2*D,y+L,h], C14 = [3*l/2+D,y+2*L,h];
var C22 = [3*l/2+D,y,h+H],
C23 = setCoord(getMean(C01,C03,0.5),2,h+H), C24 = setCoord(getMean(A01,C04,0.5),2,h+H);
var C012 = getMean(A01,C01,1/3), C011 = getMean(A01,C01,2/3),
C112 = getMean(A11,C11,1/3), C111 = getMean(A11,C11,2/3),
C022 = getMean(C01,C02,1/3), C021 = getMean(C01,C02,2/3),
C122 = getMean(C11,C12,1/3), C121 = getMean(C11,C12,2/3),
C032 = getMean(C02,C03,1/3), C031 = getMean(C02,C03,2/3),
C132 = getMean(C12,C13,1/3), C131 = getMean(C12,C13,2/3),
C042 = getMean(C03,C04,1/3), C041 = getMean(C03,C04,2/3),
C142 = getMean(C13,C14,1/3), C141 = getMean(C13,C14,2/3),
C052 = getMean(C04,A06,1/3), C051 = getMean(C04,A06,2/3),
C152 = getMean(C14,A16,1/3), C151 = getMean(C14,A16,2/3),
C201 = getMean(C23,C24,1/3), C202 = getMean(C23,C24,2/3),
C000 = getMean(A06,C02,1/2), C100 = getMean(A16,C12,1/2),
C221 = getMean(C11,C22,1/3), C222 = getMean(C11,C22,2/3),
C321 = getMean(C13,C22,1/3), C322 = getMean(C13,C22,2/3),
C521 = getMean(C14,A26,1/3), C522 = getMean(C14,A26,2/3);
if(labels == 1){
data.push([1,[C01],[],\'C01\',0]); data.push([1,[C02],[],\'C02\',0]); data.push([1,[C03],[],\'C03\',0]); data.push([1,[C04],[],\'C04\',0]);
data.push([1,[C11],[],\'C11\',0]); data.push([1,[C12],[],\'C12\',0]); data.push([1,[C13],[],\'C13\',0]); data.push([1,[C14],[],\'C14\',0]);
data.push([1,[C22],[],\'C22\',0]); data.push([1,[C23],[],\'C23\',0]); data.push([1,[C24],[],\'C24\',0]);
data.push([1,[C012],[],\'C012\',0]); data.push([1,[C011],[],\'C011\',0]);
data.push([1,[C112],[],\'C112\',0]); data.push([1,[C111],[],\'C111\',0]);
data.push([1,[C022],[],\'C022\',0]); data.push([1,[C021],[],\'C021\',0]);
data.push([1,[C122],[],\'C122\',0]); data.push([1,[C121],[],\'C121\',0]);
data.push([1,[C032],[],\'C032\',0]); data.push([1,[C031],[],\'C031\',0]);
data.push([1,[C132],[],\'C132\',0]); data.push([1,[C131],[],\'C131\',0]);
data.push([1,[C042],[],\'C042\',0]); data.push([1,[C041],[],\'C041\',0]);
data.push([1,[C142],[],\'C142\',0]); data.push([1,[C141],[],\'C141\',0]);
data.push([1,[C052],[],\'C052\',0]); data.push([1,[C051],[],\'C051\',0]);
data.push([1,[C152],[],\'C152\',0]); data.push([1,[C151],[],\'C151\',0]);
data.push([1,[C201],[],\'C201\',0]); data.push([1,[C202],[],\'C202\',0]);
data.push([1,[C000],[],\'C000\',0]); data.push([1,[C100],[],\'C100\',0]);
data.push([1,[C221],[],\'C221\',0]); data.push([1,[C222],[],\'C222\',0]);
data.push([1,[C321],[],\'C321\',0]); data.push([1,[C322],[],\'C322\',0]);
data.push([1,[C521],[],\'C521\',0]); data.push([1,[C522],[],\'C522\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[C03,C02,C01],[],\'\',2]);
data.push([3,[A06,C04,C03],[],\'\',2]);
data.push([3,[C01,A01,A06],[],\'\',2]);
data.push([3,[A06,C03,C01],[],\'\',2]);
data.push([3,[C13,C12,C11],[],\'\',2]);
data.push([3,[A16,C14,C13],[],\'\',2]);
data.push([3,[C11,A11,A16],[],\'\',2]);
data.push([3,[A16,C13,C11],[],\'\',2]);
}
if(extern == 1){
data.push([3,[A26,C24,A11],[],\'\',1]);
data.push([3,[C24,C23,C11],[],\'\',1]);
data.push([3,[C11,A11,C24],[],\'\',1]);
data.push([3,[C23,C22,C11],[],\'\',1]);
data.push([3,[C14,C24,A26],[],\'\',1]);
data.push([3,[C14,C23,C24],[],\'\',1]);
data.push([3,[C13,C23,C14],[],\'\',1]);
data.push([3,[C13,C22,C23],[],\'\',1]);
data.push([3,[C14,A26,A16],[],\'\',2]);
data.push([3,[C22,C13,C12],[],\'\',2]);
data.push([3,[C22,C12,C11],[],\'\',2]);
data.push([3,[A11,C11,A01],[],\'\',2]);
data.push([3,[C11,C01,A01],[],\'\',2]);
data.push([3,[C01,C11,C02],[],\'\',2]);
data.push([3,[C11,C12,C02],[],\'\',2]);
data.push([3,[C12,C13,C03],[],\'\',2]);
data.push([3,[C02,C12,C03],[],\'\',2]);
data.push([3,[C13,C14,C04],[],\'\',2]);
data.push([3,[C04,C03,C13],[],\'\',2]);
}
var D01 = [-l/2,-L+y,0], D02 = [-l/2-D,-2*L+y,0], D03 = [-3*l/2-D,-2*L+y,0], D04 = [-3*l/2-2*D,-L+y,0];
var D11 = [-l/2,-L+y,h], D12 = [-l/2-D,-2*L+y,h], D13 = [-3*l/2-D,-2*L+y,h], D14 = [-3*l/2-2*D,-L+y,h];
var D22 = [-l/2-D,-2*L+y,h+H],
D23 = setCoord(getMean(D01,D03,0.5),2,h+H), D24 = setCoord(getMean(B01,D04,0.5),2,h+H);
var D012 = getMean(B01,D01,1/3), D011 = getMean(B01,D01,2/3),
D112 = getMean(B11,D11,1/3), D111 = getMean(B11,D11,2/3),
D022 = getMean(D01,D02,1/3), D021 = getMean(D01,D02,2/3),
D122 = getMean(D11,D12,1/3), D121 = getMean(D11,D12,2/3),
D032 = getMean(D02,D03,1/3), D031 = getMean(D02,D03,2/3),
D132 = getMean(D12,D13,1/3), D131 = getMean(D12,D13,2/3),
D042 = getMean(D03,D04,1/3), D041 = getMean(D03,D04,2/3),
D142 = getMean(D13,D14,1/3), D141 = getMean(D13,D14,2/3),
D052 = getMean(D04,B02,1/3), D051 = getMean(D04,B02,2/3),
D152 = getMean(D14,B12,1/3), D151 = getMean(D14,B12,2/3),
D062 = getMean(B01,B02,1/3), D061 = getMean(B01,B02,2/3),
D162 = getMean(B11,B12,1/3), D161 = getMean(B11,B12,2/3),
D201 = getMean(D23,D24,1/3), D202 = getMean(D23,D24,2/3),
D000 = getMean(B02,D02,1/2), D100 = getMean(B12,D12,1/2),
D251 = getMean(D14,B22,1/3), D252 = getMean(D14,B22,2/3),
D231 = getMean(D13,D22,1/3), D232 = getMean(D13,D22,2/3),
D221 = getMean(D11,D22,1/3), D222 = getMean(D11,D22,2/3);
if(labels == 1){
data.push([1,[D01],[],\'D01\',0]); data.push([1,[D02],[],\'D02\',0]); data.push([1,[D03],[],\'D03\',0]); data.push([1,[D04],[],\'D04\',0]);
data.push([1,[D11],[],\'D11\',0]); data.push([1,[D12],[],\'D12\',0]); data.push([1,[D13],[],\'D13\',0]); data.push([1,[D14],[],\'D14\',0]);
data.push([1,[D22],[],\'D22\',0]); data.push([1,[D23],[],\'D23\',0]); data.push([1,[D24],[],\'D24\',0]);
data.push([1,[D012],[],\'D012\',0]); data.push([1,[D011],[],\'D011\',0]);
data.push([1,[D112],[],\'D112\',0]); data.push([1,[D111],[],\'D111\',0]);
data.push([1,[D022],[],\'D022\',0]); data.push([1,[D021],[],\'D021\',0]);
data.push([1,[D122],[],\'D122\',0]); data.push([1,[D121],[],\'D121\',0]);
data.push([1,[D032],[],\'D032\',0]); data.push([1,[D031],[],\'D031\',0]);
data.push([1,[D132],[],\'D132\',0]); data.push([1,[D131],[],\'D131\',0]);
data.push([1,[D042],[],\'D042\',0]); data.push([1,[D041],[],\'D041\',0]);
data.push([1,[D142],[],\'D142\',0]); data.push([1,[D141],[],\'D141\',0]);
data.push([1,[D052],[],\'D052\',0]); data.push([1,[D051],[],\'D051\',0]);
data.push([1,[D152],[],\'D152\',0]); data.push([1,[D151],[],\'D151\',0]);
data.push([1,[D062],[],\'D062\',0]); data.push([1,[D061],[],\'D061\',0]);
data.push([1,[D162],[],\'D162\',0]); data.push([1,[D161],[],\'D161\',0]);
data.push([1,[D201],[],\'D201\',0]); data.push([1,[D202],[],\'D202\',0]);
data.push([1,[D000],[],\'D000\',0]); data.push([1,[D100],[],\'D100\',0]);
data.push([1,[D251],[],\'D251\',0]); data.push([1,[D252],[],\'D252\',0]);
data.push([1,[D231],[],\'D231\',0]); data.push([1,[D232],[],\'D232\',0]);
data.push([1,[D221],[],\'D221\',0]); data.push([1,[D222],[],\'D222\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[D01,D02,D03],[],\'\',2]);
data.push([3,[D03,D04,B02],[],\'\',2]);
data.push([3,[B02,B01,D01],[],\'\',2]);
data.push([3,[D01,D03,B02],[],\'\',2]);
data.push([3,[D11,D12,D13],[],\'\',2]);
data.push([3,[D13,D14,B12],[],\'\',2]);
data.push([3,[B12,B11,D11],[],\'\',2]);
data.push([3,[D11,D13,B12],[],\'\',2]);
}
if(extern == 1){
data.push([3,[D22,D23,D11],[],\'\',1]);
data.push([3,[D23,D24,B11],[],\'\',1]);
data.push([3,[B11,D11,D23],[],\'\',1]);
data.push([3,[D24,B22,B11],[],\'\',1]);
data.push([3,[D13,D23,D22],[],\'\',1]);
data.push([3,[D13,D24,D23],[],\'\',1]);
data.push([3,[D14,D24,D13],[],\'\',1]);
data.push([3,[D14,B22,D24],[],\'\',1]);
data.push([3,[B22,D14,B12],[],\'\',2]);
data.push([3,[D22,D12,D13],[],\'\',2]);
data.push([3,[D11,D12,D22],[],\'\',2]);
data.push([3,[D14,D04,B12],[],\'\',2]);
data.push([3,[B12,D04,B02],[],\'\',2]);
data.push([3,[D14,D13,D03],[],\'\',2]);
data.push([3,[D03,D04,D14],[],\'\',2]);
data.push([3,[D13,D12,D02],[],\'\',2]);
data.push([3,[D02,D03,D13],[],\'\',2]);
data.push([3,[D12,D11,D01],[],\'\',2]);
data.push([3,[D01,D02,D12],[],\'\',2]);
data.push([3,[D11,B11,B01],[],\'\',2]);
data.push([3,[B01,D01,D11],[],\'\',2]);
}
// A base
data.push([2,[A01,A02],[d,d],\'\',1]);
data.push([2,[A02,A03],[d,d],\'\',1]);
data.push([2,[A03,A04],[d,d],\'\',1]);
data.push([2,[A04,A05],[d,d],\'\',1]);
data.push([2,[A05,A06],[d,d],\'\',1]);
data.push([2,[A06,A01],[d,d],\'\',1]);
// A support
data.push([2,[A01,A11],[d,d],\'\',1]);
data.push([2,[A02,A12],[d,d],\'\',1]);
data.push([2,[A03,A13],[d,d],\'\',1]);
data.push([2,[A04,A14],[d,d],\'\',1]);
data.push([2,[A05,A15],[d,d],\'\',1]);
data.push([2,[A06,A16],[d,d],\'\',1]);
// A hight
data.push([2,[A11,A12],[d,d],\'\',1]);
data.push([2,[A12,A13],[d,d],\'\',1]);
data.push([2,[A13,A14],[d,d],\'\',1]);
data.push([2,[A14,A15],[d,d],\'\',1]);
data.push([2,[A15,A16],[d,d],\'\',1]);
data.push([2,[A16,A11],[d,d],\'\',1]);
// A roof
data.push([2,[A13,A23],[d,d],\'\',1]);
data.push([2,[A16,A26],[d,d],\'\',1]);
data.push([2,[A23,A26],[d,d],\'\',1]);
data.push([2,[A11,A26],[d,d],\'\',1]);
data.push([2,[A15,A26],[d,d],\'\',1]);
data.push([2,[A12,A23],[d,d],\'\',1]);
data.push([2,[A14,A23],[d,d],\'\',1]);
data.push([2,[A11,A25],[d,d],\'\',1]);
data.push([2,[A15,A25],[d,d],\'\',1]);
data.push([2,[A12,A24],[d,d],\'\',1]);
data.push([2,[A14,A24],[d,d],\'\',1]);
// A intern
data.push([2,[A201,A14],[d,d],\'\',1]);
data.push([2,[A201,A15],[d,d],\'\',1]);
data.push([2,[A201,A11],[d,d],\'\',1]);
data.push([2,[A201,A12],[d,d],\'\',1]);
data.push([2,[A011,A111],[d,d],\'\',1]);
data.push([2,[A012,A112],[d,d],\'\',1]);
data.push([2,[A021,A121],[d,d],\'\',1]);
data.push([2,[A022,A122],[d,d],\'\',1]);
data.push([2,[A031,A131],[d,d],\'\',1]);
data.push([2,[A032,A132],[d,d],\'\',1]);
data.push([2,[A041,A141],[d,d],\'\',1]);
data.push([2,[A042,A142],[d,d],\'\',1]);
data.push([2,[A051,A151],[d,d],\'\',1]);
data.push([2,[A052,A152],[d,d],\'\',1]);
data.push([2,[A061,A161],[d,d],\'\',1]);
data.push([2,[A062,A162],[d,d],\'\',1]);
data.push([2,[A03,A06],[d,d],\'\',2]);
data.push([2,[A04,A02],[d,d],\'\',2]);
data.push([2,[A012,A041],[d,d],\'\',2]);
data.push([2,[A011,A042],[d,d],\'\',2]);
data.push([2,[A05,A01],[d,d],\'\',2]);
data.push([2,[A021,A062],[d,d],\'\',2]);
data.push([2,[A022,A061],[d,d],\'\',2]);
data.push([2,[A031,A052],[d,d],\'\',2]);
data.push([2,[A032,A051],[d,d],\'\',2]);
data.push([2,[A151,A512],[d,d],\'\',1]);
data.push([2,[A152,A511],[d,d],\'\',1]);
data.push([2,[A131,A411],[d,d],\'\',1]);
data.push([2,[A132,A412],[d,d],\'\',1]);
data.push([2,[A121,A212],[d,d],\'\',1]);
data.push([2,[A122,A211],[d,d],\'\',1]);
data.push([2,[A161,A611],[d,d],\'\',1]);
data.push([2,[A162,A612],[d,d],\'\',1]);
data.push([2,[A411,A511],[d,d],\'\',1]);
data.push([2,[A412,A512],[d,d],\'\',1]);
data.push([2,[A211,A611],[d,d],\'\',1]);
data.push([2,[A212,A612],[d,d],\'\',1]);
// B base
data.push([2,[A02,B01],[d,d],\'\',1]);
data.push([2,[B01,B02],[d,d],\'\',1]);
data.push([2,[B02,B03],[d,d],\'\',1]);
data.push([2,[B03,B04],[d,d],\'\',1]);
data.push([2,[B04,A03],[d,d],\'\',1]);
// B support
data.push([2,[B01,B11],[d,d],\'\',1]);
data.push([2,[B02,B12],[d,d],\'\',1]);
data.push([2,[B03,B13],[d,d],\'\',1]);
data.push([2,[B04,B14],[d,d],\'\',1]);
// B hight
data.push([2,[A12,B11],[d,d],\'\',1]);
data.push([2,[B11,B12],[d,d],\'\',1]);
data.push([2,[B12,B13],[d,d],\'\',1]);
data.push([2,[B13,B14],[d,d],\'\',1]);
data.push([2,[B14,A13],[d,d],\'\',1]);
// B roof
data.push([2,[B12,B22],[d,d],\'\',1]);
data.push([2,[A23,B22],[d,d],\'\',1]);
data.push([2,[B11,B22],[d,d],\'\',1]);
data.push([2,[B13,B22],[d,d],\'\',1]);
data.push([2,[B11,B23],[d,d],\'\',1]);
data.push([2,[B13,B23],[d,d],\'\',1]);
data.push([2,[B14,B24],[d,d],\'\',1]);
data.push([2,[A12,B24],[d,d],\'\',1]);
data.push([2,[A23,B14],[d,d],\'\',1]);
// B structure
data.push([2,[B011,B111],[d,d],\'\',1]);
data.push([2,[B012,B112],[d,d],\'\',1]);
data.push([2,[B021,B121],[d,d],\'\',1]);
data.push([2,[B022,B122],[d,d],\'\',1]);
data.push([2,[B031,B131],[d,d],\'\',1]);
data.push([2,[B032,B132],[d,d],\'\',1]);
data.push([2,[B041,B141],[d,d],\'\',1]);
data.push([2,[B042,B142],[d,d],\'\',1]);
data.push([2,[B112,B202],[d,d],\'\',1]);
data.push([2,[B131,B202],[d,d],\'\',1]);
data.push([2,[B111,B201],[d,d],\'\',1]);
data.push([2,[B132,B201],[d,d],\'\',1]);
// B intern
data.push([2,[A03,B02],[d,d],\'\',1]);
data.push([2,[A13,B12],[d,d],\'\',1]);
data.push([2,[B01,B03],[d,d],\'\',2]);
data.push([2,[A02,B04],[d,d],\'\',2]);
data.push([2,[B012,B031],[d,d],\'\',2]);
data.push([2,[B011,B032],[d,d],\'\',2]);
data.push([2,[B11,B13],[d,d],\'\',2]);
data.push([2,[A12,B14],[d,d],\'\',2]);
data.push([2,[B112,B131],[d,d],\'\',2]);
data.push([2,[B111,B132],[d,d],\'\',2]);
data.push([2,[D061,A021],[d,d],\'\',2]);
data.push([2,[D062,A022],[d,d],\'\',2]);
data.push([2,[B021,B042],[d,d],\'\',2]);
data.push([2,[B022,B041],[d,d],\'\',2]);
data.push([2,[D161,A121],[d,d],\'\',2]);
data.push([2,[D162,A122],[d,d],\'\',2]);
data.push([2,[B121,B142],[d,d],\'\',2]);
data.push([2,[B122,B141],[d,d],\'\',2]);
data.push([2,[B000,B100],[d,d],\'\',1]);
data.push([2,[B141,B242],[d,d],\'\',1]);
data.push([2,[B142,B241],[d,d],\'\',1]);
data.push([2,[B121,B221],[d,d],\'\',1]);
data.push([2,[B122,B222],[d,d],\'\',1]);
data.push([2,[D162,B211],[d,d],\'\',1]);
data.push([2,[D161,B212],[d,d],\'\',1]);
data.push([2,[B221,B241],[d,d],\'\',1]);
data.push([2,[B222,B242],[d,d],\'\',1]);
data.push([2,[A211,B211],[d,d],\'\',1]);
data.push([2,[A212,B212],[d,d],\'\',1]);
// C base
data.push([2,[A01,C01],[d,d],\'\',1]);
data.push([2,[C01,C02],[d,d],\'\',1]);
data.push([2,[C02,C03],[d,d],\'\',1]);
data.push([2,[C03,C04],[d,d],\'\',1]);
data.push([2,[C04,A06],[d,d],\'\',1]);
// C support
data.push([2,[C01,C11],[d,d],\'\',1]);
data.push([2,[C02,C12],[d,d],\'\',1]);
data.push([2,[C03,C13],[d,d],\'\',1]);
data.push([2,[C04,C14],[d,d],\'\',1]);
// C hight
data.push([2,[A11,C11],[d,d],\'\',1]);
data.push([2,[C11,C12],[d,d],\'\',1]);
data.push([2,[C12,C13],[d,d],\'\',1]);
data.push([2,[C13,C14],[d,d],\'\',1]);
data.push([2,[C14,A16],[d,d],\'\',1]);
// C roof
data.push([2,[C12,C22],[d,d],\'\',1]);
data.push([2,[A26,C22],[d,d],\'\',1]);
data.push([2,[C11,C22],[d,d],\'\',1]);
data.push([2,[C13,C22],[d,d],\'\',1]);
data.push([2,[C11,C23],[d,d],\'\',1]);
data.push([2,[C13,C23],[d,d],\'\',1]);
data.push([2,[C14,C24],[d,d],\'\',1]);
data.push([2,[A11,C24],[d,d],\'\',1]);
data.push([2,[A26,C14],[d,d],\'\',1]);
data.push([2,[C121,C222],[d,d],\'\',1]);
data.push([2,[C122,C221],[d,d],\'\',1]);
data.push([2,[C131,C321],[d,d],\'\',1]);
data.push([2,[C132,C322],[d,d],\'\',1]);
data.push([2,[C151,C522],[d,d],\'\',1]);
data.push([2,[C152,C521],[d,d],\'\',1]);
data.push([2,[A612,C222],[d,d],\'\',1]);
data.push([2,[A611,C221],[d,d],\'\',1]);
data.push([2,[C321,C521],[d,d],\'\',1]);
data.push([2,[C322,C522],[d,d],\'\',1]);
// C structure
data.push([2,[C201,C111],[d,d],\'\',1]);
data.push([2,[C201,C142],[d,d],\'\',1]);
data.push([2,[C202,C112],[d,d],\'\',1]);
data.push([2,[C202,C141],[d,d],\'\',1]);
data.push([2,[C011,C111],[d,d],\'\',1]);
data.push([2,[C012,C112],[d,d],\'\',1]);
data.push([2,[C021,C121],[d,d],\'\',1]);
data.push([2,[C022,C122],[d,d],\'\',1]);
data.push([2,[C031,C131],[d,d],\'\',1]);
data.push([2,[C032,C132],[d,d],\'\',1]);
data.push([2,[C041,C141],[d,d],\'\',1]);
data.push([2,[C042,C142],[d,d],\'\',1]);
data.push([2,[C051,C151],[d,d],\'\',1]);
data.push([2,[C052,C152],[d,d],\'\',1]);
// C intern
data.push([2,[C02,A06],[d,d],\'\',1]);
data.push([2,[C12,A16],[d,d],\'\',1]);
data.push([2,[A01,C04],[d,d],\'\',2]);
data.push([2,[C011,C042],[d,d],\'\',2]);
data.push([2,[C012,C041],[d,d],\'\',2]);
data.push([2,[C03,C01],[d,d],\'\',2]);
data.push([2,[A11,C14],[d,d],\'\',2]);
data.push([2,[C111,C142],[d,d],\'\',2]);
data.push([2,[C112,C141],[d,d],\'\',2]);
data.push([2,[C13,C11],[d,d],\'\',2]);
data.push([2,[A062,C021],[d,d],\'\',2]);
data.push([2,[A061,C022],[d,d],\'\',2]);
data.push([2,[C052,C031],[d,d],\'\',2]);
data.push([2,[C051,C032],[d,d],\'\',2]);
data.push([2,[A162,C121],[d,d],\'\',2]);
data.push([2,[A161,C122],[d,d],\'\',2]);
data.push([2,[C152,C131],[d,d],\'\',2]);
data.push([2,[C151,C132],[d,d],\'\',2]);
data.push([2,[C000,C100],[d,d],\'\',1]);
// D base
data.push([2,[B01,D01],[d,d],\'\',1]);
data.push([2,[D01,D02],[d,d],\'\',1]);
data.push([2,[D02,D03],[d,d],\'\',1]);
data.push([2,[D03,D04],[d,d],\'\',1]);
data.push([2,[D04,B02],[d,d],\'\',1]);
// D support
data.push([2,[D01,D11],[d,d],\'\',1]);
data.push([2,[D02,D12],[d,d],\'\',1]);
data.push([2,[D03,D13],[d,d],\'\',1]);
data.push([2,[D04,D14],[d,d],\'\',1]);
// D hight
data.push([2,[B11,D11],[d,d],\'\',1]);
data.push([2,[D11,D12],[d,d],\'\',1]);
data.push([2,[D12,D13],[d,d],\'\',1]);
data.push([2,[D13,D14],[d,d],\'\',1]);
data.push([2,[D14,B12],[d,d],\'\',1]);
// D roof
data.push([2,[D12,D22],[d,d],\'\',1]);
data.push([2,[D11,D22],[d,d],\'\',1]);
data.push([2,[D13,D22],[d,d],\'\',1]);
data.push([2,[D11,D23],[d,d],\'\',1]);
data.push([2,[D13,D23],[d,d],\'\',1]);
data.push([2,[D14,B22],[d,d],\'\',1]);
data.push([2,[D14,D24],[d,d],\'\',1]);
data.push([2,[B11,D24],[d,d],\'\',1]);
data.push([2,[D22,B22],[d,d],\'\',1]);
// D structure
data.push([2,[D201,D111],[d,d],\'\',1]);
data.push([2,[D201,D142],[d,d],\'\',1]);
data.push([2,[D202,D112],[d,d],\'\',1]);
data.push([2,[D202,D141],[d,d],\'\',1]);
data.push([2,[D011,D111],[d,d],\'\',1]);
data.push([2,[D012,D112],[d,d],\'\',1]);
data.push([2,[D021,D121],[d,d],\'\',1]);
data.push([2,[D022,D122],[d,d],\'\',1]);
data.push([2,[D031,D131],[d,d],\'\',1]);
data.push([2,[D032,D132],[d,d],\'\',1]);
data.push([2,[D041,D141],[d,d],\'\',1]);
data.push([2,[D042,D142],[d,d],\'\',1]);
data.push([2,[D051,D151],[d,d],\'\',1]);
data.push([2,[D052,D152],[d,d],\'\',1]);
// D intern
data.push([2,[D02,B02],[d,d],\'\',1]);
data.push([2,[D12,B12],[d,d],\'\',1]);
data.push([2,[D01,D03],[d,d],\'\',2]);
data.push([2,[B01,D04],[d,d],\'\',2]);
data.push([2,[D012,D041],[d,d],\'\',2]);
data.push([2,[D011,D042],[d,d],\'\',2]);
data.push([2,[D11,D13],[d,d],\'\',2]);
data.push([2,[B11,D14],[d,d],\'\',2]);
data.push([2,[D112,D141],[d,d],\'\',2]);
data.push([2,[D111,D142],[d,d],\'\',2]);
data.push([2,[D021,D061],[d,d],\'\',2]);
data.push([2,[D022,D062],[d,d],\'\',2]);
data.push([2,[D031,D052],[d,d],\'\',2]);
data.push([2,[D032,D051],[d,d],\'\',2]);
data.push([2,[D121,D161],[d,d],\'\',2]);
data.push([2,[D122,D162],[d,d],\'\',2]);
data.push([2,[D131,D152],[d,d],\'\',2]);
data.push([2,[D132,D151],[d,d],\'\',2]);
data.push([2,[D061,D161],[d,d],\'\',2]);
data.push([2,[D062,D162],[d,d],\'\',2]);
data.push([2,[D000,D100],[d,d],\'\',1]);
data.push([2,[D151,D252],[d,d],\'\',1]);
data.push([2,[D152,D251],[d,d],\'\',1]);
data.push([2,[D131,D231],[d,d],\'\',1]);
data.push([2,[D132,D232],[d,d],\'\',1]);
data.push([2,[D121,D222],[d,d],\'\',1]);
data.push([2,[D122,D221],[d,d],\'\',1]);
data.push([2,[D231,D251],[d,d],\'\',1]);
data.push([2,[D232,D252],[d,d],\'\',1]);
data.push([2,[D221,B211],[d,d],\'\',1]);
data.push([2,[D222,B212],[d,d],\'\',1]);
return data;
}
function getMean(point_1, point_2, weight){
var mean = [];
for(var i = 0;i < 3;i++){
mean.push(weight*point_1[i]+(1-weight)*point_2[i]);
}
return mean;
}
function setCoord(point,n,value){
point[n] = value;
return point;
}
function setDesign(labels,floors,extern,data){
var s = 0.2;
var d = 10*s;
var h = 280*s;
var l = 500*s;
var L = l*Math.cos(Math.PI/6);
var D = l*Math.sin(Math.PI/6);
var H = 250*s;
var y = 200*s;
var A01 = [l/2,y+L,0], A02 = [-l/2,y+L,0], A03 = [-l/2-D,y+2*L,0],
A04 = [-l/2,y+3*L,0], A05 = [l/2,y+3*L,0], A06 = [l/2+D,y+2*L,0];
var A11 = [l/2,y+L,h], A12 = [-l/2,y+L,h], A13 = [-l/2-D,y+2*L,h],
A14 = [-l/2,y+3*L,h], A15 = [l/2,y+3*L,h], A16 = [l/2+D,y+2*L,h];
var A23 = [-l/2-D,y+2*L,h+H], A26 = [l/2+D,y+2*L,h+H],
A24 = setCoord(getMean(A02,A04,0.5),2,h+H), A25 = setCoord(getMean(A01,A05,0.5),2,h+H);
var A012 = getMean(A01,A02,1/3), A011 = getMean(A01,A02,2/3),
A112 = getMean(A11,A12,1/3), A111 = getMean(A11,A12,2/3),
A022 = getMean(A02,A03,1/3), A021 = getMean(A02,A03,2/3),
A122 = getMean(A12,A13,1/3), A121 = getMean(A12,A13,2/3),
A032 = getMean(A03,A04,1/3), A031 = getMean(A03,A04,2/3),
A132 = getMean(A13,A14,1/3), A131 = getMean(A13,A14,2/3),
A042 = getMean(A04,A05,1/3), A041 = getMean(A04,A05,2/3),
A142 = getMean(A14,A15,1/3), A141 = getMean(A14,A15,2/3),
A052 = getMean(A05,A06,1/3), A051 = getMean(A05,A06,2/3),
A152 = getMean(A15,A16,1/3), A151 = getMean(A15,A16,2/3),
A062 = getMean(A06,A01,1/3), A061 = getMean(A06,A01,2/3),
A162 = getMean(A16,A11,1/3), A161 = getMean(A16,A11,2/3),
A211 = getMean(A12,A23,1/3), A212 = getMean(A12,A23,2/3),
A411 = getMean(A14,A23,1/3), A412 = getMean(A14,A23,2/3),
A511 = getMean(A15,A26,1/3), A512 = getMean(A15,A26,2/3),
A611 = getMean(A11,A26,1/3), A612 = getMean(A11,A26,2/3),
A201 = getMean(A24,A25,1/2);
if(labels == 1){
data.push([1,[A01],[],'A01',0]); data.push([1,[A02],[],'A02',0]); data.push([1,[A03],[],'A03',0]);
data.push([1,[A04],[],'A04',0]); data.push([1,[A05],[],'A05',0]); data.push([1,[A06],[],'A06',0]);
data.push([1,[A11],[],'A11',0]); data.push([1,[A12],[],'A12',0]); data.push([1,[A13],[],'A13',0]);
data.push([1,[A14],[],'A14',0]); data.push([1,[A15],[],'A15',0]); data.push([1,[A16],[],'A16',0]);
data.push([1,[A23],[],'A23',0]); data.push([1,[A26],[],'A26',0]); data.push([1,[A24],[],'A24',0]); data.push([1,[A25],[],'A25',0]);
data.push([1,[A012],[],'A012',0]); data.push([1,[A011],[],'A011',0]);
data.push([1,[A112],[],\'A112\',0]); data.push([1,[A111],[],\'A111\',0]);
data.push([1,[A022],[],\'A022\',0]); data.push([1,[A021],[],\'A021\',0]);
data.push([1,[A122],[],\'A122\',0]); data.push([1,[A121],[],\'A121\',0]);
data.push([1,[A032],[],\'A032\',0]); data.push([1,[A031],[],\'A031\',0]);
data.push([1,[A132],[],\'A132\',0]); data.push([1,[A131],[],\'A131\',0]);
data.push([1,[A042],[],\'A042\',0]); data.push([1,[A041],[],\'A041\',0]);
data.push([1,[A142],[],\'A142\',0]); data.push([1,[A141],[],\'A141\',0]);
data.push([1,[A052],[],\'A052\',0]); data.push([1,[A051],[],\'A051\',0]);
data.push([1,[A152],[],\'A152\',0]); data.push([1,[A151],[],\'A151\',0]);
data.push([1,[A062],[],\'A062\',0]); data.push([1,[A061],[],\'A061\',0]);
data.push([1,[A162],[],\'A162\',0]); data.push([1,[A161],[],\'A161\',0]);
data.push([1,[A211],[],\'A211\',0]); data.push([1,[A212],[],\'A212\',0]);
data.push([1,[A411],[],\'A411\',0]); data.push([1,[A412],[],\'A412\',0]);
data.push([1,[A511],[],\'A511\',0]); data.push([1,[A512],[],\'A512\',0]);
data.push([1,[A611],[],\'A611\',0]); data.push([1,[A612],[],\'A612\',0]);
data.push([1,[A201],[],\'A201\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[A01,A02,A03],[],\'\',2]);
data.push([3,[A03,A04,A05],[],\'\',2]);
data.push([3,[A05,A06,A01],[],\'\',2]);
data.push([3,[A01,A03,A05],[],\'\',2]);
}
if(extern == 1){
data.push([3,[A14,A24,A23],[],\'\',1]);
data.push([3,[A14,A25,A24],[],\'\',1]);
data.push([3,[A15,A25,A14],[],\'\',1]);
data.push([3,[A15,A26,A25],[],\'\',1]);
data.push([3,[A23,A24,A12],[],\'\',1]);
data.push([3,[A24,A25,A11],[],\'\',1]);
data.push([3,[A11,A12,A24],[],\'\',1]);
data.push([3,[A25,A26,A11],[],\'\',1]);
data.push([3,[A26,A15,A16],[],\'\',2]);
data.push([3,[A23,A13,A14],[],\'\',2]);
}
var B01 = [-l/2-D,y,0], B02 = [-3*l/2-D,y,0], B03 = [-3*l/2-2*D,y+L,0], B04 = [-3*l/2-D,y+2*L,0];
var B11 = [-l/2-D,y,h], B12 = [-3*l/2-D,y,h], B13 = [-3*l/2-2*D,y+L,h], B14 = [-3*l/2-D,y+2*L,h];
var B22 = [-3*l/2-D,y,h+H],
B23 = setCoord(getMean(B01,B03,0.5),2,h+H), B24 = setCoord(getMean(A02,B04,0.5),2,h+H);
var B012 = getMean(A02,B01,1/3), B011 = getMean(A02,B01,2/3),
B112 = getMean(A12,B11,1/3), B111 = getMean(A12,B11,2/3),
B022 = getMean(B02,B03,1/3), B021 = getMean(B02,B03,2/3),
B122 = getMean(B12,B13,1/3), B121 = getMean(B12,B13,2/3),
B032 = getMean(B03,B04,1/3), B031 = getMean(B03,B04,2/3),
B132 = getMean(B13,B14,1/3), B131 = getMean(B13,B14,2/3),
B042 = getMean(B04,A03,1/3), B041 = getMean(B04,A03,2/3),
B142 = getMean(B14,A13,1/3), B141 = getMean(B14,A13,2/3),
B201 = getMean(B23,B24,1/3), B202 = getMean(B23,B24,2/3),
B000 = getMean(B02,A03,1/2), B100 = getMean(B12,A13,1/2),
B241 = getMean(B14,A23,1/3), B242 = getMean(B14,A23,2/3),
B221 = getMean(B13,B22,1/3), B222 = getMean(B13,B22,2/3),
B211 = getMean(B11,B22,1/3), B212 = getMean(B11,B22,2/3);
if(labels == 1){
data.push([1,[B01],[],\'B01\',0]); data.push([1,[B02],[],\'B02\',0]); data.push([1,[B03],[],\'B03\',0]); data.push([1,[B04],[],\'B04\',0]);
data.push([1,[B11],[],\'B11\',0]); data.push([1,[B12],[],\'B12\',0]); data.push([1,[B13],[],\'B13\',0]); data.push([1,[B14],[],\'B14\',0]);
data.push([1,[B22],[],\'B22\',0]); data.push([1,[B23],[],\'B23\',0]); data.push([1,[B24],[],\'B24\',0]);
data.push([1,[B012],[],\'B012\',0]); data.push([1,[B011],[],\'B011\',0]);
data.push([1,[B112],[],\'B112\',0]); data.push([1,[B111],[],\'B111\',0]);
data.push([1,[B022],[],\'B022\',0]); data.push([1,[B021],[],\'B021\',0]);
data.push([1,[B122],[],\'B122\',0]); data.push([1,[B121],[],\'B121\',0]);
data.push([1,[B032],[],\'B032\',0]); data.push([1,[B031],[],\'B031\',0]);
data.push([1,[B132],[],\'B132\',0]); data.push([1,[B131],[],\'B131\',0]);
data.push([1,[B042],[],\'B042\',0]); data.push([1,[B041],[],\'B041\',0]);
data.push([1,[B142],[],\'B142\',0]); data.push([1,[B141],[],\'B141\',0]);
data.push([1,[B201],[],\'B201\',0]); data.push([1,[B202],[],\'B202\',0]);
data.push([1,[B000],[],\'B000\',0]); data.push([1,[B100],[],\'B100\',0]);
data.push([1,[B241],[],\'B241\',0]); data.push([1,[B242],[],\'B242\',0]);
data.push([1,[B221],[],\'B221\',0]); data.push([1,[B222],[],\'B222\',0]);
data.push([1,[B211],[],\'B211\',0]); data.push([1,[B212],[],\'B212\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[B01,B02,B03],[],\'\',2]);
data.push([3,[B03,B04,A03],[],\'\',2]);
data.push([3,[A03,A02,B01],[],\'\',2]);
data.push([3,[B01,B03,A03],[],\'\',2]);
data.push([3,[B11,B12,B13],[],\'\',2]);
data.push([3,[B13,B14,A13],[],\'\',2]);
data.push([3,[A13,A12,B11],[],\'\',2]);
data.push([3,[B11,B13,A13],[],\'\',2]);
}
if(extern == 1){
data.push([3,[B13,B23,B22],[],\'\',1]);
data.push([3,[B13,B24,B23],[],\'\',1]);
data.push([3,[B14,B24,B13],[],\'\',1]);
data.push([3,[B14,A23,B24],[],\'\',1]);
data.push([3,[B22,B23,B11],[],\'\',1]);
data.push([3,[B23,B24,A12],[],\'\',1]);
data.push([3,[A12,B11,B23],[],\'\',1]);
data.push([3,[B24,A23,A12],[],\'\',1]);
data.push([3,[A23,B14,A13],[],\'\',2]);
data.push([3,[B22,B12,B13],[],\'\',2]);
data.push([3,[B14,B13,B03],[],\'\',2]);
data.push([3,[B03,B04,B14],[],\'\',2]);
data.push([3,[B13,B12,B02],[],\'\',2]);
data.push([3,[B02,B03,B13],[],\'\',2]);
}
var C01 = [l/2+D,y,0], C02 = [3*l/2+D,y,0], C03 = [3*l/2+2*D,y+L,0], C04 = [3*l/2+D,y+2*L,0];
var C11 = [l/2+D,y,h], C12 = [3*l/2+D,y,h], C13 = [3*l/2+2*D,y+L,h], C14 = [3*l/2+D,y+2*L,h];
var C22 = [3*l/2+D,y,h+H],
C23 = setCoord(getMean(C01,C03,0.5),2,h+H), C24 = setCoord(getMean(A01,C04,0.5),2,h+H);
var C012 = getMean(A01,C01,1/3), C011 = getMean(A01,C01,2/3),
C112 = getMean(A11,C11,1/3), C111 = getMean(A11,C11,2/3),
C022 = getMean(C01,C02,1/3), C021 = getMean(C01,C02,2/3),
C122 = getMean(C11,C12,1/3), C121 = getMean(C11,C12,2/3),
C032 = getMean(C02,C03,1/3), C031 = getMean(C02,C03,2/3),
C132 = getMean(C12,C13,1/3), C131 = getMean(C12,C13,2/3),
C042 = getMean(C03,C04,1/3), C041 = getMean(C03,C04,2/3),
C142 = getMean(C13,C14,1/3), C141 = getMean(C13,C14,2/3),
C052 = getMean(C04,A06,1/3), C051 = getMean(C04,A06,2/3),
C152 = getMean(C14,A16,1/3), C151 = getMean(C14,A16,2/3),
C201 = getMean(C23,C24,1/3), C202 = getMean(C23,C24,2/3),
C000 = getMean(A06,C02,1/2), C100 = getMean(A16,C12,1/2),
C221 = getMean(C11,C22,1/3), C222 = getMean(C11,C22,2/3),
C321 = getMean(C13,C22,1/3), C322 = getMean(C13,C22,2/3),
C521 = getMean(C14,A26,1/3), C522 = getMean(C14,A26,2/3);
if(labels == 1){
data.push([1,[C01],[],\'C01\',0]); data.push([1,[C02],[],\'C02\',0]); data.push([1,[C03],[],\'C03\',0]); data.push([1,[C04],[],\'C04\',0]);
data.push([1,[C11],[],\'C11\',0]); data.push([1,[C12],[],\'C12\',0]); data.push([1,[C13],[],\'C13\',0]); data.push([1,[C14],[],\'C14\',0]);
data.push([1,[C22],[],\'C22\',0]); data.push([1,[C23],[],\'C23\',0]); data.push([1,[C24],[],\'C24\',0]);
data.push([1,[C012],[],\'C012\',0]); data.push([1,[C011],[],\'C011\',0]);
data.push([1,[C112],[],\'C112\',0]); data.push([1,[C111],[],\'C111\',0]);
data.push([1,[C022],[],\'C022\',0]); data.push([1,[C021],[],\'C021\',0]);
data.push([1,[C122],[],\'C122\',0]); data.push([1,[C121],[],\'C121\',0]);
data.push([1,[C032],[],\'C032\',0]); data.push([1,[C031],[],\'C031\',0]);
data.push([1,[C132],[],\'C132\',0]); data.push([1,[C131],[],\'C131\',0]);
data.push([1,[C042],[],\'C042\',0]); data.push([1,[C041],[],\'C041\',0]);
data.push([1,[C142],[],\'C142\',0]); data.push([1,[C141],[],\'C141\',0]);
data.push([1,[C052],[],\'C052\',0]); data.push([1,[C051],[],\'C051\',0]);
data.push([1,[C152],[],\'C152\',0]); data.push([1,[C151],[],\'C151\',0]);
data.push([1,[C201],[],\'C201\',0]); data.push([1,[C202],[],\'C202\',0]);
data.push([1,[C000],[],\'C000\',0]); data.push([1,[C100],[],\'C100\',0]);
data.push([1,[C221],[],\'C221\',0]); data.push([1,[C222],[],\'C222\',0]);
data.push([1,[C321],[],\'C321\',0]); data.push([1,[C322],[],\'C322\',0]);
data.push([1,[C521],[],\'C521\',0]); data.push([1,[C522],[],\'C522\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[C03,C02,C01],[],\'\',2]);
data.push([3,[A06,C04,C03],[],\'\',2]);
data.push([3,[C01,A01,A06],[],\'\',2]);
data.push([3,[A06,C03,C01],[],\'\',2]);
data.push([3,[C13,C12,C11],[],\'\',2]);
data.push([3,[A16,C14,C13],[],\'\',2]);
data.push([3,[C11,A11,A16],[],\'\',2]);
data.push([3,[A16,C13,C11],[],\'\',2]);
}
if(extern == 1){
data.push([3,[A26,C24,A11],[],\'\',1]);
data.push([3,[C24,C23,C11],[],\'\',1]);
data.push([3,[C11,A11,C24],[],\'\',1]);
data.push([3,[C23,C22,C11],[],\'\',1]);
data.push([3,[C14,C24,A26],[],\'\',1]);
data.push([3,[C14,C23,C24],[],\'\',1]);
data.push([3,[C13,C23,C14],[],\'\',1]);
data.push([3,[C13,C22,C23],[],\'\',1]);
data.push([3,[C14,A26,A16],[],\'\',2]);
data.push([3,[C22,C13,C12],[],\'\',2]);
data.push([3,[C22,C12,C11],[],\'\',2]);
data.push([3,[A11,C11,A01],[],\'\',2]);
data.push([3,[C11,C01,A01],[],\'\',2]);
data.push([3,[C01,C11,C02],[],\'\',2]);
data.push([3,[C11,C12,C02],[],\'\',2]);
data.push([3,[C12,C13,C03],[],\'\',2]);
data.push([3,[C02,C12,C03],[],\'\',2]);
data.push([3,[C13,C14,C04],[],\'\',2]);
data.push([3,[C04,C03,C13],[],\'\',2]);
}
var D01 = [-l/2,-L+y,0], D02 = [-l/2-D,-2*L+y,0], D03 = [-3*l/2-D,-2*L+y,0], D04 = [-3*l/2-2*D,-L+y,0];
var D11 = [-l/2,-L+y,h], D12 = [-l/2-D,-2*L+y,h], D13 = [-3*l/2-D,-2*L+y,h], D14 = [-3*l/2-2*D,-L+y,h];
var D22 = [-l/2-D,-2*L+y,h+H],
D23 = setCoord(getMean(D01,D03,0.5),2,h+H), D24 = setCoord(getMean(B01,D04,0.5),2,h+H);
var D012 = getMean(B01,D01,1/3), D011 = getMean(B01,D01,2/3),
D112 = getMean(B11,D11,1/3), D111 = getMean(B11,D11,2/3),
D022 = getMean(D01,D02,1/3), D021 = getMean(D01,D02,2/3),
D122 = getMean(D11,D12,1/3), D121 = getMean(D11,D12,2/3),
D032 = getMean(D02,D03,1/3), D031 = getMean(D02,D03,2/3),
D132 = getMean(D12,D13,1/3), D131 = getMean(D12,D13,2/3),
D042 = getMean(D03,D04,1/3), D041 = getMean(D03,D04,2/3),
D142 = getMean(D13,D14,1/3), D141 = getMean(D13,D14,2/3),
D052 = getMean(D04,B02,1/3), D051 = getMean(D04,B02,2/3),
D152 = getMean(D14,B12,1/3), D151 = getMean(D14,B12,2/3),
D062 = getMean(B01,B02,1/3), D061 = getMean(B01,B02,2/3),
D162 = getMean(B11,B12,1/3), D161 = getMean(B11,B12,2/3),
D201 = getMean(D23,D24,1/3), D202 = getMean(D23,D24,2/3),
D000 = getMean(B02,D02,1/2), D100 = getMean(B12,D12,1/2),
D251 = getMean(D14,B22,1/3), D252 = getMean(D14,B22,2/3),
D231 = getMean(D13,D22,1/3), D232 = getMean(D13,D22,2/3),
D221 = getMean(D11,D22,1/3), D222 = getMean(D11,D22,2/3);
if(labels == 1){
data.push([1,[D01],[],\'D01\',0]); data.push([1,[D02],[],\'D02\',0]); data.push([1,[D03],[],\'D03\',0]); data.push([1,[D04],[],\'D04\',0]);
data.push([1,[D11],[],\'D11\',0]); data.push([1,[D12],[],\'D12\',0]); data.push([1,[D13],[],\'D13\',0]); data.push([1,[D14],[],\'D14\',0]);
data.push([1,[D22],[],\'D22\',0]); data.push([1,[D23],[],\'D23\',0]); data.push([1,[D24],[],\'D24\',0]);
data.push([1,[D012],[],\'D012\',0]); data.push([1,[D011],[],\'D011\',0]);
data.push([1,[D112],[],\'D112\',0]); data.push([1,[D111],[],\'D111\',0]);
data.push([1,[D022],[],\'D022\',0]); data.push([1,[D021],[],\'D021\',0]);
data.push([1,[D122],[],\'D122\',0]); data.push([1,[D121],[],\'D121\',0]);
data.push([1,[D032],[],\'D032\',0]); data.push([1,[D031],[],\'D031\',0]);
data.push([1,[D132],[],\'D132\',0]); data.push([1,[D131],[],\'D131\',0]);
data.push([1,[D042],[],\'D042\',0]); data.push([1,[D041],[],\'D041\',0]);
data.push([1,[D142],[],\'D142\',0]); data.push([1,[D141],[],\'D141\',0]);
data.push([1,[D052],[],\'D052\',0]); data.push([1,[D051],[],\'D051\',0]);
data.push([1,[D152],[],\'D152\',0]); data.push([1,[D151],[],\'D151\',0]);
data.push([1,[D062],[],\'D062\',0]); data.push([1,[D061],[],\'D061\',0]);
data.push([1,[D162],[],\'D162\',0]); data.push([1,[D161],[],\'D161\',0]);
data.push([1,[D201],[],\'D201\',0]); data.push([1,[D202],[],\'D202\',0]);
data.push([1,[D000],[],\'D000\',0]); data.push([1,[D100],[],\'D100\',0]);
data.push([1,[D251],[],\'D251\',0]); data.push([1,[D252],[],\'D252\',0]);
data.push([1,[D231],[],\'D231\',0]); data.push([1,[D232],[],\'D232\',0]);
data.push([1,[D221],[],\'D221\',0]); data.push([1,[D222],[],\'D222\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[D01,D02,D03],[],\'\',2]);
data.push([3,[D03,D04,B02],[],\'\',2]);
data.push([3,[B02,B01,D01],[],\'\',2]);
data.push([3,[D01,D03,B02],[],\'\',2]);
data.push([3,[D11,D12,D13],[],\'\',2]);
data.push([3,[D13,D14,B12],[],\'\',2]);
data.push([3,[B12,B11,D11],[],\'\',2]);
data.push([3,[D11,D13,B12],[],\'\',2]);
}
if(extern == 1){
data.push([3,[D22,D23,D11],[],\'\',1]);
data.push([3,[D23,D24,B11],[],\'\',1]);
data.push([3,[B11,D11,D23],[],\'\',1]);
data.push([3,[D24,B22,B11],[],\'\',1]);
data.push([3,[D13,D23,D22],[],\'\',1]);
data.push([3,[D13,D24,D23],[],\'\',1]);
data.push([3,[D14,D24,D13],[],\'\',1]);
data.push([3,[D14,B22,D24],[],\'\',1]);
data.push([3,[B22,D14,B12],[],\'\',2]);
data.push([3,[D22,D12,D13],[],\'\',2]);
data.push([3,[D11,D12,D22],[],\'\',2]);
data.push([3,[D14,D04,B12],[],\'\',2]);
data.push([3,[B12,D04,B02],[],\'\',2]);
data.push([3,[D14,D13,D03],[],\'\',2]);
data.push([3,[D03,D04,D14],[],\'\',2]);
data.push([3,[D13,D12,D02],[],\'\',2]);
data.push([3,[D02,D03,D13],[],\'\',2]);
data.push([3,[D12,D11,D01],[],\'\',2]);
data.push([3,[D01,D02,D12],[],\'\',2]);
data.push([3,[D11,B11,B01],[],\'\',2]);
data.push([3,[B01,D01,D11],[],\'\',2]);
}
// A base
data.push([2,[A01,A02],[d,d],\'\',1]);
data.push([2,[A02,A03],[d,d],\'\',1]);
data.push([2,[A03,A04],[d,d],\'\',1]);
data.push([2,[A04,A05],[d,d],\'\',1]);
data.push([2,[A05,A06],[d,d],\'\',1]);
data.push([2,[A06,A01],[d,d],\'\',1]);
// A support
data.push([2,[A01,A11],[d,d],\'\',1]);
data.push([2,[A02,A12],[d,d],\'\',1]);
data.push([2,[A03,A13],[d,d],\'\',1]);
data.push([2,[A04,A14],[d,d],\'\',1]);
data.push([2,[A05,A15],[d,d],\'\',1]);
data.push([2,[A06,A16],[d,d],\'\',1]);
// A hight
data.push([2,[A11,A12],[d,d],\'\',1]);
data.push([2,[A12,A13],[d,d],\'\',1]);
data.push([2,[A13,A14],[d,d],\'\',1]);
data.push([2,[A14,A15],[d,d],\'\',1]);
data.push([2,[A15,A16],[d,d],\'\',1]);
data.push([2,[A16,A11],[d,d],\'\',1]);
// A roof
data.push([2,[A13,A23],[d,d],\'\',1]);
data.push([2,[A16,A26],[d,d],\'\',1]);
data.push([2,[A23,A26],[d,d],\'\',1]);
data.push([2,[A11,A26],[d,d],\'\',1]);
data.push([2,[A15,A26],[d,d],\'\',1]);
data.push([2,[A12,A23],[d,d],\'\',1]);
data.push([2,[A14,A23],[d,d],\'\',1]);
data.push([2,[A11,A25],[d,d],\'\',1]);
data.push([2,[A15,A25],[d,d],\'\',1]);
data.push([2,[A12,A24],[d,d],\'\',1]);
data.push([2,[A14,A24],[d,d],\'\',1]);
// A intern
data.push([2,[A201,A14],[d,d],\'\',1]);
data.push([2,[A201,A15],[d,d],\'\',1]);
data.push([2,[A201,A11],[d,d],\'\',1]);
data.push([2,[A201,A12],[d,d],\'\',1]);
data.push([2,[A011,A111],[d,d],\'\',1]);
data.push([2,[A012,A112],[d,d],\'\',1]);
data.push([2,[A021,A121],[d,d],\'\',1]);
data.push([2,[A022,A122],[d,d],\'\',1]);
data.push([2,[A031,A131],[d,d],\'\',1]);
data.push([2,[A032,A132],[d,d],\'\',1]);
data.push([2,[A041,A141],[d,d],\'\',1]);
data.push([2,[A042,A142],[d,d],\'\',1]);
data.push([2,[A051,A151],[d,d],\'\',1]);
data.push([2,[A052,A152],[d,d],\'\',1]);
data.push([2,[A061,A161],[d,d],\'\',1]);
data.push([2,[A062,A162],[d,d],\'\',1]);
data.push([2,[A03,A06],[d,d],\'\',2]);
data.push([2,[A04,A02],[d,d],\'\',2]);
data.push([2,[A012,A041],[d,d],\'\',2]);
data.push([2,[A011,A042],[d,d],\'\',2]);
data.push([2,[A05,A01],[d,d],\'\',2]);
data.push([2,[A021,A062],[d,d],\'\',2]);
data.push([2,[A022,A061],[d,d],\'\',2]);
data.push([2,[A031,A052],[d,d],\'\',2]);
data.push([2,[A032,A051],[d,d],\'\',2]);
data.push([2,[A151,A512],[d,d],\'\',1]);
data.push([2,[A152,A511],[d,d],\'\',1]);
data.push([2,[A131,A411],[d,d],\'\',1]);
data.push([2,[A132,A412],[d,d],\'\',1]);
data.push([2,[A121,A212],[d,d],\'\',1]);
data.push([2,[A122,A211],[d,d],\'\',1]);
data.push([2,[A161,A611],[d,d],\'\',1]);
data.push([2,[A162,A612],[d,d],\'\',1]);
data.push([2,[A411,A511],[d,d],\'\',1]);
data.push([2,[A412,A512],[d,d],\'\',1]);
data.push([2,[A211,A611],[d,d],\'\',1]);
data.push([2,[A212,A612],[d,d],\'\',1]);
// B base
data.push([2,[A02,B01],[d,d],\'\',1]);
data.push([2,[B01,B02],[d,d],\'\',1]);
data.push([2,[B02,B03],[d,d],\'\',1]);
data.push([2,[B03,B04],[d,d],\'\',1]);
data.push([2,[B04,A03],[d,d],\'\',1]);
// B support
data.push([2,[B01,B11],[d,d],\'\',1]);
data.push([2,[B02,B12],[d,d],\'\',1]);
data.push([2,[B03,B13],[d,d],\'\',1]);
data.push([2,[B04,B14],[d,d],\'\',1]);
// B hight
data.push([2,[A12,B11],[d,d],\'\',1]);
data.push([2,[B11,B12],[d,d],\'\',1]);
data.push([2,[B12,B13],[d,d],\'\',1]);
data.push([2,[B13,B14],[d,d],\'\',1]);
data.push([2,[B14,A13],[d,d],\'\',1]);
// B roof
data.push([2,[B12,B22],[d,d],\'\',1]);
data.push([2,[A23,B22],[d,d],\'\',1]);
data.push([2,[B11,B22],[d,d],\'\',1]);
data.push([2,[B13,B22],[d,d],\'\',1]);
data.push([2,[B11,B23],[d,d],\'\',1]);
data.push([2,[B13,B23],[d,d],\'\',1]);
data.push([2,[B14,B24],[d,d],\'\',1]);
data.push([2,[A12,B24],[d,d],\'\',1]);
data.push([2,[A23,B14],[d,d],\'\',1]);
// B structure
data.push([2,[B011,B111],[d,d],\'\',1]);
data.push([2,[B012,B112],[d,d],\'\',1]);
data.push([2,[B021,B121],[d,d],\'\',1]);
data.push([2,[B022,B122],[d,d],\'\',1]);
data.push([2,[B031,B131],[d,d],\'\',1]);
data.push([2,[B032,B132],[d,d],\'\',1]);
data.push([2,[B041,B141],[d,d],\'\',1]);
data.push([2,[B042,B142],[d,d],\'\',1]);
data.push([2,[B112,B202],[d,d],\'\',1]);
data.push([2,[B131,B202],[d,d],\'\',1]);
data.push([2,[B111,B201],[d,d],\'\',1]);
data.push([2,[B132,B201],[d,d],\'\',1]);
// B intern
data.push([2,[A03,B02],[d,d],\'\',1]);
data.push([2,[A13,B12],[d,d],\'\',1]);
data.push([2,[B01,B03],[d,d],\'\',2]);
data.push([2,[A02,B04],[d,d],\'\',2]);
data.push([2,[B012,B031],[d,d],\'\',2]);
data.push([2,[B011,B032],[d,d],\'\',2]);
data.push([2,[B11,B13],[d,d],\'\',2]);
data.push([2,[A12,B14],[d,d],\'\',2]);
data.push([2,[B112,B131],[d,d],\'\',2]);
data.push([2,[B111,B132],[d,d],\'\',2]);
data.push([2,[D061,A021],[d,d],\'\',2]);
data.push([2,[D062,A022],[d,d],\'\',2]);
data.push([2,[B021,B042],[d,d],\'\',2]);
data.push([2,[B022,B041],[d,d],\'\',2]);
data.push([2,[D161,A121],[d,d],\'\',2]);
data.push([2,[D162,A122],[d,d],\'\',2]);
data.push([2,[B121,B142],[d,d],\'\',2]);
data.push([2,[B122,B141],[d,d],\'\',2]);
data.push([2,[B000,B100],[d,d],\'\',1]);
data.push([2,[B141,B242],[d,d],\'\',1]);
data.push([2,[B142,B241],[d,d],\'\',1]);
data.push([2,[B121,B221],[d,d],\'\',1]);
data.push([2,[B122,B222],[d,d],\'\',1]);
data.push([2,[D162,B211],[d,d],\'\',1]);
data.push([2,[D161,B212],[d,d],\'\',1]);
data.push([2,[B221,B241],[d,d],\'\',1]);
data.push([2,[B222,B242],[d,d],\'\',1]);
data.push([2,[A211,B211],[d,d],\'\',1]);
data.push([2,[A212,B212],[d,d],\'\',1]);
// C base
data.push([2,[A01,C01],[d,d],\'\',1]);
data.push([2,[C01,C02],[d,d],\'\',1]);
data.push([2,[C02,C03],[d,d],\'\',1]);
data.push([2,[C03,C04],[d,d],\'\',1]);
data.push([2,[C04,A06],[d,d],\'\',1]);
// C support
data.push([2,[C01,C11],[d,d],\'\',1]);
data.push([2,[C02,C12],[d,d],\'\',1]);
data.push([2,[C03,C13],[d,d],\'\',1]);
data.push([2,[C04,C14],[d,d],\'\',1]);
// C hight
data.push([2,[A11,C11],[d,d],\'\',1]);
data.push([2,[C11,C12],[d,d],\'\',1]);
data.push([2,[C12,C13],[d,d],\'\',1]);
data.push([2,[C13,C14],[d,d],\'\',1]);
data.push([2,[C14,A16],[d,d],\'\',1]);
// C roof
data.push([2,[C12,C22],[d,d],\'\',1]);
data.push([2,[A26,C22],[d,d],\'\',1]);
data.push([2,[C11,C22],[d,d],\'\',1]);
data.push([2,[C13,C22],[d,d],\'\',1]);
data.push([2,[C11,C23],[d,d],\'\',1]);
data.push([2,[C13,C23],[d,d],\'\',1]);
data.push([2,[C14,C24],[d,d],\'\',1]);
data.push([2,[A11,C24],[d,d],\'\',1]);
data.push([2,[A26,C14],[d,d],\'\',1]);
data.push([2,[C121,C222],[d,d],\'\',1]);
data.push([2,[C122,C221],[d,d],\'\',1]);
data.push([2,[C131,C321],[d,d],\'\',1]);
data.push([2,[C132,C322],[d,d],\'\',1]);
data.push([2,[C151,C522],[d,d],\'\',1]);
data.push([2,[C152,C521],[d,d],\'\',1]);
data.push([2,[A612,C222],[d,d],\'\',1]);
data.push([2,[A611,C221],[d,d],\'\',1]);
data.push([2,[C321,C521],[d,d],\'\',1]);
data.push([2,[C322,C522],[d,d],\'\',1]);
// C structure
data.push([2,[C201,C111],[d,d],\'\',1]);
data.push([2,[C201,C142],[d,d],\'\',1]);
data.push([2,[C202,C112],[d,d],\'\',1]);
data.push([2,[C202,C141],[d,d],\'\',1]);
data.push([2,[C011,C111],[d,d],\'\',1]);
data.push([2,[C012,C112],[d,d],\'\',1]);
data.push([2,[C021,C121],[d,d],\'\',1]);
data.push([2,[C022,C122],[d,d],\'\',1]);
data.push([2,[C031,C131],[d,d],\'\',1]);
data.push([2,[C032,C132],[d,d],\'\',1]);
data.push([2,[C041,C141],[d,d],\'\',1]);
data.push([2,[C042,C142],[d,d],\'\',1]);
data.push([2,[C051,C151],[d,d],\'\',1]);
data.push([2,[C052,C152],[d,d],\'\',1]);
// C intern
data.push([2,[C02,A06],[d,d],\'\',1]);
data.push([2,[C12,A16],[d,d],\'\',1]);
data.push([2,[A01,C04],[d,d],\'\',2]);
data.push([2,[C011,C042],[d,d],\'\',2]);
data.push([2,[C012,C041],[d,d],\'\',2]);
data.push([2,[C03,C01],[d,d],\'\',2]);
data.push([2,[A11,C14],[d,d],\'\',2]);
data.push([2,[C111,C142],[d,d],\'\',2]);
data.push([2,[C112,C141],[d,d],\'\',2]);
data.push([2,[C13,C11],[d,d],\'\',2]);
data.push([2,[A062,C021],[d,d],\'\',2]);
data.push([2,[A061,C022],[d,d],\'\',2]);
data.push([2,[C052,C031],[d,d],\'\',2]);
data.push([2,[C051,C032],[d,d],\'\',2]);
data.push([2,[A162,C121],[d,d],\'\',2]);
data.push([2,[A161,C122],[d,d],\'\',2]);
data.push([2,[C152,C131],[d,d],\'\',2]);
data.push([2,[C151,C132],[d,d],\'\',2]);
data.push([2,[C000,C100],[d,d],\'\',1]);
// D base
data.push([2,[B01,D01],[d,d],\'\',1]);
data.push([2,[D01,D02],[d,d],\'\',1]);
data.push([2,[D02,D03],[d,d],\'\',1]);
data.push([2,[D03,D04],[d,d],\'\',1]);
data.push([2,[D04,B02],[d,d],\'\',1]);
// D support
data.push([2,[D01,D11],[d,d],\'\',1]);
data.push([2,[D02,D12],[d,d],\'\',1]);
data.push([2,[D03,D13],[d,d],\'\',1]);
data.push([2,[D04,D14],[d,d],\'\',1]);
// D hight
data.push([2,[B11,D11],[d,d],\'\',1]);
data.push([2,[D11,D12],[d,d],\'\',1]);
data.push([2,[D12,D13],[d,d],\'\',1]);
data.push([2,[D13,D14],[d,d],\'\',1]);
data.push([2,[D14,B12],[d,d],\'\',1]);
// D roof
data.push([2,[D12,D22],[d,d],\'\',1]);
data.push([2,[D11,D22],[d,d],\'\',1]);
data.push([2,[D13,D22],[d,d],\'\',1]);
data.push([2,[D11,D23],[d,d],\'\',1]);
data.push([2,[D13,D23],[d,d],\'\',1]);
data.push([2,[D14,B22],[d,d],\'\',1]);
data.push([2,[D14,D24],[d,d],\'\',1]);
data.push([2,[B11,D24],[d,d],\'\',1]);
data.push([2,[D22,B22],[d,d],\'\',1]);
// D structure
data.push([2,[D201,D111],[d,d],\'\',1]);
data.push([2,[D201,D142],[d,d],\'\',1]);
data.push([2,[D202,D112],[d,d],\'\',1]);
data.push([2,[D202,D141],[d,d],\'\',1]);
data.push([2,[D011,D111],[d,d],\'\',1]);
data.push([2,[D012,D112],[d,d],\'\',1]);
data.push([2,[D021,D121],[d,d],\'\',1]);
data.push([2,[D022,D122],[d,d],\'\',1]);
data.push([2,[D031,D131],[d,d],\'\',1]);
data.push([2,[D032,D132],[d,d],\'\',1]);
data.push([2,[D041,D141],[d,d],\'\',1]);
data.push([2,[D042,D142],[d,d],\'\',1]);
data.push([2,[D051,D151],[d,d],\'\',1]);
data.push([2,[D052,D152],[d,d],\'\',1]);
// D intern
data.push([2,[D02,B02],[d,d],\'\',1]);
data.push([2,[D12,B12],[d,d],\'\',1]);
data.push([2,[D01,D03],[d,d],\'\',2]);
data.push([2,[B01,D04],[d,d],\'\',2]);
data.push([2,[D012,D041],[d,d],\'\',2]);
data.push([2,[D011,D042],[d,d],\'\',2]);
data.push([2,[D11,D13],[d,d],\'\',2]);
data.push([2,[B11,D14],[d,d],\'\',2]);
data.push([2,[D112,D141],[d,d],\'\',2]);
data.push([2,[D111,D142],[d,d],\'\',2]);
data.push([2,[D021,D061],[d,d],\'\',2]);
data.push([2,[D022,D062],[d,d],\'\',2]);
data.push([2,[D031,D052],[d,d],\'\',2]);
data.push([2,[D032,D051],[d,d],\'\',2]);
data.push([2,[D121,D161],[d,d],\'\',2]);
data.push([2,[D122,D162],[d,d],\'\',2]);
data.push([2,[D131,D152],[d,d],\'\',2]);
data.push([2,[D132,D151],[d,d],\'\',2]);
data.push([2,[D061,D161],[d,d],\'\',2]);
data.push([2,[D062,D162],[d,d],\'\',2]);
data.push([2,[D000,D100],[d,d],\'\',1]);
data.push([2,[D151,D252],[d,d],\'\',1]);
data.push([2,[D152,D251],[d,d],\'\',1]);
data.push([2,[D131,D231],[d,d],\'\',1]);
data.push([2,[D132,D232],[d,d],\'\',1]);
data.push([2,[D121,D222],[d,d],\'\',1]);
data.push([2,[D122,D221],[d,d],\'\',1]);
data.push([2,[D231,D251],[d,d],\'\',1]);
data.push([2,[D232,D252],[d,d],\'\',1]);
data.push([2,[D221,B211],[d,d],\'\',1]);
data.push([2,[D222,B212],[d,d],\'\',1]);
return data;
}
function getMean(point_1, point_2, weight){
var mean = [];
for(var i = 0;i < 3;i++){
mean.push(weight*point_1[i]+(1-weight)*point_2[i]);
}
return mean;
}
function setCoord(point,n,value){
point[n] = value;
return point;
}
function setDesign(labels,floors,extern,data){
var s = 0.2;
var d = 10*s;
var h = 280*s;
var l = 500*s;
var L = l*Math.cos(Math.PI/6);
var D = l*Math.sin(Math.PI/6);
var H = 250*s;
var y = 200*s;
var A01 = [l/2,y+L,0], A02 = [-l/2,y+L,0], A03 = [-l/2-D,y+2*L,0],
A04 = [-l/2,y+3*L,0], A05 = [l/2,y+3*L,0], A06 = [l/2+D,y+2*L,0];
var A11 = [l/2,y+L,h], A12 = [-l/2,y+L,h], A13 = [-l/2-D,y+2*L,h],
A14 = [-l/2,y+3*L,h], A15 = [l/2,y+3*L,h], A16 = [l/2+D,y+2*L,h];
var A23 = [-l/2-D,y+2*L,h+H], A26 = [l/2+D,y+2*L,h+H],
A24 = setCoord(getMean(A02,A04,0.5),2,h+H), A25 = setCoord(getMean(A01,A05,0.5),2,h+H);
var A012 = getMean(A01,A02,1/3), A011 = getMean(A01,A02,2/3),
A112 = getMean(A11,A12,1/3), A111 = getMean(A11,A12,2/3),
A022 = getMean(A02,A03,1/3), A021 = getMean(A02,A03,2/3),
A122 = getMean(A12,A13,1/3), A121 = getMean(A12,A13,2/3),
A032 = getMean(A03,A04,1/3), A031 = getMean(A03,A04,2/3),
A132 = getMean(A13,A14,1/3), A131 = getMean(A13,A14,2/3),
A042 = getMean(A04,A05,1/3), A041 = getMean(A04,A05,2/3),
A142 = getMean(A14,A15,1/3), A141 = getMean(A14,A15,2/3),
A052 = getMean(A05,A06,1/3), A051 = getMean(A05,A06,2/3),
A152 = getMean(A15,A16,1/3), A151 = getMean(A15,A16,2/3),
A062 = getMean(A06,A01,1/3), A061 = getMean(A06,A01,2/3),
A162 = getMean(A16,A11,1/3), A161 = getMean(A16,A11,2/3),
A211 = getMean(A12,A23,1/3), A212 = getMean(A12,A23,2/3),
A411 = getMean(A14,A23,1/3), A412 = getMean(A14,A23,2/3),
A511 = getMean(A15,A26,1/3), A512 = getMean(A15,A26,2/3),
A611 = getMean(A11,A26,1/3), A612 = getMean(A11,A26,2/3),
A201 = getMean(A24,A25,1/2);
if(labels == 1){
data.push([1,[A01],[],'A01',0]); data.push([1,[A02],[],'A02',0]); data.push([1,[A03],[],'A03',0]);
data.push([1,[A04],[],'A04',0]); data.push([1,[A05],[],'A05',0]); data.push([1,[A06],[],'A06',0]);
data.push([1,[A11],[],'A11',0]); data.push([1,[A12],[],'A12',0]); data.push([1,[A13],[],'A13',0]);
data.push([1,[A14],[],'A14',0]); data.push([1,[A15],[],'A15',0]); data.push([1,[A16],[],'A16',0]);
data.push([1,[A23],[],'A23',0]); data.push([1,[A26],[],'A26',0]); data.push([1,[A24],[],'A24',0]); data.push([1,[A25],[],'A25\',0]);
data.push([1,[A012],[],\'A012\',0]); data.push([1,[A011],[],\'A011\',0]);
data.push([1,[A112],[],\'A112\',0]); data.push([1,[A111],[],\'A111\',0]);
data.push([1,[A022],[],\'A022\',0]); data.push([1,[A021],[],\'A021\',0]);
data.push([1,[A122],[],\'A122\',0]); data.push([1,[A121],[],\'A121\',0]);
data.push([1,[A032],[],\'A032\',0]); data.push([1,[A031],[],\'A031\',0]);
data.push([1,[A132],[],\'A132\',0]); data.push([1,[A131],[],\'A131\',0]);
data.push([1,[A042],[],\'A042\',0]); data.push([1,[A041],[],\'A041\',0]);
data.push([1,[A142],[],\'A142\',0]); data.push([1,[A141],[],\'A141\',0]);
data.push([1,[A052],[],\'A052\',0]); data.push([1,[A051],[],\'A051\',0]);
data.push([1,[A152],[],\'A152\',0]); data.push([1,[A151],[],\'A151\',0]);
data.push([1,[A062],[],\'A062\',0]); data.push([1,[A061],[],\'A061\',0]);
data.push([1,[A162],[],\'A162\',0]); data.push([1,[A161],[],\'A161\',0]);
data.push([1,[A211],[],\'A211\',0]); data.push([1,[A212],[],\'A212\',0]);
data.push([1,[A411],[],\'A411\',0]); data.push([1,[A412],[],\'A412\',0]);
data.push([1,[A511],[],\'A511\',0]); data.push([1,[A512],[],\'A512\',0]);
data.push([1,[A611],[],\'A611\',0]); data.push([1,[A612],[],\'A612\',0]);
data.push([1,[A201],[],\'A201\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[A01,A02,A03],[],\'\',2]);
data.push([3,[A03,A04,A05],[],\'\',2]);
data.push([3,[A05,A06,A01],[],\'\',2]);
data.push([3,[A01,A03,A05],[],\'\',2]);
}
if(extern == 1){
data.push([3,[A14,A24,A23],[],\'\',1]);
data.push([3,[A14,A25,A24],[],\'\',1]);
data.push([3,[A15,A25,A14],[],\'\',1]);
data.push([3,[A15,A26,A25],[],\'\',1]);
data.push([3,[A23,A24,A12],[],\'\',1]);
data.push([3,[A24,A25,A11],[],\'\',1]);
data.push([3,[A11,A12,A24],[],\'\',1]);
data.push([3,[A25,A26,A11],[],\'\',1]);
data.push([3,[A26,A15,A16],[],\'\',2]);
data.push([3,[A23,A13,A14],[],\'\',2]);
}
var B01 = [-l/2-D,y,0], B02 = [-3*l/2-D,y,0], B03 = [-3*l/2-2*D,y+L,0], B04 = [-3*l/2-D,y+2*L,0];
var B11 = [-l/2-D,y,h], B12 = [-3*l/2-D,y,h], B13 = [-3*l/2-2*D,y+L,h], B14 = [-3*l/2-D,y+2*L,h];
var B22 = [-3*l/2-D,y,h+H],
B23 = setCoord(getMean(B01,B03,0.5),2,h+H), B24 = setCoord(getMean(A02,B04,0.5),2,h+H);
var B012 = getMean(A02,B01,1/3), B011 = getMean(A02,B01,2/3),
B112 = getMean(A12,B11,1/3), B111 = getMean(A12,B11,2/3),
B022 = getMean(B02,B03,1/3), B021 = getMean(B02,B03,2/3),
B122 = getMean(B12,B13,1/3), B121 = getMean(B12,B13,2/3),
B032 = getMean(B03,B04,1/3), B031 = getMean(B03,B04,2/3),
B132 = getMean(B13,B14,1/3), B131 = getMean(B13,B14,2/3),
B042 = getMean(B04,A03,1/3), B041 = getMean(B04,A03,2/3),
B142 = getMean(B14,A13,1/3), B141 = getMean(B14,A13,2/3),
B201 = getMean(B23,B24,1/3), B202 = getMean(B23,B24,2/3),
B000 = getMean(B02,A03,1/2), B100 = getMean(B12,A13,1/2),
B241 = getMean(B14,A23,1/3), B242 = getMean(B14,A23,2/3),
B221 = getMean(B13,B22,1/3), B222 = getMean(B13,B22,2/3),
B211 = getMean(B11,B22,1/3), B212 = getMean(B11,B22,2/3);
if(labels == 1){
data.push([1,[B01],[],\'B01\',0]); data.push([1,[B02],[],\'B02\',0]); data.push([1,[B03],[],\'B03\',0]); data.push([1,[B04],[],\'B04\',0]);
data.push([1,[B11],[],\'B11\',0]); data.push([1,[B12],[],\'B12\',0]); data.push([1,[B13],[],\'B13\',0]); data.push([1,[B14],[],\'B14\',0]);
data.push([1,[B22],[],\'B22\',0]); data.push([1,[B23],[],\'B23\',0]); data.push([1,[B24],[],\'B24\',0]);
data.push([1,[B012],[],\'B012\',0]); data.push([1,[B011],[],\'B011\',0]);
data.push([1,[B112],[],\'B112\',0]); data.push([1,[B111],[],\'B111\',0]);
data.push([1,[B022],[],\'B022\',0]); data.push([1,[B021],[],\'B021\',0]);
data.push([1,[B122],[],\'B122\',0]); data.push([1,[B121],[],\'B121\',0]);
data.push([1,[B032],[],\'B032\',0]); data.push([1,[B031],[],\'B031\',0]);
data.push([1,[B132],[],\'B132\',0]); data.push([1,[B131],[],\'B131\',0]);
data.push([1,[B042],[],\'B042\',0]); data.push([1,[B041],[],\'B041\',0]);
data.push([1,[B142],[],\'B142\',0]); data.push([1,[B141],[],\'B141\',0]);
data.push([1,[B201],[],\'B201\',0]); data.push([1,[B202],[],\'B202\',0]);
data.push([1,[B000],[],\'B000\',0]); data.push([1,[B100],[],\'B100\',0]);
data.push([1,[B241],[],\'B241\',0]); data.push([1,[B242],[],\'B242\',0]);
data.push([1,[B221],[],\'B221\',0]); data.push([1,[B222],[],\'B222\',0]);
data.push([1,[B211],[],\'B211\',0]); data.push([1,[B212],[],\'B212\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[B01,B02,B03],[],\'\',2]);
data.push([3,[B03,B04,A03],[],\'\',2]);
data.push([3,[A03,A02,B01],[],\'\',2]);
data.push([3,[B01,B03,A03],[],\'\',2]);
data.push([3,[B11,B12,B13],[],\'\',2]);
data.push([3,[B13,B14,A13],[],\'\',2]);
data.push([3,[A13,A12,B11],[],\'\',2]);
data.push([3,[B11,B13,A13],[],\'\',2]);
}
if(extern == 1){
data.push([3,[B13,B23,B22],[],\'\',1]);
data.push([3,[B13,B24,B23],[],\'\',1]);
data.push([3,[B14,B24,B13],[],\'\',1]);
data.push([3,[B14,A23,B24],[],\'\',1]);
data.push([3,[B22,B23,B11],[],\'\',1]);
data.push([3,[B23,B24,A12],[],\'\',1]);
data.push([3,[A12,B11,B23],[],\'\',1]);
data.push([3,[B24,A23,A12],[],\'\',1]);
data.push([3,[A23,B14,A13],[],\'\',2]);
data.push([3,[B22,B12,B13],[],\'\',2]);
data.push([3,[B14,B13,B03],[],\'\',2]);
data.push([3,[B03,B04,B14],[],\'\',2]);
data.push([3,[B13,B12,B02],[],\'\',2]);
data.push([3,[B02,B03,B13],[],\'\',2]);
}
var C01 = [l/2+D,y,0], C02 = [3*l/2+D,y,0], C03 = [3*l/2+2*D,y+L,0], C04 = [3*l/2+D,y+2*L,0];
var C11 = [l/2+D,y,h], C12 = [3*l/2+D,y,h], C13 = [3*l/2+2*D,y+L,h], C14 = [3*l/2+D,y+2*L,h];
var C22 = [3*l/2+D,y,h+H],
C23 = setCoord(getMean(C01,C03,0.5),2,h+H), C24 = setCoord(getMean(A01,C04,0.5),2,h+H);
var C012 = getMean(A01,C01,1/3), C011 = getMean(A01,C01,2/3),
C112 = getMean(A11,C11,1/3), C111 = getMean(A11,C11,2/3),
C022 = getMean(C01,C02,1/3), C021 = getMean(C01,C02,2/3),
C122 = getMean(C11,C12,1/3), C121 = getMean(C11,C12,2/3),
C032 = getMean(C02,C03,1/3), C031 = getMean(C02,C03,2/3),
C132 = getMean(C12,C13,1/3), C131 = getMean(C12,C13,2/3),
C042 = getMean(C03,C04,1/3), C041 = getMean(C03,C04,2/3),
C142 = getMean(C13,C14,1/3), C141 = getMean(C13,C14,2/3),
C052 = getMean(C04,A06,1/3), C051 = getMean(C04,A06,2/3),
C152 = getMean(C14,A16,1/3), C151 = getMean(C14,A16,2/3),
C201 = getMean(C23,C24,1/3), C202 = getMean(C23,C24,2/3),
C000 = getMean(A06,C02,1/2), C100 = getMean(A16,C12,1/2),
C221 = getMean(C11,C22,1/3), C222 = getMean(C11,C22,2/3),
C321 = getMean(C13,C22,1/3), C322 = getMean(C13,C22,2/3),
C521 = getMean(C14,A26,1/3), C522 = getMean(C14,A26,2/3);
if(labels == 1){
data.push([1,[C01],[],\'C01\',0]); data.push([1,[C02],[],\'C02\',0]); data.push([1,[C03],[],\'C03\',0]); data.push([1,[C04],[],\'C04\',0]);
data.push([1,[C11],[],\'C11\',0]); data.push([1,[C12],[],\'C12\',0]); data.push([1,[C13],[],\'C13\',0]); data.push([1,[C14],[],\'C14\',0]);
data.push([1,[C22],[],\'C22\',0]); data.push([1,[C23],[],\'C23\',0]); data.push([1,[C24],[],\'C24\',0]);
data.push([1,[C012],[],\'C012\',0]); data.push([1,[C011],[],\'C011\',0]);
data.push([1,[C112],[],\'C112\',0]); data.push([1,[C111],[],\'C111\',0]);
data.push([1,[C022],[],\'C022\',0]); data.push([1,[C021],[],\'C021\',0]);
data.push([1,[C122],[],\'C122\',0]); data.push([1,[C121],[],\'C121\',0]);
data.push([1,[C032],[],\'C032\',0]); data.push([1,[C031],[],\'C031\',0]);
data.push([1,[C132],[],\'C132\',0]); data.push([1,[C131],[],\'C131\',0]);
data.push([1,[C042],[],\'C042\',0]); data.push([1,[C041],[],\'C041\',0]);
data.push([1,[C142],[],\'C142\',0]); data.push([1,[C141],[],\'C141\',0]);
data.push([1,[C052],[],\'C052\',0]); data.push([1,[C051],[],\'C051\',0]);
data.push([1,[C152],[],\'C152\',0]); data.push([1,[C151],[],\'C151\',0]);
data.push([1,[C201],[],\'C201\',0]); data.push([1,[C202],[],\'C202\',0]);
data.push([1,[C000],[],\'C000\',0]); data.push([1,[C100],[],\'C100\',0]);
data.push([1,[C221],[],\'C221\',0]); data.push([1,[C222],[],\'C222\',0]);
data.push([1,[C321],[],\'C321\',0]); data.push([1,[C322],[],\'C322\',0]);
data.push([1,[C521],[],\'C521\',0]); data.push([1,[C522],[],\'C522\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[C03,C02,C01],[],\'\',2]);
data.push([3,[A06,C04,C03],[],\'\',2]);
data.push([3,[C01,A01,A06],[],\'\',2]);
data.push([3,[A06,C03,C01],[],\'\',2]);
data.push([3,[C13,C12,C11],[],\'\',2]);
data.push([3,[A16,C14,C13],[],\'\',2]);
data.push([3,[C11,A11,A16],[],\'\',2]);
data.push([3,[A16,C13,C11],[],\'\',2]);
}
if(extern == 1){
data.push([3,[A26,C24,A11],[],\'\',1]);
data.push([3,[C24,C23,C11],[],\'\',1]);
data.push([3,[C11,A11,C24],[],\'\',1]);
data.push([3,[C23,C22,C11],[],\'\',1]);
data.push([3,[C14,C24,A26],[],\'\',1]);
data.push([3,[C14,C23,C24],[],\'\',1]);
data.push([3,[C13,C23,C14],[],\'\',1]);
data.push([3,[C13,C22,C23],[],\'\',1]);
data.push([3,[C14,A26,A16],[],\'\',2]);
data.push([3,[C22,C13,C12],[],\'\',2]);
data.push([3,[C22,C12,C11],[],\'\',2]);
data.push([3,[A11,C11,A01],[],\'\',2]);
data.push([3,[C11,C01,A01],[],\'\',2]);
data.push([3,[C01,C11,C02],[],\'\',2]);
data.push([3,[C11,C12,C02],[],\'\',2]);
data.push([3,[C12,C13,C03],[],\'\',2]);
data.push([3,[C02,C12,C03],[],\'\',2]);
data.push([3,[C13,C14,C04],[],\'\',2]);
data.push([3,[C04,C03,C13],[],\'\',2]);
}
var D01 = [-l/2,-L+y,0], D02 = [-l/2-D,-2*L+y,0], D03 = [-3*l/2-D,-2*L+y,0], D04 = [-3*l/2-2*D,-L+y,0];
var D11 = [-l/2,-L+y,h], D12 = [-l/2-D,-2*L+y,h], D13 = [-3*l/2-D,-2*L+y,h], D14 = [-3*l/2-2*D,-L+y,h];
var D22 = [-l/2-D,-2*L+y,h+H],
D23 = setCoord(getMean(D01,D03,0.5),2,h+H), D24 = setCoord(getMean(B01,D04,0.5),2,h+H);
var D012 = getMean(B01,D01,1/3), D011 = getMean(B01,D01,2/3),
D112 = getMean(B11,D11,1/3), D111 = getMean(B11,D11,2/3),
D022 = getMean(D01,D02,1/3), D021 = getMean(D01,D02,2/3),
D122 = getMean(D11,D12,1/3), D121 = getMean(D11,D12,2/3),
D032 = getMean(D02,D03,1/3), D031 = getMean(D02,D03,2/3),
D132 = getMean(D12,D13,1/3), D131 = getMean(D12,D13,2/3),
D042 = getMean(D03,D04,1/3), D041 = getMean(D03,D04,2/3),
D142 = getMean(D13,D14,1/3), D141 = getMean(D13,D14,2/3),
D052 = getMean(D04,B02,1/3), D051 = getMean(D04,B02,2/3),
D152 = getMean(D14,B12,1/3), D151 = getMean(D14,B12,2/3),
D062 = getMean(B01,B02,1/3), D061 = getMean(B01,B02,2/3),
D162 = getMean(B11,B12,1/3), D161 = getMean(B11,B12,2/3),
D201 = getMean(D23,D24,1/3), D202 = getMean(D23,D24,2/3),
D000 = getMean(B02,D02,1/2), D100 = getMean(B12,D12,1/2),
D251 = getMean(D14,B22,1/3), D252 = getMean(D14,B22,2/3),
D231 = getMean(D13,D22,1/3), D232 = getMean(D13,D22,2/3),
D221 = getMean(D11,D22,1/3), D222 = getMean(D11,D22,2/3);
if(labels == 1){
data.push([1,[D01],[],\'D01\',0]); data.push([1,[D02],[],\'D02\',0]); data.push([1,[D03],[],\'D03\',0]); data.push([1,[D04],[],\'D04\',0]);
data.push([1,[D11],[],\'D11\',0]); data.push([1,[D12],[],\'D12\',0]); data.push([1,[D13],[],\'D13\',0]); data.push([1,[D14],[],\'D14\',0]);
data.push([1,[D22],[],\'D22\',0]); data.push([1,[D23],[],\'D23\',0]); data.push([1,[D24],[],\'D24\',0]);
data.push([1,[D012],[],\'D012\',0]); data.push([1,[D011],[],\'D011\',0]);
data.push([1,[D112],[],\'D112\',0]); data.push([1,[D111],[],\'D111\',0]);
data.push([1,[D022],[],\'D022\',0]); data.push([1,[D021],[],\'D021\',0]);
data.push([1,[D122],[],\'D122\',0]); data.push([1,[D121],[],\'D121\',0]);
data.push([1,[D032],[],\'D032\',0]); data.push([1,[D031],[],\'D031\',0]);
data.push([1,[D132],[],\'D132\',0]); data.push([1,[D131],[],\'D131\',0]);
data.push([1,[D042],[],\'D042\',0]); data.push([1,[D041],[],\'D041\',0]);
data.push([1,[D142],[],\'D142\',0]); data.push([1,[D141],[],\'D141\',0]);
data.push([1,[D052],[],\'D052\',0]); data.push([1,[D051],[],\'D051\',0]);
data.push([1,[D152],[],\'D152\',0]); data.push([1,[D151],[],\'D151\',0]);
data.push([1,[D062],[],\'D062\',0]); data.push([1,[D061],[],\'D061\',0]);
data.push([1,[D162],[],\'D162\',0]); data.push([1,[D161],[],\'D161\',0]);
data.push([1,[D201],[],\'D201\',0]); data.push([1,[D202],[],\'D202\',0]);
data.push([1,[D000],[],\'D000\',0]); data.push([1,[D100],[],\'D100\',0]);
data.push([1,[D251],[],\'D251\',0]); data.push([1,[D252],[],\'D252\',0]);
data.push([1,[D231],[],\'D231\',0]); data.push([1,[D232],[],\'D232\',0]);
data.push([1,[D221],[],\'D221\',0]); data.push([1,[D222],[],\'D222\',0]);
}
if(floors == 1 || extern == 1){
data.push([3,[D01,D02,D03],[],\'\',2]);
data.push([3,[D03,D04,B02],[],\'\',2]);
data.push([3,[B02,B01,D01],[],\'\',2]);
data.push([3,[D01,D03,B02],[],\'\',2]);
data.push([3,[D11,D12,D13],[],\'\',2]);
data.push([3,[D13,D14,B12],[],\'\',2]);
data.push([3,[B12,B11,D11],[],\'\',2]);
data.push([3,[D11,D13,B12],[],\'\',2]);
}
if(extern == 1){
data.push([3,[D22,D23,D11],[],\'\',1]);
data.push([3,[D23,D24,B11],[],\'\',1]);
data.push([3,[B11,D11,D23],[],\'\',1]);
data.push([3,[D24,B22,B11],[],\'\',1]);
data.push([3,[D13,D23,D22],[],\'\',1]);
data.push([3,[D13,D24,D23],[],\'\',1]);
data.push([3,[D14,D24,D13],[],\'\',1]);
data.push([3,[D14,B22,D24],[],\'\',1]);
data.push([3,[B22,D14,B12],[],\'\',2]);
data.push([3,[D22,D12,D13],[],\'\',2]);
data.push([3,[D11,D12,D22],[],\'\',2]);
data.push([3,[D14,D04,B12],[],\'\',2]);
data.push([3,[B12,D04,B02],[],\'\',2]);
data.push([3,[D14,D13,D03],[],\'\',2]);
data.push([3,[D03,D04,D14],[],\'\',2]);
data.push([3,[D13,D12,D02],[],\'\',2]);
data.push([3,[D02,D03,D13],[],\'\',2]);
data.push([3,[D12,D11,D01],[],\'\',2]);
data.push([3,[D01,D02,D12],[],\'\',2]);
data.push([3,[D11,B11,B01],[],\'\',2]);
data.push([3,[B01,D01,D11],[],\'\',2]);
}
// A base
data.push([2,[A01,A02],[d,d],\'\',1]);
data.push([2,[A02,A03],[d,d],\'\',1]);
data.push([2,[A03,A04],[d,d],\'\',1]);
data.push([2,[A04,A05],[d,d],\'\',1]);
data.push([2,[A05,A06],[d,d],\'\',1]);
data.push([2,[A06,A01],[d,d],\'\',1]);
// A support
data.push([2,[A01,A11],[d,d],\'\',1]);
data.push([2,[A02,A12],[d,d],\'\',1]);
data.push([2,[A03,A13],[d,d],\'\',1]);
data.push([2,[A04,A14],[d,d],\'\',1]);
data.push([2,[A05,A15],[d,d],\'\',1]);
data.push([2,[A06,A16],[d,d],\'\',1]);
// A hight
data.push([2,[A11,A12],[d,d],\'\',1]);
data.push([2,[A12,A13],[d,d],\'\',1]);
data.push([2,[A13,A14],[d,d],\'\',1]);
data.push([2,[A14,A15],[d,d],\'\',1]);
data.push([2,[A15,A16],[d,d],\'\',1]);
data.push([2,[A16,A11],[d,d],\'\',1]);
// A roof
data.push([2,[A13,A23],[d,d],\'\',1]);
data.push([2,[A16,A26],[d,d],\'\',1]);
data.push([2,[A23,A26],[d,d],\'\',1]);
data.push([2,[A11,A26],[d,d],\'\',1]);
data.push([2,[A15,A26],[d,d],\'\',1]);
data.push([2,[A12,A23],[d,d],\'\',1]);
data.push([2,[A14,A23],[d,d],\'\',1]);
data.push([2,[A11,A25],[d,d],\'\',1]);
data.push([2,[A15,A25],[d,d],\'\',1]);
data.push([2,[A12,A24],[d,d],\'\',1]);
data.push([2,[A14,A24],[d,d],\'\',1]);
// A intern
data.push([2,[A201,A14],[d,d],\'\',1]);
data.push([2,[A201,A15],[d,d],\'\',1]);
data.push([2,[A201,A11],[d,d],\'\',1]);
data.push([2,[A201,A12],[d,d],\'\',1]);
data.push([2,[A011,A111],[d,d],\'\',1]);
data.push([2,[A012,A112],[d,d],\'\',1]);
data.push([2,[A021,A121],[d,d],\'\',1]);
data.push([2,[A022,A122],[d,d],\'\',1]);
data.push([2,[A031,A131],[d,d],\'\',1]);
data.push([2,[A032,A132],[d,d],\'\',1]);
data.push([2,[A041,A141],[d,d],\'\',1]);
data.push([2,[A042,A142],[d,d],\'\',1]);
data.push([2,[A051,A151],[d,d],\'\',1]);
data.push([2,[A052,A152],[d,d],\'\',1]);
data.push([2,[A061,A161],[d,d],\'\',1]);
data.push([2,[A062,A162],[d,d],\'\',1]);
data.push([2,[A03,A06],[d,d],\'\',2]);
data.push([2,[A04,A02],[d,d],\'\',2]);
data.push([2,[A012,A041],[d,d],\'\',2]);
data.push([2,[A011,A042],[d,d],\'\',2]);
data.push([2,[A05,A01],[d,d],\'\',2]);
data.push([2,[A021,A062],[d,d],\'\',2]);
data.push([2,[A022,A061],[d,d],\'\',2]);
data.push([2,[A031,A052],[d,d],\'\',2]);
data.push([2,[A032,A051],[d,d],\'\',2]);
data.push([2,[A151,A512],[d,d],\'\',1]);
data.push([2,[A152,A511],[d,d],\'\',1]);
data.push([2,[A131,A411],[d,d],\'\',1]);
data.push([2,[A132,A412],[d,d],\'\',1]);
data.push([2,[A121,A212],[d,d],\'\',1]);
data.push([2,[A122,A211],[d,d],\'\',1]);
data.push([2,[A161,A611],[d,d],\'\',1]);
data.push([2,[A162,A612],[d,d],\'\',1]);
data.push([2,[A411,A511],[d,d],\'\',1]);
data.push([2,[A412,A512],[d,d],\'\',1]);
data.push([2,[A211,A611],[d,d],\'\',1]);
data.push([2,[A212,A612],[d,d],\'\',1]);
// B base
data.push([2,[A02,B01],[d,d],\'\',1]);
data.push([2,[B01,B02],[d,d],\'\',1]);
data.push([2,[B02,B03],[d,d],\'\',1]);
data.push([2,[B03,B04],[d,d],\'\',1]);
data.push([2,[B04,A03],[d,d],\'\',1]);
// B support
data.push([2,[B01,B11],[d,d],\'\',1]);
data.push([2,[B02,B12],[d,d],\'\',1]);
data.push([2,[B03,B13],[d,d],\'\',1]);
data.push([2,[B04,B14],[d,d],\'\',1]);
// B hight
data.push([2,[A12,B11],[d,d],\'\',1]);
data.push([2,[B11,B12],[d,d],\'\',1]);
data.push([2,[B12,B13],[d,d],\'\',1]);
data.push([2,[B13,B14],[d,d],\'\',1]);
data.push([2,[B14,A13],[d,d],\'\',1]);
// B roof
data.push([2,[B12,B22],[d,d],\'\',1]);
data.push([2,[A23,B22],[d,d],\'\',1]);
data.push([2,[B11,B22],[d,d],\'\',1]);
data.push([2,[B13,B22],[d,d],\'\',1]);
data.push([2,[B11,B23],[d,d],\'\',1]);
data.push([2,[B13,B23],[d,d],\'\',1]);
data.push([2,[B14,B24],[d,d],\'\',1]);
data.push([2,[A12,B24],[d,d],\'\',1]);
data.push([2,[A23,B14],[d,d],\'\',1]);
// B structure
data.push([2,[B011,B111],[d,d],\'\',1]);
data.push([2,[B012,B112],[d,d],\'\',1]);
data.push([2,[B021,B121],[d,d],\'\',1]);
data.push([2,[B022,B122],[d,d],\'\',1]);
data.push([2,[B031,B131],[d,d],\'\',1]);
data.push([2,[B032,B132],[d,d],\'\',1]);
data.push([2,[B041,B141],[d,d],\'\',1]);
data.push([2,[B042,B142],[d,d],\'\',1]);
data.push([2,[B112,B202],[d,d],\'\',1]);
data.push([2,[B131,B202],[d,d],\'\',1]);
data.push([2,[B111,B201],[d,d],\'\',1]);
data.push([2,[B132,B201],[d,d],\'\',1]);
// B intern
data.push([2,[A03,B02],[d,d],\'\',1]);
data.push([2,[A13,B12],[d,d],\'\',1]);
data.push([2,[B01,B03],[d,d],\'\',2]);
data.push([2,[A02,B04],[d,d],\'\',2]);
data.push([2,[B012,B031],[d,d],\'\',2]);
data.push([2,[B011,B032],[d,d],\'\',2]);
data.push([2,[B11,B13],[d,d],\'\',2]);
data.push([2,[A12,B14],[d,d],\'\',2]);
data.push([2,[B112,B131],[d,d],\'\',2]);
data.push([2,[B111,B132],[d,d],\'\',2]);
data.push([2,[D061,A021],[d,d],\'\',2]);
data.push([2,[D062,A022],[d,d],\'\',2]);
data.push([2,[B021,B042],[d,d],\'\',2]);
data.push([2,[B022,B041],[d,d],\'\',2]);
data.push([2,[D161,A121],[d,d],\'\',2]);
data.push([2,[D162,A122],[d,d],\'\',2]);
data.push([2,[B121,B142],[d,d],\'\',2]);
data.push([2,[B122,B141],[d,d],\'\',2]);
data.push([2,[B000,B100],[d,d],\'\',1]);
data.push([2,[B141,B242],[d,d],\'\',1]);
data.push([2,[B142,B241],[d,d],\'\',1]);
data.push([2,[B121,B221],[d,d],\'\',1]);
data.push([2,[B122,B222],[d,d],\'\',1]);
data.push([2,[D162,B211],[d,d],\'\',1]);
data.push([2,[D161,B212],[d,d],\'\',1]);
data.push([2,[B221,B241],[d,d],\'\',1]);
data.push([2,[B222,B242],[d,d],\'\',1]);
data.push([2,[A211,B211],[d,d],\'\',1]);
data.push([2,[A212,B212],[d,d],\'\',1]);
// C base
data.push([2,[A01,C01],[d,d],\'\',1]);
data.push([2,[C01,C02],[d,d],\'\',1]);
data.push([2,[C02,C03],[d,d],\'\',1]);
data.push([2,[C03,C04],[d,d],\'\',1]);
data.push([2,[C04,A06],[d,d],\'\',1]);
// C support
data.push([2,[C01,C11],[d,d],\'\',1]);
data.push([2,[C02,C12],[d,d],\'\',1]);
data.push([2,[C03,C13],[d,d],\'\',1]);
data.push([2,[C04,C14],[d,d],\'\',1]);
// C hight
data.push([2,[A11,C11],[d,d],\'\',1]);
data.push([2,[C11,C12],[d,d],\'\',1]);
data.push([2,[C12,C13],[d,d],\'\',1]);
data.push([2,[C13,C14],[d,d],\'\',1]);
data.push([2,[C14,A16],[d,d],\'\',1]);
// C roof
data.push([2,[C12,C22],[d,d],\'\',1]);
data.push([2,[A26,C22],[d,d],\'\',1]);
data.push([2,[C11,C22],[d,d],\'\',1]);
data.push([2,[C13,C22],[d,d],\'\',1]);
data.push([2,[C11,C23],[d,d],\'\',1]);
data.push([2,[C13,C23],[d,d],\'\',1]);
data.push([2,[C14,C24],[d,d],\'\',1]);
data.push([2,[A11,C24],[d,d],\'\',1]);
data.push([2,[A26,C14],[d,d],\'\',1]);
data.push([2,[C121,C222],[d,d],\'\',1]);
data.push([2,[C122,C221],[d,d],\'\',1]);
data.push([2,[C131,C321],[d,d],\'\',1]);
data.push([2,[C132,C322],[d,d],\'\',1]);
data.push([2,[C151,C522],[d,d],\'\',1]);
data.push([2,[C152,C521],[d,d],\'\',1]);
data.push([2,[A612,C222],[d,d],\'\',1]);
data.push([2,[A611,C221],[d,d],\'\',1]);
data.push([2,[C321,C521],[d,d],\'\',1]);
data.push([2,[C322,C522],[d,d],\'\',1]);
// C structure
data.push([2,[C201,C111],[d,d],\'\',1]);
data.push([2,[C201,C142],[d,d],\'\',1]);
data.push([2,[C202,C112],[d,d],\'\',1]);
data.push([2,[C202,C141],[d,d],\'\',1]);
data.push([2,[C011,C111],[d,d],\'\',1]);
data.push([2,[C012,C112],[d,d],\'\',1]);
data.push([2,[C021,C121],[d,d],\'\',1]);
data.push([2,[C022,C122],[d,d],\'\',1]);
data.push([2,[C031,C131],[d,d],\'\',1]);
data.push([2,[C032,C132],[d,d],\'\',1]);
data.push([2,[C041,C141],[d,d],\'\',1]);
data.push([2,[C042,C142],[d,d],\'\',1]);
data.push([2,[C051,C151],[d,d],\'\',1]);
data.push([2,[C052,C152],[d,d],\'\',1]);
// C intern
data.push([2,[C02,A06],[d,d],\'\',1]);
data.push([2,[C12,A16],[d,d],\'\',1]);
data.push([2,[A01,C04],[d,d],\'\',2]);
data.push([2,[C011,C042],[d,d],\'\',2]);
data.push([2,[C012,C041],[d,d],\'\',2]);
data.push([2,[C03,C01],[d,d],\'\',2]);
data.push([2,[A11,C14],[d,d],\'\',2]);
data.push([2,[C111,C142],[d,d],\'\',2]);
data.push([2,[C112,C141],[d,d],\'\',2]);
data.push([2,[C13,C11],[d,d],\'\',2]);
data.push([2,[A062,C021],[d,d],\'\',2]);
data.push([2,[A061,C022],[d,d],\'\',2]);
data.push([2,[C052,C031],[d,d],\'\',2]);
data.push([2,[C051,C032],[d,d],\'\',2]);
data.push([2,[A162,C121],[d,d],\'\',2]);
data.push([2,[A161,C122],[d,d],\'\',2]);
data.push([2,[C152,C131],[d,d],\'\',2]);
data.push([2,[C151,C132],[d,d],\'\',2]);
data.push([2,[C000,C100],[d,d],\'\',1]);
// D base
data.push([2,[B01,D01],[d,d],\'\',1]);
data.push([2,[D01,D02],[d,d],\'\',1]);
data.push([2,[D02,D03],[d,d],\'\',1]);
data.push([2,[D03,D04],[d,d],\'\',1]);
data.push([2,[D04,B02],[d,d],\'\',1]);
// D support
data.push([2,[D01,D11],[d,d],\'\',1]);
data.push([2,[D02,D12],[d,d],\'\',1]);
data.push([2,[D03,D13],[d,d],\'\',1]);
data.push([2,[D04,D14],[d,d],\'\',1]);
// D hight
data.push([2,[B11,D11],[d,d],\'\',1]);
data.push([2,[D11,D12],[d,d],\'\',1]);
data.push([2,[D12,D13],[d,d],\'\',1]);
data.push([2,[D13,D14],[d,d],\'\',1]);
data.push([2,[D14,B12],[d,d],\'\',1]);
// D roof
data.push([2,[D12,D22],[d,d],\'\',1]);
data.push([2,[D11,D22],[d,d],\'\',1]);
data.push([2,[D13,D22],[d,d],\'\',1]);
data.push([2,[D11,D23],[d,d],\'\',1]);
data.push([2,[D13,D23],[d,d],\'\',1]);
data.push([2,[D14,B22],[d,d],\'\',1]);
data.push([2,[D14,D24],[d,d],\'\',1]);
data.push([2,[B11,D24],[d,d],\'\',1]);
data.push([2,[D22,B22],[d,d],\'\',1]);
// D structure
data.push([2,[D201,D111],[d,d],\'\',1]);
data.push([2,[D201,D142],[d,d],\'\',1]);
data.push([2,[D202,D112],[d,d],\'\',1]);
data.push([2,[D202,D141],[d,d],\'\',1]);
data.push([2,[D011,D111],[d,d],\'\',1]);
data.push([2,[D012,D112],[d,d],\'\',1]);
data.push([2,[D021,D121],[d,d],\'\',1]);
data.push([2,[D022,D122],[d,d],\'\',1]);
data.push([2,[D031,D131],[d,d],\'\',1]);
data.push([2,[D032,D132],[d,d],\'\',1]);
data.push([2,[D041,D141],[d,d],\'\',1]);
data.push([2,[D042,D142],[d,d],\'\',1]);
data.push([2,[D051,D151],[d,d],\'\',1]);
data.push([2,[D052,D152],[d,d],\'\',1]);
// D intern
data.push([2,[D02,B02],[d,d],\'\',1]);
data.push([2,[D12,B12],[d,d],\'\',1]);
data.push([2,[D01,D03],[d,d],\'\',2]);
data.push([2,[B01,D04],[d,d],\'\',2]);
data.push([2,[D012,D041],[d,d],\'\',2]);
data.push([2,[D011,D042],[d,d],\'\',2]);
data.push([2,[D11,D13],[d,d],\'\',2]);
data.push([2,[B11,D14],[d,d],\'\',2]);
data.push([2,[D112,D141],[d,d],\'\',2]);
data.push([2,[D111,D142],[d,d],\'\',2]);
data.push([2,[D021,D061],[d,d],\'\',2]);
data.push([2,[D022,D062],[d,d],\'\',2]);
data.push([2,[D031,D052],[d,d],\'\',2]);
data.push([2,[D032,D051],[d,d],\'\',2]);
data.push([2,[D121,D161],[d,d],\'\',2]);
data.push([2,[D122,D162],[d,d],\'\',2]);
data.push([2,[D131,D152],[d,d],\'\',2]);
data.push([2,[D132,D151],[d,d],\'\',2]);
data.push([2,[D061,D161],[d,d],\'\',2]);
data.push([2,[D062,D162],[d,d],\'\',2]);
data.push([2,[D000,D100],[d,d],\'\',1]);
data.push([2,[D151,D252],[d,d],\'\',1]);
data.push([2,[D152,D251],[d,d],\'\',1]);
data.push([2,[D131,D231],[d,d],\'\',1]);
data.push([2,[D132,D232],[d,d],\'\',1]);
data.push([2,[D121,D222],[d,d],\'\',1]);
data.push([2,[D122,D221],[d,d],\'\',1]);
data.push([2,[D231,D251],[d,d],\'\',1]);
data.push([2,[D232,D252],[d,d],\'\',1]);
data.push([2,[D221,B211],[d,d],\'\',1]);
data.push([2,[D222,B212],[d,d],\'\',1]);
return data;
}
function getMean(point_1, point_2, weight){
var mean = [];
for(var i = 0;i < 3;i++){
mean.push(weight*point_1[i]+(1-weight)*point_2[i]);
}
return mean;
}
function setCoord(point,n,value){
point[n] = value;
return point;
}
Luz indirecta
Storyboard
Además de la luz incidente directa, una parte significativa proviene de la luz difusa que se genera tanto en la atmósfera como en la superficie de la Tierra. La luz difusa generada en la atmósfera resulta de la dispersión y la refracción de la luz solar. Por otro lado, la luz difusa generada en la superficie terrestre proviene principalmente de la luz directa que se refleja en el suelo. En este último caso, parte de la intensidad se pierde debido a la absorción, y es el albedo del suelo el que determina la cantidad reflejada. Tanto en la atmósfera como en la superficie terrestre, la luz generada es isotrópica, lo que significa que, en una primera aproximación, no tiene una dirección privilegiada.
>Modelo
ID:(89, 0)
Radiación indirecta
Imagen
>Top
Un objeto recibe radiación solar de tres fuentes principales:
• Radiación solar directa del sol.
• Radiación dispersada y refractada en la atmósfera.
• Radiación reflejada por objetos y la superficie del planeta.
Estas fuentes de radiación solar están fuertemente influenciadas por la dirección:
• La radiación solar directa solo se produce en la dirección en la que se encuentra el sol en ese momento. Esto significa que si el sol no es visible desde un punto determinado, no se recibirá radiación solar directa en ese lugar.
• Por otro lado, la radiación dispersada y refractada en la atmósfera, así como la radiación reflejada por objetos y la superficie, son dispersas, lo que significa que no tienen una dirección privilegiada y pueden ser recibidas desde diversas direcciones, independientemente de la posición del sol.
ID:(624, 0)
Radiación indirecta capturada
Imagen
>Top
Dado que la luz difusa no tiene una dirección preferencial, simplemente estimamos su intensidad y la consideramos como si llegara de manera perpendicular a la superficie, por lo que no es necesario ponderarla con el coseno de un ángulo. La suma total de todas las contribuciones se calcula de la siguiente manera:
La única diferencia entre las contribuciones es que las que provienen de la atmósfera son integrales, mientras que las que provienen de reflexiones solo contienen la luz que no fue absorbida, lo que corresponde al albedo.
Los valores típicos de albedo son los siguientes:
Superficie | Albedo [-] |
Nieve | 0.50 - 0.80 |
Desierto | 0.30 - 0.40 |
Vegetación | 0.10 - 0.25 |
Mar y lagos | 0.06 |
Este proceso se puede modelar de la siguiente manera: consideramos que la fracción del campo visual que proviene del cielo tiene un albedo igual a la unidad, mientras que las otras áreas tienen sus contribuciones proporcionales al campo visual que ocupan. Esto puede ser importante en situaciones como las siguientes:
• En las proximidades de una montaña, donde el campo visual del cielo es menor y, por lo tanto, hay una reducción significativa en la intensidad.
• En zonas costeras, donde el campo visual incluye el mar, lo que reduce la intensidad debido al bajo albedo del agua.
• En zonas secas o con nieve, donde hay una mayor luz difusa debido al alto albedo del suelo.
ID:(625, 0)
Problema de múltiples difusiones
Imagen
>Top
La principal problemática de la luz difusa es que se genera a través de múltiples reflexiones y difracciones en objetos en la superficie de la Tierra y la atmósfera. No solo es compleja debido a la geometría, sino también porque depende del estado de la atmósfera y del grado de difusión que ocurre.
Para abordar este problema, se asume que la radiación es isotrópica, lo que significa que no existe una dirección privilegiada. Bajo esta premisa, se comienza por modelar, incluyendo la cobertura y los albedos en proporción al campo visual que ocupan. Sobre esta base, se calcula un grado de transparencia de la atmósfera, con el cual se emplean modelos para calcular un factor de difusión. Finalmente, se utiliza este factor para modular la radiación final que llega de forma isotrópica a todas las superficies.
ID:(621, 0)
Intensidad reflejada
Ecuación
>Top, >Modelo
En primer lugar, podemos modelar la generación de luz difusa ($I_e$, representada por una pieza LEGO® de color amarillo claro), asumiendo que la intensidad de la luz solar ($I_s$, representada por una pieza LEGO® de color naranja brillante) se modula mediante el factor de cobertura ($\gamma_v$, representado por una pieza LEGO® de color gris claro) y el albedo ($a_v$, representado por una pieza LEGO® de color celeste).
Esta relación se puede expresar matemáticamente teniendo en cuenta que el factor de cobertura permite que pase un factor de $1-\gamma_v$ y la reflexión en la superficie se da por el albedo $a_v$:
Para simplificar, se asume que la atmósfera actúa como si reflejara la totalidad, por lo que se puede modelar con un valor de albedo igual a uno.
ID:(620, 0)
Intensidad difusa
Ecuación
>Top, >Modelo
Cuando la luz se refleja, se dispersa en todas las direcciones, lo cual se modela con un factor de difusión ($k_d$, representado por una pieza LEGO® de color verde oscuro). La intensidad difusa ($I_e$, representada por una pieza LEGO® de color amarillo claro) se multiplica por este factor para dar lugar a la intensidad dispersa ($I_i$, representada por una pieza LEGOv de color nougat claro):
Esto se puede describir matemáticamente mediante la siguiente expresión:
ID:(619, 0)
Factor de claridad
Ecuación
>Top, >Modelo
El factor de dispersión ($k_d$, representado por una pieza LEGO® de color verde oscuro) se calcula en función del factor de claridad atmosférica ($k_t$, representado por una pieza LEGO® de color verde claro). Este último depende de la cobertura ($\gamma_v$, representada por una pieza LEGO® de color gris claro) y el albedo ($a_v$, representado por una pieza LEGO® de color celeste).
La relación se ha modelado en función de mediciones, y existen diferentes niveles de sofisticación. Uno de particular interés para situaciones en las que hay variaciones en la humedad ($RH$, representada por una pieza LEGO® de color celeste) en el ambiente, la temperatura ($T$, representada por una pieza LEGO® de color lavanda) y el ángulo del sol ($\theta$, representado por una pieza LEGO® de color violeta) incluye estos valores en el cálculo:
La expresión matemática para el cálculo del factor de claridad atmosférica es la siguiente:
ID:(683, 0)
Relación entre fracción de difusión e indice de transparencia
Imagen
>Top
La radiación difusa es generada por la interacción de la luz incidente con la atmósfera y la superficie. Su cálculo exacto es altamente complejo, por lo que se utilizan modelos semiempíricos, es decir, se basan en modelos matemáticos a partir de mediciones realizadas en diferentes lugares y bajo diversas condiciones.
Estos modelos establecen relaciones entre el factor de difusión $k_d$ y el índice de transparencia de la atmósfera $k_t$, que toman la siguiente forma:
Scarpa, Federico & Marchitto, A. & Tagliafico, Luca A.. (2017). Splitting the solar radiation in direct and diffuse components; Insights and constrains on the clearness-diffuse fraction representation. International Journal of Heat and Technology. 35. 325-329. 10.18280/ijht.350213.
Algunos modelos que describen la fracción de difusión en función del índice de claridad incluyen el modelo:
• simple de Lam y Li (1996, desarrollado en Hong Kong),
• de Erbs (1982, basado en datos de 5 estaciones en los Estados Unidos) y
• de Reindl (1990, con datos de estaciones en los Estados Unidos y Europa), que además considera el efecto de la temperatura y la humedad.
ID:(618, 0)
Modelo de Lam y Li (LL)
Ecuación
>Top, >Modelo
En el caso del modelo de Lam y Li, se llevaron a cabo mediciones en Hong Kong y se publicaron los resultados en 1996 en el artículo titulado Lam J.C., Li D.H.W. Correlation between global solar radiation and its direct and diffuse components. Building and Environment. 1996;31(6):527535.. La relación que este modelo propone se resume mediante la fracción de difusión $k_d$ en función del índice de claridad $k_t$:
ID:(622, 0)
Modelo de Erbs (ER)
Ecuación
>Top, >Modelo
En el caso del modelo de Erbs, se llevaron a cabo mediciones en 5 estaciones en los Estados Unidos y se publicaron los resultados en 1982 en el artículo titulado Erbs D.G., Klein S.A., Duffie J.A. Estimation of the diffuse radiation fraction for hourly, daily and monthly-average global radiation. Solar Energy. 1982;28(4):293302.. La relación que este modelo propone se resume mediante la fracción de difusión $k_d$ en función del índice de claridad $k_t$:
ID:(617, 0)
Modelo de Reindl (RE)
Ecuación
>Top, >Modelo
En el caso del modelo de Reindl, se llevaron a cabo mediciones en los Estados Unidos y Europa, y se tuvieron en cuenta los efectos de la altura del sol, la temperatura ambiente y la humedad relativa. Los resultados de estas mediciones se publicaron en 1990 en el artículo titulado Reindl D.T., Beckman W.A., Duffie J.A. Diffuse fraction corrections. Solar Energy. 1990;45(1):17.. La relación que este modelo propone se resume mediante la fracción de difusión $k_d$ en función del índice de claridad $k_t$, la altura del sol $\alpha$, la temperatura ambiental $T_a$, y la humedad relativa $RH$:
ID:(623, 0)
Efecto de una ventana a luz difusa
Ecuación
>Top, >Modelo
En el caso de las ventanas, el vidrio permite que la mayor parte de la luz y la energía transportada penetre en el interior de la casa. Para luz difusa no existe una dirección privilegiada, por lo que la intensidad incidente ($I_i$, representada por la pieza LEGO® de color nougat claro) es igual a la intensidad que pasa por el vidrio ($I_g$, representada por la pieza LEGO® de color azul marino):
La expresión matemática es simplemente:
ID:(684, 0)
Radiación difusa capturada por una superficie
Ecuación
>Top, >Modelo
En el caso de una pared, la luz difusa ($I_i$, representada por una pieza LEGO® de color nougat claro), es absorbida sin que prime una dirección sobre otra. La fracción absorbida se puede estimar en función del coeficiente de absorción del material y del color de la pared ($a_b$, representado por un LEGO® de color agua). De esta manera, la intensidad solar que contribuye con energía a la superficie ($I_w$, representado por un LEGO® de color café) se asocia como se muestra en el diagrama:
La expresión matemática es:
ID:(685, 0)
Instructivo para la radiación difusa
Imagen
>Top
Si consideramos todos los procesos relacionados con la irradiación difusa en la casa, podemos obtener un manual de la siguiente manera:
En este caso, se realizan los siguientes cálculos:
1. Intensidad difusa
2. Factor de claridad atmosférica
3. Factor de difusión
4. Intensidad dispersa
5. Radiación que entra a través de las ventanas.
6. Radiación que aporta energía a través de las paredes y techos.
ID:(712, 0)