Ctrl + - Zoom into components

RFE: Allow Ctrl + / Ctrl - keyboard shortcuts to dive in and out of components, the same way that the mouse wheel does.

I use my mouse wheel way too much, and not just in TD. I’ve been trying to find alternate ways of scrolling and zooming. This is incredibly smooth and useful to send the keyboard commands via midi:

zoom.gif

Hey that’s a pretty cool idea, I think I have some old hardware which I could use for this.
thanks for the tip!

You can get in and out of components with these shortcuts:

i - takes in inside component
u - takes you up a level

h - will home your network

My typical workflow involves a lot of i, h, i, h, i, h
or
u, h, u, h, u, h

shift + h will home you on a single op

That aside, I’d love a few more keyboard shortcuts to help get me away from the mousey :slight_smile:

What I meant for this post was an RFE to allow the Ctrl + / Ctrl - keyboard shortcuts to dive in and out of components, the same way that the mouse wheel does, so that you can use a controller to fluidly fly around and through the levels of a network. I edited my post to be more clear.

Hi Ian,

While you can certainly try your luck on getting Derivative to add this feature, I suspect demand is rather low. Fortunately for this use case, there are other ways to get the scroll wheel behaviour you’re looking for with your MIDI device (or other human input device.)

The method you’re using already relies on some sort of MIDI to keyboard emulation to get this far, so all we really need is mouse emulation to trigger mouse scroll wheel events (and forgo the Ctrl + / Ctrl - key shortcuts altogether.)

We could supplement the MIDI to keyboard emulation with a separate program that is always running & provides keyboard to mouse emulation e.g. NeatMouse, MKey, AutoHotKey
neatdecisions.com/products/neatmouse/
seriosoft.org/en/index.php
autohotkey.com/docs/commands/Click.htm

-OR- we can perform mouse scroll wheel emulation directly in TouchDesigner via Python ctypes module and the Windows API! :sunglasses:

I’ve attached an example TOX with scroll wheel pulse parameters that you use to reference MIDI values or any CHOP channel data. This also demonstrates how the above applications actually accomplish this sort of thing.

The size/distance of the scroll step is also adjustable with the wheel delta parameter, so you can tune in finer or coarser control depending on your device and personal preference.

You can built on top of this and drop the resulting component in any TouchDesigner network you’re working on, or even have it running in a separate instance of TouchDesigner in the background.
wheel_ctypes.tox (1.18 KB)

oh my gosh, this is so awesome!! :astonished:

I was using bome’s midi translator classic, which cannot do mouse wheel commands, and although the pro version can, I didn’t want to spend $70 just for that command. This is a huge help! I’m sure I will find much more use for this code as well! I’ll share anything useful I come up with :nerd:

Thanks!