Existem basicamente duas formas de se executar uma sequencia qualquer de movimentos: G61 para movimentos em "parada exata" e G64 para "Velocidade Constante".
Vamos imaginar a seguinte usinagem: um quadrado
Em G61 o interpretador de movimentos irá tentar executar cada linha do percurso do quadrado na velocidade de avanço que foi programada - quando a ferramenta chega no final da linha, a máquina para, muda de direção e reinicia a usinagem do próxima linha do contorno do objeto.
O início e final do movimento é claro estão condicionados às rampas de aceleração e frenagem daquele eixo de movimento.
Em G64 o interpretador de movimentos faz uso de um componente chamado "look ahead", onde o interpretador "sabe" em que direção o próximo contorno está orientado, e assim ele tenta manter uma velocidade de avanço relativamente constante durante a execução do corte, apenas acelerando e freando um tanto depois e antes de cada mudança de direção.
Acontece que, dependendo do ângulo entre as linhas de contorno, seus comprimentos e os ajustes de velocidade de avanço e velocidades de acelerações dos eixos o interpretador faz um "arredondamento" no contorno porque ele quer manter as velocidades de avanço.
No EMC pode-se usar uma palavra de condicionamento para a tolerância desse arredondamento, e esta é o "Pxx" onde "xx" é o valor do raio que que deseja como tolerante.
Quanto menor o raio, mais próximo do comportamento de G61 se aproxima ou seja, vai tentar manter a velocidade de avanço, mas respeitando as acelerações condizentes com o percurso em sí.