I’m trying to automate a construction calculation in RSA in combination with Dynamo and Revit. I made my script where i load my profiletypes from Excel, generate geometry based on a revit surface and after this translate is into robot.
The translation to robot is made in a custom node. This custom node is used as a function for list combine. This combination makes the profiletypes different every calculation. After it worked out a couple caclulations it does not return all the results. This is visible in the pictures below.
The custom node inputs are:
DirectoryPath
All loaded profiles
Requierd profiles
Profile on each bartype
Forces
Material type
Construction geometry in the form of lines.
Support node points
Construction surface
Profile distance. (just for the save)
Can anyone help me or at least explain why this proces is going wrong in the first place?
Custom nodes sometimes seem to be reading the length of all of the inputs, and only return results that match the length of the shortest input. Essentially they are following lacing conventions, even if the contents of the node do not. (I ran into a similar situation where a group of nodes not put in a custom node returned 15 values, yet when packaged up in a custom node only returned 6 - this was the issue.) Simply adjust the lacing behaviour of the custom node to longest or cross-product and I imagine it will work out.
Unfortunately, it did not work. I made some changes in the script and try it again tonight.
Hopefully I will fix this on time. Friday is the school deadline
I use it to fill in the empty spots in the custom node. How does that work with list.LaceLongest?
The lists i’ll put in the combine node got the same length but those in the custom node are single inputs.
Does it matter for a custom node to have different type of inputs? Or do they need to be the same? I was wondering this with the lacing of the node in combination with List.Combine. I still get a bunch of Null values add the end of the calculation.
Have your tried to skip the list combine node and connect the inputs directly to the custom nodes? When the single inputs are defined as single input (:var) Dynamo should be able replicate the lists correctly. Maybe play with lacing options and levels.