Stack 是存储场的抽象类。由于堆场和船的存储功能和结构类似,所以将存储集装箱的地方抽象为 Stack 类。
local stack = Stack(row, col, level, config)
创建 Stack 时可通过 config 属性修改的参数:
模型参数
type
类型,默认值为 stackclength
集装箱模型长度,默认为 6.06cwidth
集装箱模型宽度,默认为 2.44cheight
集装箱模型高度,默认为 2.42cspan
集装箱 x 方向和 z 方向的间距{xspan,zspan},默认为{0.6, 0.6}containerUrls
集装箱模型 url 列表位置参数
origin
原点,用于计算集装箱的相对位置。默认为{0, 0, 0}rot
沿 y 轴的旋转弧度,默认为 0容量参数
row
行数col
列数level
层数内置变量
containerPositions
堆场各集装箱位置坐标(bay,row,level)的列表
containers
集装箱对象列表(使用相对坐标索引)
将堆场所有可用位置填充集装箱,一般用于 debug/demo。
stack:fillAllContainerPositions()
根据总生成集装箱数量 sum 随机生成每个(stack.bay, stack.row)位置的集装箱数量。一般用于 debug/demo。
stack:fillRandomContainerPositions(sum, containerUrls)
其中 containerUrls 为可以使用的三维模型列表
在指定的(row, bay, level)位置生成集装箱
stack:fillWithContainer(row, bay, level)