Ayuda de MicroStation CONNECT Edition

Calculadora/Preprocesador

La utilidad Calculadora/Preprocesador ("calculat.ma") se utiliza para evaluar expresiones en entradas de teclado de MicroStation. La sintaxis utilizada es la de "C".

  • La calculadora muestra el resultado de una expresión en la barra de estado. Por ejemplo, si se carga la utilidad Calculadora/Preprocesador, cuando introduzca CALCULATOR 3*sin(90), el resultado, 3, se visualiza en la barra de estado.
  • El preprocesador sustituye una expresión por su resultado y transmite la entrada de teclado a MicroStation. Por ejemplo, si se carga la utilidad Calculadora/Preprocesador, cuando introduzca AA={asin(1)}, el ángulo activo se define como el resultado, 90º.

Gestión de expresiones C

Tanto la calculadora como el preprocesador gestionan las expresiones con la sintaxis C estándar.

La diferencia más significativa entre la gestión de expresiones C y la gestión de expresiones de la utilidad Calculadora/Preprocesador se halla en la división de números enteros. Con la gestión de expresiones C, la división de números enteros produce un resultado entero. Con la gestión de expresiones de la utilidad Calculadora/Preprocesador, la división de números enteros produce un resultado de coma flotante. Por ejemplo, en C el resultado de 1/4 es 0. Con Calculadora/Preprocesador, el resultado de 1/4 es 0.25.

Las funciones cos, acos, sin, asin, atan, atan2, tan, cosh, tanh, sinh, exp, ldexp, log, log10, pow y sqrt son compatibles. Estas funciones son las mismas que las funciones C estándar, excepto que los ángulos se expresan en grados en lugar de en radianes.

Es posible declarar variables y funciones para usarlas con la utilidad Calculadora/Preprocesador. Consulte Personalización de Calculadora/Preprocesador para obtener más información.

Interacción entre el preprocesador y el producto

La interacción entre el preprocesador y MicroStation mientras se carga Calculadora/Preprocesador se describe a continuación.

El preprocesador examina todas las entradas de teclado de MicroStation y busca el texto que se encuentra entre los caracteres delimitadores designados. Los delimitadores por defecto son las llaves {}.

Cuando el preprocesador encuentra una cadena de texto delimitada, evalúa la cadena. Si se trata de una expresión C válida, el preprocesador sustituye los delimitadores y la expresión por el resultado y vuelve a examinar la cadena de la entrada de teclado completa. El preprocesador realiza esta operación una y otra vez (como en un bucle) hasta que la completa sin sustituir ningún texto. La entrada de teclado se transmite a continuación a MicroStation para realizar el proceso como una entrada de teclado normal.

El preprocesador gestiona las cadenas de entrada de teclado resultantes de las selecciones de los menús personalizados os dimensionadores el preprocesador gestiona las cadenas resultantes selecciones de menú personalizados y las simuladas por otras aplicaciones (aplicaciones MDL) además de las entradas de teclado. El preprocesador supone que el resultado de una expresión es un número entero, un valor de coma flotante o una cadena de caracteres.

Los valores por defecto se pueden cambiar en el diálogo Preprocesador.

Formato de salida de la calculadora y del preprocesador

Tanto la calculadora como el preprocesador tienen una cadena de formato que controla la visualización de los resultados enteros y otra que controla la visualización de los resultados de coma flotante. Estas cadenas de formato son cadenas printf C estándar.

La calculadora no procesa los resultados de las cadenas de caracteres. Si la calculadora evalúa una expresión que genera un resultado de puntero de caracteres, mostrará un mensaje de error. Si el preprocesador evalúa una expresión que genera un resultado indicado por caracteres, sustituirá la expresión por la cadena que indique el resultado.

Comandos de la calculadora

Mientras está activa Calculadora/Preprocesador, es posible introducir estos comandos de la calculadora de la misma forma que las entradas de teclado de MicroStation:

  • CALCULATOR [C_expression]: calcula el resultado de una expresión C. El resultado de la expresión aparece en la barra de estado. CALCULATOR por sí solo indica a la calculadora que interprete todas las entradas de teclado como expresiones. Este modo permanece activo hasta que se activa otro comando.
  • CALCULATOR DECLARE DOUBLE [variable_name]: indica una variable de coma flotante para la calculadora y el preprocesador. El valor inicial de la variable es 0. La definición del valor y el valor se guardan entre cada sesión en "uservrbl.dat".
  • CALCULATOR DECLARE INT [variable_name]: indica una variable entera para la calculadora y el preprocesador. El valor inicial de la variable es 0. La definición del valor y el valor se guardan entre cada sesión en "uservrbl.dat".
  • CALCULATOR FORMAT DOUBLE [format_string]: especifica la cadena de formato utilizada para mostrar el resultado de las expresiones de coma flotante. El valor por defecto es %.16g.
  • CALCULATOR FORMAT INT [format_string]: especifica la cadena de formato utilizada para mostrar el resultado de las expresiones enteras. El valor por defecto es %d.

    Por ejemplo, para calcular el valor hexadecimal de 100 decimal, introduzca CALCULATOR FORMAT INT %#X y luego introduzca CALCULATOR 100.

    Por ejemplo, para calcular el valor decimal de 100 hexadecimal, introduzca CALCULATOR FORMAT INT %d y luego introduzca CALCULATOR 0x100.

  • UCCALC [C_expression]: calcula el resultado de una expresión C, pero no muestra el resultado.

Personalización de la utilidad Calculadora/Preprocesador

Es posible personalizar la utilidad Calculadora/Preprocesador, tal y como se indica a continuación:

  • Añadir variables a través del archivo "uservrbl.dat".
  • Añadir funciones y variables adicionales desde los programas MDL.
  • Declarar variables con los comandos CALCULATOR DECLARE.
  • Sustituir totalmente el preprocesador con otro programa MDL.

Al inicializarse, la utilidad Calculadora/Preprocesador lee "uservrbl.dat." Busca el archivo en el directorio asignado a la variable de configuración MS_DATA. Cada definición de variable del archivo tiene el siguiente formato:<type_name> <variable_name> <initial_value>

Los valores posibles de type_name son double y int. Los nombres de las variables definidos en "uservrbl.dat" están restringidos a un máximo de 16 caracteres. El valor inicial de la cadena comienza con el primer carácter que no esté en blanco después del nombre de la variable. Continúa hasta el final de la línea.

A continuación se muestra un ejemplo de archivo estándar de inicialización:

int baseValue 1
double baseUor 1.0

Al descargar la utilidad Calculadora/preprocesador, se actualiza "uservrbl.dat."Durante la actualización, registra los tipos, nombres y valores de las variables definidas en el archivo "uservrbl.dat", y las definidas con los comandos CALCULATOR DECLARE. No guarda información sobre las variables publicadas de programas MDL.

Los programas MDL pueden añadir funciones y variables a la calculadora publicándolas con la función mdlCExpression_symbolPublish. Usar un conjunto de símbolos con visibilidad VISIBILITY_CALCULATOR permite que la función o variable se encuentre disponible para la calculadora. Esta es la única forma de añadir funciones a la calculadora.