public void SelectProcessCommand(ITechProcess techProcess, ProcessCommand processCommand) { if (processCommand.ToolpathObjectId.HasValue) { Acad.SelectObjectIds(processCommand.ToolpathObjectId.Value); } Acad.RegenToolObject(techProcess.Tool, processCommand.HasTool, processCommand.ToolLocation, techProcess.MachineType == MachineType.Donatoni); //Settongs.IsFrontPlaneZero }
private void processCommandBindingSource_CurrentChanged(object sender, EventArgs e) { if (CurrentProcessCommand != null) { if (CurrentProcessCommand.ToolpathObjectId.HasValue) { Acad.Show(CurrentProcessCommand.ToolpathObjectId.Value); Acad.SelectObjectIds(CurrentProcessCommand.ToolpathObjectId.Value); } Acad.RegenToolObject(CurrentTechProcess.Tool, CurrentProcessCommand.HasTool, CurrentProcessCommand.ToolLocation, CurrentTechProcess.MachineType == MachineType.Donatoni); //Settongs.IsFrontPlaneZero } }
public ProcessCommand Play(ITechProcess techProcess, int commandIndex) { var commands = techProcess.ProcessCommands.Skip(commandIndex).ToList(); var progressor = new Progressor("Проигрывание обработки", commands.Count); foreach (var command in commands) { Acad.RegenToolObject(techProcess.Tool, command.HasTool, command.ToolLocation, techProcess.MachineType == MachineType.Donatoni); if (!progressor.Progress(false)) { SelectProcessCommand(techProcess, command); return(command); } System.Threading.Thread.Sleep(30); } progressor.Stop(); return(commands.First()); }