-
Notifications
You must be signed in to change notification settings - Fork 865
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
circular rhythm ruler #1290
Comments
Nice design. I have a question. How would we show two rulers with different meters, and where they start to align with each other? @walterbender @pikurasa |
They'd be concentric. |
@walterbender the issue is redundant now, ig. |
It is still waiting an implementation. |
Hello, |
I did a sketch at one point, but AFAIK, it has not been implemented. |
this has to be implemented for rhythm maker ,right? |
Yes. It would be a replacement of the current rhythm maker UX. |
any thing specific to be looked out for while working on this issue? any specific function might help |
I had done a sketch using the piemenu codebase (https://github.com/sugarlabs/musicblocks/blob/master/js/piemenus.js). It can try to find it. |
Sorry, didn't get you here, do you mean like referring to piemenu codebase will help with implementing the design you made? |
I mean that I used the same wheel widget library as is used in the pie menus. |
Yes, we'd use concentric circles. There are only so many we can have at the same time, eventually they will run off the screen. Clicking will divide. We need a way to join. And a way to specify a rest (currently a long press). |
A way to join ? Sorry , didn't get you here? you mean undoing the divide? |
Not quite undo, since you could do the following: 1 --> 1/2, 1/2 --> 1/4, 1/4, 1/2 --> 1/4, 1/4, 1/4, 1/4 --> 1/4, 1/2, 1/4 The final operation was a join of the middle two quarter notes. |
Oh got it ! |
The total note value of notes in the ruler is determined by the argument passed to the widget block. By default you get 1, but you can override that and get 2, 3, 1.5, whatever you want. So the concentric circles are all the same length in terms of degrees (360), if the note values don't match, the smaller ones will be segments of circles. I could imagine something where when we play the collection of rhythms, the segments rotate to stay aligned with the full circle, but that is not necessary to do in the first pass. |
@walterbender sir, should there be any limit on how many rhythms we can add to it? I experimented with more rhythms and can see only 8 on the screen. ( also it seems there is no scroll bar to see the rest of them ). would it be good to have a limit of rhythms we can add in case of adding circular rulers? |
I think 6-8 is a reasonable limit. |
got it. thanks. |
Maybe even 6 is enough. |
Hey @apsinghdev are you working on the issue now? Because I've been working on it, been a bit busy but will be working on it now actively |
yes @ChiragJS I am working on this. |
Would you mind working on something else because I'm already halfway through it? |
same here brother. invested almost 3 weeks of time and effort. |
@ChiragJS and @apsinghdev it's not necessarily a waste to have multiple people working on the same issue. Perhaps you two could trade notes and work collaboratively towards a solution? |
I'm open to work collaboratively , how about you @apsinghdev ? |
Yeah sure @ChiragJS. On which part you are working? |
Let's talk about it on Matrix then? I'll dm you? @apsinghdev |
Yeah sure. |
@walterbender I have added splitting logic by the following steps :
it looks like this 2024-03-31.13-56-38.mp4(I'd like you to please ignore the text inside the notes for now since I have not added the logic for ratio.) I wanna ask is
and lastly, do you have any bare minimum idea that must be implemented regarding the splitting of notes? thanks |
I think hard reloading the page everytime you make changes to it would not be the most practical solution we should be working towards ,as it would ruin the user experience . |
I had a hard time from your video to see how the splitting worked. It was only clear after the refresh that things were split.
Yes. That is the whole point of the rulers.
I am not sure what you are referring to here. 6 indexes to what? What is an iteration? Are you talking about caching user input? If so, that is not a good desigh.
There is an erase button (and an undo button).
I disagree. If it is slow, the user will accommodate. But there is no reason it should be that slow. If the problem is the number of rulers (max 6 in your implementation) then lets use fewer rulers. But I think it needs to be at least two.
The straight rulers implement a minimum -- I don't recall what it is. Many one sixtyfourth? Even one thirtysecond would be OK |
Thanks for your feedback, in previous discussions, we discussed that we wouldn't be able to get live splitting of rulers as wheelnavjs library doesn't provide such functionality. so we concluded that we could add the splitting logic by re-rendering the page. that's what I've tried to show in the video. for more clarity, the flow would be like :
Please feel free to inquire if further clarification is needed. Thank you. |
I don't recall coming to that conclusion. We refresh the pie menus in many different situations. For example in the Mode menu. Why do you think it cannot be done? |
Oh, my bad. I think I misunderstood the issue. You are right; we have other refresh situations besides just refreshing for splitting. One such situation is switching back to straight rulers and then switching again to circular ones, as it rerenders the rulers when we switch to circular rulers. does this make sense? |
Since the rhythm wraps, it would be nice to have a circular display.
The text was updated successfully, but these errors were encountered: