Unity 6.3
0 онлайн 0 гостей 3 в системе
Вход

ExpressionEvaluator.Evaluate

Declaration

public static bool Evaluate(string expression, out T value);

Параметры

Параметр Описание
выражение Строка, содержащая математическое выражение (e.g. "4+3").
значение Результат оценки выражения. Поддерживаемые типы: int, float, long, double.

Возвращаемое значение

логическое Показывает, удалось ли успешно оценить выражение.

Описание

Оценивает математическое выражение и возвращает результат.

Выражения, которые могут быть оценены поддержкой:

  • арифметические операторы a+b, a-b, a*b, a/b,
  • операторы мощности (a^b) и модуля (a%b),
  • в скобках,
  • математические функции sqrt(a), floor(a), ceil(a), round(a),
  • тригонометрические функции cos(a), sin(a), tan(a) (аргумент выражен в радианах) и константа pi.

Если выражение не может быть оценено, функция возвращает false и значение результата устанавливается на нуль.

using UnityEditor;
using UnityEngine;

public class ExampleScript : MonoBehaviour { [MenuItem("Example/Int Expression")] public static void IntExample() { ExpressionEvaluator.Evaluate("2+3", out int result); // prints 5 Debug.Log(result); }

[MenuItem("Example/Float Expression")] public static void FloatExample() { ExpressionEvaluator.Evaluate("sqrt(cos(pi/3))", out float result); // prints 0.7071068 Debug.Log(result); } }