Funciones de conversión de datos en AutoLISP


Introducción a la programación en AutoCAD

Funciones de conversión de datos en AutoLISP


Vamos a ver una serie de funciones que nos permitirán pasar un entero a real, a un texto o al revés…

(ITOA entero)

Convierte un entero en un texto. Integer TO Atom.

(itoa 24) devuelve “24

(ATOI texto)

Hace justo lo contrario que la función anterior. Convierte un texto en un número. Atom TO Integer

(atoi24) devuelve 24

(atoi-7) devuelve -7

Y que pasa si hacemos… (atoisoy un texto) pues que devuelve 0. Siempre que escribes algo que no sea un número devuelve cero.

(atoi15.3) devuelve 15

(atoi15.99999) devuelve 15

(FLOAT numero)

Convierte un número en real, así que lo lógico es que reciba un entero como argumento.

(float 5) devuelve 5.0

pero también podemos pasar un número real como argumento… (float 5.36) que devuelve 5.36 lo cual sería una tontería porque en ese caso la función float no hace nada.

(ATOF texto)

Convierte un texto en real.

(atof15.7) devuelve 15.7

(atof15) devuelve 15.0

(atof-15.7) devuelve -15.7

(atofsoy un texto) devuelve 0.0

(RTOS numero [modo [precision]])

La última función de este tipo que vamos a ver es algo más complicada, pero no mucho. Convierte un real en texto. Real TO String.

(rtos 2.5) devuelve “2.5

(rtos 2) devuelve “2” y no “2.0

Veamos para qué sirven los argumentos opcionales [modo [precisión]]. Modo, permite indicar un tipo para expresar los números, es decir, permite seleccionar el formato utilizado para los números. Hay 5 opciones:

  • Formato científico.
  • Decimal. Es el que se usa habitualmente.
  • Pies y pulgadas.
  • Pies y pulgadas en fracciones.
  • Fracciones.

Por ejemplo…

(rtos 2.5 5) devuelve “2 1/2

(rtos 2.5 1) devuelve “2.5000E+00

Precisión nos permite definir el número de decimales que deseamos, por ejemplo:

(rtos 1.23456789 2 3) devuelve 1.235 así que redondea el número para que tenga 3 decimales.

(rtos 9.99 2 0) devuelve 10



Introducción a la programación en AutoCAD

Leave a Reply