Структура TGF-файла


Структура TGF-файла:
 
<команда>
<параметры>
первая команда в файле
....... произвольное число команд
<команда>
<параметры>
последняя команда в файле

<команда>  = unsigned short int (2 байта) =   младший байт - 0x2a - признак команды +   старший байт -  код команды
короче:

<команда>=0x2aCod
коды команд совпадают с кодами команд DGF, кроме кодов  0xff и 0xfe - "заголовок"
 
Команды  заголовка файла
Код команды Параметр Байт на
параметр
Байт на
команду
Описание команды и параметров
0xff struct TgfHead sizeof(struct TgfHead) sizeof(struct TgfHead)+2 Смотри описание структуры  TgfHead
0xfe struct Tgf1Head sizeof(struct Tgf1Head) sizeof(struct Tgf1Head)+2 Смотри описание формата TGF_v

struct TgfHead
{
/* Обязательно используемые параметры */
   char Head[11];     /* "TGF_format" фиксированная строка для проверки формата*/
    long int Smin[2];   /* min x,y */
    long int Smax[2];   /* max x,y */
    float lenL;         /* длина резов */
    float lenH;         /* длина холостых переходов */
    unsigned short int plineN;/* число полилиний = число включений лазера */

/* Информационные параметры */
    long int razStol;   /* сколько раз выводился на стол */
    long int razDisp;   /* сколько раз выводился на дисплей */
    float TimeStolCalc; /* полное расчетное время на столе, сек */
    float TimeStol;     /* полное реальное время вывода на столе */
    float TimeDisp;     /* полное реальное время вывода на дисплей без рисования */
    unsigned short int Nnkadr; /* число кадров в исходном файле */
    unsigned short int control; /* контроль числа кадров в исходном файле */
    float res1;      /* reserved */
    float res2;      /* reserved */
    float res3;      /* reserved */
};
 
 
Команды перемещения инструмента
Код команды 
Параметры
Байт на
параметр
Байт на
команду
Описание команды и параметров
 Перемещение инструмента  в точку: 0x0 - 0x3 (холостой ход)
0x00
X,Y
2 6 приращение
Параметры задают относительное перемещение относительно текущего положения,
после выполнения перемещения текущее положение инструмента  будет являться текущим положением 
для следующего относительного перемещения.
0х01
X,Y
4 10 приращение
0х02
X,Y
2 6 абс.перемещение
Параметры задают абсолютное положение конечной точки перемещения
0х03
X,Y
4 10 абс.перемещение
 Черчение отрезка: 0x4 - 0x7
0х04
X,Y
2 6 приращение
0х05
X,Y
4 10 приращение
0x06
X,Y
2 6 абс.перемещение
0x07
X,Y
4 10 абс.перемещение
Черчение дуги окружности в положительном направлении
0x08 X,Y,Xc,Yc 2 10 приращение
X,Y задают положение конечной точки, а Xc, Yc - положение центра дуги в  по отношению к текущему положению.
0x09 X,Y,Xc,Yc 4 18 приращение
0x0a X,Y,Xc,Yc 2 10 абс.перемещение
0x0b X,Y,Xc,Yc 4 18 абс.перемещение
Черчение дуги окружности в отрицательном направлении
0x0c X,Y,Xc,Yc 2 10 приращение
0x0d X,Y,Xc,Yc 4 18 приращение
0x0e X,Y,Xc,Yc 2 10 абс.перемещение
0x0f X,Y,Xc,Yc 4 18 абс.перемещение

 
Коды команд DIGIGRAPH, которые могут присутствовать в файле, но игнорируются прогаммой  STOL2
Код команды Параметры Байт на
параметр
Байт на
команду
Описание команды и параметров
0x10 n 2 4 Выбор головки 
0x11 V0, V1 2 6 выбор скорости 
0x12 A0, A1 2 6 выбор ускорения










0x15 V1, A1 2 6 Выбор скорости и ускорения при опущенном инструменте





0x17 - 0 2 Пустая операция, NOP
0x18 - 0 2 Переключение в режим ручного управления
0x1a - 0 2 " Конец программы "
0x1f  n c1,...,cn 2 и 1 2+2+n " Черчение символов"
0x1c
0x1d
0x1e
0x21
n 2 4 игнорируется

TGF формат используется управляющими программами для лазерных раскройных комплексов Stol (DOS - программа),  Stol2 (OS/2 -программа)

Rambler's Top100