Ayuda con un lisp para poli-líneas
3 participantes
Página 1 de 1.
Ayuda con un lisp para poli-líneas
Buen día a todos. Espero se encuenren bien.
Una vez más busco ayuda para obtener una rutina lisp.
Pasa que tengo varias poli líneas, unas formadas por arcos y rectas y otras, solo por rectas. En algunos casos el o los arcos que tienen las poli líneas son muy evidentes, en otros, el arco es muy pequeño.
Busco diferenciar unas poli líneas de otras. Por lo que estoy tras una rutina que seleccione las poli líneas y que cambie el color de las que tienen arcos y rectas a azul y que cambie el color de las que están formadas solo por rectas a verde
Sé que con algo de trabajo puedo crear un lisp que seleccione la o las poli líneas pero no sé cómo diferenciar unas de otras, la cuestión está en el “IF”.
Si pueden ayudarme en esto, les agradezco.
Pongo un ejemplo en dwg de lo que busco.
https://www.dropbox.com/s/f5mdaxn719v0y57/Ejemplo%202.dwg?dl=0
De nuevo, muchas gracias
Una vez más busco ayuda para obtener una rutina lisp.
Pasa que tengo varias poli líneas, unas formadas por arcos y rectas y otras, solo por rectas. En algunos casos el o los arcos que tienen las poli líneas son muy evidentes, en otros, el arco es muy pequeño.
Busco diferenciar unas poli líneas de otras. Por lo que estoy tras una rutina que seleccione las poli líneas y que cambie el color de las que tienen arcos y rectas a azul y que cambie el color de las que están formadas solo por rectas a verde
Sé que con algo de trabajo puedo crear un lisp que seleccione la o las poli líneas pero no sé cómo diferenciar unas de otras, la cuestión está en el “IF”.
Si pueden ayudarme en esto, les agradezco.
Pongo un ejemplo en dwg de lo que busco.
https://www.dropbox.com/s/f5mdaxn719v0y57/Ejemplo%202.dwg?dl=0
De nuevo, muchas gracias
José Francisco- Mensajes : 46
Fecha de inscripción : 30/03/2016
Re: Ayuda con un lisp para poli-líneas
hola, para diferencias que polilineas tiene arco usa esta funcion (vla-getbulge Obj indice) cuando es 0 quiere decir que es recta si es diferente que cero es curva
saludos.
saludos.
ark-inge- Mensajes : 1
Fecha de inscripción : 07/06/2019
Re: Ayuda con un lisp para poli-líneas
Buen día para todos.
ark-inge, muchas gracias por su ayuda.
La verdad, lo he intentado pero no lo consigo, no logro meter la función (vla-getbulge Obj indice) en el lisp que tengo.
En este momento la rutina lo que hace es crear un par de capas, una para las poli-líneas sin arcos y otra para las poli-líneas que están formada por arcos y rectas, luego selecciona las poli-líneas y las cambia de capa o layer, creo que es mejor que como lo pensé en un primer momento (diferenciarlas por color).
Sé que es pedir mucho, pero por favor me puede ayudar con la función?
Este es el lisp que tengo:
Le agradezco desde ya.
saludos codiales.
ark-inge, muchas gracias por su ayuda.
La verdad, lo he intentado pero no lo consigo, no logro meter la función (vla-getbulge Obj indice) en el lisp que tengo.
En este momento la rutina lo que hace es crear un par de capas, una para las poli-líneas sin arcos y otra para las poli-líneas que están formada por arcos y rectas, luego selecciona las poli-líneas y las cambia de capa o layer, creo que es mejor que como lo pensé en un primer momento (diferenciarlas por color).
Sé que es pedir mucho, pero por favor me puede ayudar con la función?
Este es el lisp que tengo:
- Código:
(defun c:tmp ()
(vl-load-com)
(vl-cmdf "_layer" "_m" "pl" "_c" "3" "" "")
(vl-cmdf "_layer" "_m" "pla" "_c" "5" "" "")
(prompt "\nSeleccione las polilineas:")
(setq sel-pol (ssget (list '(0 . "LWPOLYLINE"))))
(if sel-pol
(progn
(setq n 0)
(repeat (sslength sel-pol)
(setq pol (ssname sel-pol n))
(vl-cmdf "_chprop" pol "" "_la" "pla" "")
(vl-cmdf "_chprop" pol "" "_c" "bylayer" "")
(setq n (+ n 1))
);repat
);progn
);if
);defun
Le agradezco desde ya.
saludos codiales.
José Francisco- Mensajes : 46
Fecha de inscripción : 30/03/2016
Re: Ayuda con un lisp para poli-líneas
A ver si...
Un saludo,
- Código:
(defun C:TEST (/ blg cmt cnt grp lbg obj)
(setq
cnt 0
grp (ssget (list (cons 0 "LWPOLYLINE")))
)
(while (> (sslength grp) cnt)
(setq
obj (vlax-ename->vla-object (ssname grp cnt))
cnt (1+ cnt)
cmt 0
lbg nil
)
(while (not (vl-catch-all-error-p (setq blg (vl-catch-all-apply 'vla-getbulge (list obj cmt)))))
(setq lbg (cons blg lbg) cmt (1+ cmt))
)
(if (vl-some '(lambda (x) (/= x 0)) lbg)
(vla-put-color obj 5)
(vla-put-color obj 3)
)
)
(princ)
)
Un saludo,
kasperle- Mensajes : 29
Fecha de inscripción : 18/03/2016
Re: Ayuda con un lisp para poli-líneas
Buen día a todos.
kasperle, muchas gracias.
El lisp hace lo que busco, diferenciar las poli-líneas unas de otras.
De nuevo, mil gracias
kasperle, muchas gracias.
El lisp hace lo que busco, diferenciar las poli-líneas unas de otras.
De nuevo, mil gracias
José Francisco- Mensajes : 46
Fecha de inscripción : 30/03/2016
Temas similares
» Ayuda con Lisp suma de lineas y polilineas
» Ayuda para modificar una rutina lisp
» Distancia entre (poli) líneas...
» Rutina para generar lineas de Radio en circunferencias
» Ayuda con un lisp
» Ayuda para modificar una rutina lisp
» Distancia entre (poli) líneas...
» Rutina para generar lineas de Radio en circunferencias
» Ayuda con un lisp
Página 1 de 1.
Permisos de este foro:
No puedes responder a temas en este foro.
|
|