How to use a result of the first UI.MultipleInputForm++ in a second UI++

Hello,

unfortunately I have a small problem with the Data-Shape-Package that you can help me with i hope.
I can’t use results in the second UI.MultipleInputForm++ that should be calculated in the first UI++

My Dynamo script is to calculate the column positions of a hollow floor.

In my case: the first UI++ asks for a floor slab, after pressing the confirm button, a section box in the {3D}-view should be generated (like kind of zooming in) to easily select the starting room edge in the second UI++

The problem I think I have is that my Dynamo does not calculate until the second/last UI++ is confirmed

Is there a way to solve that?

here is the problem part of my dynamo script:
https://tmausbau-my.sharepoint.com/:u:/g/personal/nestler_tm-ausbau_eu/EfbJas3m1aNHqzPoQoMZdQYBqZ9KHWScrmYCtyAgUezE3g?e=Kc5g03

With best regards and thanks,
Thomas Nestler

Look into Passthrough or Wait nodes. They can be used to force the execution order of nodes in your graph.

Thanks for your answer!
I found the “Wait Then Passthrough”-node from the Bakery-Package in my Library:
Ins: anyData, secondsToWait
Out: anyData
Unfortunately I can force my dynamo to wait some seconds, for instance 60, but it doesn’t calculate during that time
Which node have you thought of?

Hi NestlerT

Nick Boyts probably ment something like this:
Edit: oops pressed reply too soon…


The second Inputform cant start untill the passthrough node receives input from the first input form.
That node is from the Clockwork package:
image

2 Likes

Thanks for your answer,
I have the Clockwork 2.3.0 package, unfortunately this node doesn’t exist there.
Which version are you using?

Thats strange, i have 2.3 aswell

You can also create your own with a simple code block:

[wait,pass][1];

In this case you’re simply creating a list of two objects. One in which you’re waiting on (wait) and one which you’ll use as an input (pass) after the wait portion is ready.

I got it: it was the same like here:

Now my skript is working in Dynamo, but with the Player, it gives another result: the section box is not set before the second UI-window pops up

It doesn’t matter if:

  • I let the UI1-Was Run is directly connected to the UI2-toggle
  • the UI2-toggle waits 20 seconds with the Wait Then Passthrough-node
  • the UI2-toggle waits for View3D.SetSectionBoxList.FlattenList.Count → t1==1?true:false; into the waitFor input of Passthrough

please help me, I’m running out of ideas

with best regards and thanks,
Thomas

Hi @NestlerT ,

Add a Transaction.End node directly after the node which sets the section box size, then use the output of that Transaction.End node as the “waitfor”-input in the passthrough node for the second UI.

Better late than never I guess… not sure there’s much point in raising old queries a year after being asked though.

2 Likes

Sorry my bad, thought I came here from the latest post tab and didnt check the date on the original posts

1 Like