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

如何通过set_palletRacks(value)动态添加托盘货架?参数无法修改问题

解决托盘货架动态添加报错问题

错误提示“The parameter palletRacks cannot be changed dynamically”说明palletRacks是静态配置参数,仅支持在模型初始化阶段修改,运行时直接调用set_palletRacks()会触发系统的锁定限制。以下是两种场景的可行解决方案:

1. 初始化阶段添加(模型重置/启动前)

如果是在模型启动或重置时批量加载货架,可在On Reset触发器中调用set_palletRacks(),此时属于静态配置阶段,不会触发报错:

// 定位货架系统对象
treenode rackSystem = findobject("RackSystem");
// 创建新托盘货架实例
treenode newRack = createinstance(rackSystem, "PalletRack");
// 设置货架位置、尺寸等属性
newRack.x = 10;
newRack.y = 0;
newRack.z = 0;
// 获取现有货架数组,追加新货架后重新设置
Array currentRacks = rackSystem.palletRacks;
currentRacks.push(newRack);
rackSystem.set_palletRacks(currentRacks);

2. 运行时动态添加(模型运行中)

运行时无法修改palletRacks参数,需直接操作实体对象,将新货架挂载到货架系统的层级结构中:

// 定位货架系统对象
treenode rackSystem = findobject("RackSystem");
// 创建新托盘货架实例
treenode newRack = createinstance(rackSystem, "PalletRack");
// 设置货架属性
newRack.x = 15;
newRack.y = 0;
newRack.z = 0;
// 将新货架添加为货架系统的子对象(核心操作)
insertinto(newRack, rackSystem);

关键说明

palletRacks参数本质是模型初始化时的货架配置清单,运行时系统会基于此生成实体对象,但之后会锁定该参数,避免结构变动引发逻辑异常。因此运行时动态添加货架,应直接创建实体并挂载到父节点,而非修改静态配置数组。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 05:00:05