Функция FindCld


Функция <FindCld> ищет команду с именем <CmdName> в текущем файле CLData, начиная с команды под номером <StartIndex>. <StartIndex> отсчитывается от начала текущего файла CLData. Если <StartIndex> не указан, то поиск начинается с команды, которая следует за текущей. Результат, возвращаемый функцией, равен индексу найденной команды в текущем файле CLData. Если команда не найдена, то результат равен -1. В качестве параметра <Data> должен передаваться заранее объявленный динамический массив вещественных чисел (<Array of Real>). В этот массив будут записаны параметры найденной команды CLData. Синтаксис:

 

N = FindCld({<StartIndex>, }<CmdName>, <Data>)

 

Например, пусть список команд CLDATA имеет вид, приведенный ниже, и допустим, что номер текущей команды равен 0.

 

0: PARTNO     "Bottle"

1: PPFUN      …..

2: COMMENT    "Roughing Waterline"

3: LOADTL     N 2,X 0,Y 0,Z 0,D 8….

4: SPINDL     ON(71),NO 397.887,K 0,MODE RPM(0)

5: CUTCOM     ON(71),LENGTH(9) 2,X 0,Y 0,Z 0,N 0,K 0,M 0,LEFT(8)

6: RAPID      N 10000

7: GOTO.abs   X 134.533,Y 99.684,Z 80

8: RAPID      N 10000

 

Обработчик технологической команды <PartNo>:

 

program PartNo  

  V: Array of Real

  NCircle: Integer

  NGoto: Integer

  NCircle = FindCld("CIRCLE", V)

  NGoto = FindCld("GOTO.abs", V)

  if NGoto > NCircle then

    Print "Первое перемещение по дуге"

  else

    Print "Первое перемещение по прямой"

End

 

В результате выполнения примера в окно отладочной информации будет выведено сообщение "Первое перемещение по прямой".

Для доступа к параметрам произвольных технологических команд также можно воспользоваться оператором CLDFile.

 

 

 

Сопутствующие ссылки:

Функции и операторы работы с CLData