On 09/25/2013 06:00 PM, Tom Breton (Tehom) wrote:

> What do you think?  Does that seem like a reasonable separation of concerns?

Yes.  I've had time to ponder on it, and you've just about got it laid out.

The big sea change we need is the ability for the individual, isolated 
note to be a triplet note and carry a 3 on itself independently of its 
surroundings.  (How that scales to a note from a 22:2 tuplet is a 
question I'm not sure I can entirely get my head around.  Would it have 
to show 22:2?  I suppose so.)

In my example project, all the properties are already set except the 
beam group.  No beam group, no 3.  Recognize the properties, and now the 
3 comes.  No changes to existing data necessary.

Grouping them together ought to just be done automatically by the layout 
engine, with nothing to export.  We could indeed do new tuplet brackets 
as indications, like you thought they were to start with, but these 
indications wouldn't be of much use in LilyPond export.  LilyPond does a 
fine job of providing such brackets automatically.  We'd want something 
so people can mostly play a score off the screen, but having it look 
good in LilyPond is the greater concern.  If they could be 100% 
generated visible entities with no representation as any kind of events, 
it would greatly simplify keeping them in sync as edits are made. 
Recalculate.  No crufty vestiges left over where a tuplet spanner 
indication is lingering in a now inappropriate area.

Now my head is starting to hurt again imagining all the myriad 
possibilities, and the implementation details.

If I were going to dive into this myself, I guess I'd start at the 
layout engine and start displaying a 3 on notes that are really triplet 
notes, even if they have no group ID.  A lot of the rest of the code may 
not be perfect, and there's a lot to be said for consolidating all the 
tuplet-related nonsense in one unified manipulator, but on the whole I 
think most of it is basically working.  The big limitation is needing to 
be in a group to display correctly.  ALSO, to EXPORT correctly, which is 
a much bigger thing.  The project in question, the durations were all 
just right, the groups were missing, and they didn't come out as 
triplets at all, or LilyPond would have fixed that stuff up.

I'm thinking once that was possible, a lot of the rest of it would 
become more self-evident.  This note should be taking a 3, but it isn't. 
  Why not?  Why are we getting funky dots here when it should be a 3?

Meh, I'm late to work again, so I have to leave off.  You're left with 
another unedited brainstorm.
-- 
D. Michael McIntyre

------------------------------------------------------------------------------
October Webinars: Code for Performance
Free Intel webinars can help you accelerate application performance.
Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from 
the latest Intel processors and coprocessors. See abstracts and register >
http://pubads.g.doubleclick.net/gampad/clk?id=60133471&iu=/4140/ostg.clktrk
_______________________________________________
Rosegarden-devel mailing list
[email protected] - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel

Reply via email to