11 may 2008

Usar la barra de estado de AutoCAD para mostrar datos, con _MODEMACRO:

Customizar la barra de estado de AutoCAD en DIESEL:

¿Qué es DIESEL?:

DIESEL (Direct Interpretively Evaluated String Expression Language),
es Lenguaje de Expresiones como Cadenas de Texto Interpretables en forma Directa……..
Es otra Interface de Programación de AutoCAD, sirve para personalizar la “Barra de estado”
(Status Bar) de AutoCAD, crear comandos a partir de iconos y para modificar acciones
en comandos existentes, aunque existen interfaces mas poderosas como Vlisp,
VBA u ObjectARX (C++).
Las listas en DIESEL son siempre cadenas de texto de un solo renglón, evaluables
directamente, aunque sean operaciones matemáticas,y devuelven cadenas de texto
como resultados……..Existen dos tipos de uso difundidos para el lenguaje DIESEL dentro del
AutoCAD, customizar la barra de estado y crear o modificar macros de comandos.

Personalizar resultados en “Barra de estado” con MODEMACRO:

Se suele utilizar el lenguaje DIESEL dentro de la variable de sistema MODEMACRO
para mostrar en la barra de estado cierta información como la fecha y la hora, valores
de variables de sistema o variables de entorno o valores recuperables por rutinas Vlisp.
*Aquí Las listas comienzan con signo de dólar “$”, y listas anidadas igual.
Expresiones que pueden tener este formato:

$(funcion,operando,operando)

Los resultados son igualmente cadenas de texto.
Los operandos de una expresión DIESEL van separados por comas “,”……..
*El separador de decimales es el punto “.”
*Todo parentesis de apertura tiene su par de cierre.
*Se llama al comando MODEMACRO, y allí se introduce la lista DIESEL.
* “MODEMACRO” solo sirve para usar la “barra de estado” como panel de
resultados para mostrar alguna función o variable de AutoCAD.
El valor inicial de MODEMACRO al arrancar AutoCAD es “NIL”, y vuelve a NIL
al apagar AutoCAD o al ingresar un punto “.” en la solicitud del comando.

Ejemplo:
Quiero que la Barra de Estado de AutoCAD me muestre la fecha, entonces
inicio comando “MODEMACRO” e ingreso la expresión DIESEL:

$(edtime,$(getvar,date),Es----DDDD-----DD/MONTH/YYYY)

Donde uso dos funciones DIESEL:
edtime-------devuelve fecha y hora en un formato dado.
getvar--------devuelve el valor de la variable “date” o fecha de AutoCAD.
*Aquí “edtime” toma el valor de “date” en formato decimal y lo presenta con
el formato especificado:
“ES----DDDD(Domingo)----DD(13)/MONTH(Abril)/YYYY(2008)"
Y la barra de estado queda así:



*Si quiero que también me aparezca la hora con minutos y segundos pongo
en “modemacro”:

$(edtime,$(getvar,date),Es----DDDD-----DD/MONTH/YYYY-----HH:MM:SS)

Expresión para modemacro que muestra en barra de estado la altura
presente de texto:

altura de texto:$(getvar,textsize)

*En Modemacro, todo lo que sigue al signo de dólar “$” y al paréntesis de
apertura es tomable como DIESEL, hasta que cierre ese paréntesis.

Expresión para tener el nombre del archivo actual:

$(getvar,dwgname)

Expresión que escribe en barra de estado la capa actual:

Capa actual: $(getvar,clayer)

Para que muestre capa y color actuales:

capa:$(getvar,clayer) - color:$(getvar,cecolor)

Para que aparezca el nombre del comando en ejecución:

$(getvar,cmdnames)

Mostrar area de última medición cuando este aplicando comando _area:

$(if,$(eq,$(getvar,cmdnames),AREA), area anterior:$(getvar,area))

Funciones DIESEL usables para “MODEMACRO”:

Suma----“$(+,num,num,….)”-------
Ejemplo: $(+,12,1,23.3)------es 12+1+23.3

Resta----“$(-,num,num)”-------
Ejemplo: $(-,76.2,12)---------es 76.2 – 12

Multiplicación----“$(*,num,num)”----
Ejemplo: $(*,23,2.2)----es 23 x 2.2

División----“$(/,num,num)”----
Ejemplo: $(/,211,3)-------------es 211 ÷ 3

Igualdad----“$(=,num,num)”---
Ejemplo: $(=,12,12)------------es 12=12

Menor que----“$(<,num,num)”------
Ejemplo: $(<,13.2,15)----------es 13.2 menor que 15 Mayor que
----“$(>,num,num)”------
Ejemplo: $(>,87.231,76)-------es 87.231 mayor que 76

Distinto que----“$(!=,num,num)”----
Ejemplo: $(!=,64,63.89)--------es 64 ≠ 63.89

Menor o igual que----“$(<=,num,num)” ----
Ejemplo: $(<=,A,2.111)-----es A<=2.111-----A puede ser otra lista anidada.

Mayor o igual que
----“$(>=,num,num)”----
Ejemplo: $(>=,B,T)-----es B>=T

Conjunción Y (algo y otra cosa)----“$(and,num,num)” ----
Ejemplo: $(and,A,B)----es A y B

Transformar un número a un ángulo en un determinado modo, como cadena de texto:
Forma:$(angtos,num,modo,precision)

En ANGTOS, el modo puede ser:
0 --------Grados
1 --------Grados/minutos/segundos
2 --------Grados centesimales
3 --------Radianes
4 --------Unidades de topografia

Precisión es cantidad de decimales o unidades adicionales a las cifras finales.

Ejemplo:

$(angtos,23.12,1,2) -----devuelve 244d41'


*El comando _MACROTRACE muestra en linea de comandos las trayectorias
de operaciones de comandos cuando esta en 1, en 0 queda anulada esa
muestra*
Para ver la operatoria en ventana de comandos, pongo “MACROTRACE” en 1:

Para:

$(angtos,12.22,1,4)

Macrotrace muestra esto:

Comando:

MODEMACRO

Indique nuevo valor para MODEMACRO, o . para ninguno <"">: $(angtos,12.22,1,4)

Eval: $(ANGTOS, 12.22, 1, 4)

===> 340d9'16"



Para: $(angtos,3.14,0,3) -------------macrotrace muestra:

Comando:

MODEMACRO

Indique nuevo valor para MODEMACRO, o . para ninguno <"">: $(angtos,3.14,0,3)

Eval: $(ANGTOS, 3.14, 0, 3)

===> 179.909

*Pasa un número tomado como radianes a grados sexagesimales.



Mostrar Fecha y Hora:

“$(edtime, $(getvar,date), DD/ M/ YY - H:M:SS)”

Es presentar datos de la variable “date” en un determinado formato.

*Valores de FORMATO :

D.............dia, aparece asi: 9
DD..........dia,aparece: 09
DDD............nombre de dia tres letras: lun
DDDD.........nombre completo del dia: lunes
M.............mes: 6
MO...........mes con dos cifras: 06
MON.........mes tres letras: jun
MONTH.........mes, nombre completo: junio
YY..................año dos cifras: 78
YYYY.............año cuatro cifras: 1978
H ........................hora una cifra: 8
HH.................hora dos digitos: 08
MM................minutos dos digitos: 28
SS.................segundos dos digitos: 56
AM/PM.........AM o PM mayusculas: PM
am/pm............am o pm minusculas: pm

Ejemplo:
Comando:
MODEMACRO
Indique nuevo valor para MODEMACRO, o . para ninguno <"">:
$(EDTIME, $(getvar,date), DD/ M/ YY - H:M:SS)
Eval: $(EDTIME, $(getvar,date), DD/ M/ YY - H:M:SS)
Eval: $(GETVAR, date)
===> 2454571.99886917
===> 14/ 4/ 08 - 23:4:22------lo que se verá en barra de estado.

Igualdad entre cadenas comparadas:
Forma: “$(eq,num,num)”
Ejemplo:$(eq,$(getvar,PERIMETER), 2447.11)
es:
Comando: MODEMACRO
Indique nuevo valor para MODEMACRO, o . para ninguno <"">:
$(eq,$(getvar,PERIMETER), 2447.11)
Eval: $(EQ, $(getvar,PERIMETER), 2447.11)
Eval: $(GETVAR, PERIMETER)
===> 2447.11484019
===> 0-----------------la igualdad exacta no se cumple por lo que da cero,
si se cumple da 1.

Caso en que se cumple la igualdad:
$(eq,$(fix,$(getvar,PERIMETER)),1993)
Evaluacion:
Comando:
MODEMACRO
Indique nuevo valor para MODEMACRO, o . para ninguno <"">:
$(eq,$(fix,$(getvar,PERIMETER)),1993)
Eval: $(EQ, $(fix,$(getvar,PERIMETER)), 1993)
Eval: $(FIX, $(getvar,PERIMETER))
Eval: $(GETVAR, PERIMETER)
===> 1993.42587247
===> 1993
===> 1

Evaluar una cadena cualquiera:
Forma: “$(eval,expresión DIESEL)”
Ejemplo: $(eval, $(/, 12,2.3))
es:
Comando:
MODEMACRO
Indique nuevo valor para MODEMACRO, o . para ninguno <"">:
$(eval, $(/, 12,2.3))
Eval: $(EVAL, $(/, 12,2.3))
Eval: $(/, 12, 2.3)
===> 5.2173913

Otro ejemplo, mostrar la mitad del area medida anteriormente:
mitad de area:$(eval,$(/,$(getvar,AREA),2))
es:
Comando:
MODEMACRO
Indique nuevo valor para MODEMACRO, o . para ninguno <"">: mitad de
area:$(eval,$(/,$(getvar,AREA),2))
Eval: $(EVAL, $(/,$(getvar,AREA),2))
Eval: $(/, $(getvar,AREA), 2)
Eval: $(GETVAR, AREA)
===> 374271.29667677
===> 187135.64833839
aparece en linea de estado:
mitad de area: 187135.64833839

Rescatar solo la parte entera de un número real:
Forma: “$(fix,numero real)”
Mostrar redondeado el ultimo perimetro medido:
$(fix,$(getvar,PERIMETER))metros

Evaluación:
Comando:
MODEMACRO
Indique nuevo valor para MODEMACRO, o . para ninguno <"">:
redondeando, el ultimo perimetro tenia:$(fix,$(getvar,PERIMETER))metros
Eval: $(FIX, $(getvar,PERIMETER))
Eval: $(GETVAR, PERIMETER)
===> 2447.11484019
===> 2447
en barra de estado dirá:
redondeando, el ultimo perimetro tenia: 2447metros

Obtener un valor de una variable ambiental:
Forma: “$(getenv,variable ambiental)”
Sea obtener la ruta del sistema operativo:
la macro diesel es: $(GETENV, SystemRoot)
Evaluación:
Comando:
MODEMACRO
Indique nuevo valor para MODEMACRO, o . para ninguno <"">: $(getenv,SystemRoot)
Eval: $(GETENV, SystemRoot)
===> C:\WINDOWS----esto aparece en linea de estado.


Obtener valor de una variable de sistema:
Forma:”$(getvar,variable de sistema)”
Sea obtener el valor de "OSMODE" actual y mostrarlo en barra de estado,
la macro DIESEL es:
$(getvar,osmode)
Evaluación:
Comando:
MODEMACRO
Indique nuevo valor para MODEMACRO, o . para ninguno <",">: Osmode
actual:$(getvar,osmode)
Eval: $(GETVAR, osmode)
===> 4133
Aparece en linea de estado así:
Osmode actual:4133

"SI" condicional :
Forma:”$(if,condicion,valor si se cumple, valor si no se cumple)”
Ejemplo:
Sea indicar en barra de estado si estoy en espacio modelo o en espacio papel:
$(IF, $(eq,$(getvar,cvport),1), -PAPEL-, -MODELO-)
estando en espacio medelo la evaluación es:
Comando:
MODEMACRO
Indique nuevo valor para MODEMACRO, o . para ninguno <"">: $(IF,
$(eq,$(getvar,cvport),1), -PAPEL-, -MODELO-)
Eval: $(IF, $(eq,$(getvar,cvport),1), -PAPEL-, -MODELO-)
Eval: $(EQ, $(getvar,cvport), 1)
Eval: $(GETVAR, cvport)
===> 2
===> 0
===> -MODELO- es lo aparece en barra de estado

Sea poner en barra de estado un indicador de si esta o no el “MODO ORTHO”:
Macro:$(IF, $(eq,$(getvar,orthomode),0), -MODO ORTHO FUERA-)
Evaluación cuando el modo está fuera:
Comando:
MODEMACRO
Indique nuevo valor para MODEMACRO, o . para ninguno <"">:
$(if,$(eq,$(getvar,orthomode),0),-MODO ORTHO FUERA-)
Eval: $(IF, $(eq,$(getvar,orthomode),0), -MODO ORTHO FUERA-)
Eval: $(EQ, $(getvar,orthomode), 0)
Eval: $(GETVAR, orthomode)
===> 0
===> 1
===> -MODO ORTHO FUERA- esto aparece en linea de estado.

Obtener un elemento de una lista con “INDEX”:
Forma:”$(index,numero indicador, expresion que da una lista)”
.....el numero indicador es 0 para el primer lugar, y 9 para el ultimo.

Sea mostrar las tres coordenadas del último punto al terminar un comando:
macro:
$(INDEX, 0, $(getvar,LASTPOINT)), $(INDEX, 1, $(getvar,LASTPOINT)), $(INDEX, 2, $(getvar,LASTPOINT))
Evaluación:
Comando:
MODEMACRO
Indique nuevo valor para MODEMACRO, o . para ninguno <"">: $(INDEX, 0,
$(getvar,LASTPOINT)),$(INDEX, 1, $(getvar,LASTPOINT)),$(INDEX, 2,
$(getvar,LASTPOINT))
Eval: $(INDEX, 0, $(getvar,LASTPOINT))
Eval: $(GETVAR, LASTPOINT)
===> 2982.40238032,672.8905039,0
===> 2982.40238032
Eval: $(INDEX, 1, $(getvar,LASTPOINT))
Eval: $(GETVAR, LASTPOINT)
===> 2982.40238032,672.8905039,0
===> 672.8905039
Eval: $(INDEX, 2, $(getvar,LASTPOINT))
Eval: $(GETVAR, LASTPOINT)
===> 2982.40238032,672.8905039,0
===> 0
aparece en barra de estado:
2982.40238032, 672.8905039,0

Evaluar selectivamente algún argumento de una expresión con “NTH”:
sea la siguiente expresión condicional aplicada a una distancia tomada
previamente con el comando “_DIST”,es------si la distancia tomada, es menor
o igual a 1200.0, evalua la primera expresion de dos dadas, sino evalua la
segunda de dos dadas:
$(if,$(<=,$(getvar,DISTANCE),1200.0),$(nth,0,$(/,$(getvar,DISTANCE),2),0.0), $(nth,1,$(/,$(getvar,DISTANCE),2),$(/,$(getvar,DISTANCE),3))) Evaluación con MODEMACRO:
Comando: MODEMACRO Indique nuevo valor para MODEMACRO, o . para ninguno <"">:
$(if,$(<=,$(getvar,DISTANCE),1200.0),$(nth,0,$(/,$(getvar,DISTANCE),2),0.0),
$(nth,1,$(/,$(getvar,DISTANCE),2),$(/,$(getvar,DISTANCE),3)))

Eval: $(IF, $(<=,$(getvar,DISTANCE),1200.0), $(nth,0,$(/,$(getvar,DISTANCE),2),0.0), $(nth,1,$(/,$(getvar,DISTANCE),2),$(/,$(getvar,DISTANCE),3)))
Eval: $(<=, $(getvar,DISTANCE), 1200.0)
Eval: $(GETVAR, DISTANCE) ===> 1377.12628071
===> 0
Eval: $(NTH, 1, $(/,$(getvar,DISTANCE),2), $(/,$(getvar,DISTANCE),3))
Eval: $(/, $(getvar,DISTANCE), 3)
Eval: $(GETVAR, DISTANCE)
===> 1377.12628071
===> 459.04209357
aparece n barra de estado: 459.04209357
Porque en ese caso $(getvar,DISTANCE) da-------1377.12628071


Optar por uno u otro, con “OR”:
Ejemplo,sea optar por un valor de medición de AREA o por valor =0:
$(or,$(getvar,AREA),0)
Comando:
MODEMACRO
Indique nuevo valor para MODEMACRO, o . para ninguno <"">:
$(or,$(getvar,AREA),0)
Eval: $(OR, $(getvar,AREA), 0)
Eval: $(GETVAR, AREA)
===> 10000-------------opta por el valor de area, cuando existe medición previa.
Si no existe solo evalúa el valor de $(getvar,AREA), y omite evaluar el 0.

Otro ejemplo:
Opción por dos números, los suma:
Comando:
MODEMACRO
Indique nuevo valor para MODEMACRO, o . para ninguno <"">: $(or,1,2)
Eval: $(OR, 1, 2)
===> 3

Convertir un número en cadena de texto según un formato con “RTOS”:
Ejemplo:
Quiero que el valor de la última distancia medida me aparezca como cadena
de texto en modo “DECIMAL” y precisión “2”:
Expresión para MODEMACRO:
$(rtos,$(getvar,DISTANCE),2,2)
Evaluación:
Comando: modemacro
Indique nuevo valor para MODEMACRO, o . para ninguno <"">:
$(rtos,$(getvar,DISTANCE),2,2)
Eval: $(RTOS, $(getvar,DISTANCE), 2, 2)
Eval: $(GETVAR, DISTANCE)
===> 3346.90532671
===> 3346.91------resultado en barra de estado.
Es:
$(RTOS, valor, modo, precisión)
Los valores de modo posibles son:
1........... Científico
2 ...........Decimal
3 ...........Pies y pulgadas I (fracción decimal)
4 ...........Pies y pulgadas II (fracción propia)
5 ...........Fraccional

Medir cantidad de caracteres de una cadena de texto con “STRLEN”:
Sea mostrar en barra de estado la cantidad de caracteres de la cifra de
la última medición de distancia:
Expresión para MODEMACRO:
$(strlen,$(rtos,$(getvar,DISTANCE),2,2))
Evaluación:
Comando:
MODEMACRO
Indique nuevo valor para MODEMACRO, o . para ninguno <"">:
$(strlen,$(rtos,$(getvar,DISTANCE),2,2))
Eval: $(STRLEN, $(rtos,$(getvar,DISTANCE),2,2))
Eval: $(RTOS, $(getvar,DISTANCE), 2, 2)
Eval: $(GETVAR, DISTANCE)
===> 3346.90532671
===> 3346.91
===> 7-----Esto aparece en barra de estado.

Subcadena de una cadena de texto con “SUBSTR”:
De una cifra extraigo una parte y la muestro en barra de estado........
$(SUBSTR, $(rtos,$(getvar,DISTANCE),2,2), 2, 5)
Evaluación:
Comando:
MODEMACRO
Indique nuevo valor para MODEMACRO, o . para ninguno <"">: $(SUBSTR,
$(rtos,$(getvar,DISTANCE),2,2), 2, 5)
Eval: $(SUBSTR, $(rtos,$(getvar,DISTANCE),2,2), 2, 5)
Eval: $(RTOS, $(getvar,DISTANCE), 2, 2)
Eval: $(GETVAR, DISTANCE)
===> 1710.90043324
===> 1710.9
===> 1710.------esto aparece en barra de estado.

Convertir una cadena de texto a mayúsculas con “UPPER”:
$(upper,$(getvar,dwgname))
Evaluación:
Comando:
MODEMACRO
Indique nuevo valor para MODEMACRO, o . para ninguno <"">:
$(upper,$(getvar,dwgname))
Eval: $(UPPER, $(getvar,dwgname))
Eval: $(GETVAR, dwgname)
===> Dibujo1.dwg
===> DIBUJO1.DWG------esto aparece en barra de estado.

“XOR”, operador lógico “O” exclusivo:

La regla de operación en “XOR” es un tipo de uso exclusivista de “OR”:
(XOR 12 13) ES = (12 OR 13) Y NUNCA (12 Y 13)
Ejemplo:
Comando:
MODEMACRO
Indique nuevo valor para MODEMACRO, o . para ninguno <"">:
$(xor,2.2,3,6,7.7,67.8)
Eval: $(XOR, 2.2, 3, 6, 7.7, 67.8)
===> 67

$(xor,$(getvar,osnapz),1)
Evaluación:
Comando:
MODEMACRO
Indique nuevo valor para MODEMACRO, o . para ninguno <"">:
$(xor,$(getvar,osnapz),1)
Eval: $(XOR, $(getvar,osnapz), 1)
Eval: $(GETVAR, osnapz)
===> 1
===> 0

..........................................................................................................

*Ejemplos de expresiones DIESEL para MODEMACRO”:

*Expresión para que se muestre en barra de estado si un comando está en progreso o si está inactivo todo:
$(IF, $(eq,$(getvar,CMDACTIVE),1), >>>>*EN PROGRESO*>>>>, ----*INACTIVO*----)

*Fecha:
$(EDTIME, $(getvar,date), DD/MM/YYYY)

*Indicar en que color salen los objetos creados:
*Los objetos creados saldrán en color: $(getvar,CECOLOR)

*Saber a que altura estarán las cámaras:
*Las camaras se ubican en altura:$(getvar,cameraheight)

*Indicar en que ventana estamos, modelo o papel:
$(IF, $(eq,$(getvar,cvport),2), *MODELO*)$(IF, $(eq,$(getvar,cvport),1), *PAPEL*)

*Mostrar status de la entrada dinámica:
$(if,$(eq,$(getvar,DYNMODE),-1),*Entrada dinamica fuera*)$(if,$(eq,$(getvar,DYNMODE),1),*Entrada de puntero activada*)$(if,$(eq,$(getvar,DYNMODE),2),*Entrada de cotas activada*)$(if,$(eq,$(getvar,DYNMODE),3),*Entrada de puntero y de cotas activadas*)

*Mostrar elevacion de objetos creados:
Elevacion de los objetos creados:$(getvar,ELEVATION)

*Mostrar puntos limites de la extensión del dibujo en espacio modelo:
Punto inferior izquierdo:$(getvar,EXTMIN) – Punto superior derecho:$(getvar,EXTMAX)

*Saber en que nivel de suavidad van saliendo los objetos modelizados:
Nivel de suavidad de objetos modelizados:$(*,10,$(getvar,facetres))%

*Ver el valor de tolerancia a huecos en contornos, cuando se ejecuta un
Sombreado:
$(if,$(eq,$(getvar,cmdnames),BHATCH),Tolerancia actual a huecos en contornos:$(getvar,HPGAPTOL))

*Datos para el caso de hacer un sombreado:
$(if,$(eq,$(getvar,cmdnames),BHATCH),Tolerancia actual a huecos en contornos:$(getvar,HPGAPTOL)-Escala del sombreado:$(getvar,HPSCALE))

*Mostrar el nombre del bloque a insertar:
$(if,$(eq,$(getvar,cmdnames),INSERT),Bloque insertado:$(getvar,INSNAME))

*Muestra el último angulo almacenado al ejecutar un comando lineal como
polilinea, linea o arco:
ULTIMO ANGULO INTRODUCIDO:$(ANGTOS,$(GETVAR,LASTANGLE),0,2)º

*Muestra la distancia focal de perspectiva:
Distancia focal actual de perspectiva: $(getvar,lenslength)

*Mostrar los datos geográficos de ubicación del sitio del modelo:
Lugar del modelo--->Latitud:$(getvar,LATITUDE)-Longitud:$(getvar,LONGITUDE)

*Un comando AutoLISP para que aparezca la hora de creación del archivo
en barra de estado:
;;;indicar hora de creacion del presente archivo
;;;en barra de estado
(defun c:hora_archiv()
(setvar "modemacro"
"El presente archivo se creo a la hora:$(EDTIME, $(getvar,tdcreate), HH:MM)"
)
(princ)
);fin

*Poner un TIMER o Cronómetro en barra de estado que indique tiempo
transcurrido desde el inicio de archivo presente:
Transcurridos:$(EDTIME, $(getvar,tdusrtimer), MM:SS)Minutos

*Nombre del sistema actual de coordenadas:
Sistema de coordenadas actual: $(getvar,UCSNAME)

*Mostrar si el archivo actual es o no de solo lectura:
$(if,$(eq,$(getvar,WRITESTAT),0),*ARCHIVO SOLO LECTURA*)$(if,$(eq,$(getvar,WRITESTAT),1),*ARCHIVO MODIFICABLE*)

*Mostrar si las unidades por defecto se inician en milimetros o no en el dibujo:
$(if,$(eq,$(getenv,InsertUnitsDefSource),4),*Unidades en mm por defecto*,*Unidad por defecto diferente de mm*)
Expresión vlisp para hacer que las unidades por defecto en los dibujos sean
metros:
(setenv "InsertUnitsDefSource" "6")

*NOTA: Todas las expresiones DIESEL a ser ingresadas por _MODEMACRO,
deben ser de una sola linea o renglon, no pueden tener saltos de linea, por ello
es aconsejable realizarlas en el block de notas en una linea y despues copiar
y pegar en linea de comandos.
..................................................................................................................................................

*Páginas para consultar sobre DIESEL:
http://www.crlf.de/Dokumente/Diesel/Diesel.html
www.fourmilab.ch/diesel
http://members.iinet.net.au/~bigbyte/diesel.htm
http://www.upfrontezine.com/tailor/tailor17.htm
http://www.kxcad.net/autodesk/autocad/AutoCAD_2008_Customization_Guide/index.left.htm
http://www.kxcad.net/autodesk/autocad/AutoCAD_2008_Customization_Guide/ws73099cc142f4875513fb5cd10c4aa30d6b-7d0a.htm
http://web.madritel.es/personales1/argalnares/13_rutinas.htm
http://www.lawebdelprogramador.com/cursos/autocad/autocad_9.php
http://www.caddigest.com/subjects/autocad/tutorials/select/parsai_building_menu5.htm
http://www.grapevine.net/~lacy/index.html
..........................................................................................................................................