You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何随机化RectangularNode位置?动态创建节点遇问题求助

问题解决方案

1. 解决"level已初始化无法修改"的报错

报错核心是你操作的level实例已经完成初始化,框架禁止在初始化后修改节点结构,必须遵循以下流程:

  • 所有节点的创建、配置、添加操作,必须在level初始化之前完成;
  • 完成所有设置后,调用initialize()完成level的初始化。

正确代码示例(自定义Level类)

class CustomLevel extends Level {
  constructor() {
    super(); // 调用无参父类构造
    // 创建并配置RectangularNode
    const node = new RectangularNode();
    node.setVisible(true);
    node.setPos(20, 20, 0);
    node.setSize(500, 500);
    node.setFillColor(new Color(40, 40, 40));
    // 添加节点到level
    this.add(node);
    // 最后执行初始化
    this.initialize();
  }
}

2. 解决新level节点不显示的问题

新level节点不显示的核心原因是新level没有被设置为仿真的当前活跃level,仿真只会渲染当前指定的level。添加以下代码激活自定义level:

// 将自定义level设置为仿真当前运行的level
simulation.setCurrentLevel(new CustomLevel());

额外检查项

  • 确认节点的pos和size参数在仿真视口范围内,避免节点超出可视区域;
  • 检查fillColor是否与仿真背景色区分开,防止节点因颜色一致而"隐身"。

内容的提问来源于stack exchange,提问作者LMCuber

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 02:13:13