Дипломная работа: Конвертирование исходного текста программ для станков с ЧПУ из одной системы программирования в другую
7. Bufer:= '';
8. Inc(m);
9. конец
Таблица 5
Список условных обозначений
Название | Описание |
Bufer | Переменная хранения строки |
Inc() | Функция увеличение значения |
DelProbel(bufer); | Функция удаления пробелов |
nomerkadra(bufer); | Функция восстановления нумерации кадров |
pustostroka; | Функция удаления пустых строк |
2.4. Описание алгоритма конвертирования
2.4.1. Назначение и характеристика алгоритма
Алгоритм описывает конвертирование исходного текста программы для станков с ЧПУ. В результате программа пересчитывает все исходные координаты из данной системы программирования в заданную.
2.4.2. Алгоритм решения
1. Если ( pos ('%', kadr ) <> 0) or ( pos ('$', kadr ) <> 0), то переход к п. 28
2. Если pos (' X ', kadr ) <> 0, то переход к п. 3 иначе к п. 5
3. NaytiKoordinatu(kadr,'X', vyh);
4. PreobrazovanieMayak(X_nast, kadr);
5. uslovie:= FindVstavki('X', kadr);
6. DobavitTochku(s);
7. insert(Concat('X', s), kadr, uslovie);
8. Если ( pos (' G 42', kadr ) <> 0) or ( pos (' G 41', kadr ) <> 0), то пер к п. 9
9. Если pos (' X ', kadr ) = 0, то переход к п. 10
10. uslovie:= FindVstavki('X', kadr);
11. Insert('X' + s, kadr, uslovie);
12. Если (pos('I', Stroka.Strings[Succ(m)]) <> 0) and (pos('J', Stroka.Strings[Succ(m)]) <> 0), то переход к п . 13 иначе к п . 16
13. Naytikoordinatu(Stroka.Strings[Succ(m)], 'I', st);
14. Naytikoordinatu(Stroka.Strings[Succ(m)], 'J', st);
15. Podhod_G41_G42_radius;
16. Podhod_G41_G42_line;
17. Если pos (' I ', kadr ) <> 0, то переход к п. 18
18. NaytiKoordinatu(kadr, 'I', st);
19. PreobrazovanieMayak(X_sled, kadr);
20. uslovie:= pos('I',kadr);
21. Если uslovie <> 0, то переход к п . 22
22. NaytiKoordinatu(kadr,'I',vyh);
23. Если oshibka = 1, то переход к п . 24
24. I:= X_pred + I;
25. preobrazovanieMAYAK(I,kadr);