Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Explode & Implode #1444

Closed
wants to merge 4 commits into from
Closed

Conversation

MarcSabatella
Copy link
Contributor

Adds native explode & implode functions to a new "Tools" submenu under "Edit".

Explode: select a range on either a single staff or a group of staves. The top staff of the selection is treated as the source. All chords within the range on the source staff are exploded into the remaining staves in the selection. If user selected only the source staff, then the function uses as many staves as it needs.

Implode: select a range on a group of staves. The top staff of the selection is treated as the destination. All chords within the range on the destination staff are augmented by the notes of chords on the same segment on the other staves.

These functions only behave well if the material lends itself to explosion / implosion - a series of chords in a single voice per staff with the same rhythm. Notes that do not fit this model are simply ignored. While it's a pretty simple algorithm, it is actually a pretty big improvement over the plugins for 1.3. For explode, you don't have to copy the source to the other staves first, and chords with fewer notes than there are staves are handled better (each note of the chord is duplicated as necessary). For implode, it handles tuplets and ties, and tries to avoid duplicate notes.

@Jojo-Schmitz
Copy link
Contributor

Wouldn't something like "scatter/gather" be a better name rather than the somewhat martial "explode/implode"?

@lasconic
Copy link
Contributor

Implode / explode seems consistent with other software.
https://www.finalemusic.com/UserManuals/Finale2012Mac/Content/Finale/Imploding_music.htm
http://www.finalemusic.com/usermanuals/finale2012mac/content/finale/MMEXPDLG.htm

http://www.sibelius.com/download/plugins/index.html?plugin=434

We have an how to page on MuseScore.org with the different words, combine, merge etc... http://musescore.org/node/12345 I guess the best we can do is to be consistent with other software and to make sure we use all possible synonyms on the handbook page to make Google happy.

I believe we already got this discussion when the plode plugin was made.

@Jojo-Schmitz
Copy link
Contributor

OK, consistency trumps

@MarcSabatella
Copy link
Contributor Author

Hmm, Travis passed, but failed after rebasing this morning - perhaps because of code the got incorporated from the rebase? Are other tests generally failing now>

@Jojo-Schmitz
Copy link
Contributor

Maybe another rebase to pull in the latest mtest fix for a guitarpro, d888bc9?

@MarcSabatella
Copy link
Contributor Author

Will do.

On Tue, Nov 11, 2014 at 12:16 AM, Joachim Schmitz notifications@github.com
wrote:

Maybe another rebase to pull in the latest mtest fix for a guitarpro?


Reply to this email directly or view it on GitHub
#1444 (comment).

Marc Sabatella
marc@outsideshore.com

@MarcSabatella
Copy link
Contributor Author

Now that undo is behaving better, I was also able to turn the undo tests back on in the last commit. And who knows, maybe I'll get lucky with Travis this time too.

@MarcSabatella
Copy link
Contributor Author

Shame to make changes after a good Travis build :-), but this is going to need a rebase after the actions/shortcut refactoring from the other day.

@MarcSabatella
Copy link
Contributor Author

Rebased & updated with recent shortcut.cpp changes.

@MarcSabatella
Copy link
Contributor Author

OK, I guess I need a new PR; see #1456.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants