Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


ExpressionEvaluator

Evaluates simple math expressions; supports int / float and operators: + - * / % ^ ( ).
Read time 1 minuteLast updated 4 days ago

Definition

  • Type: Class
  • Namespace: UnityEngine
  • Assembly: UnityEngine.CoreModule
public class ExpressionEvaluator

Remarks

This class has a single generic static method ExpressionEvaluator.Evaluate, that evaluates a mathematical expression and returns the result.
Supported number types are:
int
,
float
,
long
,
double
.
The expressions that can be evaluated support:
  • arithmetic operators
    a+b
    ,
    a-b
    ,
    a*b
    ,
    a/b
    ,
  • power (
    a^b
    ) and modulo (
    a%b
    ) operators,
  • parentheses,
  • math functions
    sqrt(a)
    ,
    floor(a)
    ,
    ceil(a)
    ,
    round(a)
    ,
  • trigonometic functions
    cos(a)
    ,
    sin(a)
    ,
    tan(a)
    (argument expressed in radians), and a constant
    pi
    .

Examples

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); }}

Static Methods

Method

Description

EvaluateEvaluates a math expression and returns the result.