public override Channel Clone() { ChannelUInt32 clone = new ChannelUInt32(Width, Height); for (int x = 0; x < Width; x++) { for (int y = 0; y < Height; y++) { clone[x, y] = Pixels[x, y]; } } return(clone); }
public override GenericChannel <uint> Add(GenericChannel <uint> other) { ChannelUInt32 outcome = new ChannelUInt32(Width, Height); for (int x = 0; x < Width; x++) { for (int y = 0; y < Height; y++) { long newValue = (long)this[x, y] + other[x, y]; if (newValue > uint.MaxValue) { newValue = uint.MaxValue; } outcome[x, y] = (uint)newValue; } } return(outcome); }