Shapediver Selection/Gumball: multiple instances? + end selection?

I have been going around in circles and any help would be appreciated.

Is it true that a Shapediver “Selection Input” and a “Gumball Input” can’t exist in the same script?
Is it impossible to end the selection process?

What I want to do is:
Ask for Gumball input by the user (location and size of the flat geometry)
Use that to modify the geometry
End Gumball process
Ask the user for input of general height measurements of the geometry
Use that to modify all the geometry
Ask the user if they want to adjust a specific geometry through Selection Input
Change only the selected geometry
End selection process
Go on and ask the user for other input (not yet in this script)

I am not sure if the attached script is usefull. It’s there for the sake of completeness.
TT_015a+b_question.gh (84.7 KB)

Here are my findings after exploring your definition:

  • You did not compound the gumball transformation with the further ones for the 3d objects and did not apply it to the rectangle border.
  • The logic was wrong when transforming multiple objects (one object worked but more than 1 led to errors in the definition).
  • I guess the main issue is that both your Gumball and Selection Input had the same parameter name.

I fixed all these issues in the attached definition. I also organized the App Builder interface for more clarity.

250109_WorkflowFixed.gh (83.1 KB)

You can see the results here: ShapeDiver App Builder

There is still work to do, as I did not understand exactly what logic you want to implement after selecting a piece of geometry. I think there is an issue with those Pick N Choose components. For now, selection only displays the rectangle border but does not do anything further.

Thank you very much, this really helped me.
I managed to make the individual override work. I think I can continue on my own for a while.

The script I attached was only a test for 3 openings. In the definitive script I might have 30 openings. For instance 25 normal windows, 2 doors and 3 special windows. So it saves a lot of time for the user to set all the openings with a global parameter and override the doors and special windows manually.

Here is my adapted script:
TT_017a+b.gh (78.8 KB)

In reaction to your 3rd point. If the parameter name (and name filter) were given through a panel input, there would be some visual feedback. Making it easier to check for errors.

Hi @mathieu1 ,
For sure I have to study more the documentation but I think a little advice will help me to advance a little quickly. I want to apply the gumball to some points which are the vertices of a curve and to modify the curve when I change the point’s position. I downloaded the Gumball input full tutorial example for multiple-box transformation. I couldn’t apply the gumball to points so I changed the boxes with little spheres, I applied the gumball to change the position of the spheres, and then considering the sphere’s center as vertices I tried to create an interpolated curve. But the curves don’t change with the sphere’s position changing. I saw in the Points Input example the Voronoi is modified when the point position is changed so I assumed the same would happen with Gumball. My questions are: can I apply the gumball to points in order to change their position (as vertices of a curve)? and why the curve is not changed when the mesh (sphere or box) center is changed? Many thanks in advance!
2G-GumballInput_Sphere_v04.gh (66.8 KB)

You have to apply the gumball transformations to the spheres before you interpolate the curve from them. See file attached.

2G-GumballInput_Sphere_v04.gh (62.4 KB)

Why do you not use the Points Input component to do this? It seems inconvenient to go through Gumballs for doing such a curve interpolation.

1 Like

Thank you @mathieu1 ! Now I have to understand the theory behind how it works!
Can I apply the Gumball to points, not objects (meshes)?
I’m starting to develop my foot orthosis online tool based on some predefined points, for which I want to use Gumball. I think I’ll use Points Input to generate objects (meshes) that will be used as modifiers for 3D printing. However, I can’t use Point Input to generate the foot orthosis template.

At the moment, the Gumball Input only works to transform meshes in the viewer. Since axes and rotation handles did not seem relevant for points, the assumption was that the Points Input component would cover use cases where points have to be transformed (note that it works with a single point as well).

Please explain further why the Point Input will not work to “generate the foot orthosis template” so I can advise on the best way forward. Note also that if you use the Gumball Input with small spheres, you can use the points defined by their centers for your algorithm. The spheres are then just used as handles and can be hidden once the process is complete.

Hi Mathieu,
I’m working with the points defined by the sphere’s center and this is Ok for me. In my case, the rotation handles are relevant for points; this way, I can modify the point’s direction movement as I need (see the video). The gumball helps me visually set the direction. The template is generated based on anthropometric correlations between different foot’s dimensions and then modified through the point’s displacement in any needed direction. As far as I understand Point Input doesn’t allow me to benefit from the gumball easy to use and its visual appearance.
One more question: it is possible to activate the Gumball just selecting the sphere meshes and without using “Strat gumball” and ‘Confirm’ buttons? (like I’m doing in Rhino?) Thanks!

We are evaluating how to implement a mode where clicking on the button is not necessary. This will likely be possible in restricted situations (single gumball component, no other selection component, etc…).