Página 1 de 1

RUTINA PARA EXTRAER INFORMACION CAPAS

Publicado: Jue Feb 28, 2008 3:27 pm
por RAULUCHI
Hola, alguién que conozca alguna forma o tenga alguna rutina para poder extraer toda la información referente a capas que tenga un dibujo (color, tipo de linea, grosor, etc...)??? El formato de extracción me es indiferente, word, excell, csv, html...

Gracias.

Publicado: Jue Feb 28, 2008 5:18 pm
por Afga
prueba con la aplicación existente en el siguiente enlace. Se llama Lista-capas, y se ejecuta con la orden "lst-capa". No sé si te servira, pues creo que solo exporta las capas y su color, pero es una base sobra la que poder trabajar.

Exporta lista capas a TXT


Un saludo :wink:

Publicado: Vie Feb 29, 2008 8:22 am
por RAULUCHI
Esa rutina la tenia afga, pero gracias. Conoces de alguna que te exporte todo?? :lol:

Gracias

Publicado: Vie Feb 29, 2008 10:14 am
por Afga
Si la encuentro te lo ahgo saber, por lo pronto no me viene a la mente.

Ya te diré. Saludos

Publicado: Vie Abr 11, 2008 9:38 pm
por elhombredelsaco
Hola, acabo de darme de alta en delinación.org y esta es la primera vez que participo en el foro, así que un saludo a todos.
Como fuere que me encontraba con ganas de programar, y lo sugerido en el post me ha parecido facil, me he puesto y me ha salido esto:

Código: Seleccionar todo

;;;
;;;	CPAS.LSP
;;;	Por PABLO_FERRER. (elhombredelsaco)
;;;-----------------------------------------------------------------------------
;;;	Rutina para obtener una tabla de extensión ".csv" (ejecutable con Excell)
;;;	con el listado completo de caracteristicas
;;;	de todas las capas del archivo
;;;
;;;	Fecha de creación: 	11/04/08 
;;;	Ultima modificación: 	11/04/08    ---------- v0.0 ----------
;;;	para llamar a la orden teclee: cpas
(defun c:cpas (/ capas i arch fich capa)
 (vl-load-com)
 (setq capas (vla-get-Layers (vla-get-ActiveDocument (vlax-get-acad-object)))
       i 0)
  (setq
      arch
	   (strcat
	     (getvar "dwgprefix")
	     "CAPAS_"
	     (VL-STRING-RIGHT-TRIM ".dwg" (getvar "dwgname"))
	     ".csv"
	   )
      fich (open arch "a")
    )
  (princ "\n" fich)
    (princ (strcat ";" "LISTADO DE CAPAS" ";" (getvar "dwgname") "\n") fich)
    ;(princ (strcat ";" "Generado el:" ";" fecha "\n") fich)
    ;(princ (strcat ";" "A las:" ";" hora "\n") fich)
    (princ (strcat ";" "NOMBRE;ACT;INUT;BLOQUEAR;COLOR;TIPO DE LÍNEA;GROSOR DE LÍNEA;ESTILO;TRAZAR") fich)
  (princ " ; \n" fich)
;;;
(repeat (vla-get-count capas)
  (setq capa (vla-item capas i))
  (princ
  	(strcat
	";"
	(vla-get-name capa)
	";"
	(if (= (vla-get-layeron capa) :vlax-true)
	 "act"
	 "des")
	";"
	(if (= (vla-get-freeze capa) :vlax-true)
	  "des"
	  "act")
	";"
	(if (= (vla-get-lock capa) :vlax-true)
	  "bloq"
	  "des")
	";"
	(itoa (vla-get-color capa))
	";"
	(vla-get-linetype capa)
	";"
	(itoa (vla-get-Lineweight capa))
	";"
	(vla-get-PlotStyleName capa)
	";"
	(if (= (vla-get-Plottable capa) :vlax-true)
	  "si"
	  "no")
	";"
	"\n")
	fich)
  (setq i (1+ i))
  )
(close fich)
  (alert
    (strcat "Se ha creado un fichero de nombre: "
	    "\n"
	    "CAPAS_"
	    (VL-STRING-RIGHT-TRIM ".dwg" (getvar "dwgname"))
	    ".csv"
	    "\n"
	    "en la dirección:"
	    "\n"
	    (getvar "dwgprefix")
    )
  )
)
Se puede mejorar, claro pero creo que es más que suficiente para las necesidades comentadas.
En otro ambito de cosas, me ha encantado encontrarme con un foro especifico para nosotros los delineantes y lo celebro mucho.
Espero poder participar en la medida en la que el tiempo me deje hacerlo, de este nuevo foro para mi.
Un saludo a todos.

Publicado: Lun Abr 14, 2008 9:27 am
por Afga
Excelente la aplicación hombredelsaco. Por cierto, seas bienvenido.


Un saludo :wink: