跳转至

Math 数学算术运算与常用代数函数节点

节点核心功能 (What is it?)

Math 节点是一个功能完备的通用数学计算算子,支持在工作流中对数值执行各类基础算术运算与高阶代数函数计算。它全面覆盖单目运算(Unary Operations,仅需单个输入 $A$)与双目运算(Binary Operations,需要输入 $A$ 与 $B$)。

典型适用场景 (When would I use it?)

在以下情况下使用该节点:

  • 执行基础四则运算(加、减、乘、除);
  • 计算几何与代数函数(平方根、绝对值、正弦三角函数等);
  • 对连续浮点数执行取整运算(四舍五入、向上取整、向下取整);
  • 动态比较并提取多值中的极值(最大值、最小值)或计算算术平均值;
  • 计算周期性取模(余数)或乘方幂次;
  • 动态推导图像分辨率、画布裁剪比例与排版间距等几何尺寸。

使用指南 (How to use it)

基础配置流程 (Basic Setup)

  1. 在工作流画布中添加 Math 节点。
  2. 从操作下拉菜单(Operation)中选择所要执行的数学运算规则。
  3. 将数值连入参数输入端口 $A$ 与 $B$(单目运算时端口 $B$ 将自动隐藏)。
  4. 计算结果将立即可在 result 输出引脚处读取。

支持的运算类型列表 (Available Operations)

双目运算 (Binary Operations,需要同时接入 A 与 B)

  • Add (加法):$A + B$
  • Subtract (减法):$A - B$
  • Multiply (乘法):$A \times B$
  • Divide (除法):$A \div B$
  • Modulo (取模/求余):$A \pmod B$
  • Power (幂次/乘方):$A^B$
  • Average (算术平均值):$\text{avg}(A, B) = \frac{A + B}{2}$
  • Min (取最小值):$\min(A, B)$
  • Max (取最大值):$\max(A, B)$

单目运算 (Unary Operations,仅需要接入 A)

  • Square Root (开平方根):$\sqrt{A}$
  • Round (四舍五入最近取整):$\text{round}(A)$
  • Ceiling (向上取整):$\lceil A \rceil$
  • Floor (向下取整):$\lfloor A \rfloor$
  • Absolute Value (取绝对值):$|A|$
  • Sine (正弦函数):$\sin(A)$

输出引脚 (Outputs)

  • result:完成数学运算后得出的最终计算数值结果(浮点数或整型数值)。

典型工作流示例 (Example)

计算两个图像尺寸的算术平均值:

  1. 在画布中添加一个 Math 节点。
  2. 在操作下拉列表中选取 "average [avg(A, B)]"。
  3. 将第一个尺寸数值连入输入引脚 $A$,将第二个数值连入输入引脚 $B$。
  4. 节点将在 result 处输出精确的算术平均值,可继续接入下游的缩放算子。

关键技术特性 (Implementation Details)

  • 动态界面自适应 (Dynamic Parameter Visibility):当选中平方根、绝对值等单目运算时,输入端口 $B$ 会在画布节点面板上自动隐藏,界面干净整洁。
  • 除零异常安全防御 (Division by Zero):当执行除法或求模运算且分母 $B = 0$ 时,节点底层自动返回浮点无穷大(Infinity),杜绝导致工作流崩溃中断。
  • 数值类型自动适配:输入端自动容错并无损升维处理整数与浮点数混合计算。