I’m a fairly experienced Revit user but recently I’ve been getting acquainted with it’s interactions with Dynamo. So far it’s been going quite well and I’m enjoying it. I’ve been trying to create a script which sets out shingles on any chosen face. The sizing and spacing of the individual shingles is guided by a couple of guiding principles but essentially every face/surface/wall will have unique setting out based on its dimensions/shape etc.
So far I’ve managed to make a script which divides the surface by using isolines U and V and then creates points at the intersections. I then insert a family (shingle) to each point and follow this by modifying the family’s parameters based on the script output to create the correct spacing.
Basically at this point the script does what I want. However, there is one major problem which I would appreciate help with. My shingles are directional: they go from top to down and from left to right. I use Surface.GetIsoline to divide my surfaces into points on which to drop the individual shingle families on. Everything works perfectly when the node picks out the starting isoline from the top and left edge of the selected face. However, sometimes the node picks out the bottom and right edge of the surface as the initial isoline. Is there a way to define which side to start on? Or am I doing this in a completely counter-intuitive way to start off with?
I appreciate that in a way it’s a bit silly to model individual shingles as this will no doubt cause the model to get quite heavy. This is somewhat of a learning project for me although I do expect to get some useful information out of it as well.
Below is a screen cap showing a correctly divided surface with the left-hand and top edge defining the spacing. Any help appreciated!!
Or does the initial line even matter? Changing the parameter of get.isoline didnt seem to make a difference. Also reversing the list of resulting points didn’t work either. Below is an additional image. As you can see the points are created from the bottom edge and not from the top edge like in the previous image. I would always like to have points on the top edge with the bottom being free to not line up.
Below also two images showing the correct placed shingles (starting from left and top) and incorrectly placed shingles (starting from bottom and right). The first column is replaced with unique corner shingles. Additionally when placed like in the second image the families are placed on the reverse side of the face.