size method
返回值只表示是否全部添加成功, 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);
}