[Escenas] Soporte para algunas funciones adicionales de Math.js

La v4.58 ha añadido la gestión ‹ nativa › de la función random de Math.js para poder llamarla directamente en las acciones que permiten calcular un valor (y es especialmente útil en la acción « Esperar »).

Y, por supuesto, es más intuitivo que tener que usar la alternativa con la acción « Solicitud HTTP » como se describe aquí.

Necesitaría usar la función math.js ‹ exp › para definir una duración de riego que se intensifica de la siguiente manera cuando mi depósito está bien lleno:

No he encontrado en la documentación una lista ya establecida de las funciones mathjs soportadas nativamente (¿existe y la he pasado por alto?). Según mis pruebas, estas funciones ya son soportadas:

  • abs
  • random
  • ceil, floor, round
  • compare, larger, largerEq (y por lo tanto supongo que también smaller, smallerEq, … pero no lo he probado)

Entre todo lo que ofrece Math.js, me gustaría añadir las siguientes funciones:

  • min, max, mean
  • log, exp, square, sqrt (y quizás cube y cbrt)

@pierre-gilles ¿te gustaría una solicitud de funcionalidad por función mathjs?

No, en este caso esta es suficiente :slight_smile:

¡Gracias por la solicitud!

@pierre-gilles, ¿dónde se puede encontrar la lista de funciones nativas utilizables en las escenas? gracias

Hola @Nagromdark,

Tienes razón, falta documentación sobre esto. Lo he anotado para revisarlo.

Mientras tanto, aquí tienes las funciones disponibles:

  • add - Suma
  • divide - División
  • larger - Comparación « mayor que » (>)
  • smaller - Comparación « menor que » (<)
  • largerEq - Comparación « mayor o igual a » (>=)
  • smallerEq - Comparación « menor o igual a » (<=)
  • mod - Operación módulo
  • round - Redondeo de números
  • random - Generación de números aleatorios

Para usar estas funciones, te recomiendo la documentación de Mathjs: https://mathjs.org/

Te aviso en cuanto tenga una documentación más clara con ejemplos :slight_smile:

@pierre-gilles, según algunas pruebas que he realizado, las funciones ‹ compare ›, ‹ abs ›, ‹ ceil › y ‹ floor › también funcionan.

@Nagromdark @StephaneB He añadido una nueva documentación:

He actualizado la documentación de Esperar y Condición sobre variables para mencionar esta página sobre las funciones matemáticas disponibles.

He logrado usarlas todas, excepto compare que no funciona en mi caso, por lo que no la he incluido en la documentación. ¿Cómo lo hiciste tú?

Pues fácil, había tenido que tomar una sustancia ilegal… :stuck_out_tongue_closed_eyes: Porque yo tampoco logro reproducir lo que creía haber visto funcionar… Lo siento por la pista falsa :smiling_face:

Y gracias por esta página, será muy útil. Quizás la página también podría describir el método mediante una solicitud HTTP, para quienes quieran usar métodos mathjs un poco exóticos.

¿A qué métodos más exóticos te refieres? Creo que llevará más tiempo escribir esta documentación que añadir los métodos en Gladys :stuck_out_tongue:

Bueno, están las que ya había listado antes. Pero a menos que tengas en mente añadirlas pronto:

  • min, max, mean
  • log, exp, square, sqrt (y tal vez cube y cbrt)

Y si no, podría ser que un aficionado a la domótica Y matemático :wink: quiera usar las funciones matemáticas fix(), mod(), gcd(), lcd(), las funciones lógicas and(), not() or(), xor(), la función randomInt(), las funciones de comparación compare(), equal(), unequal(), las funciones de comparación de textos compareText(), equalText(), la función estadística median(), algunas funciones trigonométricas, …
Y aún así, solo selecciono las que entiendo lo que hacen, pero hay muchas otras que quizás también sean útiles, no lo sé… Por eso me parecería útil explicar que también se puede llamar a mathjs.org.

Pues esta es para mí :stuck_out_tongue_winking_eye:

Me imaginé que ibas a reaccionar :face_savoring_food:

¡Hola a todos!

Este tema ahora está en desarrollo.

Se ha abierto una PR para admitir más funciones matemáticas en las fórmulas de escenas:

No duden en seguir la PR, probarla lo antes posible y dar sus comentarios aquí.