size method

GridPos size()

返回值只表示是否全部添加成功, partial时有可能添加部分且整体返回 false

Implementation

// bool add(LogicCubeGroup group, {GridPos offset = GridZero, bool allowDuplicate = false, bool partial = true}){
//   if(partial || !group.data.any((cube)=>cube.testInGroup(group: this, offset: offset))){
//     return group.data.every((cube)=>cube.addToGroup(group: this, offset: offset, allowDuplicate: allowDuplicate));
//   }
//   return false;
// }

GridPos size(){
  int maxX = 0;
  int maxY = 0;
  for (var unit in data) {
    var current = unit.posGetter(GridZero);
    if(current.x > maxX) maxX = current.x;
    if(current.y > maxY) maxY = current.y;
  }
  return (x: maxX, y: maxY);
}