var is_estimate = false; var estimate; var estimateObject = []; var estimateFrame; var infoNumber; var textList = []; var textFont = "20px Arial"; var textColor = "black"; var mustColor = "yellow"; var noneColor = "white"; var textBaseLine = "alphabetic"; var paddingX = 2; var paddingY = 2; var height = 25 var tableY = 100; var numOfRow = 40; //0: No 1:Name 2: Note 3: the number 4:Check 5:Check 6:Type var data1 = [["番号", "品名" ,"備考" ,"量数" ,"チェック", "チェック", "NONE"], ["1", "丸太下土台" ,"①~" ,"本" ,"", "", "MUST"], ["2", "丸太上土台" ,"①~" ,"本" ,"", "", "MUST"], ["3", "95mm桧土台" ,"①~" ,"本" ,"", "", "NONE"], ["4", "柱" ,"①~" ,"本" ,"", "", "MUST"], ["5", "桁、梁" ,"①~" ,"本" ,"", "", "NONE"], ["6", "小屋束" ,"①~" ,"本" ,"", "", "NONE"], ["7", "壁材" ,"1725mm" ,"本" ,"", "", "MUST"], ["8", "壁材" ,"815mm" ,"本" ,"", "", "MUST"], ["9", "壁材" ,"360mm" ,"本" ,"", "", "MUST"], ["10", "壁調整材" ,"1725mm" ,"セット" ,"", "", "MUST"], ["11", "壁調整材" ,"815mm" ,"セット" ,"", "", "MUST"], ["12", "壁調整材" ,"360mm" ,"セット" ,"", "", "MUST"], ["13", "フロアパネル" ,"" ,"枚" ,"", "", "MUST"], ["14", "巾木(幅広)" ,"1725mm" ,"本" ,"", "", "WANT"], ["15", "巾木(幅広)" ,"815mm" ,"本" ,"", "", "WANT"], ["16", "巾木(幅広)" ,"360mm" ,"本" ,"", "", "WANT"], ["17", "巾木(幅狹)" ,"約2000mm" ,"本" ,"", "", "WANT"], ["18", "小屋パネル" ,"三角形" ,"枚" ,"", "", "WANT"], ["19", "小屋パネル" ,"台形 片流れ:四角" ,"枚" ,"", "", "WANT"], ["20", "桁三角材" ,"" ,"本" ,"", "", "NONE"], ["21", "野地板パネル" ,"" ,"枚" ,"", "", "MUST"], ["22", "破風板" ,"" ,"本" ,"", "", "WANT"], ["23", "軒先水切り板" ,"" ,"m" ,"", "", "WANT"], ["24", "棟鉄板下地材" ,"" ,"m" ,"", "", "WANT"], ["25", "開きドア枠セット" ,"" ,"セット" ,"", "", "WANT"], ["26", "引き違い戸枠セット" ,"大" ,"セット" ,"", "", "WANT"], ["27", "窓枠セット" ,"中" ,"セット" ,"", "", "WANT"], ["28", "窓枠セット" ,"小" ,"セット" ,"", "", "WANT"], ["29", "踏み台" ,"" ,"台" ,"", "", "MUST"], ["30", "手摺柱" ,"" ,"本" ,"", "", "MUST"], ["31", "手摺笠木" ,"" ,"本" ,"", "", "MUST"], ["32", "手摺セット" ,"" ,"セット" ,"", "", "MUST"], ["33", "ウッドデッキパネル" ,"" ,"セット" ,"", "", "MUST"], ["34", "ウッドデッキ板" ,"" ,"本" ,"", "", "MUST"], ["35", "鉄板" ,"軒、ケラバ、棟" ,"セット" ,"", "", "WANT"], ["36", "鉄板" ,"ロフト仕様など" ,"セット" ,"", "", "WANT"], ["37", "ルーフィング" ,"" ,"本" ,"", "", "WANT"], ["38", "シングルベスト" ,"" ,"束" ,"", "", "WANT"], ["39", "開きドア" ,"金具付き" ,"本" ,"", "", "MUST"], ["40", "引き違い戸" ,"大" ,"セット" ,"", "", "MUST"]]; //0: No 1:Name 2: Note 3: the number 4:Check 5:Check 6:Type var data2 = [["番号", "品名" ,"備考" ,"量数" ,"チェック", "チェック", "MUST"], ["41", "窓" ,"中" ,"セット" ,"", "", "MUST"], ["42", "窓" ,"小" ,"セット" ,"", "", "MUST"], ["43", "網戸" ,"大" ,"本" ,"", "", "MUST"], ["44", "網戸" ,"中" ,"本" ,"", "", "MUST"], ["45", "網戸" ,"小" ,"本" ,"", "", "MUST"], ["46", "ドア戸当金具" ,"" ,"個" ,"", "", "OPTION"], ["47", "引き違い戸カギ" ,"" ,"個" ,"", "", "OPTION"], ["48", "窓カギ" ,"" ,"個" ,"", "", "OPTION"], ["49", "窓レール" ,"大" ,"本" ,"", "", "OPTION"], ["50", "窓レール" ,"小" ,"本" ,"", "", "OPTION"], ["51", "網戸レール" ,"大" ,"本" ,"", "", "OPTION"], ["52", "網戸レール" ,"小" ,"本" ,"", "", "OPTION"], ["53", "ボルトナットセット" ,"300mm" ,"セット" ,"", "", "OPTION"], ["54", "ボルトナットセット" ,"255mm" ,"セット" ,"", "", "OPTION"], ["55", "ケミカルアンカーセット" ,"" ,"セット" ,"", "", "NONE"], ["56", "ビス、釘セット" ,"" ,"一式" ,"", "", "OPTION"], ["57", "ターカー用針" ,"" ,"" ,"", "", "OPTION"], ["58", "コーキング" ,"" ,"本" ,"", "", "OPTION"], ["59", "シングルベストセメント" ,"" ,"本" ,"", "", "OPTION"], ["60", "ソフトマット" ,"1m" ,"本" ,"", "", "OPTION"], ["61", "あて木" ,"" ,"" ,"", "", "NONE"], ["62", "塗料" ,"外装( )" ,"L" ,"", "", "NONE"], ["63", "塗料" ,"内装(白木)" ,"L" ,"", "", "NONE"], ["64", "塗料" ,"補修用" ,"式" ,"", "", "NONE"], ["65", "壁材取付用補助棒" ,"" ,"式" ,"", "", "NONE"], ["66", "高さ調整板" ,"厚み30mm" ,"枚" ,"", "", "NONE"], ["67", "高さ調整板" ,"厚み10mm" ,"枚" ,"", "", "NONE"], ["68", "束石" ,"50x250x250" ,"個" ,"", "", "NONE"], ["69", "束石" ,"特注" ,"個" ,"", "", "NONE"], ["70", "砂利" ,"" ,"袋" ,"", "", "NONE"], ["71", "砂" ,"" ,"袋" ,"", "", "NONE"], ["72", "セメント" ,"" ,"袋" ,"", "", "NONE"], ["73", "打ち込み杭" ,"m" ,"本" ,"", "", "NONE"], ["74", "" ,"" ,"" ,"", "", "NONE"], ["75", "" ,"" ,"" ,"", "", "NONE"], ["76", "" ,"" ,"" ,"", "", "NONE"], ["77", "" ,"" ,"" ,"", "", "NONE"], ["78", "" ,"" ,"" ,"", "", "NONE"], ["79", "" ,"" ,"" ,"", "", "NONE"], ["80", "" ,"" ,"" ,"", "", "NONE"]]; var estimate = function () { saveDataToCsv(); //updateEsitamateData(); //viewEstimateForm(); } var updateEsitamateData = function () { //フロアパネル 455mm x 455mmごとに 9枚 data1[13][3] = 9 * ((floor.width) * (floor.height)) / (455 * 455) + "枚"; //柱 柱の数 data1[4][3] = pillarIndexStage.length + " 枚"; //柱梁 柱の間の壁の数 data1[5][3] = pillarIndexStage.length + " 枚"; // TBD //窓枠セット 窓の数 data1[28][3] = countNumOfObjectTypeInWall("normalwindow") + " セット"; data1[29][3] = countNumOfObjectTypeInWall("smallwindow") + " セット"; //ウッドデッキパネル ウッドデッキ 455mm x 455mm ごとに 1個 data1[33][3] = ((floor.width) * (floor.height)) / (455 * 455) + "セット"; //開きドア 開きドアの数 data1[39][3] = countNumOfObjectTypeInWall("1wingDoor") + " 本"; //引き違い戸 引き違い戸の数(現状はないが、オブジェクトに追加) data1[39][3] = countNumOfObjectTypeInWall("stepDoor") + " 本"; //窓 窓の数 data2[1][3] = countNumOfObjectTypeInWall("normalwindow") + " セット"; data2[2][3] = countNumOfObjectTypeInWall("smallwindow") + " セット"; //網戸 窓の数 data2[4][3] = countNumOfObjectTypeInWall("normalwindow") + " セット"; data2[5][3] = countNumOfObjectTypeInWall("smallwindow") + " セット"; //ドア戸当金具 ドアの数 x 2 data2[6][3] = 2 * (countNumOfObjectTypeInWall("normalwindow") + countNumOfObjectTypeInWall("smallwindow")) + " 個"; } var countNumOfObjectTypeInWall = function (objName) { var cnt = 0; for (var i = 0; i < arrObjectInWall.length; i++) { var object = arrObjectInWall[i]; if (object.oldObject[1] == objName) { cnt++; } } return cnt } // animation loop / game loop var view2dFromEstimate = function () { document.getElementById('canvas').style.display = 'block'; document.getElementById('view2d').style.display = 'none'; document.getElementById('canvas3d').style.display = 'none'; document.getElementById('inside').style.display = 'none'; document.getElementById('outside').style.display = 'none'; document.getElementById('no-roof').style.display = 'none'; document.getElementById('es-container').style.display = 'none'; }; var viewEstimateForm = function () { document.getElementById('canvas').style.display = 'none'; document.getElementById('view2d').style.display = 'none'; document.getElementById('inside').style.display = 'none'; document.getElementById('outside').style.display = 'none'; document.getElementById('no-roof').style.display = 'none'; document.getElementById('canvas3d').style.display = 'none'; document.getElementById('es-container').style.display = 'block'; var table1 = document.getElementById("estimate"); // Clear table data //$("#estimate tr").remove(); var headString ='