Cyberstrak uses the same idea, as @Peter_Salzman was an ICEM developer back in the day.
Maybe this is a way for you to test the workflow and feel of this approach.
Iām happy to compare what weāre working on to other tools and see if we can take cues from them. What Iām really trying to get at is what problems are you having surfacing and why this change isnāt helping. Saying be more like this tool or copy this doesnāt help me with that. That being said Iām not seeing what that dialog does that we canāt/donāt. Single or row is just based on your current grip selection. Tangent, normal, and vector should now be covered by the UVN directions unless Iām mistaken. World and CPlane can be toggled with the gumball alignment. I donāt quite understand the locks. Delta means we need some kind of nudge as well? Weāre thinking about a solution for drag strength and fall offs now.
For surfaces, to move a row of grips, ideally at the end we should be able to just double-click the control net and so select the whole row, and then use the gumball of one of the selected grips to move them⦠to normal direction as well as tangentially.
No floating window needed.
Anyway, in this scenario:
there are 4 grips away from the ideal position (the dashed curve)
Fall-off here would be handy, and if it appled only to selected grips, the user could be sure to not alter unselected grips.
With maybe two toggles:
āApply same gumball drag to every other selected gripā
āUse fall-offā
Those two toggles are not mutually exclusive. So we get 4 different āmodesā
- 1 apply gumball drag to just a single selected grip
- 2 apply gumball drag to the single selected grip and other (non selected) grips by fall-off formula
- 3 apply gumball drag to every selected grips equally
- 4 apply gumball drag to selected grips by the fall-off formula
This is just an idea⦠itās difficult to tell if it would really be good without testing itā¦
..
And if you manage to translate similar logic to SubD ⦠it would be awesome.
SubD grips normal movements should be similar to surfaces ⦠ātrivialā (hopefully).
Other non-normal directions for SubD grips could and should ideally work the same:
pick the selected direction, apply fall-off/selection toggles combo and compute the ādouble cross-productā with neighbour grips normals, and you get a similar effect:

fall-off gumball example.gh (100.1 KB)
This is āmode 2ā as above: a single selected grip, but applying effect with fall-off to non-selected.
(this example is on a mesh, just to show the idea of fall-off on a non-UV topology)
(neighbour tangential direction can get better and more useful by iterating and āwalkingā through the topology of the SubD/Mesh, but I feel that would be OT..)
In my opinion, the fall-off function and sliders much be assigned to a dedicated pop-up window for a quick access to activate or deactivate it and its various options. This way, everything will be accessible with the minimum amount of mouse clicks and no need for key modifiers that force the user to leave the 3d mouse with the left hand (no need to hold Ctrl, Alt or Shift).
The fall-off options could include:
- A toggle to turn on or off the fall-off;
- Two sliders for minimum and maximum fall-off radius;
- One slider to control the bulging strength of the fall-off;
- Whether it will affect object type ācontrol pointsā;
- Whether it will affect other objects types such like polysurfaces (ability to fall-off move polysurfaces in the 3d space);
- Limit the fall-off to the selection only (it will not affect the nearby control points or objects that were not pre-selected);
- Whether to maintain the edge position, tangency or curvature.
Hello Joshua, thank you for your reply.
Iām not quite sure I fully understand. Please correct me if Iām wrong.
Grip selection meaning selecting CVs to have a widget appear to move them? So to move a row of CVs I would need to select all of the CVs of a certain row and then move that row with a widget?
Yes you are right, āDeltaā is a fixed value nudge. The āLockā function enables the user to lock certain directions of either World or CPlane.
This is actually explained in the videos. I understand that you are very busy and telling you ābe more like ICEMā is not a great help. But instead of me writing pages and pages of an abstract concept, I posted short clips, about 1 minute each to show what it would look like. I added the timestamps so its literally only 2 Minutes of information.
I understand that the current way offers similar functionality as a result. But you asked me what problems Iām having surfacing. Iām a professional Class-A modeler in the automotive industry. So when doing CV modelling for 8+ hours a day, having to click and select CVs several times for a single movement is just not practical. We are talking about thousands of clicks per day. Add that up for several days, weeks, months.That is just frustating. The āpresetā-way is simply multiple times faster.
To answer your question what the āpresetā concept offers:
Each movement becomes a ā1-Click-Operationā For example moving several full rows of 12 CVs in normal direction with a 5mm ānudgeā and a soft-transform-logic, is just 1 click for each movement.
No selection, no double-click, no āenter-keyā, no āright-click-sub-menuā. This is also shown in the videos.
With a āpresetā the movement condition is clearly summarized in the dialog, which proviedes a much better focus. This helps to avoid errors and adds to the modeling speed also.
Also, note that VSR, Syberstrak and ICEM all lack āPairā and āMultipleā options for the control point modeling. They only support āSingleā and āRowā. They donāt give you the option to manipulate a pair of control points (upon hovering over their common control polygon vector) or multiple control points that exclude the endmost control points along the highlighted row (super useful to maintain G1 or G2 and only adjust the inner control points).
Great addition and amazing work, guys! Is there any release date for version 9? Also, will there be an update discount for those who own a commercial license?
good point.
But this thread is about the āGumballā , the UI widget that pops when you select something.
In Rhino, gumball is strictly correlated the the āselecting phaseā. It exist only if something is selected. (maybe what you ask should be a different and dedicated feature⦠but it make sense to talk about that here and now..)
So you want to avoid the āselecting phaseā ⦠correct?
What are you asking, similar to your linked videos, is the ability to directly click-n-drag the ācontrol netā (how it is named in Rhino).
@Joshua_Kennedy maybe this again can be solved by dynamically place the gumball on the nearest grip to the cursor location?
(PS this would be awesome if combined real-time with showing the curvature graph of the nearest UV isocurves or SubD edgesā¦
)
Anyway in the ICEM video:

is letting the user drag a row of control points by click-n-drag from the control netā¦
⦠maybe add a gumbal in the middle of each control net segment, aligned to normals and tangents? Maybe again dynamically as the cursor move over? ![]()
0 extra clicks, and multiple arrows save you from toggling the direction in a separate windowā¦
Mouse pointer hover next to a sub-object to highlight a possible pickable sub-object is a popular approach in other software. That eliminates the need to pre-select the control points and/or the control polygon of a surface.
I would rather have that as an option while still being able to select the traditional way, because sometimes the user needs to drag, rotate or scale a large number of control points that are not necessarily adjacent to each other. Also, in certain situations, the goal is to pre-select one or a bunch of control points, then snap to a totally different non-selected control point, then move the selection from that reference point to another. With an automatic hover-to-select approach thatās not possible, so this is definitely something that will work only as a dedicated drag mode.
The automatic highlighting mode is typically usable for quick dragging of individual control points, or a pair of control points. Obviously, with that mode activated, the user must be still allowed to select multiple control points while holding the Shift key.
Hi, thanks for taking the time to write this out.
I think Iām following now and I agree with you on basically all of this. To make adjustments thereās lots of clicking around both with selection and different commands/panels to adjust settings. Managing that is tedious. We also donāt have a single source of truth for all the different transformation settings you need.
I see that dialog as something that would pop up in a specific command. Not something thatās alive all the time like the gumball. Is that how you see it?
Just out of curiosity, do you use the drag modes at all?
This seems like a something we could do to speed up the process and avoid double clicking for selections. Of course taking into account the current drag mode.
In my opinion, turning on multiple Gumballs, one for each control point, should be a dedicated tool, not part of the main Gumball. Alias has several control point manipulation tools and one of them is just like that - showing tiny arrow handles around every control point.
However, keep in mind that thus tool works best on surfaces with relatively small amount of control points, such like Bezier surfaces. Many Rhino users still donāt have a proper understanding for the best NURBS modeling practices, hence their models are burden with a huge amount of multi-spans and control points on each surface. Multi-Gumball will not be usable on surfaces with hundreds of control points, unless the user sets the camera really close to be able to drag one of the hundreds Gumballs.
But the tool is very much usable for Bezier surfaces and SubD modeling.
Obviously, that mode should be able to temporarily override the setting to move only pre-selected objects (in case that the latter is turned on).
I tried many times, but at the end just using Scale was better. At least for me.
Why?
Mainly because:
- often you need to hit the TAB key to ensure and lock the direction ⦠compared to gumball behavior thatās an additional input.
- dragging grips still snap with osnap, making it too complex to make adjustments, too much a hassle! Same disabling osnap (to re-enable later) or pressing ALT all the times⦠no go.
- once you dragged a grip, now it is selected, and the gumball appears, creating that small white central dot⦠thus you no longer can access the ādrag modeā because you would now click over the gumball white dot (as said here: Rhino8 WIP - Gumball)⦠so you have to deselect the grip every other adjustment (or disable gumball) ⦠no go.
My workaround with Scale let me use one hand for the adjustment, and the other hand on the 3d mouse do navigate:

I know itās a sad workaround, hopefully this will be no longer neededā¦
Drag mode on control polygon would require me to constantly juggle with TAB key , osnap and gumball toggles. (you finish adjusting grips and go do a different task and find the osnap and/or gumball in the wrong state⦠too much an hassle)
Hi Riccardo, thank you for making that clip. Pure gold, says more than a thousand words!
Yes exactly. Just like in the video. That is a very fast and intuitive way of modeling.
Hi Joshua, yes that is what I had in mind. Using a command to start CV modelling and have the dialog pop up.
A big advantage is the great overview the dialog provides of what youāre actually doing.
The fact that ICEM doesnt show a widget or hightlight of CVs/rows when modeling, proves how reliable and foolproof the āpresetā concept is. CV modeling really becomes 2nd nature this way.
Also its a great way of working on dense and complex surfaces with many CVs and also allows the application of soft-transform-laws with the same workflow and dialog.
So this might even be an interesting concept for SubD modeling
Regarding the drag modes, I do not use them in Rhino as they feel cumbersome to me.
We always discount upgrades for existing license holders.
The new gumball behaviour now works for numeral input on the normal handle as expected! In V8 numeral input moved all selected controlpoints in the direction of the handle, not in the direction of their individual normals. Thanks a lot, this was an old wish of me.
Secondly I like the new way of where te the gumball is located when selecting more then one grip.
Also the extra handles (2 for every U or V direction instead of one) is nice. It saves me from entering or removing a minus in the numeral input in half of the time.
Hello, I am in the process of refining my surface modeling skills. Im focusing hard on the core aspects of matching and continuity. My problems are mostly with learning, and the tedious aspects, tweaking and i thing the infamous shared cv in surface corners problem, that prevents continuity of both edges.
Iād like to share a concept for a Rhino plugin I call MatchBox. The idea is to create a playful yet powerful workflow for automotive and freeform surfacing, using parametric surface primitives and intelligent assembly.
Concept Highlights
-
Parametric surface primitives ā pre-made surface elements like ball-corner surfaces, hood inlets, or fender shapes.
-
Snap-together surface chains ā users can assemble primitives into longer surface chains quickly, with automatic alignment and matching.
-
Parametric CV-driven control ā each primitive maintains its own construction history and directly controls surface CVs. The plugin tracks resulting surface diagnostics (curvature, tangency, etc.) and allows matches to be edited interactively in Rhino.
-
Reverse-Grasshopper workflow ā instead of connecting points to generate surfaces, users attach control nodes to CVs, and the plugin propagates constraints and diagnostics along the surface chain. This allows iterative exploration of complex forms while preserving continuity and parametric flexibility.
-
Continuity-aware design ā helps address classic NURBS issues like shared-CV corner conflicts, so surface chains maintain cleaner tangency and curvature where elements meet.
The name āMatchBoxā
The name is intentionally multi-layered:
-
Matchbox cars ā evokes automotive design in a playful, approachable way.
-
A box of tools/components ā like a ready-made library of surface primitives to pick and assemble.
-
Match stick metaphor ā the āheadā represents a CV, the stick represents a straight control polygon segment.
-
Surface matching pun ā āmatch box,ā subtly referencing the pluginās focus on aligning and blending surfaces.
Together, the name combines playfulness, technical meaning, and visual metaphor, giving a friendly yet meaningful identity to the tool.
In my oppinion, this should be a hotkey. (shift drag regular arow seems to be free) optonaly the look of the arows can be canged when hiting shift to indicate alternatice outcom. In adition it should be a togle somewhere in the ui, Gumbal in statusbar could have its own checkbox menu just like Osnap allredy has. (this would enshure ui concistancy)
Having no drag strength handles (DSH) as secondary handles next to the default ones is a major drawback, especially for those who work with a 3d mouse. Only the secondary drag strength handles provide an instant and convenient usage. No need to release the 3d mouse to hold a keyboard key, no need to press any icon to activate āDrag strengthā. Itās an instant reach to the drag strength through Gumball.

