public static CodePiece CombineHorizontal(CodePiece left, CodePiece right) { CodePiece cL = left.Copy(); CodePiece cR = right.Copy(); cL.NormalizeX(); cR.NormalizeX(); cL.AppendRight(cR); return(cL); }
private void AppendLeftDirect(CodePiece left) { left.NormalizeX(); int offset = MinX - left.MaxX; for (int x = left.MinX; x < left.MaxX; x++) { for (int y = left.MinY; y < left.MaxY; y++) { this[offset + x, y] = left[x, y]; } } }
private void AppendRightDirect(CodePiece right) { right.NormalizeX(); int offset = MaxX; for (int x = right.MinX; x < right.MaxX; x++) { for (int y = right.MinY; y < right.MaxY; y++) { this[offset + x, y] = right[x, y]; } } }