Skip to content

Commit

Permalink
🚸 增加逻辑节点面板按钮悬浮提示
Browse files Browse the repository at this point in the history
  • Loading branch information
Littlefean committed Jan 24, 2025
1 parent d2b58a6 commit 8c18ec3
Show file tree
Hide file tree
Showing 2 changed files with 84 additions and 0 deletions.
82 changes: 82 additions & 0 deletions src/core/service/autoComputeEngine/logicNodeNameEnum.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -163,6 +163,88 @@ export const LogicNodeNameToRenderNameMap: {
[LogicNodeNameEnum.CREATE_TEXT_NODE_ON_LOCATION]: "在指定位置创建节点",
};

/**
* 逻辑节点的输入参数提示文本信息
*/
export const LogicNodeNameToArgsTipsMap: {
[key in LogicNodeNameEnum]: string;
} = {
[LogicNodeNameEnum.AND]: "a0 && a1 && a2 &&...",
[LogicNodeNameEnum.OR]: "a0 || a1 || a2 || ...",
[LogicNodeNameEnum.NOT]: "a0",
[LogicNodeNameEnum.XOR]: "a0 ^ a1 ^ a2 ^ ...",
[LogicNodeNameEnum.TEST]: "无输入",
[LogicNodeNameEnum.ADD]: "a0 + a1 + a2 + ...",
[LogicNodeNameEnum.SUBTRACT]: "a0 - a1 - a2 - ...",
[LogicNodeNameEnum.MULTIPLY]: "a0 × a1 × a2 × ...",
[LogicNodeNameEnum.DIVIDE]: "a0 ÷ a1 ÷ a2 ÷ ...",
[LogicNodeNameEnum.MODULO]: "a0 % a1 % a2 % ...",
[LogicNodeNameEnum.FLOOR]: "⌊a0⌋, ⌊a1⌋, ⌊a2⌋, ...",
[LogicNodeNameEnum.CEIL]: "⌈a0⌉, ⌈a1⌉, ⌈a2⌉, ...",
[LogicNodeNameEnum.ROUND]: "round(a0), round(a1), round(a2), ...",
[LogicNodeNameEnum.SQRT]: "√a0, √a1, √a2, ...",
[LogicNodeNameEnum.POWER]: "a0 ** a1 ** a2 ** ...",
[LogicNodeNameEnum.LOG]: "a0: base, a1: number",
[LogicNodeNameEnum.ABS]: "|a0|, |a1|, |a2|, ...",
[LogicNodeNameEnum.RANDOM]: "无输入",
[LogicNodeNameEnum.RANDOM_INT]: "a0: 最小值, a1: 最大值",
[LogicNodeNameEnum.RANDOM_FLOAT]: "a0: 最小值, a1: 最大值",
[LogicNodeNameEnum.RANDOM_ITEM]: "随机选项",
[LogicNodeNameEnum.RANDOM_ITEMS]: "随机选项组",
[LogicNodeNameEnum.RANDOM_POISSON]: "a0: lambda",
[LogicNodeNameEnum.SIN]: "sin(a0), sin(a1), sin(a2), ...",
[LogicNodeNameEnum.COS]: "cos(a0), cos(a1), cos(a2), ...",
[LogicNodeNameEnum.ASIN]: "arcsin(a0), arcsin(a1), arcsin(a2), ...",
[LogicNodeNameEnum.ACOS]: "arccos(a0), arccos(a1), arccos(a2), ...",
[LogicNodeNameEnum.ATAN]: "arctan(a0), arctan(a1), arctan(a2), ...",
[LogicNodeNameEnum.LN]: "ln(a0), ln(a1), ln(a2), ...",
[LogicNodeNameEnum.EXP]: "exp(a0), exp(a1), exp(a2), ...",
[LogicNodeNameEnum.TAN]: "tan(a0), tan(a1), tan(a2), ...",
[LogicNodeNameEnum.MAX]: "Max(a0, a1, a2, ...)",
[LogicNodeNameEnum.MIN]: "Min(a0, a1, a2, ...)",
[LogicNodeNameEnum.LT]: "a0 < a1 < a2 < ...",
[LogicNodeNameEnum.GT]: "a0 > a1 > a2 > ...",
[LogicNodeNameEnum.LTE]: "a0 ≤ a1 ≤ a2 ≤ ...",
[LogicNodeNameEnum.GTE]: "a0 ≥ a1 ≥ a2 ≥ ...",
[LogicNodeNameEnum.EQ]: "a0 == a1 == a2 == ...",
[LogicNodeNameEnum.NEQ]: "a0 ≠ a1 ≠ a2 ≠ ...",
[LogicNodeNameEnum.UPPER]: "a0: string, 将字符串转为大写",
[LogicNodeNameEnum.LOWER]: "a0: string, 将字符串转为小写",
[LogicNodeNameEnum.LEN]: "a0: string, 获取字符串长度",
[LogicNodeNameEnum.COPY]: "a0: string, 复制字符串",
[LogicNodeNameEnum.SPLIT]: "a0: string, a1: separator, 分割字符串",
[LogicNodeNameEnum.REPLACE]: "a0: string, a1: old, a2: new, 替换字符串",
[LogicNodeNameEnum.CONNECT]: "a0 + a1 + a2 + ... 连接字符串",
[LogicNodeNameEnum.CHECK_REGEX_MATCH]: "正则匹配",
[LogicNodeNameEnum.COUNT]: "a0, a1, ... 统计元素个数",
[LogicNodeNameEnum.AVE]: "a0, a1, ... ",
[LogicNodeNameEnum.MEDIAN]: "a0, a1, ... ",
[LogicNodeNameEnum.MODE]: "a0, a1, ... ",
[LogicNodeNameEnum.VARIANCE]: "a0, a1, ... ",
[LogicNodeNameEnum.STANDARD_DEVIATION]: "a0, a1, ... ",
[LogicNodeNameEnum.RGB]: "a0: red, a1: green, a2: blue",
[LogicNodeNameEnum.RGBA]: "a0: red, a1: green, a2: blue, a3: alpha",
[LogicNodeNameEnum.GET_LOCATION]: "a0: node",
[LogicNodeNameEnum.SET_LOCATION]: "a0: x, a1: y",
[LogicNodeNameEnum.GET_SIZE]: "a0: node",
[LogicNodeNameEnum.GET_MOUSE_LOCATION]: "无输入",
[LogicNodeNameEnum.GET_CAMERA_LOCATION]: "无输入",
[LogicNodeNameEnum.SET_CAMERA_LOCATION]: "a0: x, a1: y",
[LogicNodeNameEnum.GET_CAMERA_SCALE]: "无输入",
[LogicNodeNameEnum.SET_CAMERA_SCALE]: "a0: number",
[LogicNodeNameEnum.IS_COLLISION]: "a0: node1, a1: node2, a2, ...",
[LogicNodeNameEnum.GET_TIME]: "无输入",
[LogicNodeNameEnum.PLAY_SOUND]: "a0: filePath, a1: 0/1",
[LogicNodeNameEnum.GET_NODE_RGBA]: "a0: node",
[LogicNodeNameEnum.COLLECT_NODE_DETAILS_BY_RGBA]:
"a0: red, a1: green, a2: blue, a3: alpha",
[LogicNodeNameEnum.COLLECT_NODE_NAME_BY_RGBA]:
"a0: red, a1: green, a2: blue, a3: alpha",
[LogicNodeNameEnum.FPS]: "无输入",
[LogicNodeNameEnum.CREATE_TEXT_NODE_ON_LOCATION]:
"a0: x, a1: y, a2: text, a3: 0/1",
};

/**
* 获取逻辑节点的渲染名称
* 如果输入的不是名称,则返回原值
Expand Down
2 changes: 2 additions & 0 deletions src/pages/_logic_node_panel.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ import { v4 } from "uuid";
import Button from "../components/ui/Button";
import {
LogicNodeNameEnum,
LogicNodeNameToArgsTipsMap,
LogicNodeNameToRenderNameMap,
} from "../core/service/autoComputeEngine/logicNodeNameEnum";
import { StageManager } from "../core/stage/stageManager/StageManager";
Expand Down Expand Up @@ -35,6 +36,7 @@ export default function LogicNodePanel({
<Button
key={name}
className="m-1 text-xs"
tooltip={LogicNodeNameToArgsTipsMap[name]}
onClick={() => {
StageManager.addTextNode(
new TextNode({
Expand Down

0 comments on commit 8c18ec3

Please sign in to comment.