Placing Blocks According to alignment range

I am trying to place a pier block on my alignment.
I already know how to place blocks at regular intervals in a alignment fashion.
However, I cannot find a way to place blocks in a specific range.
I tried using the great civil3d toolkit and camber package, but couldn’t find a way to extract the alignment range and place the blocks.
Can anyone provide me with some good processes and ideas.
I have a range start and end station in excel file. using this
The range in my alignment is a total of 21 areas, and blocks must be placed within this specific range.
Blocks are placed at intervals of 25 m and the stations to be placed are 25 m stations on the alignment.
Also, since I need to refer to the alignment PROFILE so that I can change the height value of these blocks later, I need to get the Z value as well.
I think the above requirements will be very difficult. However, if this were possible, my manual work time would be reduced.
I am attaching pictures to help you understand.

What have you tried with Dynamo? In particular have you looked into the Range node or the DesignScript syntax thereof (start..end..step;)?

Hi
Probably If you share an example drawing
better than a picture

Here are a couple nodes to check out that will help achieve what you’re looking to do.
image
The Profile.CoordinateSystemByStation get’s the location along the alignment and elevation of the profile at any station you provide along the alignment. The BlockReference.ByCoordinateSystem then uses the coordinate system from the Profile.CoordinateSystemByStation node to place the block should place the block along alignment at the elevation of the profile.

In terms of getting the ranges of the station values to input into the station input of Profile.CoordinateSystemByStation node, if you have the start and end values in excel, getting all the station values in the ranges you want in excel and import into Dynamo is one way to go. As @jacob.small suggested, you could produce the station values in Dynamo using the range node.

Hope that helps to get you going.

1 Like

thanks I didn’t know the basics

thank you all I solved my problem by this method and thank you all for your help. It works very well.

Additional question, but can you tell me how to exclude blocks from start station and end station? This is just my hope and I don’t mind giving an answer.

1 Like

Glad you were able to solve your problem!

As for your additional question, I would try the List.DropItems node. That node removes items by an inputted amount from the start or end of any list.