Добрый вечер ! Ознакомился с тем, что Вы сбросили. К сожалению, там ни капельки не сказано про начальное значение переменной allowCircularPlanes. В мануале от аутодеска говорят присвоить значение undefined. Но я думаю именно в неправильном значении этой переменной и кроется причина некорректной генерации g кода с отсутствием i,j,k координат. Если кто-то в этом разбирается,буду благодарен за помощь.
В мануале, как Вам правильно заметили, стоит udefined а не undefined как написано у Вас. Если верить обоим скриншотам. Так что постпроцессор может не восприниматься из-за ошибки. В сети можно найти примеры записей типа: allowedCircularPlanes = udefined.format(z) . Правда если полезть в примеры то там уже почти всегда undefined. В общем тут немного мрак. Надо разбираться, пока могу предположить, что udefined - это user defined. А возможно в мане опечатка
Но вообще circular planes не должно иметь отношения к перемещению по осям. Данный пункт как и многие другие нужен чисто чтобы уменьшить количество ввода, в случае если контроллер станка поддерживает какую-то опцию, или обеспечить гарантированное качество детали за счет увеличения g-кода, при отсутствии поддержки.
В данном случае речь идет о круговых движениях в плоскости одной из осей. Если контроллер поддерживает команды связанные с таким движением, то движение по дуге можно задать как координаты начала, конца, радиуса и скорости движения и все в "одну команду". А если нет - то придется маньячить "полилинию" чтобы обеспечить "квадратуру круга" нужной гладкости. Но в любом случае, даже при наличии такой опции в контроллере, нужно объяснить постпроцессору как данные траекторий переводить в нужный вид. Собственно поэтому в мане так много пунктов и так различен итог, после каждого из изменений.
upd: во всех постпроцах стоит либо uNdefined - разрешено. либо 0 - запрещена интерполяция. В оень редких прописан вариант с конкретными плоскостями:
allowedCircularPlanes = 1 << PLANE_XY; // only XY
allowedCircularPlanes = (1 << PLANE_XY) | (1 << PLANE_ZX) | (1 << PLANE_YZ); // only XY, ZX, and YZ planes
Как и говорил эта настройка чисто к круговым движениям. Так что по Вашему
вопросу - причины надо искать в чем-то другом. Можете привести полный текст постпроцессора и итогового кода?