Texto de Coordenada
2 participantes
Página 1 de 1.
Texto de Coordenada
Estimados foristas expongo un lisp a los efectos de corregir ya que se produce
un error al aplicar la cantidad de decimales.
"ERROR: tipo de argumento erróneo: fixnump: 2.0."
Desde Ya gracias por los Aportes.
un error al aplicar la cantidad de decimales.
"ERROR: tipo de argumento erróneo: fixnump: 2.0."
- Código:
;;;De las Adaptaciones de VGAETE (FENIXCAD)
(defun c:coor ()
(command "orto""des")
(command "osmode""0")
(command "osmode""8")
(PRINC "\nColocar Valor del Tamaño de Flecha: ")
(setq cmdact0 (getvar "cmdactive"))
(if (not tf0) (setq tf0 0))
(if (setq tf (getreal (strcat "\nColocar Valor del Tamaño de Flecha: <" (rtos tf0 2 0) ">: ")))
(setq tf0 tf)
(setq tf tf0)
)
(TERPRI)
(setq cmdact0 (getvar "cmdactive"))
(PRINC "\nColocar Altura de Texto :")
(if (not at0) (setq at0 0))
(if (setq at (getreal (strcat "\nColocar Altura de Texto : <" (rtos at0 2 1) ">: ")))
(setq at0 at)
(setq at at0)
)
(TERPRI)
(setq cmdact0 (getvar "cmdactive"))
(PRINC "\nColocar cantidad de Decimales :")
(if (not cd0) (setq cd0 0))
(if (setq cd (getreal (strcat "\nColocar cantidad de Decimales : <" (rtos cd0 2 0) ">: ")))
(setq cd0 cd)
(setq cd cd0)
)
;(command "DIMASZ""1");Tamaño Punta de Flecha
(command "DIMASZ"tf);Tamaño Punta de Flecha
(command "DIMTXT"at);Altura de Texto
(setq pt (getpoint "\nCoordenada a Graficar : "))
at "Z= "(rt;(setq x (strcat "x= "(rtos (car pt) 2 3)))
(setq z (strcat (rtos (caddr pt) 2 cd))); Para Cantidad de decimales
(setq pt1 (getpoint pt "\nPocisión Texto: "))
(command "leader" pt pt1 "" z "")
(command "osmode""0")
(princ)
)
(prompt "\nPara llamar al comando escriba COOR")
Desde Ya gracias por los Aportes.
Luis Alberto Benitez- Mensajes : 112
Fecha de inscripción : 29/03/2016
Re: Texto de Coordenada
Creo que asi te funcionara, mira la diferencia con tu codigo, es poca cosa.
- Código:
;;;De las Adaptaciones de VGAETE (FENIXCAD)
(defun c:coor ()
(command "orto" "des")
(command "osmode" "0")
(command "osmode" "8")
(princ "\nColocar Valor del Tamaño de Flecha: ")
(setq cmdact0 (getvar "cmdactive"))
(if (not tf0)
(setq tf0 0)
)
(if (setq tf (getreal (strcat "\nColocar Valor del Tamaño de Flecha: <" (rtos tf0 2 0) ">: ")))
(setq tf0 tf)
(setq tf tf0)
)
(terpri)
(setq cmdact0 (getvar "cmdactive"))
(princ "\nColocar Altura de Texto :")
(if (not at0)
(setq at0 0)
)
(if (setq at (getreal (strcat "\nColocar Altura de Texto : <" (rtos at0 2 1) ">: ")))
(setq at0 at)
(setq at at0)
)
(terpri)
(setq cmdact0 (getvar "cmdactive"))
(princ "\nColocar cantidad de Decimales :")
(if (not cd0)
(setq cd0 0)
)
(if (setq cd (getreal (strcat "\nColocar cantidad de Decimales : <" (rtos cd0 2 0) ">: ")))
(setq cd0 cd)
(setq cd cd0)
) ;(command "DIMASZ""1");Tamaño Punta de Flecha
(command "DIMASZ" tf) ;Tamaño Punta de Flecha
(command "DIMTXT" at) ;Altura de Texto
(setq pt (getpoint "\nCoordenada a Graficar : "))
(setq z (strcat (rtos (caddr pt) 2 )(rtos cd)))
(setq pt1 (getpoint pt "\nPocisión Texto: "))
(command "leader" pt pt1 "" z "")
(command "osmode" "0")
(princ)
)
(prompt "\nPara llamar al comando escriba COOR")
Dominguez- Mensajes : 152
Fecha de inscripción : 20/03/2016
Edad : 74
Localización : Zaragoza (España)
Re: Texto de Coordenada
Antes que nada gracias Maestro por la pronta respuesta a la requisitoria.
estoy probando el lisp pero no acusa al pedido de la parte decimal.
Seguiré probando gracias.
estoy probando el lisp pero no acusa al pedido de la parte decimal.
Seguiré probando gracias.
Luis Alberto Benitez- Mensajes : 112
Fecha de inscripción : 29/03/2016
Re: Texto de Coordenada
Solucionado ahora funciona el lisp
- Código:
;;;De las Adaptaciones de VGAETE (FENIXCAD)
;;;Modif Luis A. Benitez
(defun c:coor-2 ()
(command "orto" "des")
(command "osmode" "0")
(command "osmode" "8")
(princ "\nColocar Valor del Tamaño de Flecha: ")
(setq cmdact0 (getvar "cmdactive"))
(if (not tf0)
(setq tf0 0)
)
(if (setq tf (getreal (strcat "\nColocar Valor del Tamaño de Flecha: <" (rtos tf0 2 0) ">: ")))
(setq tf0 tf)
(setq tf tf0)
)
(terpri)
(setq cmdact0 (getvar "cmdactive"))
(princ "\nColocar Altura de Texto :")
(if (not at0)
(setq at0 0)
)
(if (setq at (getreal (strcat "\nColocar Altura de Texto : <" (rtos at0 2 1) ">: ")))
(setq at0 at)
(setq at at0)
)
(terpri)
(setq cmdact0 (getvar "cmdactive"))
(princ "\nColocar cantidad de Decimales :")
(if (not cd0)
(setq cd0 0)
)
(setq *cd* (cond ((getint (strcat "\nColocar Cantidad de Decimales <" (itoa (setq *cd* (cond ( *cd* ) ( 4 )))) ">: "))) ( *cd* )))
(command "DIMASZ" tf) ;Tamaño Punta de Flecha
(command "DIMTXT" at) ;Altura de Texto
(setq pt (getpoint "\nCoordenada a Graficar : "))
(setq z (strcat (rtos (caddr pt) 2 *cd*)))
(setq pt1 (getpoint pt "\nPocisión Texto: "))
(command "leader" pt pt1 "" z "")
(command "osmode" "0")
(princ)
)
(prompt "\nPara llamar al comando escriba COOR-2")
Luis Alberto Benitez- Mensajes : 112
Fecha de inscripción : 29/03/2016
Re: Texto de Coordenada
De todas maneras, si te interesa, aqui tienes una rutina que ademas se actualiza la coordenada Z cuando se desplaza o modifica dicho punto.
- Código:
; Escribe con leader coordenadas X Y Z de puntos indicados (actualiza desplazamientos).
; Luis Dominguez Gomez 2005
;;;================================================================================================
(defun c:pts_cor (/ lay ort pto objid)
(setvar 'cmdecho 0)
(setq lay (getvar 'clayer))
(setq ort (getvar 'orthomode))
(setvar 'fielddisplay 0) ; fondo desactivado
(if (not (tblobjname "LAYER" "COORD"))
(entmake (list '(0 . "LAYER") '(100 . "AcDbSymbolTableRecord") '(100 . "AcDbLayerTableRecord")
'(2 . "COORD") '(70 . 0) '(62 . 1) '(6 . "continuous")
)
)
)
(while (setq pto (getpoint "\nSeñala Punto: "))
(entmake (list '(0 . "POINT")
'(100 . "AcDbEntity")
'(8 . "Defpoints")
'(62 . 1)
'(100 . "AcDbPoint")
(cons 10 pto)
)
)
(setq objid (itoa (vla-get-objectid (vlax-ename->vla-object (entlast)))))
(setvar 'orthomode 0)
(setvar 'clayer "COORD")
(command
"_leader"
pto
"\\"
(polar (getvar 'lastpoint)
(if (< (car pto) (car (getvar 'lastpoint)))
0
pi
)
(getvar 'textsize)
)
""
;;; (strcat "X= %<\\AcObjProp Object(%<\\_ObjId " objid ">%).Coordinates \\f \"%lu2%pt1%pr3\">%")
;;; (strcat "Y= %<\\AcObjProp Object(%<\\_ObjId " objid ">%).Coordinates \\f \"%lu2%pt2%pr3\">%")
(strcat "Z= %<\\AcObjProp Object(%<\\_ObjId " objid ">%).Coordinates \\f \"%lu2%pt4%pr3\">%")
""
)
(setvar 'orthomode ort)
(setvar 'clayer lay)
)
(prin1)
)
;;;================================================================================================
Dominguez- Mensajes : 152
Fecha de inscripción : 20/03/2016
Edad : 74
Localización : Zaragoza (España)
Re: Texto de Coordenada
Gracias Maestro ya lo estoy poniendo en practica.
Luis Alberto Benitez- Mensajes : 112
Fecha de inscripción : 29/03/2016
Re: Texto de Coordenada
Estoy Probando el lisp y al mover el punto no me actualiza la Coordenada
por o demás funciona.
por o demás funciona.
Luis Alberto Benitez- Mensajes : 112
Fecha de inscripción : 29/03/2016
Re: Texto de Coordenada
Solo se actualiza si regeneras el dibujo.Luis Alberto Benitez escribió:Estoy Probando el lisp y al mover el punto no me actualiza la Coordenada
por o demás funciona.
Has un regen y veras como se actualiza.
Dominguez- Mensajes : 152
Fecha de inscripción : 20/03/2016
Edad : 74
Localización : Zaragoza (España)
Re: Texto de Coordenada
JaJaJaJaDominguez escribió:Solo se actualiza si regeneras el dibujo.Luis Alberto Benitez escribió:Estoy Probando el lisp y al mover el punto no me actualiza la Coordenada
por o demás funciona.
Has un regen y veras como se actualiza.
Nuestro cerebro si que necesita regeneracion.
Si la coordenada es Z (no X o Y), por mas que lo muevas no te cambiara, por que siempre estara a la misma altura, trata de moverlo en el eje Z y veras como cambia cuando regeneres el dibujo.
Esa rutina se creo para coordenadas X e Y.
saludos
Dominguez- Mensajes : 152
Fecha de inscripción : 20/03/2016
Edad : 74
Localización : Zaragoza (España)
Re: Texto de Coordenada
Si ya lo se pero lo estoy probando de las Coordenadas X Y Z lo regenero y no actualiza
los valores. lo otro seria colocar la cantidad de decimales.
Gracias por los Aportes al Tema.
los valores. lo otro seria colocar la cantidad de decimales.
Gracias por los Aportes al Tema.
Luis Alberto Benitez- Mensajes : 112
Fecha de inscripción : 29/03/2016
Re: Texto de Coordenada
Haber Luis:Luis Alberto Benitez escribió:Si ya lo se pero lo estoy probando de las Coordenadas X Y Z lo regenero y no actualiza
los valores. lo otro seria colocar la cantidad de decimales.
Gracias por los Aportes al Tema.
El punto que se acota, es un punto invisible situado en la capa defpoints, entonces tienes que mover o desplazar con la orden "estira" la punta de la flecha y el punto invisible, si desplazas el leader solamente, y te dejas el punto invisible en el mismo sitio, no te actualizara la cota.
En resumen lo importante es desplazar el punto invisible, y te funcionara la actualizacion con "regent".
En cuanto a los decimales, se puede modificar a tu antojo facilmente, si lo quieres yo te lo modifico.
Un saludo
Dominguez- Mensajes : 152
Fecha de inscripción : 20/03/2016
Edad : 74
Localización : Zaragoza (España)
Re: Texto de Coordenada
Desplazo la punta de la flecha con el punto luego aplico regent
y no me actualiza.
Pero lo que mas me entereza es la cantidad de Decimales.
Gracias Nuevamente.
y no me actualiza.
Pero lo que mas me entereza es la cantidad de Decimales.
Gracias Nuevamente.
Luis Alberto Benitez- Mensajes : 112
Fecha de inscripción : 29/03/2016
Re: Texto de Coordenada
No entiendo que no te actualice, algo haces mal.Luis Alberto Benitez escribió:Desplazo la punta de la flecha con el punto luego aplico regent
y no me actualiza.
Pero lo que mas me entereza es la cantidad de Decimales.
Gracias Nuevamente.
En cuanto a los decimales, ya lo tienes arreglado en el codigo que te mando.
- Código:
; Escribe con leader coordenadas X Y Z de puntos indicados (actualiza desplazamientos).
; Luis Dominguez Gomez 2005
;;;================================================================================================
(defun c:pts_cor (/ lay ort pto objid dec)
(setvar 'cmdecho 0)
(setq lay (getvar 'clayer))
(setq ort (getvar 'orthomode))
(if (not *dec*)
(setq *dec* (getint "\nCuantos decimales: "))
(progn (setq dec (getint (strcat "\nCuantos decimales: <" (itoa *dec*) ">")))
(if (/= dec nil)
(setq *dec* dec)
)
)
)
(setvar 'fielddisplay 0) ; fondo desactivado
(if (not (tblobjname "LAYER" "COORD"))
(entmake (list '(0 . "LAYER") '(100 . "AcDbSymbolTableRecord") '(100 . "AcDbLayerTableRecord")
'(2 . "COORD") '(70 . 0) '(62 . 1) '(6 . "continuous")
)
)
)
(while (setq pto (getpoint "\nSeñala Punto: "))
(entmake (list '(0 . "POINT")
'(100 . "AcDbEntity")
'(8 . "Defpoints")
'(62 . 1)
'(100 . "AcDbPoint")
(cons 10 pto)
)
)
(setq objid (itoa (vla-get-objectid (vlax-ename->vla-object (entlast)))))
(setvar 'orthomode 0)
(setvar 'clayer "COORD")
(command "_leader"
pto
"\\"
(polar (getvar 'lastpoint)
(if (< (car pto) (car (getvar 'lastpoint)))
0
pi
)
(getvar 'textsize)
)
""
(strcat "X= %<\\AcObjProp Object(%<\\_ObjId "
objid
">%).Coordinates \\f \"%lu2%pt1%pr"
(itoa *dec*)
"\">%"
)
(strcat "Y= %<\\AcObjProp Object(%<\\_ObjId "
objid
">%).Coordinates \\f \"%lu2%pt2%pr"
(itoa *dec*)
"\">%"
)
(strcat "Z= %<\\AcObjProp Object(%<\\_ObjId "
objid
">%).Coordinates \\f \"%lu2%pt4%pr"
(itoa *dec*)
"\">%"
)
""
)
(setvar 'orthomode ort)
(setvar 'clayer lay)
)
(prin1)
)
;;;================================================================================================
Dominguez- Mensajes : 152
Fecha de inscripción : 20/03/2016
Edad : 74
Localización : Zaragoza (España)
Re: Texto de Coordenada
Agradecido Maestro, mas que suficiente con el lisp logrado,
lo de la actualización de las coordenadas veré que estoy
haciendo mal.
Un Saludo a la Distancia.
lo de la actualización de las coordenadas veré que estoy
haciendo mal.
Un Saludo a la Distancia.
Luis Alberto Benitez- Mensajes : 112
Fecha de inscripción : 29/03/2016
Re: Texto de Coordenada
Se me olvido decirte que el UCS debe estar (UCS Universal).Luis Alberto Benitez escribió:Agradecido Maestro, mas que suficiente con el lisp logrado,
lo de la actualización de las coordenadas veré que estoy
haciendo mal.
Un Saludo a la Distancia.
Dominguez- Mensajes : 152
Fecha de inscripción : 20/03/2016
Edad : 74
Localización : Zaragoza (España)
Temas similares
» HTML -> Texto
» Texto de mayúscula a minúscula
» Texto a Polilínea o curvas o lo que sea.
» Datos de CAD a CSV y de CSV a texto de Acad
» Pantalla de texto estrecha
» Texto de mayúscula a minúscula
» Texto a Polilínea o curvas o lo que sea.
» Datos de CAD a CSV y de CSV a texto de Acad
» Pantalla de texto estrecha
Página 1 de 1.
Permisos de este foro:
No puedes responder a temas en este foro.
|
|