acad hispano
¿Quieres reaccionar a este mensaje? Regístrate en el foro con unos pocos clics o inicia sesión para continuar.

Mensaje en selección.

+4
devitg
Dominguez
robierzo
carlosmgilp
8 participantes

Ir abajo

Mensaje en selección. Empty Mensaje en selección.

Mensaje por carlosmgilp Vie Abr 01, 2016 6:59 am

Hola muchachos, como están.
Tengo nuevamente una duda con el texto o mensaje al momento de seleccionar un objeto.

Normalmente tengo activado la entrada dinamica F12 para que lo que tenga que ingresar me salga junto al puntero.

Con (entsel) funciona super bien y lo hago de la siguiente manera.

Código:
(setq seleccion (entsel "\nSelecione primera entidad:"))

Pero si trato de hacerlo con (ssget) no puedo hacerlo directo, sino tengo que colocar el texto o mensaje aparte.

Código:
(princ "\nSelecione primera entidad:")
(setq seleccion (ssget))

Como puedo hacer para que el texto de selección se me vea junto al puntero, por si hay alguna manera de lograrlo claro esta.

Saludos.

carlosmgilp

Mensajes : 149
Fecha de inscripción : 17/03/2016
Edad : 42
Localización : Venezuela

Volver arriba Ir abajo

Mensaje en selección. Empty Re: Mensaje en selección.

Mensaje por robierzo Vie Abr 01, 2016 9:13 am

Que yo sepa, la función SSGET no permite introducir ningún argumento que no sea uno de los filtros propios de la función. Es decir, NO deja especificar un mensaje al estilo ENTSEL. Desconozco si existe una variable de sistema que pueda modificar el mensaje que aparece por defecto de "Designe objetos"
robierzo
robierzo

Mensajes : 103
Fecha de inscripción : 17/03/2016
Localización : La Coruña

http://www.selmotopografia.es

Volver arriba Ir abajo

Mensaje en selección. Empty Re: Mensaje en selección.

Mensaje por carlosmgilp Vie Abr 01, 2016 9:47 am

Hola robierzo, si estaba enterado que no admite mensaje, pues también pensé en una variable del sistema por si había alguna. Pero será esperar haber si alguien conoce alguna que lo haga posible. En lo particular el 95 % de AutoCAD lo utilizo con comandos así me evitó de colocar las barras de herramientas y tengo más espacio de pantalla de trabajo.
Claro son tonterías al final, pero se hace más agradable.
Es como el comando de eliminar de los AutoCAD nuevos, que oscurece el objeto y al lado del puntero sale una X me parece que a la vista son más agradables.
Pero no se consigue nada documentado de como lo hacen.
Un saludo.

carlosmgilp

Mensajes : 149
Fecha de inscripción : 17/03/2016
Edad : 42
Localización : Venezuela

Volver arriba Ir abajo

Mensaje en selección. Empty Re: Mensaje en selección.

Mensaje por Dominguez Vie Abr 01, 2016 12:54 pm

Exista una solucion que es la que yo uso:
NOMUTT:Suprime la visualización de mensajes (silenciamiento) que no se suprimiría normalmente. La visualización de mensajes es el modo normal, pero se suprime cuando se utilizan archivos de comandos, rutinas de AutoLISP, etc.
0 Reanuda el comportamiento normal de silenciamiento.
1 Suprime el silenciamiento de forma indefinida.
Valor normal: 0
Código:
(prompt "\nSelecione primera entidad:")
(setvar 'nomutt 1)
(setq seleccion (ssget))
(setvar 'nomutt 0)
y ya esta
Dominguez
Dominguez

Mensajes : 152
Fecha de inscripción : 20/03/2016
Edad : 74
Localización : Zaragoza (España)

Volver arriba Ir abajo

Mensaje en selección. Empty Re: Mensaje en selección.

Mensaje por carlosmgilp Vie Abr 01, 2016 8:16 pm

Hola hermano como estas.
100% Funcional para eliminar el command.
Esa no me la sabia, lista solo de aplicar.

Pero en el caso mio, quiero que apareciera el texto del mensaje al lado del puntero, cuando esta activada la entrada dinamica (F12)

Este ejemplo lo hice con (entsel) pero cuando se hace con (ssget) solo dice al lado del puntero Select objects y no el texto que yo quiero que muestre.

Mensaje en selección. 2n07fqr

Gracias.

carlosmgilp

Mensajes : 149
Fecha de inscripción : 17/03/2016
Edad : 42
Localización : Venezuela

Volver arriba Ir abajo

Mensaje en selección. Empty Re: Mensaje en selección.

Mensaje por devitg Vie Abr 01, 2016 11:54 pm

Porque esa es la condición para SSGET , no tengo idea como cambiarla .

devitg
Admin

Mensajes : 257
Fecha de inscripción : 16/03/2016
Edad : 75
Localización : CORDOBA ARGENTINA

https://acadhispano.foroargentina.net

Volver arriba Ir abajo

Mensaje en selección. Empty Re: Mensaje en selección.

Mensaje por amc.dicsac Sáb Abr 02, 2016 8:58 am

Código:

;; Un contenedor para la función ssget para permitir el uso de un mensaje de selección personalizada
;; argumentos:
;; msg - mensaje de selección
;; params - lista de argumentos ssget
   (vl-load-com)
   (defun LM:ssget ( msg params / sel )
       (prompt msg)
       (setvar 'nomutt 1)
       (setq sel (vl-catch-all-apply 'ssget params))
       (setvar 'nomutt 0)
       (if (not (vl-catch-all-error-p sel))
           sel
       )
)

**********Ejemplo *********

Código:
(defun c:ModColor (/ ssobject sscolor)
(setvar "cmdecho" 0)
(setq ssmode (getvar "dynmode"))
(setvar "dynmode" 0)
(setq ssobject (LM:ssget "Sel. Objeto en el dibujo" nil))
(setvar "dynmode" ssmode)
(setq sscolor (getstring T "\nIngresa el color: "))
(vl-cmdf "_change" ssobject "" "prop" "color" sscolor "")
(setvar "cmdecho" 1)
(princ))

La unica manera de hacer lo que pides sería guardando la variable (DYNMODE) para que el mensaje de (SSGET) salga en la linea de comandos y luego volviendolo a restablecer el (DYNMODE), Ojala le sea util.

Saludos..
amc.dicsac
amc.dicsac

Mensajes : 83
Fecha de inscripción : 17/03/2016
Edad : 33
Localización : Lima - Perú

http://axprogramlisp.blogspot.pe/

Volver arriba Ir abajo

Mensaje en selección. Empty Re: Mensaje en selección.

Mensaje por nolo Sáb Abr 02, 2016 6:15 pm

Me temo que el Maestro LEE no pretende lo que busca Carlos si no todo lo contrario.
Yo creo que casi es posible pero no se si merece la pena el esfuerzo.
Lo digo porque tengo una función auxiliar sel22 que estoy desarrollando para mi rutina de ejes que se podría adaptar para el ssget con f12 activo.
Pero igual que esta rutina (por cierto, tira de transparencias por lo que solo vale a partir de la 2011 y con las exprees instaladas para las teclas auxiliares ) se podrían hacer otra enfocada al fin concreto que se proponga uno.
La dejo aquí con unas notas.txt de como usarla pero en vlx porque esta hecha para otra cosa (numerar de izquierda a derecha y de abajo hacia arriba) y no es específica para esto.
<dropbox nolo>
Un ejemplo de selección que explico en las líneas de mas abajo, podría ser:
Código:
(defun c:testa( / s2 s1 ss ssf orl old g)
(defun orl (lista) (mapcar '(lambda(a)(trans (nth a lista)0 1)) '(0 1 3 2)) )
(setq old (getvar 'SHORTCUTMENU))
(setvar 'SHORTCUTMENU 0)
(setq ss '() ssf (ssadd))
(while (progn
 (initget "W C A")
 (if (null (setq s2 (entsel "\nSeleccionar entidad  (Window/Crosing/Abandonar) : ")))
 (if (and (< (car(setq g (grread -1))) 11) (setq s1 (sel22 (list nil (cadr g )))))
 (if (setq s1 (if (=(last s1)3)
 (ssget "_CP" (orl (car s1)));; o solo "_C" (caar s1)(last(car s1)) )
 (ssget "_WP" (orl (car s1)));; o solo "_W" (caar s1)(last(car s1)) )
 )
 )
 (setq s1 (vl-remove-if '(lambda(a)(/= (type a) 'ENAME))(apply 'append (ssnamex s1))) )
 (progn (princ "\nNo hay selección")nil)
 )
 (progn (princ"\nTerminado...") nil)
 )
 (if (cond
 ( (and (listp s2)(=(Type (car s2))'ENAME)) (setq s1 (list (car s2))) )
 ( (= s2 "C")   (setq s1 (sel22 (list "C"));; o añadir en la lista (cadr(grread -1)) para obviar punto
 s1 (ssget "_CP" (orl (car s1)))
 )
 )
 ( (= s2 "W") (setq s1 (sel22 (list "W")) ;;  idem (cadr(grread -1))
 s1 (ssget "_WP" (orl (car s1)))
 )
 )
 (t nil)
 )
 (if (=(type s1) 'PICKSET)
 (setq s1 (vl-remove-if '(lambda(a)(/= (type a) 'ENAME))(apply 'append (ssnamex s1))) )
 s1
 )
 (progn (if (/= s2 "A")(princ "\nNo hay selección")(princ"\nTerminado...")) nil)
 )
 ))

;; contenido bucle
(if ss (mapcar '(lambda(a)(redraw a 4)) ss))
(if (and (type acet-sys-shift-down) (acet-sys-shift-down) )
 (setq ss (vl-remove-if '(lambda(a)(member a s1)) ss))
 (foreach a s1 (if (not( member a ss))(setq ss (cons a ss))) )
)
(mapcar '(lambda(a)(redraw a 3)) ss)

)
(mapcar '(lambda(a)(setq ssf (ssadd a ssf)) ) ss)
(sssetfirst ssf ssf)
(setvar 'SHORTCUTMENU old)
(princ)
)

Primero se define la función orl que lo que sirve es para ordenar de manera consecutiva al perímetro lo que devuelve sel22 y así poder hacer una selección por poligonal "w" o "c"
Siguiente, guardar y poner la variable SHORTCUTMENU a 0 para poder salir con el botón derecho del ratón
Inicializar variables y bucle mientras hay respuesta al finalizar un progn
initget y entsel para que aparezca junto al cursor
Que no se selecciona nada, pues verifica que no se ha pulsado botón derecho (< (car(grread -1)11) -> hasta la 2015- y si no hay nada toma el punto mas cercano devuelto por grread para entrar en sel22 con el valor nil y el punto, que hace que mi rutina se comporte como el windows/crosing de autocad. Si hay selección, se guarda el nombre devuelto por entget en una lista, si no se selecciona nada sale.
Si se pica "c" o "w", se fuerza a mi rutina sel22 a pedir un punto y se utiliza este string para dibujar con línea descontinua y color verde las ventanas, o azul y línea continua si la entrada es "w".

Las selecciones se guardan en forma de lista que se añaden o restan según este la tecla shift pulsada o no (solo si estan las extrees cargadas) y se redibujan con línea discontinua, en el nucleo de contenido del bucle.
Al finalizar se añaden a  una selección y se ponen como conjunto de selección activo  con el sssetfirst y se devuelve SHORTCUTMENU a su valor original.

Ni que decir tiene que hay que cargar primero sel22_nolo.vlx para poder correr testa

No se si merece la pena tanto código, pero da gusto jugar a sacarle el juguillo a las funciones gráficas.

Un saludo

nolo

Mensajes : 182
Fecha de inscripción : 17/03/2016

Volver arriba Ir abajo

Mensaje en selección. Empty Re: Mensaje en selección.

Mensaje por carlosmgilp Dom Abr 03, 2016 9:55 pm

Hola amc.dicsac gracias por la información.
Pero no logra lo que quiero, aunque como le comente a Dominguez, son cosas que no sabia y que de ahora en adelante aplicare para mis funciones.

Hola nolo como estas, gracias a ti también, si logra su cometido y entiendo mas el truco para lograrlo con toda esa explicación.
Pero tienes toda la razón, es demasiado código para solo mostrar un mensaje al lado del puntero.
Pensé que podría ser alguna variable o algo así.
Y al grread no le tengo el 100 % de confiabilidad, aunque con todo lo que me has enseñado de esa función y se todo lo que se puede lograr visualmente que es fantástico. Pues a veces creo que siempre puede dar algún error y mas en selecciones. Jejeje.

Mil gracias a todos.
Saludos.

carlosmgilp

Mensajes : 149
Fecha de inscripción : 17/03/2016
Edad : 42
Localización : Venezuela

Volver arriba Ir abajo

Mensaje en selección. Empty Re: Mensaje en selección.

Mensaje por Luis Alberto Benitez Vie Abr 08, 2016 9:14 pm

Estimado amc.dicsac
Estoy usando tu lisp para seleccionar una Polilinea
de una sola vez con:
(setq ssobject (ssget"_:s" '((0 . "LWPOLYLINE"))))
pero me da error, podrías incorporar en el lisp.
Un Saludo
Luis


Luis Alberto Benitez

Mensajes : 112
Fecha de inscripción : 29/03/2016

Volver arriba Ir abajo

Mensaje en selección. Empty ssget una sola entidad

Mensaje por devitg Sáb Abr 09, 2016 2:53 am

Luis Alberto Benitez escribió:Estimado amc.dicsac
Estoy usando tu lisp para seleccionar una Polilinea
de una sola vez con:
(setq ssobject (ssget"_:s" '((0 . "LWPOLYLINE"))))
pero me da error, podrías incorporar en el lisp.
Un Saludo
Luis



Hola Luis , por favor muestra el error , y de ser posible sube el dwg , recuerda que para enviar un DWG , lo debes hacer con DROPBOX o algún otro sistema de archivos compartidos  . dropbox es gratis .
Yo he probado esta línea de código

Código:
(setq ssobject (ssget"_:s" '((0 . "LWPOLYLINE"))))

Y funciona bien .  

Mensaje en selección. Para_i11

devitg
Admin

Mensajes : 257
Fecha de inscripción : 16/03/2016
Edad : 75
Localización : CORDOBA ARGENTINA

https://acadhispano.foroargentina.net

Volver arriba Ir abajo

Mensaje en selección. Empty Re: Mensaje en selección.

Mensaje por Luis Alberto Benitez Sáb Abr 09, 2016 2:30 pm

Aquí  completo el ejemplo lo que no se es como aplicando el lisp
seleccione la polilinea de una sola vez[code][;; Un contenedor para la función ssget para permitir el uso de un mensaje de selección personalizada
;; argumentos:
;; msg - mensaje de selección
;; params - lista de argumentos ssget
 (vl-load-com)
  (defun LM:ssget ( msg params / sel )
      (prompt msg)
      (setvar 'nomutt 1)
      (setq sel (vl-catch-all-apply 'ssget params))
      (setvar 'nomutt 0)
      (if (not (vl-catch-all-error-p sel))
          sel
      )
 )

(defun c:ModColor (/ ssobject sscolor)

(PRINC "\nSeleccionar Polilinea")
 (Terpri)
(setvar "cmdecho" 0)
(setq ssobject (LM:ssget "Seleccionar Polilinea" nil))


;(setq ssobject (ssget"_:s" '((0 . "LWPOLYLINE"))));para Seleccionar una sola vez


 (setq sscolor (getstring T "\nIngresa el color: "))
(vl-cmdf "_change" ssobject "" "prop" "color" sscolor "")
(setvar "cmdecho" 1)
(princ))/code]
Un Saludo
Luis

Luis Alberto Benitez

Mensajes : 112
Fecha de inscripción : 29/03/2016

Volver arriba Ir abajo

Mensaje en selección. Empty para seleccionar una sola entidad

Mensaje por devitg Sáb Abr 09, 2016 4:42 pm

Luis Alberto Benitez escribió:Aquí  completo el ejemplo lo que no se es como aplicando el lisp
seleccione la polilinea de una sola vez[code][;; Un contenedor para la función ssget para permitir el uso de un mensaje de selección personalizada
;; argumentos:
;; msg - mensaje de selección
;; params - lista de argumentos ssget
 (vl-load-com)
  (defun LM:ssget ( msg params / sel )
      (prompt msg)
      (setvar 'nomutt 1)
      (setq sel (vl-catch-all-apply 'ssget params))
      (setvar 'nomutt 0)
      (if (not (vl-catch-all-error-p sel))
          sel
      )
 )

(defun c:ModColor (/ ssobject sscolor)

(PRINC "\nSeleccionar Polilinea")
 (Terpri)
(setvar "cmdecho" 0)
(setq ssobject (LM:ssget "Seleccionar Polilinea" nil))


;(setq ssobject (ssget"_:s" '((0 . "LWPOLYLINE"))));para Seleccionar una sola vez


 (setq sscolor (getstring T "\nIngresa el color: "))
(vl-cmdf "_change" ssobject "" "prop" "color" sscolor "")
(setvar "cmdecho" 1)
(princ))/code]
Un Saludo
Luis

Hola Luis , sin tener el DWG es imposible analizar el el lisp , ya que lo que tu picas como lo que crees es una LWPOLYLINE, no lo es tal .







devitg
Admin

Mensajes : 257
Fecha de inscripción : 16/03/2016
Edad : 75
Localización : CORDOBA ARGENTINA

https://acadhispano.foroargentina.net

Volver arriba Ir abajo

Mensaje en selección. Empty Re: Mensaje en selección.

Mensaje por Luis Alberto Benitez Sáb Abr 09, 2016 9:40 pm

Envío el dibujo en JPG ya que todavía no tengo el programa
DROPBOX.
Un Saludo
Luis

Luis Alberto Benitez

Mensajes : 112
Fecha de inscripción : 29/03/2016

Volver arriba Ir abajo

Mensaje en selección. Empty Re: Mensaje en selección.

Mensaje por amc.dicsac Dom Abr 10, 2016 4:17 am

Hola Luis Alberto Benitez
El lisp anteriormente subido es del maestro Lee Mac, si lo que deseas es seleccionar polylineas con ssget y a la vez hacer que tenga un mensaje personalizado lo puedes hacer tal como lo dijo el maestro Dominguez con la variable nomutt de la siguien manera:

Test4.lsp
Código:
(defun c:test4 (/ ssobject sscolor)
(setvar "cmdecho" 0)
(prompt "\n>> Selecciona polylinea: ")
(setvar 'nomutt 1)
(setq ssobject (ssget"_:s" '((0 . "LWPOLYLINE"))))
(setvar 'nomutt 0)
(setq sscolor (getstring T "\nIngresa el color: "))
(vl-cmdf "_change" ss "" "prop" "color" sscolor "")
(setvar "cmdecho" 1)
(princ))

Te dejo este otro código pero con la diferencia de que esta vez lo seleccionas con entsel y un bucle adicional espero que te sea util.

Test5.lsp
Código:
(defun c:test5 (/ ent_sel ent_name ss sscolor)
(setvar "cmdecho" 0)
(while
(setq ent_sel (car (entsel "\n>> Selecciona polylinea:")))
(if (not (null ent_sel))
(progn
(setq ent_name (cdr (assoc 0 (entget ent_sel))))
(cond ((/= ent_name "LWPOLYLINE") (prompt "\n>> Selecciona polylinea: "))
      ((= ent_name "LWPOLYLINE") (setq ss (ssget "x" (list (cons 0 ent_name))))
(setq sscolor (getstring T "\nIngresa el color: "))
(vl-cmdf "_change" ss "" "prop" "color" sscolor ""))))))  
(setvar "cmdecho" 1)
(princ))

Saludos....
amc.dicsac
amc.dicsac

Mensajes : 83
Fecha de inscripción : 17/03/2016
Edad : 33
Localización : Lima - Perú

http://axprogramlisp.blogspot.pe/

Volver arriba Ir abajo

Mensaje en selección. Empty Re: Mensaje en selección.

Mensaje por Luis Alberto Benitez Dom Abr 10, 2016 1:35 pm

Gracias amc.dicsac precisamente es lo que intentaba hacer
que de una sola vez me seleccione la polilinea.
Un saludo
Luis

Luis Alberto Benitez

Mensajes : 112
Fecha de inscripción : 29/03/2016

Volver arriba Ir abajo

Mensaje en selección. Empty selecciona mas de una

Mensaje por devitg Dom Abr 10, 2016 1:51 pm

Luis Alberto Benitez escribió:Gracias amc.dicsac precisamente es lo que intentaba hacer
que de una sola vez me seleccione la polilinea.
Un saludo
Luis
Hola Luis Alberto , al tener "_X" selecciona TODAS las polilineas .

Creo que antes , preguntabas por UNA sola Polilinea .

devitg
Admin

Mensajes : 257
Fecha de inscripción : 16/03/2016
Edad : 75
Localización : CORDOBA ARGENTINA

https://acadhispano.foroargentina.net

Volver arriba Ir abajo

Mensaje en selección. Empty Re: Mensaje en selección.

Mensaje por Luis Alberto Benitez Dom Abr 10, 2016 2:27 pm

Gracias Gabriel por la aclaración con test4 la hace una sola polilinea
en cambio con test5 la hace en todas las polilineas, lo que seria bueno
es que en la segunda lo haga en una sola polilinea seleccionada.
De todas maneras gracias por todos los Aportes.
Un Saludo
Luis

Luis Alberto Benitez

Mensajes : 112
Fecha de inscripción : 29/03/2016

Volver arriba Ir abajo

Mensaje en selección. Empty Re: Mensaje en selección.

Mensaje por alpo52 Dom Mayo 22, 2016 11:12 am

Luis Alberto Benitez escribió:Aquí  completo el ejemplo lo que no se es como aplicando el lisp
seleccione la polilinea de una sola vez[code][;; Un contenedor para la función ssget para permitir el uso de un mensaje de selección personalizada
;; argumentos:
;; msg - mensaje de selección
;; params - lista de argumentos ssget
 (vl-load-com)
  (defun LM:ssget ( msg params / sel )
      (prompt msg)
      (setvar 'nomutt 1)
      (setq sel (vl-catch-all-apply 'ssget params))
      (setvar 'nomutt 0)
      (if (not (vl-catch-all-error-p sel))
          sel
      )
 )

(defun c:ModColor (/ ssobject sscolor)

(PRINC "\nSeleccionar Polilinea")
 (Terpri)
(setvar "cmdecho" 0)
(setq ssobject (LM:ssget "Seleccionar Polilinea" nil))


;(setq ssobject (ssget"_:s" '((0 . "LWPOLYLINE"))));para Seleccionar una sola vez


 (setq sscolor (getstring T "\nIngresa el color: "))
(vl-cmdf "_change" ssobject "" "prop" "color" sscolor "")
(setvar "cmdecho" 1)
(princ))/code]
Un Saludo
Luis

(ssget"_:s" '((0 . "LWPOLYLINE")))) quitale el ultimo parentesis (ssget"_:s" '((0 . "LWPOLYLINE"))) como esta escrito aqui y no da nungun error

alpo52

Mensajes : 1
Fecha de inscripción : 21/03/2016

Volver arriba Ir abajo

Mensaje en selección. Empty Seleccion

Mensaje por Luis Alberto Benitez Dom Mayo 22, 2016 3:12 pm

elpo52 antes que nada gracias por retomar la inquietud
aquí te envío las correcciones pero sigue dando error
Un Saludo
Luis


Código:
;; Un contenedor para la función ssget para permitir el uso de un mensaje de selección personalizada
;; argumentos:
;; msg - mensaje de selección
;; params - lista de argumentos ssget
 (vl-load-com)
  (defun LM:ssget ( msg params / sel )
      (prompt msg)
      (setvar 'nomutt 1)
      (setq sel (vl-catch-all-apply 'ssget params))
      (setvar 'nomutt 0)
      (if (not (vl-catch-all-error-p sel))
          sel
      )
 )

(defun c:ModColor (/ ssobject sscolor)

(PRINC "\nSeleccionar Polilinea")
 (Terpri)
(setvar "cmdecho" 0)
(setq ssobject (LM:ssget "Seleccionar Polilinea" nil))


(ssget"_:s" '((0 . "LWPOLYLINE")));para Seleccionar una sola vez


 ;(setq sscolor (getstring T "\nIngresa el color: "))
 ;(vl-cmdf "_change" ssobject "" "prop" "color" sscolor "")
  (vl-cmdf "_CHANGE" ssobject "" "PROP" "color" "Amarillo" "")
(setvar "cmdecho" 1)
(princ))

Luis Alberto Benitez

Mensajes : 112
Fecha de inscripción : 29/03/2016

Volver arriba Ir abajo

Mensaje en selección. Empty Re: Mensaje en selección.

Mensaje por carlosmgilp Dom Mayo 22, 2016 6:10 pm

Hola muchachos como están.

Haber entiendo que el error es aplicando la selección.
Si es eso y no estoy equivocado, aplicalo de esta manera.

Código:
(vl-load-com)
(defun lm:ssget  (msg params / sel)
  (prompt msg)
  (setvar 'nomutt 1)
  (setq sel (vl-catch-all-apply 'ssget params))
  (setvar 'nomutt 0)
  (if (not (vl-catch-all-error-p sel))
    sel))

(defun c:xxx  (/ ssobject sscolor)
  (princ "\nSeleccionar Polilinea")
  (terpri)
  (setvar "cmdecho" 0)
  (setq ssobject (lm:ssget "Seleccionar Polilinea" '("_:S" ((0 . "LWPOLYLINE")))))
  (setq sscolor (getstring t "\nIngresa el color: "))
  (vl-cmdf "_change" ssobject "" "prop" "color" sscolor "")
  (setvar "cmdecho" 1)
  (princ))

Espero te sirva, saludos.

carlosmgilp

Mensajes : 149
Fecha de inscripción : 17/03/2016
Edad : 42
Localización : Venezuela

Volver arriba Ir abajo

Mensaje en selección. Empty Re: Mensaje en selección.

Mensaje por Luis Alberto Benitez Lun Mayo 23, 2016 12:46 am

Carlos: Gracias por ser participe de este foro y responder  la inquietud, el lisp funciona perfectamente.
Un Saludo
Luis

Luis Alberto Benitez

Mensajes : 112
Fecha de inscripción : 29/03/2016

Volver arriba Ir abajo

Mensaje en selección. Empty Re: Mensaje en selección.

Mensaje por carlosmgilp Lun Mayo 23, 2016 12:53 am

Diría mi maestro Devit, hay que ser más claro al preguntar, para que no se este adivinando, pues se entendía como seleccionar un solo objeto, y todas las respuestas dadas eran valederas, también el dropbox no es necesario de instalar, pues a se puede utilizar directamente desde la web.
Un saludo y me alegra que sea haya solucionado.
Un saludo.

carlosmgilp

Mensajes : 149
Fecha de inscripción : 17/03/2016
Edad : 42
Localización : Venezuela

Volver arriba Ir abajo

Mensaje en selección. Empty Re: Mensaje en selección.

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.