Contar longitud de polilineas

Dudas y consultas sobre CAD. AutoCAD, Microstation y resto de aplicaciones CAD

Moderador: Moderadores

Responder
RAFX
Auxiliar
Mensajes: 54
Registrado: Mar Abr 22, 2008 9:15 am
Contactar:

Contar longitud de polilineas

Mensaje por RAFX »

¿Hay alguna forma de saber la longitud total de un grupo de polilineas independientes?. Lo necesito para contabilizar metros de conductos o de tuberias. Ahora lo hago a pedal, junto todas las polilineas y me da la longitud total.
Gracias
LA EXPERIENCIA ES LA FORMA MAS AMARGA DE ALCANZAR LA SABIDURIA

Plannerly ™ La plataforma de gestión BIM ™ SmartLeanBIM® © 2021
Plantillas para crear el Plan de Ejecución BIM (BEP). Cumplimiento de la norma ISO-19650
Plan gratuito en el que puedes acceder a todas las plantillas y si al comprarlo introduces el código DELINEACION obtendrás un 10% de descuento
Avatar de Usuario
theolddeli
Proyectista
Mensajes: 183
Registrado: Mar Ago 25, 2009 12:07 pm
Ubicación: MUY LEJOS DE MI TIERRA
Contactar:

Mensaje por theolddeli »

Hola
Existe un lisp que suma lineas, creo que funciona con polilineas tambien te lo voy a buscar y te digo algo.
Saber encajar las derrotas también es vencer.
Avatar de Usuario
theolddeli
Proyectista
Mensajes: 183
Registrado: Mar Ago 25, 2009 12:07 pm
Ubicación: MUY LEJOS DE MI TIERRA
Contactar:

Mensaje por theolddeli »

tengo la rutina que ya te comente
efectivamente te suma lineas y polilineas, te sustituye un texto con la longitus que deses y alguna tonteria mas.

Como quieres que te la pase
Saber encajar las derrotas también es vencer.
Avatar de Usuario
theolddeli
Proyectista
Mensajes: 183
Registrado: Mar Ago 25, 2009 12:07 pm
Ubicación: MUY LEJOS DE MI TIERRA
Contactar:

Mensaje por theolddeli »

he decidido colgartela aqui y tu te dreas el lisp, bueno tu y tod@s los que esten interesados.

Para crearte el lisp sigue estas fantasticas indicaciones

viewtopic.php?t=1914

el lisp es:

Código: Seleccionar todo

; Obtener la suma de las líneas o las polilíneas seleccionadas.

; Programa desarrollado por Mario Torres Pejerrey
; http://www.construcgeek.com/

;|Este es un lisp en formato original, se puede ver el código fuente, la intención, es de que el código fuente
; pueda ser modificado y adaptado a la necesidad de cada usuario, lo único que siempre se solicita en estos
; casos es de que siempre se haga referencia al autor del mismo (es decir que no se modifique la autoría del lisp),
; salvo que este se modifique ampliamente, si se construye un nuevo programa tomando como partes un lisp publicado,
; se debería de hacer el comentario de que parte del nuevo programa esta basado en el autor original.|;

; Programa descargado desde http://www.construcgeek.com/
; ConstrucGeek 2008

;Cargar las funciones ActiveX (Visual Lisp)
(vl-load-com)

(defun c:lpl()

;Variable para resumir la ruta de ubicacion en el registro de AX
  (setq Clave "HKEY_CURRENT_USER\\Software\\Construcgeek.com\\Longitud linea.Lsp\\")
  
;Verificamos el numero de decimales
  (setq numDecimalesDef (vl-registry-read (strcat Clave "Opciones") "Número de decimales"))
  (if (null numDecimalesDef)(setq numDecimalesDef 2)) ;Si no esta almacenado en el registro: Nro de decimales por defecto
  
  
  
(setq len 0)
(setq n 0)

(setq MSGDECIMALES (STRCAT "\nIngrese el número de decimales para las longitudes <ITOA>vla-object ename))
			    (setq	param (vlax-curve-getendParam oname))
			    (setq	lenHallada (vlax-curve-getDistAtParam oname param))
			    
			    (setq Len (+ len lenHallada))
			    (setq n(+ n 1))
			    
			)
	
			(if (/= len 0)
				(progn  
					(setq entSup (car (entsel "\nSeleccione el texto a reemplazar con la suma de las longitudes obtenidas o <Enter>: ")))
		
					(if (not (null entSup))
				  		(progn
				        	(setq entSupvla (vlax-ename->vla-object entsup))
							(setq texto (vla-get-TextString entSupvla))
			
							(setq cont 0)
					  
							(while
					  			(and (> (strlen texto) cont) (/= (substr texto (- (strlen texto) cont) 1) "=")  (<= (- cont 1) (strlen texto)))
					 	  		(setq cont (1+ cont))
					  		)
					  		  
							(setq TextoDescripcion (substr texto 1 (- (strlen texto) cont)))
							(if (= TextoDescripcion "")(setq TextoDescripcion "Longitud ="))
			
							(setq Longitud (strcat TextoDescripcion "" (rtos len 2 NUMDECIMALESDEF) " ml"))
			
				        	(vla-put...-TextString entSupvla Longitud)
						)
						(progn
				  			(princ (strcat "\nLongitud: " (rtos len 2 NUMDECIMALESDEF) " ml"))
				  			(princ)
						)
			     	)
			    )
			)
		)
	)
	(princ)

)

(setvar "modemacro" "http://www.construcgeek.com/")
el comando es lpl
si lo deseas se puede modificar

espero que te solucione tu problema
Saber encajar las derrotas también es vencer.
RAFX
Auxiliar
Mensajes: 54
Registrado: Mar Abr 22, 2008 9:15 am
Contactar:

longitud polilineas

Mensaje por RAFX »

Buenos dias.
He estado intentando cargar el lisp que me enviaste siguiendo las instrucciones de Afga y todo bien, pero cuando tecleo lpl para ejecutar la orden, me dice que comando desconocido, no se que habré hecho mal.

Gracias
LA EXPERIENCIA ES LA FORMA MAS AMARGA DE ALCANZAR LA SABIDURIA
Avatar de Usuario
theolddeli
Proyectista
Mensajes: 183
Registrado: Mar Ago 25, 2009 12:07 pm
Ubicación: MUY LEJOS DE MI TIERRA
Contactar:

Mensaje por theolddeli »

Has cargado la aplicacion en el cad???
Saber encajar las derrotas también es vencer.
RAFX
Auxiliar
Mensajes: 54
Registrado: Mar Abr 22, 2008 9:15 am
Contactar:

longitud polilineas

Mensaje por RAFX »

Si la he cargado pero he observado que en la lista de aplicaciones cargadas aparece en gris en lugar de en negro.
LA EXPERIENCIA ES LA FORMA MAS AMARGA DE ALCANZAR LA SABIDURIA
Avatar de Usuario
theolddeli
Proyectista
Mensajes: 183
Registrado: Mar Ago 25, 2009 12:07 pm
Ubicación: MUY LEJOS DE MI TIERRA
Contactar:

Mensaje por theolddeli »

Te vuelvo a colgar el texto del lsp
; Obtener la suma de las líneas o las polilíneas seleccionadas.

; Programa desarrollado por Mario Torres Pejerrey
; http://www.construcgeek.com/

;|Este es un lisp en formato original, se puede ver el código fuente, la intención, es de que el código fuente
; pueda ser modificado y adaptado a la necesidad de cada usuario, lo único que siempre se solicita en estos
; casos es de que siempre se haga referencia al autor del mismo (es decir que no se modifique la autoría del lisp),
; salvo que este se modifique ampliamente, si se construye un nuevo programa tomando como partes un lisp publicado,
; se debería de hacer el comentario de que parte del nuevo programa esta basado en el autor original.|;

; Programa descargado desde http://www.construcgeek.com/
; ConstrucGeek 2008

;Cargar las funciones ActiveX (Visual Lisp)
(vl-load-com)

(defun c:lpl()

;Variable para resumir la ruta de ubicacion en el registro de AX
(setq Clave "HKEY_CURRENT_USER\\Software\\Construcgeek.com\\Longitud linea.Lsp\\")

;Verificamos el numero de decimales
(setq numDecimalesDef (vl-registry-read (strcat Clave "Opciones") "Número de decimales"))
(if (null numDecimalesDef)(setq numDecimalesDef 2)) ;Si no esta almacenado en el registro: Nro de decimales por defecto



(setq len 0)
(setq n 0)

(setq MSGDECIMALES (STRCAT "\nIngrese el número de decimales para las longitudes <ITOA>vla-object ename))
(setq param (vlax-curve-getendParam oname))
(setq lenHallada (vlax-curve-getDistAtParam oname param))

(setq Len (+ len lenHallada))
(setq n(+ n 1))

)

(if (/= len 0)
(progn
(setq entSup (car (entsel "\nSeleccione el texto a reemplazar con la suma de las longitudes obtenidas o <Enter>: ")))

(if (not (null entSup))
(progn
(setq entSupvla (vlax-ename->vla-object entsup))
(setq texto (vla-get-TextString entSupvla))

(setq cont 0)

(while
(and (> (strlen texto) cont) (/= (substr texto (- (strlen texto) cont) 1) "=") (<= (- cont 1) (strlen texto)))
(setq cont (1+ cont))
)

(setq TextoDescripcion (substr texto 1 (- (strlen texto) cont)))
(if (= TextoDescripcion "")(setq TextoDescripcion "Longitud ="))

(setq Longitud (strcat TextoDescripcion "" (rtos len 2 NUMDECIMALESDEF) " ml"))

(vla-put...-TextString entSupvla Longitud)
)
(progn
(princ (strcat "\nLongitud: " (rtos len 2 NUMDECIMALESDEF) " ml"))
(princ)
)
)
)
)
)
)
(princ)

)

(setvar "modemacro" "http://www.construcgeek.com/")
Espero que soluciones el problema
Saber encajar las derrotas también es vencer.
RAFX
Auxiliar
Mensajes: 54
Registrado: Mar Abr 22, 2008 9:15 am
Contactar:

LONGITUD POLILINEAS

Mensaje por RAFX »

Siento volver a molestarte pero sigo igual
LA EXPERIENCIA ES LA FORMA MAS AMARGA DE ALCANZAR LA SABIDURIA
Avatar de Usuario
theolddeli
Proyectista
Mensajes: 183
Registrado: Mar Ago 25, 2009 12:07 pm
Ubicación: MUY LEJOS DE MI TIERRA
Contactar:

Mensaje por theolddeli »

En la pagina: http://es.bibliocad.com/biblioteca/dibu ... ndex1.html
es de donde me lo descargue, solo tienes que registrarte para descargartela.

Espero solucionar el problema
Saber encajar las derrotas también es vencer.
Avatar de Usuario
theolddeli
Proyectista
Mensajes: 183
Registrado: Mar Ago 25, 2009 12:07 pm
Ubicación: MUY LEJOS DE MI TIERRA
Contactar:

Mensaje por theolddeli »

En esta otra pagina tambien existen bastantes aplicaciones y entre ellas la que buscas.

http://www.construcgeek.com
Saber encajar las derrotas también es vencer.
Difrab
En prácticas
Mensajes: 1
Registrado: Vie Nov 27, 2009 5:05 pm
Contactar:

Mensaje por Difrab »

Hola RAFX, te sale errores en la carga del lisp, porque parece que como se pasa de web en web, el lisp se a manipulado y ya no esta como originalmente lo crearon, por eso lo mejor es que lo bajes de la fuente original.

La dirección es ésta:

http://www.construcgeek.com/recursos/ru ... eccionadas

Además ahí te dicen como se debe de utilizar el lisp, además si te queda alguna duda puedes hacer las preguntas que quieras en sus foros.

Suerte!
RAFX
Auxiliar
Mensajes: 54
Registrado: Mar Abr 22, 2008 9:15 am
Contactar:

LONGITUD POLILINEAS

Mensaje por RAFX »

Antes de nada disculparme por la tardanza encontestar, pero hemos tenido dos entregas y ya sabeis lo que pasa.
He hecho lo que me dijiste en tu ultimo correo y efectivamente ha funcionado.
Muchas gracias.
Un saludo.
LA EXPERIENCIA ES LA FORMA MAS AMARGA DE ALCANZAR LA SABIDURIA
Responder

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 11 invitados