Scripts LISP gratuitos para AutoCAD y GstarCAD

11 scripts .lsp gratuitos para AutoCAD y GstarCAD: suma de longitudes y áreas, etiquetas con exportación a Excel, división de líneas en tramos, numeración, recuento de símbolos y exportación de textos.

Gratis · AutoCAD y GstarCAD · Windows

Qué incluye el paquete

Once scripts de AutoLISP (archivos .lsp) que agilizan el trabajo diario con planos: medición de longitudes y áreas, etiquetado de superficies, división de líneas en tramos, numeración de elementos, recuento de símbolos y exportación de textos del dibujo a Excel. Funcionan en AutoCAD y GstarCAD en Windows, son gratuitos y no requieren instalar nada aparte del propio archivo.

⬇ Descargar todos los scripts (ZIP) o descarga un archivo concreto desde las descripciones de abajo.

Script Comando Para qué sirve
SumLines.lsp SUMLINES suma de longitudes de líneas y polilíneas
SumArea.lsp SUMAREA suma de áreas de objetos cerrados
AreaLabels.lsp AREALABELS etiquetas de área + totales por capa a Excel / CSV
LineLabels.lsp LINELABELS etiquetas de longitud + totales por capa a Excel / CSV
SplitIntoLines.lsp SPLITINTOLINES división de líneas en tramos de longitud dada o en N partes
CountSymbols.lsp COUNTSYMBOLS recuento de símbolos en una tabla nueva o existente
AutoNumber.lsp AUTONUMBER, AUTONUMBERPREFIX numeración de elementos en la dirección elegida
AppendText.lsp APPENDTEXT añadir texto a muchos textos a la vez
DecreaseTextValue.lsp DECREASETEXTVALUE restar un valor a los números de los textos
ExportText.lsp EXPORTTEXT exportar textos a un archivo TXT
ExportTextToCSV.lsp EXPORTTEXTTOCSV exportar textos de una capa a Excel / CSV

Cómo cargar un script

Para la sesión actual (hasta cerrar el programa):

  1. Guarda el archivo .lsp en una carpeta fija, p. ej. C:\CAD\Scripts.
  2. Escribe el comando APPLOAD (o simplemente arrastra el archivo .lsp sobre el dibujo abierto).
  3. Selecciona el archivo y pulsa Cargar (Load).
  4. Escribe el nombre del comando del script (p. ej. SUMLINES) y pulsa Enter.

De forma permanente en GstarCAD:

  1. Escribe APPLOAD.
  2. Pulsa el icono del maletín (Grupo de inicio / Startup Suite).
  3. Pulsa Añadir (Add) y selecciona el archivo .lsp.
  4. Cierra las ventanas y reinicia GstarCAD: el script se cargará en cada inicio.

De forma permanente en AutoCAD:

  1. Escribe APPLOAD.
  2. En la sección Grupo de inicio (Startup Suite) pulsa Contenido… (Contents…).
  3. Pulsa Añadir… (Add…), selecciona el archivo .lsp y cierra las ventanas.
  4. Si AutoCAD muestra un aviso de seguridad, elige Cargar siempre (Always Load) o añade la carpeta de scripts a las ubicaciones de confianza (Opciones → Archivos → Ubicaciones de confianza).

Conviene saber:

  • El comando es el nombre indicado junto al script, no siempre el nombre del archivo. Las mayúsculas y minúsculas no importan.
  • Los mensajes de los scripts en la línea de comandos están en inglés (p. ej. Select objects, Total length).
  • Los cambios en el dibujo se deshacen con el habitual Deshacer (Ctrl+Z). Antes de trabajar en un dibujo importante, haz una copia.
  • Cuando un script pide elegir entre opciones entre corchetes, p. ej. [Length/Count], basta con escribir la primera letra (L o C) o hacer clic en la opción en la línea de comandos. Enter acepta el valor indicado en <…>.
  • Hay dos tipos de opciones: preguntas al ejecutar (respondes en la línea de comandos) y ajustes en el archivo: los cambias una vez abriendo el archivo .lsp en el Bloc de notas y editando los valores del bloque ;; ---- SETTINGS ---- (T = sí, nil = no). Después de cambiar el archivo, vuelve a cargarlo con APPLOAD.

SUMLINES — suma de longitudes de líneas

⬇ SumLines.lsp

Suma la longitud de las líneas y polilíneas seleccionadas. Útil para medir rápidamente cables, tuberías, bordillos o remates de chapa.

  1. Escribe SUMLINES.
  2. Selecciona líneas y polilíneas (con una ventana o haciendo clic).
  3. Pulsa Enter: el resultado aparece en una ventana y en la línea de comandos, y además se copia al portapapeles, así que puedes pegarlo directamente en Excel (Ctrl+V).

El resultado está en unidades del dibujo (dibujo en mm → resultado en mm), con coma decimal. Los arcos, splines y otros objetos se ignoran al seleccionar.

Opciones

Ajustes en el archivo:

  • showAlert — T muestra una ventana con el resultado; nil muestra el resultado solo en la línea de comandos (sin pulsar «OK» tras cada medición).
  • copyToClip — T copia el resultado al portapapeles; nil deja el portapapeles sin cambios.
  • decimals — número de decimales del resultado (por defecto 2).

SUMAREA — suma de áreas

⬇ SumArea.lsp

Suma las áreas de los objetos cerrados seleccionados: polilíneas, círculos, elipses, regiones y splines. Permite calcular, por ejemplo, la superficie de varias estancias a la vez.

  1. Escribe SUMAREA.
  2. Selecciona los objetos.
  3. Pulsa Enter: el resultado aparece en una ventana y en la línea de comandos, y se copia al portapapeles.

Las polilíneas abiertas se omiten: el script indica cuántas hay y sus identificadores (Handle) para encontrarlas fácilmente. El resultado está en unidades del dibujo al cuadrado (dibujo en cm → cm²).

Opciones

Ajustes en el archivo:

  • showAlert — T muestra una ventana con el resultado; nil muestra el resultado solo en la línea de comandos.
  • copyToClip — T copia el resultado al portapapeles; nil deja el portapapeles sin cambios.
  • decimals — número de decimales del resultado (por defecto 2).

AREALABELS — etiquetas de área con exportación a Excel

⬇ AreaLabels.lsp

Etiqueta cada polilínea cerrada seleccionada con el nombre de su capa y su área en m², y guarda los totales de superficie de cada capa en un archivo de Excel o CSV. Uso típico: contornos de estancias o tipos de pavimento, cada tipo en su propia capa, y obtienes al instante el cuadro de superficies.

  1. Escribe AREALABELS.
  2. Selecciona polilíneas cerradas y pulsa Enter: en el centro de cada una aparece la etiqueta «capa / área m2» en la capa AREA_LABELS.
  3. En la ventana de guardado elige la carpeta, el nombre y el formato del archivo de totales (por defecto junto al dibujo, nombre del dibujo + _areas). Cancelar la ventana = etiquetas sin exportación.

Notas:

  • En cada ejecución el script borra todos los textos de la capa AREA_LABELS en todo el dibujo y vuelve a crear las etiquetas: no pongas otros textos en esa capa.
  • El formato .xlsx/.xls requiere Excel instalado; sin él, el script guarda un archivo CSV con el mismo nombre (punto y coma, coma decimal).
  • La etiqueta se coloca en el centro del rectángulo envolvente de la polilínea: en formas en «L» puede quedar fuera del contorno.

Opciones

Al ejecutar solo eliges la ubicación, el nombre y el formato del archivo (.xlsx, .xls o .csv). Ajustes en el archivo:

  • textSize — altura del texto de las etiquetas en unidades del dibujo (por defecto 40).
  • areaDivisor — conversión del área a m² según las unidades del dibujo: centímetros → 10000.0 (por defecto), milímetros → 1000000.0, metros → 1.0.
  • exportFile — T guarda los totales en un archivo; nil solo coloca las etiquetas, sin ventana de guardado.
  • fileSuffix — terminación del nombre de archivo propuesto (por defecto _areas). El archivo tiene las columnas symbol (capa) y area (área en m²).

LINELABELS — etiquetas de longitud con exportación a Excel

⬇ LineLabels.lsp

Etiqueta cada línea o polilínea seleccionada con el nombre de su capa y su longitud en metros, y guarda los totales de longitud y el número de objetos de cada capa en un archivo de Excel o CSV; por ejemplo, longitudes de trazados de instalaciones por tipo.

  1. Escribe LINELABELS.
  2. Elige qué objetos etiquetar (ver Opciones).
  3. Selecciona los objetos y pulsa Enter: las etiquetas aparecen en la mitad de cada objeto, en la capa LENGTH_LABELS.
  4. En la ventana de guardado elige la carpeta, el nombre y el formato del archivo. El archivo tiene las columnas symbol (capa), length (longitud en m) y count (número de objetos).

Notas:

  • En cada ejecución el script borra todos los textos de la capa LENGTH_LABELS.
  • El formato .xlsx/.xls requiere Excel; sin él se crea un CSV con el mismo nombre.

Opciones

Al ejecutar:

  • Objetos a etiquetar [Lines/Polylines/All] — Lines: solo líneas; Polylines: solo polilíneas (se etiqueta la longitud total de la polilínea); All: ambas. La última elección se recuerda hasta cerrar el programa.
  • Archivo de totales — ubicación, nombre y formato (.xlsx, .xls, .csv); cancelar = sin exportación.

Ajustes en el archivo:

  • textSize — altura del texto de las etiquetas (por defecto 40).
  • lengthDivisor — conversión de la longitud a metros: centímetros → 100.0 (por defecto), milímetros → 1000.0, metros → 1.0.
  • defaultMode — elección de objetos propuesta en la primera ejecución: "Lines", "Polylines" o "All" (por defecto).
  • exportFile — T guarda los totales en un archivo; nil solo coloca las etiquetas.
  • fileSuffix — terminación del nombre de archivo propuesto (por defecto _lengths).

SPLITINTOLINES — dividir líneas en tramos

⬇ SplitIntoLines.lsp

Divide las líneas y polilíneas seleccionadas en tramos de una longitud dada o en un número determinado de partes iguales. Útil, por ejemplo, para replantear chapas o rollos de lámina a lo largo, dividir un trazado en tramos de montaje o marcar la separación de postes.

  1. Escribe SPLITINTOLINES.
  2. Selecciona líneas y polilíneas y pulsa Enter.
  3. Elige el modo de división e indica la longitud del tramo o el número de partes (ver Opciones).
  4. Cada objeto se sustituye por los tramos.

Notas:

  • Los tramos siguen la forma de la polilínea: se conservan los quiebros y los arcos. Heredan la capa, el color, el tipo y el grosor de línea del original.
  • Los objetos más cortos que la longitud indicada se omiten.
  • Las polilíneas antiguas (tipo POLYLINE) no son compatibles: conviértelas antes con el comando CONVERTPOLY.
  • Toda la división se deshace con un solo Deshacer.

Opciones

Al ejecutar (las últimas respuestas se recuerdan hasta cerrar el programa; Enter repite las anteriores):

  • Modo de división [Length/Count] — Length: tramos de longitud fija, el último (el resto) es más corto; Count: el número indicado de tramos iguales (al menos 2).
  • Longitud del tramo (solo Length) — en unidades del dibujo; puedes escribir un número o designar dos puntos en el dibujo.
  • Dirección de medición [Start/End/Pick] (solo Length) — decide en qué lado queda el resto más corto. Start: desde el inicio del objeto (resto al final); End: desde el final (resto al principio); Pick (por defecto): para cada objeto, por turno, haces clic cerca del extremo desde el que debe empezar la medición; mientras tanto el objeto aparece resaltado.

Ajustes en el archivo:

  • deleteOriginal — T borra el objeto tras la división (por defecto); nil deja el original bajo los tramos.
  • outputType — "AUTO" (por defecto): un tramo recto se crea como línea y uno con quiebro o arco como polilínea; "PLINE": cada tramo de polilínea es una polilínea. Las líneas siempre dan líneas.

COUNTSYMBOLS — recuento de símbolos en una tabla

⬇ CountSymbols.lsp

Cuenta cuántas veces aparece en el dibujo cada símbolo de texto (p. ej. referencias de luminarias, enchufes, tipos de puertas o ventanas) e inserta una tabla con las cantidades o completa una existente. Una medición de cantidades sin contar a mano.

  1. Escribe COUNTSYMBOLS.
  2. Selecciona los textos a contar (p. ej. todo el plano con una ventana) y pulsa Enter: el resultado aparece también en la línea de comandos.
  3. Elige una tabla nueva o existente (ver Opciones).

Notas:

  • Los textos se consideran idénticos solo si coinciden carácter a carácter (incluidas mayúsculas y espacios). Funciona mejor con textos sencillos de una línea.
  • Toda la operación se deshace con un solo Deshacer.

Opciones

Al ejecutar:

  • Tabla [New/Existing] — New (por defecto): el script crea la tabla con título, columnas SYMBOL / QTY y fila TOTAL; indicas la altura del texto (se recuerda el último valor) y designas la esquina superior izquierda de la tabla. Existing: designas una tabla existente cuya primera fila son los encabezados y cuya columna con el encabezado SYMBOL contiene la lista de símbolos; las cantidades van a la columna con el encabezado QTY, COUNT o QUANTITY (si no existe, el script añade una columna QTY al final). Un símbolo de la tabla que no está en el dibujo recibe 0.

Ajustes en el archivo (se aplican a una tabla nueva):

  • tableTitle — título de la tabla (por defecto «SYMBOL SCHEDULE»; "" = sin título).
  • textHeight — altura del texto propuesta en la primera ejecución (por defecto 40).
  • addTotalRow — T añade abajo una fila TOTAL con la suma; nil sin suma.
  • sortSymbols — T ordena los símbolos alfabéticamente; nil en el orden del recuento.

AUTONUMBER — numerar elementos en orden

⬇ AutoNumber.lsp

Asigna números consecutivos a los elementos seleccionados (pilares, luminarias, plazas de aparcamiento, estancias) en la dirección elegida. El archivo contiene dos comandos: AUTONUMBER (solo números) y AUTONUMBERPREFIX (números con prefijo, p. ej. «P-1», «P-2»).

  1. Escribe AUTONUMBER o AUTONUMBERPREFIX.
  2. Selecciona los elementos y pulsa Enter.
  3. Responde a las preguntas (ver Opciones): junto a cada elemento aparece un número.

El número se coloca en el centro del elemento: en el punto de inserción de un bloque o texto, el centro de un círculo, el punto medio de una línea o la media de los vértices de una polilínea.

Opciones

Al ejecutar (Enter = valor entre corchetes):

  • Prefijo (solo AUTONUMBERPREFIX) — texto que se añade delante del número, p. ej. P- → P-1, P-2…
  • Dirección — 1: de izquierda a derecha; 2: de derecha a izquierda; 3: de abajo arriba; 4: de arriba abajo; 5: a lo largo de una línea que designas con dos puntos (p. ej. una fila oblicua de pilares). Otro valor = 1.
  • Altura del texto — por defecto 1; en un dibujo en mm o cm indica un valor mayor, p. ej. 250.
  • Capa de los números — por defecto 0; la capa indicada se crea si no existe.
  • Número inicial — por defecto 1; útil para continuar la numeración de otro plano.

El script no tiene ajustes en el archivo.

APPENDTEXT — añadir texto a muchos textos

⬇ AppendText.lsp

Añade el mismo texto al final de muchos textos seleccionados a la vez: p. ej. la unidad « m2», un sufijo «/A» o la referencia de una planta.

  1. Escribe APPENDTEXT.
  2. Escribe el texto a añadir y pulsa Enter.
  3. Selecciona los textos y pulsa Enter.

Funciona con textos de una y de varias líneas.

Opciones

Al ejecutar:

  • Texto a añadir — puede contener espacios. Se añade sin separación, así que si quieres un espacio, empieza el texto con él (p. ej. m2).

El script no tiene ajustes en el archivo.

DECREASETEXTVALUE — reducir números en textos

⬇ DecreaseTextValue.lsp

Resta el valor indicado a los números escritos en los textos seleccionados. Útil para recalcular cotas de nivel tras cambiar la referencia o para corregir rotulaciones.

  1. Escribe DECREASETEXTVALUE.
  2. Indica el valor (ver Opciones).
  3. Selecciona los textos y pulsa Enter.

Notas:

  • El texto debe contener solo el número, p. ej. 12,50, +3,20 o -0.45 (coma o punto). El resultado tiene coma decimal y tantos decimales como el original (o más, si el valor indicado los requiere); el signo «+» inicial se mantiene en los resultados ≥ 0.
  • Los textos que no son un número se omiten y se listan en la línea de comandos.

Opciones

Al ejecutar:

  • Valor a restar — cuánto reducir los números, con punto decimal, p. ej. 0.25 (Enter = 0.1). Un número negativo, p. ej. -0.5, aumenta los valores.

El script no tiene ajustes en el archivo.

EXPORTTEXT — exportar textos a un archivo TXT

⬇ ExportText.lsp

Guarda el contenido de los textos seleccionados en un archivo .txt, por ejemplo para pasar nombres de estancias, números u observaciones del dibujo a Word o Excel.

  1. Escribe EXPORTTEXT.
  2. Selecciona los textos y pulsa Enter.
  3. Indica el nombre y la ubicación del archivo.

Tras cada texto, el archivo tiene una línea con el signo @, que facilita separar los textos de varias líneas (p. ej. en Word con Buscar y reemplazar). El formato de los textos de varias líneas (fuentes, colores) se elimina, los saltos de línea se conservan y los textos vacíos se omiten.

Opciones

Al ejecutar solo eliges el nombre y la ubicación del archivo. El script no tiene ajustes en el archivo.

EXPORTTEXTTOCSV — textos de una capa a Excel

⬇ ExportTextToCSV.lsp

Guarda en un archivo de Excel o CSV los textos del área seleccionada, pero solo de la capa que indiques: por ejemplo, solo los números de las estancias sin el resto de rotulaciones.

  1. Escribe EXPORTTEXTTOCSV.
  2. Haz clic en cualquier objeto de la capa de la que quieres los textos.
  3. Selecciona el área (con una ventana) y pulsa Enter.
  4. Elige la carpeta, el nombre y el formato del archivo.

Cada texto va a una fila distinta (columna A, sin encabezado). El formato de los textos de varias líneas se elimina y los saltos de línea se sustituyen por espacios.

Opciones

Al ejecutar:

  • Formato de archivo — .xlsx/.xls (guardado mediante Excel; las celdas tienen formato «Texto», así que p. ej. 1/2 o +12.30 no se convierten en fecha ni en número) o .csv (texto plano). Sin Excel instalado se crea un CSV con el mismo nombre.

Ajustes en el archivo:

  • fileSuffix — terminación del nombre de archivo propuesto (nombre del dibujo + _texts).

Preguntas frecuentes

¿Los scripts son gratuitos?

Sí. Puedes descargar, usar y modificar todos los scripts sin coste y sin crear una cuenta.

¿Funcionan en AutoCAD LT?

Puede que no. Los scripts usan funciones de Visual LISP (ActiveX) que AutoCAD LT no admite o admite solo en parte. Funcionan en AutoCAD completo y en GstarCAD en Windows y, normalmente, también en otros programas compatibles con AutoLISP, como BricsCAD o ZWCAD.

¿Cómo cargo un script de forma permanente para no tener que hacerlo en cada inicio?

Añade el archivo al «Grupo de inicio» (Startup Suite) en la ventana del comando APPLOAD: en GstarCAD es el icono del maletín y en AutoCAD el botón «Contenido…». Los detalles están en la sección «Cómo cargar un script».

Al escribir el comando aparece «Comando desconocido». ¿Qué hago?

Comprueba que el script esté cargado (APPLOAD) y que escribes el nombre del comando y no el del archivo: por ejemplo, el archivo DecreaseTextValue.lsp se ejecuta con el comando DECREASETEXTVALUE.

¿Puedo adaptar un script a mis necesidades?

Sí. Un archivo .lsp es texto plano: ábrelo en el Bloc de notas. Los ajustes de cada script (p. ej. altura del texto, conversión de unidades, copia del resultado al portapapeles) están reunidos en el bloque ;; ---- SETTINGS ---- y descritos en la sección «Opciones» de cada script en esta página.

FixControl

¿Gestionas recepciones de obra y repasos?

FixControl permite registrar incidencias directamente sobre los planos del edificio, con asignación de contratistas, fotos e informes PDF.

🍪 Usamos cookies
Usamos cookies necesarias para el funcionamiento del servicio (inicio de sesión, idioma, recordar el consentimiento) y — con su consentimiento — cookies analíticas de Google Analytics 4 y cookies de marketing de Google Ads (medición de la eficacia de nuestras campañas publicitarias). Durante los pagos pueden utilizarse cookies de los operadores de pago. Su elección se recuerda durante un año.   Detalles sobre las cookies  ·  Política de privacidad