Cerrar
¿Te gusta hispacad? Compártelo
Llámenos: 668 83 00 83

Pasar coordenadas de puntos y textos de acad a excel

El lenguaje de programación principal que tiene AutoCAD® para la personalización, permitiendo crear programas o rutinas que mejoran o complementan las herramientas existentes. Con unas nociones básicas de este lenguaje de programación es posible realizar programas que optimicen tareas repetitivas o incluso realicen tareas de gran complejidad. Trate de plantear sus dudas exponiendo ejemplos de lo que desea conseguir. Evite pedir la realización de un programa completo. Este foro está dedicado a la resolución de dudas concretas de un determinado código o parte del mismo.

Moderadores: Jorge_BH, Yoland, SpeedCAD, Acad version, devitg

Pasar coordenadas de puntos y textos de acad a excel

Notapor Andres Bustos » Sab 01 Dic, 2007 16:37

hola tengo una inquietud grandísima, necesisto pasar las coordenadas de unos puntos de una cartera de topografía con sus respectivos textos de acad a excel. En una pregunta anterior pasaron un codigo para pasar las copordenadas de los puntos, lastimosamente este código no pasa los textos que identifican a cada punto. agradezco su ciolaboración con esta inquietud. anexo el código para pasar los puntos.

; Exporta coordenadas de puntos a un archivo TXT ó SCV.
;; José Luis García Galán. 5/18/05, para HISPACAD.com
(vl-load-com) ;Abrir Vlisp Extensión AtiveX:
;;-------------------------- C:ExPtsArch ----------------------------------------------
;;Exportar datos de punto a un archivo de texto o SCV (Excel)
;;-------------------------------------------------------------------------------------
(defun C:ExPtsArch ( / sele fname SSToList ceros)
;;-------------------------------------------
;; conjunto de seleccion a lista de entidades
;;-------------------------------------------
(defun SSToList (ss / ssl n)
(if (and ss (= (type ss) 'PICKSET))
(repeat (setq n (sslength ss))
(setq ssl (cons (ssname ss (setq n (1- n))) ssl))))
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; MAIN PROGRAM ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(setvar "cmdecho" 0)
(setq ceros (getvar "dimzin"))
(prompt "\nSeleccione Puntos a exportar: ")
(if (null (setq sele (ssget (list '(0 . "POINT")))))
(progn (alert "\nNo se seleccionarón Puntos....")(exit))
);c.if
(if (null (setq fname (getfiled "Indique fichero de texto de datos" "" "csv;txt;*" 1)))
(progn (alert "\nNo se indico fichero de datos....")(exit))
);c.if
(setvar "dimzin" 1)
(xyz_2_arch (SSToList sele) fname)
(setvar "dimzin" ceros)
(prin1)
);c.defun

(defun xyz_2_arch (Lsel fname / xyz dec arch sep ext)
(defun xyz (pt sep)
(strcat (rtos (car pt) 2 dec) sep
(rtos (cadr pt) 2 dec) sep
(rtos (last pt) 2 dec))
);c.defun
(setq sep
(cond
((= (setq ext (strcase (vl-filename-extension fname))) ".CSV") ";") ;excel
((= ext ".TXT") ",") ;Texto TXT
(T " ")))
(setq dec (getvar "luprec"))
(setq arch (open fname "w"))
(mapcar (function (lambda (Ent / p10 p11)
(setq p10 (cdr (assoc 10 (entget Ent))))
(write-line (xyz p10 sep) arch)
)) Lsel);c.mapcar
(close arch)
(princ)
);c.defun
(prompt "Teclee la ORDEN: ExPtsArch para comenzar.....")
(princ)
Andres Bustos
 
Mensajes: 1
Registrado: Sab 01 Dic, 2007 14:46

Re: Pasar coordenadas de puntos y textos de acad a excel

Notapor devitg » Sab 01 Dic, 2007 19:24

sube el dwg donde quieres aplicar el lisp
Uso acad 2008 en XP.
DEVITG@GMAIL.COM
Si tuviera ocho horas , para voltear un arbol , me pasaria seis horas afilando mi hacha.
Abraham Lincoln
Mi nombre es Gabriel (Gabo)
devitg
 
Mensajes: 5510
Registrado: Lun 15 Mar, 2004 00:46
Ubicación: CORDOBA ARGENTINA

Re: Pasar coordenadas de puntos y textos de acad a excel

Notapor elpiyu » Mar 22 Ene, 2008 14:02

El lisp que te mandé funciona perfectamente, escribe la cota en texto tal copmo tu lo solicitas, solo debes quitar los ";" para que sean tratados como lista. Por eso te aclaré que si sabias lisp basico lo podias reprogramar a tu gusto.
elpiyu
 
Mensajes: 71
Registrado: Vie 26 Ene, 2007 15:53

Para Andres Bustos

Notapor elpiyu » Mar 22 Ene, 2008 14:09

Aqui te lo envio, solo tenias que remover los ";" y debes tener las coordenadas en excel separadas con "," copiar y pegar y listo.
No tienes los permisos requeridos para ver los archivos adjuntos a este mensaje.
elpiyu
 
Mensajes: 71
Registrado: Vie 26 Ene, 2007 15:53

Re: Pasar coordenadas de puntos y textos de acad a excel

Notapor elpiyu » Mar 22 Ene, 2008 14:13

el formato de los puntos debe ser:

nombre coordenadas. en dos columnas, or lo tanto debes escribir las coordenadas x,y,z concatenadas en una sola columna.ej:

1 102512,658125,12.35
Poste 102214,657156,11.57
elpiyu
 
Mensajes: 71
Registrado: Vie 26 Ene, 2007 15:53

Re: Pasar coordenadas de puntos y textos de acad a excel

Notapor daviar » Lun 20 Oct, 2008 17:41

Hola,

soy novato en AutoCAD.

Tengo muchas etiquetas en una capa independiente de un mapa catastral. Quisiera poder extraer la posición de cada una de las etiquetas a un archivo de texto. Creo que esta rutina me serviría, pero no sé cómo emplearla

¿Podían ayudarme?

Muchas gracias.
daviar
 
Mensajes: 7
Registrado: Mié 08 Oct, 2008 08:56

Re: Pasar coordenadas de puntos y textos de acad a excel

Notapor daviar » Lun 20 Oct, 2008 17:42

Hola,

soy novato en AutoCAD.

Tengo muchas etiquetas en una capa independiente de un mapa catastral. Quisiera poder extraer la posición de cada una de las etiquetas a un archivo de texto. Creo que esta rutina me serviría, pero no sé cómo emplearla

¿Podían ayudarme?

Muchas gracias.
daviar
 
Mensajes: 7
Registrado: Mié 08 Oct, 2008 08:56

Re: Pasar coordenadas de puntos y textos de acad a excel

Notapor devitg » Lun 20 Oct, 2008 18:06

Sube el DWG donde estan las etiquetas
Uso acad 2008 en XP.
DEVITG@GMAIL.COM
Si tuviera ocho horas , para voltear un arbol , me pasaria seis horas afilando mi hacha.
Abraham Lincoln
Mi nombre es Gabriel (Gabo)
devitg
 
Mensajes: 5510
Registrado: Lun 15 Mar, 2004 00:46
Ubicación: CORDOBA ARGENTINA

HOla

Notapor daviar » Lun 20 Oct, 2008 18:10

Hola,

adjunto el mapa de catastro del que hablaba en el post anterior.

Lo ideal sería seleccionar todas de golpe, y que la rutina generase el archivo de coordenadas.

Muchas gracias. Un saludo-
No tienes los permisos requeridos para ver los archivos adjuntos a este mensaje.
daviar
 
Mensajes: 7
Registrado: Mié 08 Oct, 2008 08:56

Re: Pasar coordenadas de puntos y textos de acad a excel

Notapor devitg » Lun 20 Oct, 2008 18:17

Me imagino que las etiquetas son los Números Romanos y otros textos que están en CIAN ??
Uso acad 2008 en XP.
DEVITG@GMAIL.COM
Si tuviera ocho horas , para voltear un arbol , me pasaria seis horas afilando mi hacha.
Abraham Lincoln
Mi nombre es Gabriel (Gabo)
devitg
 
Mensajes: 5510
Registrado: Lun 15 Mar, 2004 00:46
Ubicación: CORDOBA ARGENTINA

Re: Pasar coordenadas de puntos y textos de acad a excel

Notapor devitg » Lun 20 Oct, 2008 19:09

Prueba con esto, no tiene control de error



Código: Seleccionar todo
;;/------------------------------------------------------------------
(defun ss->ent-list  (ss
            /
            )
  (mapcar 'cadr (ssnamex ss))
  )
;;*//*/*/*/*/*/*/*/*/*/*/*/*/**/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*



(defun obtiene-los-xyz-de-textos (/
AR ETIQUETA# ETIQUETA-DATA ETIQUETA-LIST ETIQUETA-SS ETIQUETA-X,Y,Z-LIST NOMBRE-ARCHIVO X,Y,Z XYZ
              )
(princ "\nSeleccione una etiqueta ejemplo")

 
(setq etiqueta# (ssname (ssget ":S" '(( 0 . "TEXT")))0))

 
;;(setq etiqueta-data(entget  etiqueta#))

(setq etiqueta-ss (ssget "X" (list(cons 8 (cdr (assoc 8 (entget etiqueta#))))(cons 0 (cdr (assoc 0 (entget etiqueta#)))))))

(setq etiqueta-list (ss->ent-list etiqueta-ss))

(setq etiqueta-x,y,z-list nil)

(foreach etiqueta etiqueta-list

(setq xyz (cdr ( assoc 10 (entget etiqueta))))

(setq x,y,z ( strcat (rtos(car xyz)2 2) "," (rtos(cadr xyz)2 2) "," (rtos (last xyz)2 2)))

(setq etiqueta-x,y,z-list (cons x,y,z etiqueta-x,y,z-list))

);_ foreach

(setq   nombre-archivo
    (strcat (getvar "dwgprefix")
       (vl-filename-base (getvar "dwgname"))
       ".csv"))
  (setq ar (open nombre-archivo "w"))
  (foreach texto  etiqueta-x,y,z-list
    (write-line texto ar)
    )
  (close ar)

)

(defun c:et-xyz ()

  (obtiene-los-xyz-de-textos)

  )

(princ "\n Comando ET-XYZ , cargado ")
(princ "\n Ponga ET-XYZ en la LINEA de Comandos")
Uso acad 2008 en XP.
DEVITG@GMAIL.COM
Si tuviera ocho horas , para voltear un arbol , me pasaria seis horas afilando mi hacha.
Abraham Lincoln
Mi nombre es Gabriel (Gabo)
devitg
 
Mensajes: 5510
Registrado: Lun 15 Mar, 2004 00:46
Ubicación: CORDOBA ARGENTINA

Re: Pasar coordenadas de puntos y textos de acad a excel

Notapor devitg » Lun 20 Oct, 2008 19:13

adjunto archivo CSV como zip
No tienes los permisos requeridos para ver los archivos adjuntos a este mensaje.
Uso acad 2008 en XP.
DEVITG@GMAIL.COM
Si tuviera ocho horas , para voltear un arbol , me pasaria seis horas afilando mi hacha.
Abraham Lincoln
Mi nombre es Gabriel (Gabo)
devitg
 
Mensajes: 5510
Registrado: Lun 15 Mar, 2004 00:46
Ubicación: CORDOBA ARGENTINA

Re: Pasar coordenadas de puntos y textos de acad a excel

Notapor daviar » Mar 21 Oct, 2008 09:40

Hola devitg,

primero darte las gracias por la ayuda prestada. Te estoy muy agradecido.

La rutina funciona perfectamente; el único inconveniente es que no distingue el texto de cada una de las aturas. Para ser funcional debería incluir en cada entrada de la tabla EXCEL el texto de la propia etiqueta, de modo que se pueda reconocer la altura del edificio situado en esa coordenada.

Voy a tratar de entender el código LISP que has dejado en le hilo para intentar adecuarlo a este problema específico, aunque nunca he programado en este lenguaje de programación, y creo que me va a resultar casi imposible-

Mil gracias de nuevo.

Un saludo.
daviar
 
Mensajes: 7
Registrado: Mié 08 Oct, 2008 08:56

Re: Pasar coordenadas de puntos y textos de acad a excel

Notapor THERMITA » Mié 22 Oct, 2008 20:34

cambiar entidades de layer con rutina lisp
THERMITA
 
Mensajes: 1
Registrado: Mié 22 Oct, 2008 20:18

Re: Pasar coordenadas de puntos y textos de acad a excel

Notapor daviar » Jue 23 Oct, 2008 11:29

Hola a tod@s,

finalmente he conseguido que aparezcan en el archivo de salida también las alturas. Apenas he modificado el excelente programa que me paso devitg.

Muchas gracias!!

En cuanto tenga un momento subo el .lsp tal y como ha quedado.

SALUDOS!
daviar
 
Mensajes: 7
Registrado: Mié 08 Oct, 2008 08:56

Siguiente

Volver a AUTOLISP / VISUAL LISP

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado