Here is one method:
- Make a Site family with a vertical model line and height parameter (see sample file at end of post)
- New Project - Make a Toposurface (or existing project with Topo)
- New in-place Mass
- Place the Site family on the Topo in one corner - it will detect the Topo and host itself to it, even though you are in the Massing environment
- Copy a certain number of times in X direction. Basically, you are forming one part of a grid sampler...
- Make a new Adaptive with the same number of points as step above. I made a 20 point adaptive.
- Select all the points, make sure they are Adaptive, Spline through Points
- You now have a 20pt Model Line spline... Load into Project
- In Massing environment, place the 20pt component by clicking on the very top of the vertical Model Lines from the Site family (as you place it, the points will change to a smaller point size to show it is "living" on the top of that line)
- Now, select the whole row of Site families and the 20pt component and copy it along the other planar axis (this is the other part of the sample grid mentioned in step 5)
- As the elements are copied, the Site families will host themselves to the Topography, and the Spline will adjust accordingly
- Now, select all of the spline families and Create Form!
- You can adjust how close to the original site the Massing form is by using the height parameter of the Site model line family
This method could be used in conjunction with the Tree randomizer here.
The image shows the sample surface above, and the original Toposurface below.
The only limitation I found was that if the form is "flat" at some point, the Create Form may not work. However, if each Spline does vary up and down, it should work ok.