Ejemplo n.º 1
0
    public bool AutoCodeCompile(List <string> original_code, ref string errorString)
    {
        int compile_result = -1;

        SourceCodeFarmat(original_code);
        FANUC_OI_M AutoFanuc_OI_M = new FANUC_OI_M();

        CurrentModal.SetCooZero(CooSystem_Script.AbsoluteZero);
        AutoFanuc_OI_M.ModalClone(CurrentModal);
        compile_result = AutoFanuc_OI_M.CompileEntrance(SourceCode, CooSystem_Script.absolute_pos, motion_info_list, Auto_Script.CurrentVirtualPos(), original_motion_info_list, tool_motion_list);
        if (compile_result == (int)ResultType.Success)
        {
            errorString = "";

            CreatePathLine(ref PathLineDraw_Script.lineDrawer, Color.green, motion_info_list);
            CreatePathLine(ref PathLineDraw_Script.lineOriginalDrawer, Color.red, original_motion_info_list);
//			Debug.Log(original_motion_info_list.Count + "<||>" + motion_info_list.Count);
//			foreach(MotionInfo motion_info in motion_info_list)
//				Debug.Log(motion_info.ToString());
//			for(int i = 0; i < motion_info_list.Count && i < 300; i++)
//			{
//				Debug.Log(motion_info_list[i].ToString());
//				Debug.Log(original_motion_info_list[i].ToString());
//			}
//			for(int i = 0; i < original_motion_info_list.Count && i < 300; i++)
//			{
//				Debug.Log(motion_info_list[i].ToString());
//				Debug.Log(original_motion_info_list[i].ToString());
//			}
            return(true);
        }
        else if (compile_result == (int)ResultType.CompileError)
        {
            errorString = "代码编译错误!";
//			Debug.Log(AutoFanuc_OI_M.CompileInfo.Count);
            for (int i = 0; i < AutoFanuc_OI_M.CompileInfo.Count && i < 300; i++)
            {
//				Debug.Log(AutoFanuc_OI_M.CompileInfo[i]);
                Warnning_Script.object_description += AutoFanuc_OI_M.CompileInfo[i] + "\n";
            }
            Warnning_Script.object_description += "代码编译错误!\n";
            if (!Warnning_Script.come_forth)
            {
                Warnning_Script.motion_start = true;
            }
            return(false);
        }
        else
        {
            errorString = "程序中含有宏代码,本系统暂不支持宏代码!";
            Warnning_Script.object_description += "程序中含有宏代码,本系统暂不支持宏代码!\n";
            if (!Warnning_Script.come_forth)
            {
                Warnning_Script.motion_start = true;
            }
            return(false);
        }
    }