Plant Connector Detail Lines

When annotating Planting Plans, it is a fairly common technique to use connector lines in order to show a grouping of plants that are all the same species. These connector lines are usually shown in straight lines or in arcs. Here is an example of straight lines:

planting_plan_ex.jpg

Since Revit does not really have any landscape-driven tools, there is no tool that allows you to do this automatically. But this is a perfect application for Dynamo.

To start off, you will need a custom node from Archi-lab and the DetailLine.ByCurveAndView node (this is also the package name). For some reason, the Clockwork node DetailLine.FromCurve did not work for me, so I used this old (and deprecated) node instead.

Here is the initial definition.

detail lines_def01.PNG

And the result in Revit:

trees_line00.PNG

Since Dynamo does not specify the Line Style, Revit will choose the default Line Style (for me, it was Thin Lines). To change the Line Style, just add a few more nodes. To select the correct style, I drew a line with the correct Style, used GetParameter, and then applied the Style to the generated lines.

detail lines_def02.PNG

This is pretty good for straight connectors, but what about arcs? So I created a custom node to convert lines to arcs (it is available in today’s Landform update).

Here is the full definition.

detail lines curves_def

And the result:

trees_line01

The node Arc.ByLine allows you to flip the arc, by setting the flip input to false:

trees_line02

Since the lines are created by simply connecting the points, the order in which the plantings are created will effect the connector lines. So this method for creating connectors works best when you are connecting plantings that have been placed intentionally and somewhat geometrically.

For example, here are two grids of trees that are essentially the same. They were placed slightly differently and it becomes apparent when generating the connectors.

trees_grid01

trees_grid02

As a result, it is almost entirely ineffective if you try to connect plants that have been randomly placed in a cluster.

 

trees_random02.PNG

To make a cluster work more effectively, you would need to find the shortest path connecting all of the elements. There is currently a Clockwork node (PointSequences.ShortestPath) which might be useful, but so far I haven’t been able to make it work. But if I do find a solution to this, I will be sure to post an update.

2 thoughts on “Plant Connector Detail Lines

  1. Great post as always. You’ve been required reading for awhile now.

    For the draw order issue, have you tried sorting the points prior to creating the lines? Could be by x then y value, or by distance from another point. Might make it easier to order the list instead of asking a node to do the work for you. Would also allow you to set up a method to change out sort methods if you get something you don’t like (ie run this grouping by y, then x; that grouping by x, then y; and the other grouping by distance from a point).

    • Right, that is the method I would try. Though you would need a node or two to help you sort the points.

      Distance from a point is a good idea, I’ll have to look into that one.

Leave a comment