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:
|
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:
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]) |