The definitive Knob

Special collaborative projects managed by SynthMaker users

Moderators: electrogear, exonerate

The definitive Knob

Postby unkargherth on Sun May 08, 2005 9:03 pm

Ok. people. If you followed this topic you know something about

Anyway Based on LATK ( Led around the Knob ), I think it would be a good idea to develop "The definitive Knob". So i started this topic to get the requirements for it

If anybody want to collaborate propose ideas on how should the knob be

I update this message with everyone ideas, and after a reasonably time we could start a "Community developement effort" in order to attain all, or at least , most of this requirements.

As a start, I put here what i consider my own requirements:

(Edited: 13/May/2004 13:41. Added 10. Updated 4,5,6,8 and 9)

1.- (unk) Should be polar( normal)/bipolar(pan) switchable
2.- (unk) Should be able to use or not bitmaps
3.- (unk) Should have a switchable option for leds that responds resonably in both polar and bipolar modes
4.- HALf DONE(unk) Should be posible to change colors without changing bitmap if any
5.- DONE (unk) Should havve a switchable readout and /or value editing
6.- DONE (unk) Should have a dedicated external "Designer Module" but not rely on it in final product
7.- (tom) Maintain mouse position inside knob area
8.- HALF DONE (shif) Mouse click reset and altenate drag finetuning
9.- DONE (unk) Should be Quantizable
10.-(stefan) Should be resizable

Now, add your own requirements.
Last edited by unkargherth on Fri May 13, 2005 11:46 am, edited 6 times in total.
User avatar
unkargherth
smanatic
 
Posts: 605
Joined: Fri Apr 08, 2005 8:46 pm

Postby Tom7777 on Sun May 08, 2005 9:28 pm

Should keep mouse position. What i mean by this is you either see the mouse pointer icon go up down left or right to increase or lower the value. I think it would be great if it would just stay where you hold the left mouse button down within the area.
Tom7777
smychopath
 
Posts: 3936
Joined: Wed Mar 16, 2005 10:46 pm

Postby Shifrin on Sun May 08, 2005 10:25 pm

* Modifier+MouseButton to reset the knob to a default position.

* Modifier+LeftClickDrag to fine-tune.

* LeftClickDrag 'left-to-right' for fine-tuning (A la Ohmforce). Assuming knob is a normal linear type knob.

* Switchable to 'circular' type knob? (I don't need this but some may).

Just some ideas!

Shif.
User avatar
Shifrin
smaniac
 
Posts: 1498
Joined: Sun Mar 06, 2005 1:54 pm
Location: Newcastle, UK

Postby Nu Audio Science on Sun May 08, 2005 10:59 pm

You didn't leave me anything to ask for >:(
:D :D
Oh blimey
User avatar
Nu Audio Science
smunatic
 
Posts: 2236
Joined: Thu May 05, 2005 12:29 am

Postby unkargherth on Mon May 09, 2005 12:51 am

Shifrin wrote:* Modifier+MouseButton to reset the knob to a default position.
* Modifier+LeftClickDrag to fine-tune.


Not doable until we get keyboard input

Shifrin wrote:* LeftClickDrag 'left-to-right' for fine-tuning (A la Ohmforce). Assuming knob is a normal linear type knob.


I suspect you mean RightClickDrag. Left clickDrag is the standard drag, true?

Shifrin wrote:* Switchable to 'circular' type knob? (I don't need this but some may).


Could you detail how "circular" knobs behave?


Anyway, by now, I set this suggesions as "Reset" and "Finetuning" on the list. Answer if it isn't ok.
User avatar
unkargherth
smanatic
 
Posts: 605
Joined: Fri Apr 08, 2005 8:46 pm

Postby Nu Audio Science on Mon May 09, 2005 12:57 am

Circular knobs are moved by a circular mouse motion, By this i mean the mouse actually has to travel with the rotation of the knob so you are moving in an arc instead of up n down.
Oh blimey
User avatar
Nu Audio Science
smunatic
 
Posts: 2236
Joined: Thu May 05, 2005 12:29 am

Postby unkargherth on Mon May 09, 2005 1:42 am

well. then. I'm having no idea on how to define a ARC mouse area to drag into. Anybody?
User avatar
unkargherth
smanatic
 
Posts: 605
Joined: Fri Apr 08, 2005 8:46 pm

Postby Nu Audio Science on Mon May 09, 2005 2:03 am

I haven't got a clue and i dont know anybody who uses it, But it is part of the vst standard >:(
Oh blimey
User avatar
Nu Audio Science
smunatic
 
Posts: 2236
Joined: Thu May 05, 2005 12:29 am

Postby Tom7777 on Mon May 09, 2005 5:19 am

I guess you could define a area or path should i say that the mouse is only allowed to travel in and then connect this to the rotation module somehow but i havent really tried anything like that yet. Im guessing it would need a new module to do so.

You could maybe also make it so the the end of a line is set to the center of the area and the control follows the other end but i have no idea how to do that either.
Tom7777
smychopath
 
Posts: 3936
Joined: Wed Mar 16, 2005 10:46 pm

Postby infuzion on Mon May 09, 2005 5:54 am

Great stuff NAS; looks really sexy!
Nu Audio Science (from previous thread) wrote:Yeah i was getting redraw problems but i used the technique Jorge showed last night whereby you put the redraw component outside of all the modules and it works better, He covers it in a thread last night somewhere :)
I was getting the same error; when you swung the knob to the right then quickly left, some LEDs stayed on. NAS got it cleared up :)

unkargherth, I think I mentioned #1 & 5, but I'm sure others were thinking it. For #1, it would really be best that the value range be definable, either by giving max & min, or triggering presets (eg 0-10, -10-+10, 0-255, 0-15, 0-F, 00-FF...). I guess a pop-up box can be added to #5, but I was hoping that one can tab between fields so you don't have to reach for the mouse.

cheers
Need help? First search the forum & WiKi, then post in the help forum with a clear topic, request, & OSM. Then please WiKi the correct solution. If you want my personal assistance, I charge by the hour or for an exchange of services.
infuzion
smstar
smstar
 
Posts: 6163
Joined: Wed May 04, 2005 8:02 pm
Location: Earth, USA, CO, Denver

Postby Shifrin on Mon May 09, 2005 8:05 am

Oops... *ignore*

Shif.
Last edited by Shifrin on Mon May 09, 2005 8:09 am, edited 1 time in total.
User avatar
Shifrin
smaniac
 
Posts: 1498
Joined: Sun Mar 06, 2005 1:54 pm
Location: Newcastle, UK

Postby Shifrin on Mon May 09, 2005 8:08 am

unkargherth wrote:I suspect you mean RightClickDrag. Left clickDrag is the standard drag, true?


Nope, but you could have it that way! What I mean is when you are draggin the mouse vertically it increments the knob as usual, but dragging the mouse horizontally fine-tunes! There was actually a thread on here about it and malc posted an implementation but I believe there may have been a bug or two!

unkargherth wrote:Could you detail how "circular" knobs behave?


NAS explained how the circular knobs work! As to how to 'code' them, well I've not actually tried that before but you could check the VSTGUI sources here :-

http://sourceforge.net/projects/vstgui

It's not something I ever used (circular knobs) given the choice, but thought it might be useful to have it there for completeness! My guess is that you could calculate the x/y offsets of the mouse position from the knob centre then use simple trigonometry to calculate the angle at which the mouse is relative to the knobs centre, and so update the knob accordingly. I may try to have a go at implementing this, will post back if/when I get the time to try it out :)

I also realise there are no keyboard modifiers as yet in SM, but I'm sure they'll pop up soon enough :)

Cheers,

Shif.
User avatar
Shifrin
smaniac
 
Posts: 1498
Joined: Sun Mar 06, 2005 1:54 pm
Location: Newcastle, UK

Postby Shifrin on Mon May 09, 2005 8:10 am

Shifrin wrote:My guess is that you could calculate the x/y offsets of the mouse position from the knob centre then use simple trigonometry to calculate the angle at which the mouse is relative to the knobs centre, and so update the knob accordingly.


And of course, I just forgot there are no trig primitives to use on floats for something like this are there!?!?! Then again maybe you can do it without the trig. Will try to look into it!

Shif.
User avatar
Shifrin
smaniac
 
Posts: 1498
Joined: Sun Mar 06, 2005 1:54 pm
Location: Newcastle, UK

new version: LATK_050509c~infuzion

Postby infuzion on Mon May 09, 2005 4:02 pm

http://rapidshare.de/files/1662221/LATK_050509c_infuzion.rar.html
(open the link in a new tab/window, scroll to the bottom, then click on {Free}. The link will be on the bottom of the new page.)
Image
tidying up the code...
Image
from the README wrote:LATK_050509c~infuzion.osm
Based on NAS’s LATK downloaded 05May08, file size 153,167 bytes.
Changes

User-end
    New
      output: Value (float)
      input: Maxville (float), so the (output) Value will range from 0-MaxValue
    Changed
      knob-LATK interface: Now the LED that the knob is pointing to won’t “turn on” until the pointer is more than half-way of said LED. This is to simulate the “clicks” one feels when turning certain dials.
Programmer-end
    cleaned up/organized the code

      neatened up stuff by rearranging module placements
      moved "Vu Dial" up one step
      Previously, the knob’s output was multiplied to get the desired output value for various modules. Now, Shadow Knob’s Value output is a 0-1 float for the LATK array, & TrueValue float output is for the actual desired output to the text & module output.
    LATK’s "click" value is set by subtracting 0.0416667 from the bottom input float

    file naming: To prevent confusion, unless a better method is agreed upon, let’s use this:
    FILENAME_YYMMDDnext-version-letter~you
Release Notes:

As I only did small changes to Nu Audio Science's great module, so nothing is expected in return. However, I still wouldn't mind a linkback, & a free copy of anything you make with this (hook up NAS first).

It's prob best to have the range to be set outside module. Right now, the range starts with 0, but it should be easy to have the range to start in negitives (for bipolar ranges; -1 to 1). I hope others will build on the code!

*phew* hard work... time for a nap.
Need help? First search the forum & WiKi, then post in the help forum with a clear topic, request, & OSM. Then please WiKi the correct solution. If you want my personal assistance, I charge by the hour or for an exchange of services.
infuzion
smstar
smstar
 
Posts: 6163
Joined: Wed May 04, 2005 8:02 pm
Location: Earth, USA, CO, Denver

Postby Nu Audio Science on Mon May 09, 2005 5:03 pm

WOAH WOAH WOAH

Too many people keep saying this is a NAS module, Sorry but this needs nipping in the Bud now.

I just did the design (The way it looks) Unkargherth actually invented how the LATKs work.

Cheers Infuzion that looks like a great mod thanks :)
Oh blimey
User avatar
Nu Audio Science
smunatic
 
Posts: 2236
Joined: Thu May 05, 2005 12:29 am

Next

Return to Projects

Who is online

Users browsing this forum: No registered users and 0 guests