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;
}
Indirektes Licht
Storyboard
Neben dem direkten einfallenden Licht stammt ein bedeutender Teil des Lichts von diffuser Strahlung, die sowohl in der Atmosphäre als auch auf der Erdoberfläche erzeugt wird. Die in der Atmosphäre erzeugte diffuse Strahlung resultiert aus Streuung und Brechung des Sonnenlichts. Die diffuse Strahlung, die an der Erdoberfläche erzeugt wird, stammt hauptsächlich von direktem Licht, das von der Oberfläche reflektiert wird. In diesem Fall geht ein Teil der Intensität aufgrund von Absorption verloren, und der Albedo des Bodens bestimmt die reflektierte Menge. In beiden Fällen ist das erzeugte Licht isotrop, was bedeutet, dass es in einer ersten Näherung keine bevorzugte Richtung hat.
>Modell
ID:(89, 0)
Indirekte Strahlung
Bild
>Top
Ein Objekt empfängt Sonnenstrahlung aus drei Hauptquellen:
• Direktes Sonnenlicht von der Sonne.
• Strahlung, die in der Atmosphäre gestreut und gebrochen wird.
• Reflexion von Licht durch Objekte und die Erdoberfläche.
Diese Quellen der Sonnenstrahlung sind stark richtungsabhängig:
• Direktes Sonnenlicht tritt nur in die Richtung auf, in der sich die Sonne gerade befindet. Das bedeutet, dass, wenn die Sonne von einem bestimmten Punkt aus nicht sichtbar ist, an diesem Ort keine direkte Sonnenstrahlung empfangen wird.
• Im Gegensatz dazu ist die in der Atmosphäre gestreute und gebrochene Strahlung sowie die von Objekten und der Oberfläche reflektierte Strahlung diffus. Das bedeutet, sie hat keine bevorzugte Richtung und kann aus verschiedenen Richtungen empfangen werden, unabhängig von der Position der Sonne.
ID:(624, 0)
Indirekt eingefangene Strahlung
Bild
>Top
Da diffuses Licht keine bevorzugte Richtung hat, schätzen wir einfach seine Intensität und betrachten sie so, als ob sie senkrecht zur Oberfläche einträfe. Daher ist es nicht erforderlich, sie mit dem Kosinus eines Winkels zu gewichten. Die Gesamtbeiträge ergeben sich aus der Summe aller Beiträge:
Der einzige Unterschied zwischen diesen Beiträgen besteht darin, dass diejenigen, die aus der Atmosphäre stammen, Integrale sind, während diejenigen, die aus Reflexionen stammen, nur das Licht enthalten, das nicht absorbiert wurde, was dem Albedo entspricht.
Typische Albedowerte sind wie folgt:
Oberfläche | Albedo [-] |
Schnee | 0,50 - 0,80 |
Wüste | 0,30 - 0,40 |
Vegetation | 0,10 - 0,25 |
Meer und Seen | 0,06 |
Dieser Prozess kann so modelliert werden, dass der Anteil des Sichtfelds, der vom Himmel kommt, ein Albedo von Eins hat, während andere Bereiche proportional zum eingenommenen Sichtfeld beitragen. Dies kann in Situationen wichtig sein, in denen:
• In der Nähe eines Hügels das Sichtfeld des Himmels reduziert ist, was zu einer erheblichen Reduzierung der Intensität führt.
• Küstengebiete, in denen das Sichtfeld das Meer einschließt, aufgrund des niedrigen Albedos des Wassers eine verringerte Intensität erfahren.
• Trockene oder verschneite Gebiete aufgrund des hohen Albedos des Bodens eine höhere diffuse Lichtintensität aufweisen.
ID:(625, 0)
Problem mit mehreren Übertragungen
Bild
>Top
Die Hauptproblematik von diffuser Lichtstrahlung liegt darin, dass sie durch multiple Reflexionen und Beugungen in Objekten auf der Erdoberfläche und in der Atmosphäre erzeugt wird. Sie ist nicht nur aufgrund der Geometrie komplex, sondern hängt auch vom Zustand der Atmosphäre und dem Grad der Diffusion ab.
Um dieses Problem zu lösen, wird angenommen, dass die Strahlung isotrop ist, was bedeutet, dass es keine bevorzugte Richtung gibt. Unter dieser Annahme beginnt die Modellierung, indem die Abdeckung und die Albedos im Verhältnis zum von ihnen eingenommenen Sichtfeld einbezogen werden. Auf dieser Grundlage wird die Transparenz der Atmosphäre berechnet, und Modelle werden verwendet, um einen Diffusionsfaktor zu berechnen. Schließlich wird dieser Faktor verwendet, um die endgültige Strahlung zu modulieren, die isotrop an allen Oberflächen ankommt.
ID:(621, 0)
Reflektierte Intensität
Gleichung
>Top, >Modell
Zunächst können wir die Erzeugung von diffuser Beleuchtung modellieren ($I_e$, dargestellt durch ein LEGO®-Stück in hellem Gelb), unter der Annahme, dass die Intensität des Sonnenlichts ($I_s$, dargestellt durch ein LEGO®-Stück in leuchtendem Orange) durch die Abdeckung ($\gamma_v$, dargestellt durch ein LEGO®-Stück in hellem Grau) und das Albedo ($a_v$, dargestellt durch ein LEGO®-Stück in hellem Blau) moduliert wird.
Diese Beziehung kann mathematisch ausgedrückt werden, wobei berücksichtigt wird, dass der Abdeckungsfaktor einen Faktor von $1-\gamma_v$ durchlässt und die Reflexion an der Oberfläche durch das Albedo $a_v$ gegeben ist:
Zur Vereinfachung wird angenommen, dass die Atmosphäre so wirkt, als ob sie die gesamte Strahlung reflektiert, weshalb sie mit einem Albedo-Wert von eins modelliert werden kann.
ID:(620, 0)
Diffuse Intensität
Gleichung
>Top, >Modell
Wenn Licht reflektiert wird, verteilt es sich in alle Richtungen, was mit einem Diffusionsfaktor ($k_d$, dargestellt durch ein LEGO®-Stück in dunkelgrün) modelliert wird. Die diffuse Intensität ($I_e$, dargestellt durch ein LEGO®-Stück in hellem Gelb) wird mit diesem Faktor multipliziert, um die gestreute Intensität ($I_i$, dargestellt durch ein LEGO®-Stück in hellem Nougat) zu erzeugen:
Dies kann mathematisch mit folgendem Ausdruck beschrieben werden:
ID:(619, 0)
Klarheitsfaktor
Gleichung
>Top, >Modell
Der Streufaktor ($k_d$, dargestellt durch ein LEGO®-Stück in dunkelgrün) wird auf der Grundlage des atmosphärischen Klarheitsfaktors ($k_t$, dargestellt durch ein LEGO®-Stück in hellgrün) berechnet. Letzterer hängt von der Abdeckung ($\gamma_v$, dargestellt durch ein LEGO®-Stück in hellgrau) und dem Albedo ($a_v$, dargestellt durch ein LEGO®-Stück in hellblau) ab.
Die Beziehung wurde basierend auf Messungen modelliert, und es gibt unterschiedliche Niveaus der Raffinesse. Besonders interessant ist eine Situation, in der es Variationen in der Luftfeuchtigkeit ($RH$, dargestellt durch ein LEGO®-Stück in hellblau) in der Umgebung, der Temperatur ($T$, dargestellt durch ein LEGO®-Stück in lavendel) und dem Sonnenwinkel ($\theta$, dargestellt durch ein LEGO®-Stück in violett) gibt, da diese Werte in die Berechnung einbezogen werden:
Der mathematische Ausdruck zur Berechnung des atmosphärischen Klarheitsfaktors lautet wie folgt:
ID:(683, 0)
Zusammenhang zwischen Diffusionsanteil und Transparenzindex
Bild
>Top
Die diffuse Strahlung entsteht durch die Wechselwirkung des einfallenden Lichts mit der Atmosphäre und der Oberfläche. Ihre genaue Berechnung ist äußerst komplex, daher werden halbempirische Modelle verwendet, bei denen mathematische Modelle auf Basis von Messungen an verschiedenen Orten und unter unterschiedlichen Bedingungen erstellt werden.
Diese Modelle stellen Beziehungen zwischen dem Diffusionsfaktor $k_d$ und dem Transparenzindex der Atmosphäre $k_t$ her, die folgende Form annehmen:
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.
Einige Modelle, die den Diffusionsanteil in Abhängigkeit vom Klarheitsindex beschreiben, umfassen
• das einfache Modell von Lam und Li (1996 - entwickelt in Hongkong),
• das Erbs-Modell (1982 - basierend auf Daten von 5 Stationen in den USA) und
• das Reindl-Modell (1990 - unter Berücksichtigung von Daten von Stationen in den USA und Europa), das auch die Auswirkungen von Temperatur und Luftfeuchtigkeit berücksichtigt.
ID:(618, 0)
Modell von Lam und Li (LL).
Gleichung
>Top, >Modell
Im Fall des Lam und Li-Modells wurden Messungen in Hongkong durchgeführt und die Ergebnisse wurden 1996 in dem Artikel mit dem Titel "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. veröffentlicht. Die Beziehung, die dieses Modell vorschlägt, wird durch den Diffusionsstrahlungsanteil $k_d$ in Abhängigkeit vom Klarheitsindex $k_t$ zusammengefasst:
ID:(622, 0)
Erbs-Modell (ER)
Gleichung
>Top, >Modell
Im Fall des Erbs-Modells wurden Messungen an 5 Stationen in den Vereinigten Staaten durchgeführt und die Ergebnisse wurden 1982 in dem Artikel mit dem Titel 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.. veröffentlicht. Die Beziehung, die dieses Modell vorschlägt, wird durch den Diffusionsstrahlungsanteil $k_d$ in Abhängigkeit vom Klarheitsindex $k_t$ zusammengefasst:
ID:(617, 0)
Reindl-Modell (RE)
Gleichung
>Top, >Modell
Im Fall des Reindl-Modells wurden Messungen in den USA und Europa durchgeführt, wobei die Auswirkungen der Sonnenhöhe, der Umgebungstemperatur und der relativen Luftfeuchtigkeit berücksichtigt wurden. Die Ergebnisse dieser Messungen wurden 1990 in dem Artikel mit dem Titel Reindl D.T., Beckman W.A., Duffie J.A. Diffuse fraction corrections. Solar Energy. 1990;45(1):17. veröffentlicht. Die Beziehung, die dieses Modell vorschlägt, wird durch den Diffusionsstrahlungsanteil $k_d$ in Abhängigkeit vom Klarheitsindex $k_t$, der Sonnenhöhe $\alpha$, der Umgebungstemperatur $T_a$ und der relativen Luftfeuchtigkeit $RH" zusammengefasst:
ID:(623, 0)
Wirkung eines Fensters bei diffusem Licht
Gleichung
>Top, >Modell
Im Fall von Fenstern lässt das Glas den Großteil des Lichts und der Energie in das Innere des Hauses eindringen. Für diffuses Licht gibt es keine bevorzugte Richtung, daher entspricht die einfallende Intensität ($I_i$, dargestellt durch das LEGO®-Stück in hellem Nougat) der Intensität, die durch das Glas geht ($I_g$, dargestellt durch das LEGO®-Stück in dunkelblau):
Der mathematische Ausdruck ist einfach:
ID:(684, 0)
Von einer Oberfläche eingefangene diffuse Strahlung
Gleichung
>Top, >Modell
Im Fall einer Wand wird diffuses Licht ($I_i$, dargestellt durch ein LEGO®-Stück in heller Nougatfarbe) absorbiert, ohne dass eine Richtung bevorzugt wird. Der absorbierte Anteil kann anhand des Absorptionskoeffizienten des Materials und der Farbe der Wand ($a_b$, dargestellt durch ein LEGO®-Stück in Wasserfarbe) geschätzt werden. Auf diese Weise wird die solare Intensität, die Energie zur Oberfläche beiträgt ($I_w$, dargestellt durch ein LEGO®-Stück in Kaffeebraun), wie im Diagramm gezeigt, zugeordnet:
Der mathematische Ausdruck lautet:
ID:(685, 0)
Anleitung für diffuse Strahlung
Bild
>Top
Wenn wir alle Prozesse im Zusammenhang mit der diffusen Strahlung im Haus betrachten, erhalten wir eine Anleitung in folgender Form:
In diesem Fall werden die folgenden Berechnungen identifiziert:
1. Diffuse Intensität
2. Faktor der atmosphärischen Klarheit
3. Diffusionsfaktor
4. Gestreute Intensität
5. Strahlung, die durch Fenster eindringt.
6. Strahlung, die Energie durch Wände und Decken liefert.
ID:(712, 0)