Referência das funções DIESEL

A recuperação, o cálculo e a exibição de status são executados por funções DIESEL.

Todas as funções têm um limite de 10 parâmetros, incluindo o próprio nome da função.

Função Descrição/Exemplo
+ (adição)

Retorna a soma dos números val1 , val2 , …, val9 .

$(+, val1 [, val2, …, val9])

Se a espessura atual é definida como 5, a seguinte sequência de caracteres DIESEL retorna 15.

$(+, $(getvar, thickness), 10)
- (subtração)

Retorna o resultado da subtração os números de val2 a val9 de val1 .

$(-, val1 [, val2 , …, val9])
* (multiplicação)

Retorna o resultado da multiplicação dos números val1 , val2 , …, val9 .

$(*, val1 [, val2, …, val9])
/ (divisão)

Retorna o resultado da divisão dos números val1 por val2 , …, val9 .

$(/, val1 [, val2, …, val9])
= (igual a)

Se os números val1 e val2 são iguais, a sequência retorna 1; caso contrário, retorna 0.

$(=, val1, val2)
< (menor que)

Se o número val1 é menor que val2 , a sequência de caracteres retorna 1; caso contrário, retorna 0.

$(<, val1, val2)

A seguinte expressão toma o valor atual de HPANG; se o valor é menor que o valor armazenado na variável de sistema USERR1, ela retorna 1. Se o valor 10.0 é armazenado em USERR1 e a configuração atual de HPANG é 15.5, a seguinte sequência de caracteres retorna 0.

$(<, $(getvar, hpang), $(getvar, userr1))
> (maior que)

Se o número val1 é maior que val2 , a sequência de caracteres retorna 1; caso contrário, retorna 0.

$(>, val1, val2)
!= (diferente de)

Se os números val1 e val2 não são iguais, a sequência de caracteres retorna 1; caso contrário, retorna 0.

$(!=, val1, val2)
<= (menor ou igual a)

Se o número val1 é menor ou igual a val2 , a sequência de caracteres retorna 1; caso contrário retorna 0.

$(<=, val1, val2)
>= (maior ou igual a)

Se o número val1 é maior ou igual a val2 , a sequência de caracteres retorna 1; caso contrário, retorna 0.

$(>=, val1, val2)
and

Retorna o bit lógico AND de inteiros val1 até val9 .

$(and, val1 [, val2,…, val9])
angtos

Retorna o valor angular no formato e na precisão especificados.

$(angtos, value [, mode, precision])

Edita o value determinado como um ângulo no formato especificado pelo modo e precisão como definido para a função análoga do AutoLISP. Se modo e precisão são omitidos, ele utiliza os valores atuais escolhidos pelo comando UNIDADES.

Nota: O AutoLISP não está disponível no AutoCAD LT.
Os seguintes valores de modo podem ser aplicados:
  • 0, para Graus
  • 1, para Graus/Minutos/Segundos
  • 2, para Grados
  • 3, para Radianos
  • 4, para Unidades de topografia
Edtime

Retorna data e hora formatadas com base em uma imagem determinada.

$(edtime, time, picture)

Edita a data Juliana dada por hora (obtida, por exemplo, de $(getvar,date) de acordo com a imagem dada). A imagem consiste em frases de formato substituídas por representações específicas da data e hora. Os caracteres não interpretáveis como frases de formato são copiados literalmente no resultado de $(edtime) . As frases de formato são definidas como mostrado na seguinte tabela.

Por exemplo, a data e a hora são Sábado, 5 de Setembro de 1998 4:53:17.506 correspondente a frases de formato e exemplos de edtime são como segue:
  • D - 5
  • DD - 05
  • DDD - Sáb
  • DDDD - Sábado
  • M - 9
  • ME - 09
  • MÊS - Set
  • MÊS - Setembro
  • AA - 98
  • AAAA 1998
  • H - 4
  • HH - 04
  • MM - 53
  • SS - 17
  • MSEG - 506
  • AM/PM - AM
  • am/pm - am
  • A/P - A
  • a/p - a

Insira a frase inteira AM/PM como é mostrado na tabela anterior; se AM é utilizado sozinha, o A será lido literalmente e o M retornará o mês atual.

Se qualquer frase AM/PM aparece na figura, as frases H e HH editam a hora de acordo com o relógio de 12 horas (12:00–12:59 1:00–11:59) ao invés do relógio de 24 horas (00:00-23:59).

O seguinte exemplo utiliza a data e a hora da tabela anterior. Note que a vírgula deve ser incluída nas marcas das aspas porque é lida como um separador de argumentos.

$(edtime, $(getvar,date), DDD"," DD MON YYYY - H:MMam/pm)

Isto retorna o seguinte:

Sáb, 5 Set 1998 -4:53am

Se time é 0, a hora e a data no instante em que a macro externa foi executada é utilizada. Isso impede múltiplas chamadas que consomem tempo de $(getvar,date) e garante que as sequências de caracteres compostas por múltiplas macros $(edtime) utilizem a mesma hora.

eq

Se as sequências de caracteres val1 e val2 são idênticas, a sequência de caracteres retorna 1; caso contrário retorna 0.

$(eq, val1, val2)

A seguinte expressão toma o nome da camada atual; se o nome combina com o valor da sequência de caracteres armazenada na variável de sistema USERS1 (USERS1-5), ela retorna 1. Assuma que a sequência de caracteres "PART12" está armazenada em USERS1 e a camada atual é a mesma.

Nota: As variáveis de sistema USERS1-5 não estão disponíveis no AutoCAD LT.
$(eq, $(getvar, users1), $(getvar, clayer))

Isto retorna o seguinte:

1

Eval

Passa a sequência de caracteres str para o avaliador DIESEL e retorna o resultado da sua avaliação.

$(eval, str)
fix

Trunca o valor de número real em um inteiro descartando qualquer parte fracionária.

$(fix, value)
Getenv

Retorna o valor da variável de ambiente varname .

$(getenv, varname)

Se nenhuma variável com esse nome está definida, retorna a sequência de caracteres nula.

Getvar

Retorna o valor da variável de sistema com o varname determinado.

$(getvar, varname)
if

Avalia expressões condicionalmente.

$(if, expr, dotrue [, dofalse])

Se expr é diferente de zero, ela avalia e retorna dotrue . Caso contrário, ela avalia e retorna dofalse . Observe que a ramificação não escolhida por expr não é avaliada.

Index

Retorna o membro especificado de uma sequência de caracteres delimitada por vírgula.

$(index, which, string)

Assume que o argumento string contém um ou mais valores delimitados pelo caractere separador de argumentos da macro, a vírgula. O argumento which seleciona um desses valores a ser extraído, com o primeiro item numerado como 0. Essa função é mais frequentemente utilizada para extrair os valores de coordenadas X, Y ou Z de coordenadas pontos retornadas por $(getvar).

Os aplicativos podem utilizar essa função para recuperar valores armazenados como sequências de caracteres delimitadas por vírgula das variáveis de sistema USERS1-5.

Nota: As variáveis de sistema USERS1-5 não estão disponíveis no AutoCAD LT.
nth

Avalia e retorna o argumento selecionado por which .

$(nth, which, arg0 [, arg1,…, arg7])

Se which é 0, nth retorna arg0 e assim por diante. Observe a diferença entre $(nth) e $(index) ; $(nth) retorna um de uma série de argumentos para a função, enquanto $(index) extrai um valor de uma sequência delimitada por vírgula passada como um único argumento. Os argumentos não selecionados por which não são avaliados.

ou

Retorna o bit lógico OR de inteiros val1 até val9 .

$(or, val1 [, val2,…, val9])
Rtos

Retorna o valor real no formato e na precisão especificados.

$(rtos, value [, mode, precision])

Edita o valor determinado como um número real no formato especificado por modo e precisão. Se modo e precisão são omitidos, usa os valores atuais selecionados com o comando UNIDADES.

Strlen

Retorna o comprimento de string em caracteres.

$(strlen, string)
Substr

Retorna a subsequência de caracteres de string , começando no caractere de start e se estendendo pelos caracteres de length .

$(substr, string, start [, length])

Os caracteres na sequência são numerados a partir de 1. Se length é omitido, ela retorna o comprimento restante inteiro da sequência de caracteres.

Upper

Retorna a string convertida para caixa alta, de acordo com as regras do local atual.

$(upper, string)
xor

Retorna o bit lógico XOR de inteiros val1 até val9 .

$(xor, val1 [, val2,…, val9])