SpriteGroup<T> constructor
Implementation
SpriteGroup(Iterable<Sprite<T>> parts) //
: parts = .unmodifiable(parts) {
if (this.parts.isEmpty) {
throw ArgumentError.value(parts, 'parts', 'Must hold at least one.');
}
_offsets = .filled(this.parts.length, 0);
var offset = 0;
for (var index = 0; index < this.parts.length; index += 1) {
_offsets[index] = offset;
offset += this.parts[index].rows;
}
_slots = [
for (final part in this.parts)
for (var row = 0; row < part.rows; row += 1) //
_Slot<T>(part, row),
];
rows = _slots.length;
}